多媒体传送调度策略综述

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

多媒体传送调度策略综述 Prepared on 22 November 2020
多媒体传送调度策略综述*
摘要:概要地介绍了网络上多媒体的传输、发送、拥塞控制、服务提
供以及并行服务器体系结构等各方面策略。

其中,流媒体传输策略包
括:流式传输、缓冲预存、智能流、资源预留和分层编码等,发送策
略包括:广播、组播、广播式点播、分组、融合和分组融合等,拥塞
控制策略包括:基于窗口的和基于速率的。

还介绍了并行视频服务器
系统结构策略和关键技术。

最后介绍了内容分发网络(CDN)。

关键字:流媒体;流控;拥塞控制;并行视频服务器;CDN
1.引言
多媒体数据包括文字、图形、语音、图像等等,计算机对多媒体数据进行处理,要解决信息采集、编码、压缩、存储、传输、解压缩、解码、信息重现等等一系列的问题,当然,在这些方面,现在已经有了许多很好的技术和标准。

由于图像所包含的信息量太大,象电影、电视等节目的视频文件仍然需要很大的存储空间,这使得视频文件在Internet/Intranet上进行传输有更多的技术困难。

随着时代的进步,这些技术问题也不断地得到解决。

早些年,人们要观看Internet/Intranet上的视频节目需下载整个视频文件。

通过TCP/IP协议下载文件时,服务器会按照一定的次序将文件分成若干独立的数据包,然后依次发送出去,而客户端的程序会将这些数据包重新组装起来,最终形成和原来完全一样的文件。

这时,人们才可以操作文件。


Internet上下载一部90分钟电影一般需要十多个小时,这还需要能保证一次成功。

近年来,流媒体技术[1](也称流式传输技术)的诞生和逐步成熟使得人们只需等待很短的时间就能以边接收边播放的方式欣赏视频节目。

流媒体技术,从原理上讲,要对视频文件做预处理以使文件适合于流式传输,预处理是以降低图像质量为代价对原有视频文件进行高效压缩以大幅度减小文件的体积(一般是原来的1/5~1/3),流式传输技术还需要适合的协议和一些策略以及专用的服务器和播放器。

需求量的日益增大给媒体服务器和网络传输带来了很大的压力,同时也对它们提出了更高的要求。

因此,也就产生的一些应付大需求量的流量控制、拥塞控制等策略,也出现了并行服务器、CDN(内容分发网络)等产物。

本文对流式传输、流量控制、拥塞控制、并行视频服务器、内容发送等方面的策略和关键技术做一个概述。

2.基本策略
流式传输策略
此策略在于消除以往下载方式的过长的等待时间。

流式传输中,服务器将原视频文件分解成一个个小的数据包,按照特定的顺序,以比较平稳的速度发送到网络上,客户端的播放程序可边接收数据边播放,如图1。

用户不必等到文件整个内容全部到达后,才开始播放,数据包也不保存到硬磁盘上,播后就丢。

流式传输还带来另外两大好处:一是,只占用很少的用户端资源;二是,对音像产品的版权进行了有效的保护。

图1 流式传输示意图
缓冲预存策略
此策略在于保证播放的连续性。

流式传输允许数据包通过不同的路径到达目的地,因此,可能出现文件包先发后至的现象。

再者,由于网络的不稳定性可能造成在客户端断流的情况。

为了保证节目播放的连续性,客户端播放器在开始播放之前,在客户端建立一个一定大小的缓冲区,并按发送时间顺序将接收到的数据包送至缓冲区预存,并等到缓冲区被充满后才开始播放。

从客户提出请求到开始播放一般只有几秒到十几秒钟。

缓冲区的作用是,当在播放过程中出现短时间的网络拥塞致使数据包不能按时到达时,播放器还有预存在缓冲区中的数据包可以播放,而不至于播放中断[1]。

智能流策略
此策略在于网络不畅时用户仍然能接收到平稳的视频流。

在网络不畅时,
用户能够接受质量相对较差的视频信息,但不能容忍节目断断续续,尤其是在
观看直播节目时。

智能流[1]策略是,允许不同速率的多个流同时编码,合并到
同一个文件中,此文件称为智能流文件。

同时,采用一种复杂客户/服务器机制
探测带宽变化。

