用视频内容分布体系传送高质量宽带视频流
作者:陈秋琴、杜理渊、李文杰 来源:中国计算机报 添加时间:2006-5-21 14:56:28然而,要保证宽带视频应用的逼真效果的话,就有一些严格的要求。宽带视频是Internet上一种最难控制的数据类型。首先是它的绝对尺寸,一个5分钟的视频片断以1.5Mbps的速率传送共需56MB;其次是它严格的时间限制,一个延迟的帧(30fps的视频为1/30sec)到达后是没有用的,用户将看到一个抖动的播放画面。正因为有这些严格的性能要求,要在网络中实时传送如此大的数据,并要保证所需的质量,是一个具有挑战性的技术。
宽带网络为实现宽带视频服务提供了良好的基础,并使之成为可能,但要为遍布网络的大量用户提供无延迟的、高质量视频服务还远远不够,下面两个重要的因素将直接影响图像的质量:
| 1.数据包丢失 |
当服务端和用户端距离较远时,由于传输距离长,中间交换机和路由器较多,由于缓存堵塞造成的数据丢失会影响图像的质量。
| 2.传输介质费用 |
当进行点到点的高质量视频流服务时,传输介质的传输成本会大大提高。
为了解决这些问题,出现了两种解决方案:内容传送网络(Content Delivery Networks)和缓存方案(Cache Solutions)。
内容传送网络
内容传送网络采用分布式内容服务(DCS)的体系结构。在DCS中,包含大量的内容(如图像)的Web页“推复制”到边缘服务器上,这些边缘服务器放置在靠近网络边缘的服务提供商处,即一般所称的离用户“最后一公里”处。
当用户访问这些Web页面时,距离用户最近的边缘服务器将复制的内容提供给用户。这种方案避免了在骨干网上传送常被访问到的那些内容。它同时也是一种更加节省成本和易扩展的网络。
这种方案已经被广泛应用以提高发送小的媒体类型如Web页上的静态图像和流音频。
缓存方案
在这种方案中,当一个用户首先访问一个包括静止内容的Web页时,该内容直接由源服务器提供,之后缓存在缓存服务器。
缓存服务器放置在网络上的战略点,它距离用户比较近。接下来如果有访问同一页的情况,缓存内容将直接提供给用户。在缓存服务器上提供内容服务节约了Internet上骨干网的流量最多至50%,从而减少了带宽成本。从距离终端用户比较近的缓存服务器上提供服务也保证了性能。
内容传送网络和缓存存在不足
虽然上述两种方案有许多优点,但它们对于高质量的视频传送而言并不是最优的。内容传送网络通过把所有对时间敏感数据存储在网络的边缘来确保响应时间。它是牺牲存储成本来保证客户响应时间。它存在的前提是存储成本比在骨干网上传送数据的带宽成本要低很多。这个前提对图片、音频或窄带的视频是成立的。
前面已分析过,一段5分钟的内容以1.5Mbps传送相当于56MB,这样的一个视频频道一天需16GB的存储,一百个这样的频道需1.6TB。这些媒体存储在1000个边缘服务器上相当于1.6PB的存储。而且,这只是一天的视频存储要求。所以,从存储的硬件成本角度来看,把所有的数据存储到一个边缘网络中是不现实的。另外,宽带视频文件的尺寸使得实时的复制是不可能的,为降低骨干负载而进行的复制使得网络更加阻塞。
使用纯粹的缓存方案的网络也会因缓存的实际容量而带来一些问题。相对来说,缓存的容量都比较小,能缓存的目标数非常小,所以只能在一定程度上降低骨干的负载,用户第一次点播的时延是不可避免的。另外,缓存媒体减少了内容拥有者对他们的视频内容的控制水平,这种损失隐含着跟踪困难和版权问题,而这直接影响利润的产生。最后,随着网络规模的扩大,迅速定位缓存媒体并有效地将它引导到相应的边缘服务器上去也变成了一个技术挑战。
当前流行的方案适合用来传送静止的图像和流音频。至少,这些方案需要被扩展或重新设计以满足宽带视频流性能的要求。
视频内容分布体系结构
为支持在宽带Internet上实现高质量、宽带的视频流应用,Kasenna发展了一种新的视频内容体系结构,叫做Kasenna VCD(Video Content Distribution)。Kasenna VCD是DCS和缓存的结合。Kasenna VCD包含两个核心技术:元数据(metadata)和前序缓存(Prefix Cache)。

Kasenna VCD体系结构
采用metadata描述视频对象,如它的物理特性(格式、容量、比特率等),以及与之相关的权限和在网络中的实际视频对象的位置。在VCD中,采用metadata来描述、定位缓存视频对象使得视频流从边缘服务器传送到用户端。
Kasenna VCD体系结构的主要原理是将metadata路径(控制)与数据路径(数据)分开。metadata被分布到全网,由于metadata比视频文件的量小几个数量级,在边缘服务器中分布和复制metadata或者是在客户端直接进行都是实际可行的操作。
当用户在边缘服务器上通过URL选择一个视频时,与URL相应的metadata被检查看相应的视频内容是否在缓存中。如果对象在缓存中,则直接进行视频服务;否则,metadata的定位信息用来确定最近的包含视频内容的服务器。由于metadata提供了定位信息,避免了缓存服务器间的多级搜索。一旦找到,视频内容直接从它的源发送到进行请求的边缘服务器,由边缘服务器提供服务。
当进行服务的内容数据不在本地时仍然存在服务延迟的危险,为了解决这一问题,VCD引入了Prefix-Caching技术,我们称它为前序缓存,即将内容数据的前序片段复制到边缘服务器缓存中,当用户提出请求时,由前序片段提供服务,服务器同时从其它服务器或中心服务器提取后序内容数据,并随前序片段提供完整服务。前序内容的长短由提取后序数据的延迟决定。
结合前序缓存,初始访问的反应时间大大减少了。Kasenna利用边缘服务器上的数据库管理metadata。所有的视频URL,不论什么样的媒体格式,都映射成相同的格式。这种URL的选择被存储在数据库中,不论媒体是否被缓存。使用这种方法,跟踪、报告、计费、广告或其它功能都能很容易地实现。
Kasenna VCD体系结构作为宽带基础设施平台的一部分,其技术已经发展了很多年,Kasenna软件支持流行的操作系统:SGI IRIX、Linux和Sun Solaris。
站内搜索