视讯广电TB谈CDN网络——论网络服务的未来( 三 )


3.1.2 调度系统
调度系统是CDN网络的核心能力 , 其作用就是能动态、智能地将合适的互联网服务提供给用户 , 在用户和服务之间构建起一座稳定(网络质量有保证)、简短(尊崇“就近”原则)、高速(链路带宽满足需要)的“桥梁(数据链路)” 。
调度系统包括全局内容路由(RR:Request Routing)功能和本地负载均衡(SLB) 。
全局内容路由 , 即全局负载均衡(GSLB:Global Server Load Balancing) , 实现对用户服务请求的统一调度 , 将最合适的边缘服务节点(或区域SLB节点)告知用户并提供相应服务 。 全局内容路由功能通常集中部署于全局内容路由节点上 , 作为调度功能的核心节点 , 可以针对不同用户配置不同的调度策略 , 并实时检测CDN的网络拓扑和节点负载 , 从“业务特性”、“网络状态”两个维度实现灵活、智能的全局调度功能 。
本地负载均衡 , 实现CDN网络区域内的调度功能 , 将适用的服务节点提供给用户 。 三类主要业务节点(中心/区域/边缘节点) , 除了部署存放业务内容的缓存服务器之外 , 通常还都具备SLB功能(本地负载均衡) 。
3.1.3 管理系统
管理系统主要包括网络管理、业务管理和对外接口 , 通过集中部署管理平台、业务配置系统等来实现 。
网络管理 , 包括对网元节点和网络的监控、故障处理、性能分析、网络参数配置、网络安全防护等 。
业务管理 , 包括内容管理(对CDN内容的登记、存储、推送、回收等操作进行策略配置和信息管理)、CDN业务管理(对路由内容、调度策略等进行配置)、计费及计费管理、业务统计、服务日志管理等 。
开放接口 , 对CDN网络的内部或外部系统 , 提供各类信息服务和网络功能 。 例如用户的源站系统可以通过开放接口 , 将自身的业务内容导入进CDN网络内 。
3.2 CDN的基本业务调度流程
业务调度功能是CDN网络的核心能力 , 对于不同类型的业务和质量需求 , CDN用户及运营者可以选择不同的调度方式来实现网络资源的调配 。 主流的调度方式包括DNS调度、HTTP调度、RTSP调度等 。
DNS调度和HTTP(重定向)调度是最常见的调度方式之一 。 不同的CDN网络在调度流程的细节方面会有一定差异 , 但基本原理是一致 。 两种调度的基本流程如下:
3.2.1 DNS调度
1、客户端本地DNS:用户操作客户端 , 向本地DNS提交需要访问的网址域名
2、本地DNS上级DNS:当本地DNS无法解析域名时 , 会逐级向上请求DNS解析
3、本地DNSGSLB:本地DNS获得了GSLB的信息后 , 会向GSLB请求域名解析
4、GSLBSLB:GSLB根据用户源IP地址、访问URL , 选择一台适合用户的区域负载均衡设备 , 并要求提供服务器地址
5、SLBGSLB本地DNS客户端:区域负载均衡设备会选择一台合适的缓存服务器 , 并将该服务器的IP地址返回给GSLB , 再通过本地DNS告知客户端
6、客户端缓存服务器:用户向缓存服务器发起业务请求 , 获得互联网服务
3.2.2 HTTP(重定向)调度
1、客户端本地DNS:用户操作客户端 , 向本地DNS提交需要访问的网址域名
2、本地DNS根DNS客户端:当本地DNS无法解析域名时 , 会逐级向上请求DNS解析 。 根DNS解析获得GSLB地址后 , 会将GSLB地址返回给客户端
3、客户端GSLB:用户操作客户端 , 向GSLB提交需要访问的网址域名
4、GSLBSLB:GSLB根据用户源IP地址、访问URL , 选择一台适合用户的区域负载均衡设备 , 并要求提供服务器地址
5、SLBGSLB客户端:区域负载均衡设备会进一步根据用户源IP地址、访问URL , 以及区域内的系统负载、网络故障等情况 , 为用户选择一台合适、“健康”的缓存服务器 , 并将该服务器的IP地址返回给GSLB , 并最终告知客户端
6、客户端缓存服务器:用户向缓存服务器发起业务请求 , 获得互联网服务在调度策略中 , 不仅需要考虑用户的位置 , 为用户实现“就近”服务 , 还需要考量CDN网络内部负载情况、流量分配策略、线路资费等因素 。 在全局负载均衡(GSLB)和区域负载均衡(SLB)中 , 通过各种负载均衡算法工具 , 来合理分配和调度CDN内部资源(服务器CPU负荷、服务器内存、磁盘存储、网络带宽等) , 并实现对外部需求(业务量需求、QOS质量要求等)的最佳匹配 。