客户端根据所接收的视频信息,将网络可用带宽反馈给服务
器,服务器根据客户带宽将智能流文件相应部分传送给客户,最大限度地使客
户满意。

分层编码策略
此策略也在于网络不畅时用户能接收到平稳的视频流。

多媒体数据在网上
传输的困难,主要是视频图像数据量太大。

分层编码[2]的做法是,按照信息的
重要性的不同对视频图像分层,最重要的信息(如一幅图像的大体轮廓)作为
第一层,次要的信息作为第二层,更次要的信息(如色彩、亮度等)作为第
3、4、…、N层。

第一层称为基本层,其它层称为增强层。

一幅图像可以看作是多个层叠加而成。

编码时,各层单独编码,并分配不同的优先级。

在传输过程中,根据用户带宽、网络情况以及实时要求等因素对数据包的传输动态地做出一些选择。

当网络不够顺畅时,视频数据中一些次要的增强层数据包将被丢弃,以保证重要的数据能正常传送。

这时,客户也能不中断节目播放,只是视频质量有所下降。

3.流量控制策略
对一些热门节目,尤其是大型体育赛事、文艺演出、重大事件等直播节目,用户需求量特别大,过多的访问要求容易导致服务器崩溃。

因此,必须进行流量控制,但同时又要尽可能地满足客户的要求。

这就需要有好的流量控制策略。

广播和组播策略
在广播[1]方式中,数据包的单独一个拷贝将发送给网络上的所有用户(无论用户需要否)。

无疑它减小了网络的负载和发送者的负担。

但是,广播方式,只有在支持广播的网络上才能实现。

因此,广播方式通常只在小范围内使用。

组播[1]类似于广播。

在组播方式中,数据包的单独一个拷贝将发送到一个组地址,所有加入该组的用户都可以收到。

目前,组播已经得到了广泛的应用,很多实时的多媒体会议及教育系统都是基于组播开发的。

广播式点播策略
此策略在于以广播的方式进行点播,其目的在于一个节目支持所有愿意观看该节目的
所有用户。

其基本思想是将一个节目划分为若干段,每一段占用一个广播频道并在该广播频道上轮循广播。

用户在点播时,先等待至第一段的开始;在播放某一段时,可以同时接收下一段的视频内容,以达到段段之间的不间断播放。

由于视频输出采用广播模式,且分段轮循,因此用户在任意时刻想观看该节目时,只要稍作等待便可,达到点播观看的目的。

该模式一般应用于热门节目的播放中。

分组策略
此策略在于集中访问时减少系统开销。

在VOD应用中,由于大多数请求
集中在少数的热门节目上,而且经常集中在一个黄金时段,在此黄金时段中每
一个短的间隔时间内都可能有对同一节目的大量请求。

分组策略[3]的做法是,
将黄金时间段平均分成许多小的时间间隔,针对每一个时间间隔,收集所有的
用户请求并加以分组,相同请求的用户在同一组中。

然后服务器为不同的请求
各分配一个信道,同一组的用户共享一个信道上的相同的视频流。

这种策略虽
然使一些用户的时延增大,但却可能成百上千倍地满足大量的用户需求。

只要
时间间隔选取适当,加上网络造成的时延,用户能接受就可以。

融合策略
此策略在于将针对于同一节目请求的时间比较接近的多个视频流合并为一
个流以减少开销。

融合策略[3]和分组策略的基本出发点是相同的,都是为了使
得多个用户共享同一视频流。

与分组策略不同的是,融合策略首先保证即时响
应用户请求,然后根据情况,对相同节目且时间接近的多个视频流,在时间相
对较快视频流中插入一些本不必要的帧(如重复帧)以减慢其步伐,相反,在
时间相对较慢视频流中丢弃一些帧(如不重要的帧)以加快其步伐,一旦出现
视频流同步时,就让它们共享一个信道,从而达到节约带宽资源目的,以让更
多的用户能得到服务。

分组融合策略
此策略[3]是分组策略和融合策略的结合物。

一方面,使用分组策略,对用户进行分组,同组用户共享信道;另一方面,使用融合策略,将节目相同且时间接近的不同信道进行融合,使小组成为大组。

这样,将更加提高网络带宽的利用率,也减少系统开销。

