CDN系统设计的首要目标是尽量减少用户的访问响应时间,为达到这一目标,CDN系统应该尽量将用户所需要的内容存放在距离用户最近的位置。也就是说,负责为用户提供内容服务的Cache设备应部署在物理上的网络边缘位置,我们称这一层为CDN边缘层。CDN系统设计中负责全局性管理和控制的设备组成中心层,中心层同时保存着最多的内容副本,当边缘层设备未命中时,会向中心层请求,如果在中心层仍未命中,则需要中心层向源站回源。
不同CDN系统设计之间存在差异,中心层可能具备用户服务能力,也可能不直接提供服务,只向下级节点提供内容。如果CDN系统设计规模较大,边缘层设备直接向中心层请求内容或服务会造成中心层设备压力过大,就要考虑在边缘层和中心层之间部署一个区域层,负责一个区域的管理和控制,也保存部分内容副本供边缘层访问,更多相关知识:http://www.zhengdaole.com/。
在一个节点中,Cache设备和本地负载均衡设备的连接方式有两种:一种是旁路方式,一种是穿越方式。 在穿越方式下,SLB一般由L4-7交换机实现,SLB向外提供可访问的公网IP地址(VIP),每台Cache仅分配私网IP地址,该台SLB下挂的所有Cache构成一个服务组。所有用户请求和媒体流都经过该SLB设备,再由SLB设备进行向上向下转发。
SLB实际上承担了NAT(Network Address Translation,网络地址转换)功能,向用户屏蔽了Cache设备的IP地址。这种方式是CDN系统中应用较多的方式,优点是具有较高的安全性和可靠性,缺点是L4-7交换机通常较为昂贵。另外,当节点容量大时,L4-7交换机容易形成性能瓶颈。不过近年来,随着LVS等技术的兴起,SLB设备价格有了大幅下降。