当用户在浏览器访问video.site.com时,首先要进行DNS解析,即查找出video.site.com的IP地址,然后用户与该IP地址建立TCP连接访问网站内容,DNS流量分配方式工作在DNS解析过程中。通过在域site.com的DNS服务器上增加一条NS记录,即video.site.com的NS记录指向位于某一CDN RR设备的控制 IP地址,对video.site.com的解析将由该CDN服务负责,由DNS的工作过程可以知道如下内容:http://www.yanhuangzixun.com/。
(1)用户将DNS请求发到其本地DNS服务器,该DNS服务器通过一系列的DNS查询得知,video.site.com的授权解析服务器是CDN RR。
(2)CDN RR收到DNS查询请求后,将 video.site.com解析为经过计算后所选定的最优站点的IP地址(负载不重、距离用户最近),这个地址可能是主站点IP,也可能是分站点IP地址。
(3)各分布节点接受用户请求并最终将流媒体内容发送给用户。
基于网络就近性判断
当用户访问已经加入CDN服务的流媒体服务网站时,CDN RR首先会通过TCP/IP握手获得客户的IP,并在静态最近路径表中查找该IP所属的网段是否存在,如存在该客户即被透明地导向到静态最近路径表中所设定的优先级最高的POP点,如果开展CDN业务,需要办理CDN许可证。
如没有该记录,则CDN服务会以同样方式去查动态最近路径表,如仍没有记录CDN服务会通知各POP点一同去测各POP点离用户的距离及时延,并通过协议报告,确定最优站点,然后通过HTTP重定向技术来实现将用户导向到最佳CDN节点,与此同时,该IP地址所在的C类网段会被添加至动态最近路径表,供今后使用;CDN的服务器(节点上的高速缓存)负责将用户请求的内容提供给用户。
用户请求重定向调度方式对比 基于DNS重定向与基于网络就近性判断调度方式各有优缺点,现总结如下。
基于DNS重定向的优缺点 该方式的特点在于整个就近性判断和重定向过程都发生在用户请求域名解析时,而非用户真正请求服务器连接时。该策略的优点在于:
(1)实现简单,内容请求路由简捷,核心(骨干)节点负载均衡设备的负载情况较基于网络就近性判断的方式理想。
在CDN的全局负载均衡方案的应用中,如果只采用DNS流量分配方式,则存在着如下几个潜在问题。
(1)DNS解析记录信息可能被整个DNS解析行程中的任何一个DNS服务器Cache,这会导致全局的DNS流量分配失败,因为这个DNS服务器不会再将DNS的解析请求转发给WSD-NP,从而用户将不能得到最新的最优站点的IP地址。
(2)就近性判断是对用户本地的DNS服务器进行的,而不是用户本身。如果用户客户端设定的Local DNS服务器不是距离用户最近的DNS服务器,则用户无法得到就近服务。
(3)无法向支持直接给出IP地址的业务提供CDN服务。