如图2,在[0,t1]时段请求Q11、…、Q1m,共享流从时刻t1发出的S1,在[t1,t2]时段请求Q21、…、Q2n,共享流从时刻t2发出的S2,在时刻t2开始对S1和S2进行融合,直至它们速度相同,这时恢复S1至正常速度,去掉S2,让两组请求一起共享S1。

图2 分组融合示意图
4.拥塞控制策略
网络可用带宽是动态变化的,如果数据的发送总是以某个固定的速度进行,就会产生一些问题。

比如,当网络空闲时,过小的发送量造成网络带宽资源浪费;而当网络较忙时,过大的发送量会造成网络阻塞,甚至大量数据包丢失。

因此,应当有合适的拥塞控制策略,使发送者能够根据网络的拥塞情况的变化适时地调整数据发送量。

在网络传输领域中经常采用的拥塞控制方法有两种[4]:基于窗口的和基于速率的。

基于窗口的拥塞控制策略
基于窗口的拥塞控制策略,发送方维持着一个拥塞窗口,其发送速率是根据其窗口大小来调控的,以数据包个数为单位,使用缓慢增加拥塞窗口的方式来获取与可用网络带宽的匹配,当检测到网络拥塞时,就迅速减少拥塞窗口的大小,以减少和避免网络冲突。

例如,TCP协议使用一种AIMD(additive increase multiplicative decrease,线性加乘性减)的拥塞控制算法:如果发现一个数据包丢失,则认为目前网络拥塞,随即将窗口大小减半,以减小发送速率,从而避免拥塞的加重;如果没有发现数据包丢失,则认为目前网络状况良好,发送者将窗口大小加大,进而增大发送速率。

TCP的拥塞控制算法每发现一个数据包丢失就将窗口减半的做法极大地破坏了数据流的平滑性,因此,它非常适合于那些时延要求不高但必须可靠传输的应用,而对于实时媒体则并不适合。

基于速率的拥塞控制策略
基于速率的拥塞控制策略,以每秒发送的比特数为单位,先估计网络的可用带宽,然后调整发送数据的速率,试图使视频传输的网络带宽需求与该连接链路的可用带宽相匹配,来减少或避免网络拥塞的发生。

常用于调整源端发送速率的算法有两种类型:基于探测的和基于模型的。

基于探测的拥塞控制策略
基于探测的拥塞控制策略,就是发送方依据接收方的反馈信息来探测网络的可用带宽并不断调整发送速率以避免网络拥塞情况的发生。

根据发送方调整速率的不同方式,基于探测的速率控制算法分为AIMD[5](Additive Increase and Multiplicative Decrease, 线性加乘性减)方法和MIMD[6](Multiplicative Increase
and Multiplicative Decrease, 乘性加乘性减)方法。

AIMD方法,当网络拥塞时,将发送速率乘性减小以迅速降低对所需带宽的要求;当网络空闲时,则线性增加发送速率以充分利用带宽。

MIMD方法不同的是,当网络空闲时采用乘性增加发送速率的策略。

当乘性因子较大时,会造成接收方接收速率的剧烈振荡和丢包率的增加,不适合实时视频的传输。

基于模型的拥塞控制策略
基于模型(有的文献中称为基于公式)的拥塞控制算法最先在文献[7]中提出,主要为了减少视频流发送的抖动性。

它依据一个TCP吞吐量模型来进行发送速率调整,通过以分组丢失率P L、往返时间RTT等为参数来计算发送方的最大传输速率,发送方依据此计算结果为来对自身的发送速率进行调整。

这种控制算法的优势在于发送速率较基于探测的算法平滑,其不足在于发送方的计算量较大以及对拥塞的敏感度稍有降低。

5.并行策略
在访问量不太大的情况下,可使用单服务器形式,数据保存在服务器的磁盘中或独立的磁盘阵列中。

当单服务器不能满足客户需求时,就产生了多服务器的并行结构。

当多个服务器、多个数据结点以不同的方式进行连接时,就形成了不同的体系结构,因而,也就需要不同的文件管理、数据存取、服务方式等方面的策略和技术。

下面简单介绍几种并行视频服务器体系结构以及两种VOD关键技术策略。

并行视频服务器体系结构
随着视频点播需求量越来越大,并行视频服务器技术越来越受到人们的重视[8~12]。

