流媒体传输技术的研究
2012-08-15杨树龙
杨树龙
新华社技术局5971电台,北京 100055
随着互联网技术突飞猛进的发展,人们对媒体的选择再也不局限在普通的被动接受传播媒体的层面上面。近年来互联网视频,音频等多种流媒体在人们生活受到广泛的青睐,这都取决于流媒体在技术上的优越性,可以更好的满足人们的生活需要。
1 流媒体在传输过程中缓存支持的问题
互联网在传输的过程中是以包为单位进行传输的,由于网络传输的稳定性没有保证,多媒体数据在传输的过程中被分成了许多数据包,针对不同的路由,最后到达客户端的时间和次序都有可能发生改变甚至丢失。如果将数据包在到达客服端之前,利用缓存技术对到达的数据进行正确的排序,就可以避免出现以上问题。其中,缓存技术包括:缓存策略,服务器与代理缓存技术相结合,分段分布式代理缓存。
1.1 缓存策略
根据缓存的目标数据的不同的内容,又分全部缓存策略与部分缓存策略,滑动窗口缓存,分层编码视频缓存。
1)与部分缓存策略相比较,全部缓存策略最大的不足之处储存空间的要求很高,如果缓存的空间不足,那么缓存的操作过程就显得很复杂,需要不断的换进换出,这反而对网络流量的降低起不到太大的作用,而且付出的空间代价也相对而言比较高;2)部分缓存的优点在于,一方面可以有效的解决服务的延时性,用户点播经过延时启动,就可以在这段期间对数据包进行处理;另一方面,减少服务器的承载的压力问题。但是缓存数据需要很大的储存空间,加上后期的缓存数据都必须从服务器获得。总体而言,部分缓存也不能从本质上较少网络流量的负担;3)滑动窗口缓存指的是当第一个用户想代理服务器发送请求的时候,代理服务器会将请求转向中心服务器,代理服务器对最初的用户请求经过加工处理,预测出相关的其他请求,并将这些数据缓存一定的时间。数据生命期就以窗口大小的形式表现出来。只要是在这段时间内发送到代理服务器的请求,代理服务器都会用这个窗口为他们提供服务;4)要想达到最小化传输的目的,采用分层编码视频的缓存策略比较实用,有针对性的对分层编码的流媒体进行缓存,弊端就是要根据对不同客户拥有的不同宽带运用不同质量的流量来回应。这一策略中经常运用的两个方法包括预取算法和分层编码细粒度的缓存替换法。
1.2 服务器与代理缓存技术相结合
服务器与代理缓存技术相结合主要体现在两个面,一是采用闭环(点播驱动)控制的方法,另一方面是结合服务器调度和代理前缀缓存或部分缓存的策略是在给定缓存容量时,最小化主干网络上的传输量。第一种方法的中心思想是利用Batching、Patching和代理前缀缓存技术。其中Batching补丁的请求为本策略最独特的特点。缓存服务器降低启动延迟的时候,Multicast with Cachin仍然会在组播开始后对请求进行聚合,利用Batching补丁完成没有启动延迟的目的。第二种方法不仅可以再运行中缓存补丁的各种数据,还能运用选择前缀集合的优化算法进行计算。
1.3 采取分段分布式代理
MiddleMan是代理服务器与协调器的重要组成部分。主要配置为一台协调器与若干台代理器,利用LAN将两个主体相互连接。其运行模式主要为:通过协调器,向代理服务器发送内容并进行跟踪,做出缓存替代的决策。当视频数据输入到MiddleMan存储系统之后,就可将视频数据拆分为若干个格式相同的文件数据。这样,就可以将视频文件按照一定顺序联合起来,避免出现混乱状态。对于代理服务器来说,可以将接收的媒体流块数据按照大小重新排列,通过替换策略以及缓存接纳控制方法,在每一段中添加相应缓存值。同时采取前缀替代原来缓存的前缀;后缀替代原来缓存的后缀的方式。
2 服务器的流调度技术
据相关资料调查显示,一般用户群体点播的节目集中度较高。如果在某一个时间段内,用户人群集中点播某个节目,只要利用传输媒体流合并用户请求,就可有效节约网络宽带与视频服务器的空间,与流媒体的调度技术相符。
有关流媒体调度的算法可分为静态调度算法与动态调度算法两种形式。一方面,静态调度算法主要在于服务器主动将节目在某个组播通道中应用,实现媒体流;另一方面,动态调度算法则指用户通过点播驱动,由服务器结合具体的调度算法,为用户提供媒体流。流媒体的动态调度算法包括FCFS算法、Batching算法、Adaptive Piggybacking算法、STream Tapping、补丁算法(Patching)、受 控 组 播 算 法、Catching and Selective Catching、BandWidth Skimming、分片融合、层次型组播流聚合等。
3 怎样对替换的节进行计算的问题.
流媒体与传统媒体有很大的差别,所以传统的节目替算法不能运用到流媒体这一领域当中来。RBC算法是目前流媒体当中运用比较广泛的算法之一,它在缓存接纳和替换的过程当中充分的考虑到了发送的宽带和文件大量两个重要的因素。与Pooled RBC策略相互结合在一起,RBC算法性能就大大的得到提升和健全。Pooled RBC一个较为突出的优点是,它还提供一个宽带POOL。POOL RBC会根据点播请求的不同的情况将请求传达给原始的服务器。
LRU算法在计算的时候,不能很好的处理不断演化的引用模式,区分不出来经常与不经常用户使用的对象。LRU-K的优点就是可以对最近引用多次的信息进行考虑。因此,可以很好的区分不同级别的引用对象,这一点,弥补了LRU算法中存在的不足。不仅如此,LRU-K算法可以通过自身的系统功能及时的对引用模式进行调节,管理的起来也很简单。
4 结论
总而言之,通过对流媒体传输技术进行的以上的研究,虽然很多的建议和解决方案都只能对部分的问题起到局限性的作用,但是,这对不断完善的流媒体传输技术领域的研究有着很重要的意义。
[1]李谦,秦亮曦.简述流媒体传输技术研究[J].科技时代,2008.
[2]熊永华,吴敏,贾维嘉.实时流媒体传输技术研究综述[J].硅谷,2011.
[3]朱文博.浅议流媒体传输技术[J].中国科技财富,2009(22).