前面几节分别介绍了Apple公司、微软公司和Adobe公司的3种自适应流媒体方案,通过对比可发现这些方案基于 HTTP 协议实现流媒体码率自适应的技术原理是非常相似的,主要的区别在于媒体文件格式和索引文件格式。随着 Apple 公司的知名度迅速提高, iPhone、iPad、iTouch、iMac等产品已走入千家万户,Http Live Streaming技术也得到了广泛的应用,下面将以Apple公司的Http Live Streaming技术为基础,介绍CDN传输自适应流媒体的方案。
为方便读者理解,本节将CDN承载方案简单分为3个部分:上级CDN、下级CDN和SLB。其中上级CDN指的是中心节点,导入服务器组件生成的索引文件和切片文件,并将这些内容通过PULL或者PUSH模式分发到下级CDN节点;下级CDN指的则是边缘节点,根据SLB重定向的结果,就近响应用户的服务请求;SLB即前文中提到的负载均衡设备,用户在网页或者EPG上获取的URL地址通常都指向SLB,由SLB根据用户IP地址、CDN节点负载情况、网络流量等综合信息,将用户重定向到最合适的下级CDN节点。
CDN承载方案的原理是:将同一个视频源内容编码、切片生成的每个视频片段文件,都看作一个独立的节目内容,在服务器组件将它们注入到CDN时,每个片段文件都被CDN单独管理,彼此之间无相关性;当客户端获取索引文件后,根据索引文件中记录的每个片段内容的URL地址发起HTTP请求,由SLB逐个处理并重定向到相应的下级CDN节点。