从现有的并行视频服务器体系结构上看,大约可以分为分布式结构、集群式结构和并行计算机结构等几类。

分布式结构是用多个相互独立的服务器同时提供视频服务,其技术特点是各服务器的存储I/O、网络I/O等资源不共享。

这种结构的主要问题是节目的存储问题:当每个服务器都存储同样的节目时,就会造成存储开销太大;当不同服务器之存储不同节目时,就会造成负载不平衡。

集群式结构是多个相互独立服务器共享存储资源。

主要有两共享方式:一种是多台独立服务器共享网络盘阵(SAN),但其花费代价高,不易扩展;另一种是用高速网将各服务器连接起来,数据都打散到各服务器中,但任何一个服务器的故障都将导致整个系统的崩溃。

采用并行计算机进行视频服务可以分为两类。

一类是采用现有的并行计算机,如SGI Origin2000/3000 ,Sun SPARC,HP9000等。

这类计算机其原始出发点并不是为了视频服务,只是在其上配置了相应的视频服务软件等,其实际能力并不能完全发挥。

另一类是研制专用的并行视频服务器,如nCUBE公司的nCUBE4。

它的存储、网络I/O、操作系统和服务软件都具有较强的针对性,服务效果好。

动态平衡策略
为使各服务器的负载均衡,并行VOD服务器需要采用某种动态平衡策略来根据用户的视频请求进行服务分配。

负载平衡方法很多,比如进程迁移[13]、SAMR[14]、轮询DNS[15]等,VOD系统采用的负载平衡策略通常有三种:轮循法、最小连接法和处理能力平衡法[16]。

轮循均衡将来自网络的请求依次循环地分配给服务器组中各个服务器。

这种简单软流分配的策略仅适合于服务器群组中的所有服务器都有相同的配置并且平均Web访问时间相对均衡的情况。

最小连接数均衡记录对服务器组中每台服务器当前正在处理的连接数量,当有用户请求时,将处理任务分配给当前连接最少的服务器。

这种策略使均衡更加动态化,更加符合实际情况。

处理能力均衡针对服务器组中各服务器配置不同情况,根据各服务器的CPU和内存、外存情况计算提出其处理能力单位,再根据每台服务器的能力将任务进行均衡分配。

这种策略更加精确。

磁盘Cache策略
计算机术语Cache的含义是高速缓冲存储器。

计算机工作时,总是把最新的数据存放到Cache中,并根据使用频率进行动态更新。

CPU读取数据时总是先访问Cache,只有Cache没有所要求的数据时,才到较慢的存储器中去访问数据。

在计算机应用中,大量采用了Cache技术,如处理机使用的Cache存储器、虚拟内存和磁盘缓冲区等。

“磁盘Cache”是针对这样一种结构的集群式并行VOD系统提出的:服务器组中每个服务器自带一定的硬盘存储能力,所有数据都保存在网络磁盘阵列或多个数据节点上供每个服务器共享。

磁盘Cache策略是以一定的算法来确定节目的“热门程度”,并将“热门节目”的视频数据文件拷贝到服务器上。

这样,如果客户请求的节目当前恰好在服务器中,那么就可以直接提供服务。

磁盘Cache 策略同时根据节目“热门程度”的变化动态地更新服务器上不再热门的节目文件,真正起到“Cache”的作用。

6.内容传送策略
随着Internet的迅速发展,媒体网站和企业网站的业务都急剧增加,因此,网站必须拿出应付的策略。

前面提到过的并行服务器结构,从局部来看它是一种很好的策略,但从整体上看,还是存在很大的问题:Internet难堪重负。

因为,传统的媒体发布系统采用标准的集中式的客户机/服务器技术实现内容的传送,每个客户端都需要创建一个直接连接服务器的信道[17]。

镜像服务器策略
镜像服务器策略是一种“送货上门”策略。

一些门户网站在需求量很大的地方建立镜像服务器,它既分担服务器的网络流量,同时也给Internet减轻了很大的压力。

边缘服务器策略
为了克服传统的集中式模式不具备可伸缩性的局限,把客户端/服务器模型发展成为广播网络模式。

在新的架构中,发布服务器由多台位于核心的广播服务器和位于网络边缘的服务器组成,形成一种可伸缩的应用级内容传送解决方案。

