调度系统是指cdn厂家有能力通过各种机制将客户域名的所有现网请求引导到合适的目标机房,从而实现流量控制、质量控制、成本控制以及故障处理。
在讲解调度原理之前,我们先来看看客户是怎么接入CDN的,或者说客户的流量是如何切往CDN的。(假设客户的域名为:www.test.com,大概有以下几种方式:)
CNAME方式是最常见的接入方式,即CDN厂家向客户提供一个调度域名,客户将自己业务域名的CNAME指向这个调度域名,从而实现将请求引导到CDN上来。
腾讯云向客户提供的CDN是 $domain.cdn.dnsv1.com ,客户的域名 www.test.com 如果需要将请求切到腾讯云CDN上,只需要将 www.test.com 的CNAME 设置为 www.test.com.cdn.dnsv1.com 即可。
CNAME方式的背后,又分为以下几种模式:
CDN厂家提供基于DNS的调度,最终客户的域名经CDN的调度域名解析出CDN节点的IP。腾讯云CDN即采用这种模式。
CDN厂家提供基于302的调度,给的CNAME不是真正CDN节点,而是一个调度集群,真正的CDN IP地址是通过在调度集群上向请求响应302跳转实现的。腾讯云为一些手机厂家的下载业务提供过这种模式
再有一种,是Anycast CDN。从DNS层面上看,CDN厂家提供给你的CNAME的解析结果只有全球固定的一两个IP地址,不像方式1中不同地区的解析结果IP不同。这种场景下的流量调度,不是靠DNS解析,而是Anycast BGP路由的调整,通过调整Anycast的路由来调度各地区的流量到哪个机房。
这种模式主要是一些代理商客户,即使用腾讯云CDN来接客户,又想在DNS层面隐藏他们使用的CDN厂商。一般做法是客户提供一个自己的域名比如:gslb.mycdn.com,腾讯云也提供一个中性的且不备案的平台调度域名glsb.mycdn-platform.com。真正的客户域名 www.test.com CNAME到 gslb.mycdn.com ,后者CNAME到腾讯云的调度域名 gslb.mycdn-platform.com。这样整个解析环节都没有腾讯云的痕迹。
这种模式不太常见。以域名 www.test.com 为例,如果客户要将请求切往CDN,需要将 test.com 的NS记录改为 CDN厂商提供的NS 权威服务器。这时CDN厂商同时担当了DNS服务商和CDN服务商的角色。
原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/30995