任何一台广播服务器都可以向边缘服务器发布内容,而由边缘服务器向客户提供服务。

这种新的架构,具有很好的可扩展性。

随着企业的发展,网络的流量不断增加,可以在网络的边缘增加这类服务器。

6. 3 CDN策略
CDN策略也是提供边缘服务。

与网站的边缘服务器不同的是,CDN服务由独立的运营商提供。

CDN[18](Contents Delivery Network,内容分发网络)可简
单理解为网络缓存、网络代理。

它的工作方式是将网站的内容发布到最接近用户的网络边缘,使用户可以就近取得所需的内容。

CND主要用来解决网络数据流量对骨干带宽的消耗,同时减少大量用户占用Internet带宽,从而也提高了骨干带宽的利用率。

在CDN服务之下,宽带用户能够欣赏到高质量的视频节目。

流媒体的CDN服务(如图3)主要有两方面的用途:一是用于处理访问量比较大的网站的日常流量,例如CCTV网站;二是用来应付重大事件所产生的爆发流量,例如企业所做的重大活动的网上直播。

图3 支持流媒体的CDN服务
参考文献:
[1] 欧建平,娄生强.网络与多媒体通信技术[M].北京:人民邮电出版社,2002:1-20.
[2] 侯芬,朱祥华,流媒体技术讲座第4讲多媒体流的分层传输.中国数据通信,2002,(9) :83-85
[3] 周宁,姜昱明.VOD视频服务器中的视频流调度策略.计算机应用与研究,2002,(12) :151-152.
[4] Bolot J-C, Turletti T, Experience with control mechanisms for packet video in the
Internet, ACM Computer Communication Review, 1998:28(1)
[5] Dapeng Wu, Yiwei Thomas Hou,Wenwu Zhu,Hung-Ju Lee,Tihao Chiang,Ya-Qin Zhang and Chao,
On End-to-End Architecture for Transporting MPEG-4 Video over the Internet, IEEE
Circuits and Systems for Video Technology, , . Videoconferencing on the Internet.
IEEE/ACM Networking, . June 1996
[7] , , TCP-friendly Unicast Rate-based Flow Control. Note sent to end2end-interest mailing
list,
[8] Dan A, et al. Evolution and challenges in multimedia. IBM , 42(2)
[9] Vogel A, et al. Distributed Multimedia Applications and Quality of Service: A Survey,
IEEE Multimedia Journal, 1995,3(8): 87-95
[10] Golubchik L, et al. Adaptive piggybacking:A novel technique for data sharing in video-
on-demand storage servers, Multimedia Systems, 1996,4(30):140-155
[11] Victor O, et al. Distributed multimedia systems, Proceedings of the IEEE, 1997,
85(7):1063-1108
[12] Bonhomme A, et al. A distributed storage system for a video-on-demand server, Parallel
Processing, In Euro-Par 2000, Munchen, Germany, August 2000:1110–1114
[13] Mark Claypool and David Finkel ,Transparent Process Migration for Distributed
Applications in a Beowulf Cluster, In Proceedings of the International Network
Conference (INC) Plymouth, United Kingdom ,July 16th-18th,2002.
[14] Zhiling Lan, Valerie E. Taylor ,Dynamic Load Balancing of SAMR Applications on
Distributed Systems, 李冬,动态负载平衡DNS简介, VOD系统负载均衡策略, 杜飞龙.流媒体服务器及其应用. 卢成旺.流媒体技术为服务提供商带来新意.流媒体资讯.2003,(1):13-14.
The Overview of Multi-media’s Transmission Strategies abstract: This paper elaborates on the related strategies of streaming media over the internet, including: transmission、delivery、congestion control、services and parallel server architecture etc. Transmission strategies of streaming media include: streaming、buffering、sureStream、resource reservation and layered coding. Strategies of transmission include: broadcast、multicast、broad-on-demond, grouping, combination and grouping-combination. Strategies of congestion control include: window-based and rate-based congestion control. In addition, this paper introduces the architecture of parallel video server and the key technology. At last, content delivery networks (CDN) has been presented.
Key words Steaming media; flow-control; congestion control; parallel
video server; content delivery networks。

相关文档
最新文档