VBR流式视频I%2fO调度与平滑传输模型及算法优化的研究

更新时间:2023-04-20 08:41:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

中南大学

博士学位论文

VBR流式视频I/O调度与平滑传输模型及算法优化的研究

姓名:谢建国

申请学位级别:博士

专业:计算机应用技术

指导教师:陈松乔;陈建二

20020301

中南大学博士学位论文

摘要

随着网络带宽的迅速增加,网络流媒体日将成为网络应用的主流,网络流媒体的相关技术成为计算机领域内的重要研究热点。VBR方式压缩的视频是网络流媒体的主要数据源,像VoD、网络视频会议、远程教育等都需要这种视频的实时传输和传播。而VBR方式压缩的视频和CBR方式压缩的视频相比,在相同资源许可下能得到更好的服务质量保证,但不足的是,由于它的VBR特性,复杂了网络的管理,如接纳控制、带宽分配等。本论文针对VBR流式视频(简称VBR视频流)重点研究了两方面问题,一是VBR视频流的I/O调度,二是VBR视频流的平滑传输。

论文首先提出了一个基于多处理机多任务调度原理的带缓冲箱多实时流调度模型及相应的接纳控制算法,讨论在多网络I/O通道独立并行输出情况下,其最大网络输出流的有效调度问题。提出了另一个针对存储VBR视频的最短路径平滑算法,讨论如何利用前端缓冲技术,研究VBR视频流在传输过程中其峰值位率最大可能缩减问题。文中给出了两算法优化性能的分析,实验结果也显示这些算法的效果是明显而有效的。

其次在基于最短路径平滑算法下,考虑不同网络段之间的异质传输特性,提出了异步平滑调度算法,考虑残余带宽利用率问题,提出了残余带宽下视频服务协议算法,以及针对强实时VBR视频流,提出了实时平滑传输算法。实验显示这些算法在各自的应用背景下都较好地解决相关问题。

最后,论文在讨论一个视频比例安置算法后,着重研究了以优化磁盘I/O为目的,结合平滑技术、视频安置技术及MZ特性的磁盘技术,提出了磁盘I/O平滑检索模型、平滑检索算法及相应的视频安置模式。模拟实验显示下,对于给定目标参数这些算法有好的性能结果。

关键词:变位率视频,多网络I/O,平滑,视频安置,多磁盘I/O。

中南大学博士学位论文

Abstract

Withtheincreasingofnetworkbandwidth,applicationsofnetwork

streamingmediahavebeenmainstreamsonnetwork.Techniquerelationstonetworkstreamingmediahave

beenstudiedbymanyresearchersincomputerscience.Videosaremaindatasourceofnetworkstreamingmedia,ForexampleVoD,networkvideoconference,andtele—learningneedrealtransmissionandtransmittingofvideos.ComparedtotheCBRcompressedvideo.theVBRcompressedvideoCanachievemoresarisfyingQoSunderthesameresourceconstraints.ThedisadvantageisthattheVBRcharacteristicoftheVBRcompressedvideo

networkmanagementtechniques.Thisdissertationfocusesontwomaincomplexes

stream.

problems:theFOschedulingandsmoothingtransmissionoftheVBRvideo

Thedissertationfirstaddressestwoproblems:oneisthemaximum

outputofvideostreamswithmulti—networkI/Ochannels,andproposesarealstreamsschedulingmodelwimbufferbox.anddevelopsanadmissioncontrolalgorithmbaseonthismodel.AnotheristhestudyofthegreatestpossiblereductiontoVBRvideowhentransmittingstoredvideoacrossanetworktoaclientwithgivenbuffersize,anddevelopsashortestpathsmoothingalgorithm.Forthesetwoalgorithms,wepresentformalanalysisofoptimality,andexperimentalresultsshowthatthealgorithmsareefficient.

Baseontheshortestpathsmoothingalgorithm,thedissertationproposesanasynchronismsmoothscheduling,whichconsiderstheheterogeneitytransportcharacteristicbetweentwonetworks,andatransmissionserviceprotocol,whichCan

bandwidthresource,andareal—timeprovidereal—timevideoserviceundertheresidual

smoothingalgorithm,whichconsidersthedelaycharacterofthestrongreal—timevideo.Experimentalresultsshowthatthesealgorithmsworkverywell.

Afterdiscussingavideoscalingplaeemantalgorithm,thedissertationpresentssomediskretrievalalgorithmsandvideodividedschemesaimingtooptimizeperformanceofthediskI/O,andtointegratethefollowingtechniques:smoothing,videoplacementanddiskmulti—rates.ThesimulationresultsshoWthatthesealgorithmsaree街cient.

Keywords:VBRvideo,multi—networksI/O,smoothing,videoplacement,multi—disksI/O

第1章绪论

第1章绪论

1.1引言

自九十年代初期,流式媒体(简称流媒体)技术一直得到研究者的重视。早期一些代表性文献的工作主要集中在视频存储、单流缓冲计算及磁盘调度策略【f。”。这些研究涉及的问题虽然相对简单,而且问题的应用背景规模小,但做了很有益的开创性工作,文献[6]对这一段时期的工作进行了全面的综述。近期的文献从不同的应用背景研究了流媒体理论及其相关的技术,主要包括变位率视频流的平滑与控制技术“2。”、磁盘调度与接纳控制[s4’62J、视频Multieast技术和视频QoSl63-721、视频安置技术"3451及视频服务系统的资源管理和相关的技术【l“州等,这些研究在各自的应用领域内取得了全面发展。VoD系统的研究与应用[95“971、视频会议系统的研究与应用及远距离学习系统的研究与应用陬”1等,这些与流媒体技术息息相关的分布式多媒体应用系统的研究,取得了实际应用效果。但由于网络带宽资源的限制,特别是因VBR(variablebitrate)视频高带宽的长时占用和峰值位率的突发性,复杂了网络及I/O的管理,如带宽的分配及利用率、接纳控制等问题,再加上一些相关网络技术有待进一步发展,因而Internet上大规模分布式多媒体应用技术的研究大多尚处于实验室阶段。本论文针对目前VBR流式视频在传输过程中存在的问题,对下列问题进行了研究:视频服务器的网络VO调度、VBR流式视频的平滑传输规划、VBR视频磁盘上的安置以及磁盘I/O调度等。

在视频服务器的网络输出方面,文献[60]提出了连续媒体流理论模型,做了较好的研究工作。由于网络出口带宽和磁盘入口带宽相比相对富裕,很少有研究者专门研究最大输出流的计算,特别是当网络输出成为瓶颈、多网络FO引入时,这种计算必不可少。

在VBR视频流的平滑传输方面,得到了众多研究者的关注。VBR视频流的平滑研究分存储视频的离线平滑传输、弱实时视频的在线平滑传输和强实时视频的实时平滑传输等方面。对于存储视频因在传输前可以知道数据帧尺寸的全部信息,因而可以在传输前根据给定的条件计算平滑传输计划,称这种平婿为离线平滑佃minesmoothing)“2“】,相反,实时视频因不知道将来数据帧尺寸信息,所以这种平滑传输计划只能实时计算,称这种平滑为在线平滑(onlinesmoothing)田“∞1或实时平滑p””】。在存储视频平滑方面文献[14】雇用了一个CRTT算法,讨论在用单一的位率传递整个VBR视频情况下,如何极小化带宽或缓冲的需求。文献【15,16】首先提出了CBA算法,后来文献[17】提出的MCBA算法是对CBA算法的扩充,算法的结果能产生最小的峰值位率、能极小化传输位率的改变次数。文献【12】提出的MVBA算法,能极小化峰值位率,和极小化位率的变化量,而且算法的结果在Majorizatioaf…1性能上是平

中南大学博士学位论文

滑最优的。文献【18]对这些算法的平滑性能在实验上进行了一定的比较与总结。而文献[19,20]提出的MPS算法和MCBA有异曲同工之效,如最小的峰值位率、极小化传输位率的改变次数,但它对这一结果给出了理论证明和其它性能标准的进一步讨论。与上述风格不同的是文献[20,22,24】等提出用固定不变的带宽传输VBR视频流的on—off平滑算法,On表示以固定速率传输视频数据,off表示不传输任何视频数据,整个传输过程由011段和off段交替进行,并建立了固定传输位率和缓冲尺寸的对应关系。在弱实时视频方面,如电视新闻、实况转播等,这类视频对于一定的较长延迟是可以接受的,以延时缓冲一定的数据来进行平滑,这方面的算法主要将一些离线平滑技术应用于一个给定的窗口内,进行有限地平滑【29I”】,由于可以有较长的延时,这类算法关键技术仍然是缓冲与平滑。在强实时视频方面,如远程学习、视频会议等这类具有交互特性的视频,它们要求延迟时间短,延迟敏感强,传输这类视频以满足给定的延迟界限为目标,这类算法的关键问题是延迟受限、帧尺寸预测与变位率平滑[35-3s]等。离线平滑技术的研究在理论上虽能取得最优效果,但仍存在一些问题,如没有考虑网络传输特性、算法的运行效率问题、实际应用的评价等。实时平滑技术方面还需要更多的发展,如更有效算法的提出、算法实际运行的性能稳定性等问题。

在视频安置技术方面,由于应用背景相对简单,得到了较为成熟的发展。在早期的一些研究工作中文献【61对此作了综述。在90年代中后期,视频安置的研究取得了长足进展,其中文献f10]就大规模媒体流的存储方面比较了磁盘农场(diskfarm)和磁盘阵列(diskarray)存储方式的各自性能。文献『1.2,55]就存储块的安置、内存开销及接纳控制等方面进行了研究。文献[7,75~85】就视频文件的拆分、存储块在多磁盘上安置对支持并发存取的最大流数进行了比较。文献[95,96]实现了一个VoD存储方面的应用系统。目前视频安置方面的研究主要集中在多磁盘、多视频文件等大规模有效安置方面,另外由于磁盘技术的发展如MZ磁盘技术,一些文献[81~83]专门研究视频在MZ磁盘上的安置问题。但综合考虑磁盘技术、VBR视频特性及流行视频的影响,以优化磁盘I/O的研究不足。

在磁盘I/O方面的研究主要考虑磁盘存取策略及接纳控制问题。仅考虑调度特性的算法有:RR算法以给定的逻辑服务顺序作为实际检索存储块的顺序161;EDF算法规定有最早截止时间的存储块优先被调度吲:SCAN算法是对于给定位置的一组存储块寻找有最小的磁头开销,包括Bi—SCAN算法1591和BSCAN(Batched—SCAN)算法1541;SCAN—EDF算法是SCAN和EDF的综合IS6],先应用EDF算法,若有相同的截止时间则使用SCAN策略:另外一个综合算法是GSS算法|9】,将要服务的一组存储块进行分组,组内采用SCAN技术,组间应用RR策略。另外,考虑VBR视频数据特性的算法有:比例服务策略算法[57,58】、RTL算法‘”1等。但如何结合平滑技术、减弱视频的VBR性质,提高磁盘I/0利用率的磁盘策略研究不足。

第1章绪论

1.2视频的VBR特性

视频数据是网络流式媒体主要来源,要研究流式视频在网络上的传输与传播,就必须先要了解流式视频数据源本身的特性。本节粗略地分析了流式视频的VBR特性、特性来源,并给出了一些视频数据实例描述,以供后面各章实验分析之用。

1.2.1MPEG视频

一幅含640*480个像素、每一个像素用24位表示图像,在未压缩的情况下该图像有921Kb,对于30fps的视频帧率需要大约221Mbps的传输带宽,可以看出在目前的广域网络上传送这样未经压缩的视频数据是不现实的。

目前有许多可用的数字视频压缩技术,但只有MPEG(movingpictureexpertgroup)系列压缩技术成为目前广泛使用的事实上的标准【loI】,其流行的家族成员有MPEGl、2、4。而MPEG7目前正在发展和完善。MPEG是一个活动图像压缩标准[102’1031,目的应用于视频邮件(Videomail)、视频会议(videoconferencing)、电子出版(electronicpublishing)、视频点播(roD:Videoondemand)及远距离学习(distancelearning)等。

一个MPEG技术压缩的视频位流由序列(sequence)元素组成,序列由多个图像组GOP(GroupofPicture)组成,一个组GOP由帧(frame)或图像(picture)构成,一帧由一个或多个片(slice)构成,片由宏块(macroblock)组成(详细的介绍见文献[36,102]及相关ISO标准)。

MPEG中的GOP由三种帧构成:I(intracoded)帧、P(predicted)帧和B(bidirectonal)帧,从尺寸上相比I帧大于P帧,P帧大于B帧。编码的图像序列由两个参数M和N说明:M表示I或P帧之间的间距,N表示两个I帧之间的距离。如M=3和N=9,则编码序列为:IBBPBBPBBIBBPBBP,GOP的尺寸为9。

考虑到B是双向预测,所以在编码B帧时要等到后面的I或P帧被编码,通过引入一个延时实现;在解码B帧时要等到相邻后面的I或P帧被送到,若一个视频编码器产生的帧序列为:mBPBBPBBIBBP…,则传输顺序应改为:IPBBPBBIBBPBB…,可以看出除了最初几个帧的顺序不同外,后面帧的传输模式同产生模式。

MPEG.1标准[IS093]压,缩的目的是产生位率不大于1.5Mbps的视频流,目前被广泛地用于VCD格式。MPEG-2[IS094]标准提供了伸缩性很强的压缩技术,能满足更高视觉质量的视频图像,压缩视频的位率在2~80Mbps之间,广泛地用于目前的高清晰度电视和DVD格式。MPEG.1和MPEG-2的本质区别是前者单层,后者将压缩的视频分成两种层次:一种是基层位流(baselayerbitstream),含最重要的图像信息;另一种是一个或多个增强层(enhancementlayer),含增强图像质量的附加信息。正是这种分层技术提高了压缩的伸缩性(scalable),同时为应用也带来了可塑性,即可满足不同用户服务质量的要求。

MPEG-4[Iolj04I压缩标准起始于1993,完成于1999,其目的是为著作者、服务提供者和用户提供一组不同需要的技术,和以前家族成员不同的是引入了媒体对象

中南大学博士学位论文

(mediaobjects)和QoS描述符,一组媒体对象构成一帧图象,同时和MPEG-2技术一样具有伸缩性。正是这种媒体对象的引入和伸缩性,使得MPEG.4技术正在获得广泛地应用,成为网络流媒体的一种主要格式。

MPEG-7””。”1的主要目的不在编码的压缩上面,而在如何描述这些多媒体材料,提供一通用的接口,以便检索或查询,其新增的特性对数据传输影响不大。1.2.2视频ⅦR特性的来源

视频的MPEG压缩有VBR压缩和CBR(constantbitrate)压缩两种。在同样资源(如带宽、存储等)许可下,VBR方式压缩的视频和CBR方式压缩的视频相比能取得更好的服务质量、能得到更好的QoS(qualityofservice)保证,由于这样的优越性,所以网上视频服务一般以VBR方式压缩的视频作视频数据源进行存储、传输。

视频的变位率来自下面三个方面:某一帧内部的一块到下一块的变化、一帧到下一帧的变化、一景到下一景的变化。帧内变位率的影响可以忽视,极小量的缓冲便可以消除它的影响,主要的来源发生在帧到帧之间,因为景到景之间的变化也是通过帧到帧的变化反映出来的[36,109-113],经统计通常I帧的平均帧尺寸是B帧或P帧的10倍以上,由于每一帧均维持相同的播放时间,为保证连续无抖动回放,这样传输的位流就是变化而波动的。

1.2.3视频VBR特性的分析

论文实验中用到的一些视频源数据的名称、内容及节目性质描述见表1.1和1.2,其中个别视频的数据分布特性见图1.1~1.5。图1.1给出了视频Pace中一段帧尺寸分布,最大帧尺寸为21296B,最小的为1002B,极大极小比例约20倍。图1.2给出了视频Term中一段帧尺寸分布,最大帧尺寸为7949B,最小的为40B,极大极小比例约200倍,位率改变明显。其它视频的变位率特性可从表1.2中略知一二。

图1.3中给出了视频Race中一段GOP尺寸分布,图1.4给出该视频相应的一段位率分布情况,从中可见该视频的VBR特性。

表1.1视频节目内容描述

视频节目性质视频节目名称(简称)视频节目名称描述

卡通片AstefixAster/x

卡通片SimoSimpsons

网球比赛^:TPATPTennisFinal

1994:Beeker-Sampras

汽车比赛RaceFormulalcaratHockenheim1994

足球赛SoccerSoccerWorldCup1994:Brazil-Italy

电影J-ParkJurassicPark

第l章绪论

电影LambsTheSilenceoftheLambs

电影StarwarsStarwars

电视录像TennTerminator2

电视录像1翻kT址k_—Politicaldiscussion

电视录像Slapsticknlr∞slapstickepisodes

电视录像NewsNews

电视录像MtvM“—Musicclips

视频会议SettopSettop

歌曲年轻的朋友来相会卡拉oK带

歌曲父老乡亲卡拉OK带

表1.1-1.2中的视频源数据除最后两个其余来自站点[114],其中的块尺寸不包含音频块,仅含视频块,前14个节目,每一个节目含40000帧,其中视频会议为500帧,共计1155MB,GOP(groupofpicture)模式为IBBPBBPBBPBB(12帧)。后2个节目帧率30fps,其余数据统计见表6.1。视频数据按MPEG-l、2标准编码。

表1.2VBR视频统计特性

帧(Frames)图片组(GOPs)位率(Bitrate)节目名压缩比

平均(bit)峰值,平均平均(bit)峰值,平均平均(Mbps)峰值(Mbps’Asterix119223486.62682824.0O.591-85

Simp1431857612.922284l3.80.461.49

ATP121218908.72626483.0O.551.58

Race86307496.63690603.6O.773.24

Soccer106251107.63012013.9O.632.29

J.Park203130789.11569284.OO.331.01

Lambs363731218.4876345.3O.18O.85

Starwars1301559911.91871855.OO_364.24

TelTll243109047.31308653.10.270.74

Tmk183145377.31742782.7O_361.00

Slapstick1501764713.O2113684.10.441.76

News1731535812.41842996.OO.382.23

Mtv1341978012.72373786.10.492.71

ScOop305603l7.7723792.0O.150.27

中南大学博士学位论文

图1.1视频Race中一段帧尺寸分布示意图

图1.1、1.2中最高的线代表I帧,两I帧之间的3根中长线为P帧,两P帧之间的2根短线代表B帧,明显地可以看出3种帧之间的尺寸有较大的差别。图1.1中各P帧之间有较大的起伏,但极大极小比不如图1.2。

图1.2视频Term中一段帧尺寸分布示意图

第1章绪论

图1.3视频Race中一段GOP尺寸分布示意图

图1.4视频R卫ce中一段位率分布示意图

图1.3、1.4给出了视频Race中一段GOP尺寸及相应的位率分布图,从图可以看出位率的跳变性即VBR(变位率)特性,这种特性复杂了带宽分配和网络其它管理技术。

还有一个来自站点[115]的全长视频数据starwars,MPEG.1标准压缩共174653帧,约2小时。

图1.5、1.6和1.7显示了其中3个视频数据源中各CrOP尺寸段所占的比例关系。

中南大学博士学位论文

从图中看出,大量的GOP尺寸分布在比平均尺寸小的一侧,极大尺寸的GOP块占极小数量,但在确保性QoS的接纳模式…51中,不得不考虑它们的影响。

Jb

轼匿丑g例啦蛙机鬟鸟如

goPXB

图1.5视频stara.varsGOP统计分布图图1.6视频afpGOP统计分布图

图1.7视频videoconferenceGOP统计分布图

第l章绪论

1.3全文预览

本文由一组论文构成,全文围绕VBR流式视频在网络传输过程中所涉及的问题而展开讨论,主要内容包括:VBR流式视频的网络I/O调度与缓冲、VBR流式视频传输中的平滑规划、VBR视频的磁盘安置及VBR流式视频磁盘I/O与平滑检索等。

在第2章中讨论VBR流式视频的多网络I/O通道并行输出调度、缓冲及接纳控制策略。问题的背景建立在当有多磁盘I/O并行输入和多网络I/O并行输出,如何计算最大化输出视频流数及相关的接纳控制算法。由于目前网络I/O带宽相比磁盘I/O带宽要富裕,很少有文献涉及此问题,本章首次对此进行了专门的研究,文中就单网络I/O通道、多网络I/O独立通道等情况下,展开了分析,提出了不同的解决方案,特别是一个在基于多处理机多任务调度的原理下而提出的带缓冲箱的多实时流并行调度模型及相应的接纳控制算法,能极大化输出流数同时也有其它好的性能,文中给出该算法的优化论证和仿真实验验证。

在第3章中讨论预存储VBR视频的平滑传输问题。本章首先全面综述了预存储视频平滑传输的有关算法与技术,包括MVBA算法021、MCBA算法[15-171、MPS算法[19-20】、CRTT算法【141和另一类风格的On.Off传输算法[20,22,24l。然后提出了本章的主要算法一最短路径平滑算法,引入平面规划设计中最短路经的概念,得出对于给定的缓冲区,计算存储视频的平滑传输计划就是在一个简单直线多边形内寻找最短路径问题,并证明这一最短路径具有优化的平滑性能,即极小化峰值位率、极小化位率的变化量和尽可能小的位率改变次数。紧接着的两节,在基于最短路径平滑思想的基础上,进一步扩充这一平滑技术到一些特殊的应用环境。一个是异步传输平滑算法,主要考虑两个异质网络段之间如何进行VBR视频流的传输问题,因在异质网络段之间存在支持不同包长协议和不同步传输等可能性问题。另一个是残余带宽下的存储视频亚实时服务协议算法,主要考虑对于有大量磁盘I/O通道的存储子系统,每一个I/O通道可能残余~些带宽,而这一部分带宽不足以支持一个实时视频流服务,常常被闲置,不能参与接纳控制计算。大量磁盘I/O通道可能残余许多这样的带宽,这样浪费是巨大的。服务协议算法专门讨论了这些带宽的利用问题,并研究了如何有效地分配这些带宽,提出了最短包迹等概念。

在第4章讨论了强实时视频的实时平滑问题。强实时视频(如视频会议、远程学习等具有交互特性的视频)跟预存储视频和弱实时视频(如电视新闻、实况转播等节目)不同,它要求有短的延迟,而且在平滑发送计划计算过程中其将来帧尺寸信息是不可精确知道的,但可以根据视频帧之间的自相关特性进行预测。这类视频的平滑和预存储平滑中的缓冲与预取技术有着本质的不同,平滑技术中主要关心在满足给定延迟条件下,加上非精确的帧预测技术,来尽可能缩减峰值位率和发送位率的改变次数。文中基于最短路径平滑技术而提出的实时最短路径平滑算法和实时MVBA平滑算法在基于精确帧预测情况下能证明它们能最优化上述两个性能指标,在非精确的帧预测情况下的实际模拟中和其它现存算法相比也显示出好的性能。

O中南大学博士学位论文

在第5章讨论了VBR视频磁盘上的安置问题。综合考虑视频的VBR特性、MZ磁盘的多率性质【l”’1”1和视频节目在一定的时间段内具有流行性问题11181,针对提高磁盘I/O效率,分别就单个磁盘和多个独立磁盘构成的组而提出了各自的比例安置算法,这一算法在理想的统计接纳模式下和其它现存算法相比具有良好的性能即能同时服务更多的视频流。

在第6章里专门讨论磁盘的高效率检索问题。集平滑技术和特殊的视频安置技术于一体,给出了几个特殊的磁盘I/O调度算法,它们包括:二次平滑算法,以最小的内存缓冲规划磁盘存取流,从而达到协调网络输出流:整数块平滑算法,利用平滑技术,结合磁盘块输入输出特性,提出整数块调度策略,这样可以提高单流的磁盘I,O带宽利用率:On-Off磁盘I/O调度算法,将网络上的On.Off传输原理引入磁盘I/O调度中,可以简化磁盘管理;检索平滑算法,以最小的缓冲区、尽可能平滑的磁盘I/O调度来规划视频文件的拆分和安置模式,最后得到尽可能高的磁盘I/O利用率,从而能服务更多的视频流数。其中检索平滑算法具有最好优化性能,以较小的系统内存资源可以获得VBR流的近CBR方式传输。

在第7章里对上述的工作进行了总结,并提出了进一步工作方向。最后用图1.8来描述各部分研究内容之间的关系,其中平滑技术贯穿于整个传输与调度过程。

图1.8研究内容之间的关系图

第2章视频服务器中网络I/O的调度

第2章视频服务器中网络I/O的调度

连续媒体(ContinuousMedia简称CM)或流媒体(Su'eamMedia)是指数字视频、声音和动画等这类对延时敏感的数据媒体。储存和管理这类媒体的服务器叫连续媒体服务器(即通常意义上的视频服务器),其主要功能是媒体文件的存储管理、磁盘I/O、缓冲及网口I/O调度等,为用户提供VoD服务。

本章主要研究视频服务器的网络I/O与缓冲调度问题,具体讨论流媒体数据从内存经网卡向网络输出,问题的背景是在多网卡或多网络I/O并行运行及轮转法服务调度的机制下,基于多任务调度原理和流媒体的实时特性,解决如何进行数据块输出调度、新流接纳及优化问题。以往的工作主要考虑缓冲区尺寸的计算和磁盘缓冲调度,而网络I/O调度和磁盘I/O调度相比,由于其在视频系统中资源相对丰富而被研究者所忽视,本章在这方面作了详细的探讨。

本章的以下部分是这样组织的:在第l节描述了具有多网络YO和多磁盘I/O的CM服务器的工作模型,并提出要解决的问题;第2节讨论了单网口时的输出量化计算与接纳控制;第3节详细地讨论了多网络I/O并行工作模型、随机调度方法及接纳控制;第4节研究了优化的调度方法和接纳计算问题,即带缓冲箱的多流多I/O并行调度算法。最后对3种调度策略进行了仿真模拟,得出带缓冲箱的调度具有较低的时间复杂度和高的带宽利用率。

2.1多网络I/O系统模型

一个能在Intemct上提供大规模VoD服务的视频系统由三个基本部分组成:流媒体服务器、通讯子网和客户端。流媒体服务器的基本功能模块分为:流媒体文件的组织与存储、检索、和缓冲调度,本章着重于缓冲调度。对于具有磁盘I/O多路并行输入和网络多端口并行输出的计算机而言其缓冲调度的工作模型如图2.1所示。

网口7主存主存哕h存/-嘻仨多磁盘I,0输入

多冈掰,0输出

{、卜

图2.1缓冲调度工作模型图

2中南大学博士学位论文

图中的存储视频数据经磁盘I/O多路并行输入,预先置入缓冲区,后经缓冲区由网口//O多路并行输出、或直接由专用数据通道传经网口并行输出到通讯子网。为更加清晰地描述工作模型,先定义几个概念:

定义1(数据块):在这里是最小的、不可分割的调度单位。它可以是文献[55】中CTL(constanttimelength)块、CDL(constantdatalength)块、RTL(roundtimelength)块177】或PL块(见第5章)。用,标识它的长度,z的取值和调度周期时长有关,在这里不妨假设它正比于周期时长。(这里的数据块概念类似于第5章中的存储块概念)定义2(流):是数据块的序列。流在服务器端是数据块周期性地被调度输出,在客户端是数据的连续消耗,如视频中的帧率。用i标识某一路流,流中每一块的长度是可知的,流的其它参数见表2.1。

表2.1流参数表

l流标识符晟小块长晟大块长平均块长—般块长

lil●l”!?b

定义3(调度周期T):是一个固定的、重复被执行的时间片段。规定在一个调度周期内要为每一路流调度一个数据块,块长是可变的。如采用轮转法调度,则令轮转法的调度周期时长为71,用,表示调度周期的顺序号,J∈{1,2…)。

若服务器在第,个调度周期正在为糟路流提供数据块调度服务,假定磁盘端口给出的块是及时的(假定磁盘I/0带宽是无限的,传输瓶颈在网络输出端。磁盘带宽的无限可以从两个方面来理解:一是具有独立存取能力的磁盘组数不断增加;二是单个磁盘输入流可以对应无数个面向用户的不同输出流,见第3章)。按照要求,在每一个调度周期,内必须完成相应nj个数据块的输出调度任务,由于三个方面的原因:在同一调度周期内各流之间的数据块长是不同的、在不同的调度周期内同一流的块长是变化的、网口输出带宽资源是有限的。为确保每一调度周期的完成,应仔细规划。下面就单网络I/O接口和多网络I/O接口两种情况下,讨论数据块的优化调度和新流接纳条件。

2.2单网络I『o调度

在单网络I/O情况下,所有的数据块从一个通道中输出,在第,个调度周期,设CM服务器的调度管理区正在为nj路视频流进行调度,在丁内对崎个流分别进行一次调度服务,对于同一流在不同的调度周期内,其被服务的相对顺序可以不同,如第f路流在前一周期被首次调度,在下一周期可以被最后调度(这要求客户缓冲区有足够两个周期内消耗的预缓冲数据)。令单个网络I/O的数据传输率是R,对于只有一个网络I/O出口的CM服务器来说,在第,个调度周期内其服务的流数砖(考虑CPU的处理速度很快,不影响数据传输)理论上应满足公式(1)。

第2章视颁服务器中网络I]O的调度

妻Iu+6≤R×r,J∈{1,2…)(1)

其中s表示CM服务器和客户之间的控制信息所占用的带宽之和,是一个小量。对#有两种处理方法:一是在近似计算中忽略它;二是在实际应用中控制信息和数据信息往往分道传输。以下基于后者来处理的。

当在第^个调度周期有新流S加入时,确保服务模式下的接纳条件是(2)式成立,其中M表示最后一个流被服务完所需的周期数。

上二

∑五+幻≤R×T,,∈协,声+1,-?’乒+鹏(2)计算(2)式的时间复杂度为O(M.n),其中聆=max协}。一步电影按2小时计

,qp,js+Mj

算,调度周期为1秒,对于能支持上千路流的服务器,其接纳计算量在百万次,在实时环境下是可以接受的。在通常的情况下,取各流中最大的块来计算,(2)式改写成(3)式,只有当(3)式不成立时才用(2)式去计算。各流中的最长块可从流的属性中得到,因而计算(3)式的时间复杂度为O(n)。

n+l

∑甲“≤R×T(3)2.3多网络I,o调度

若CM服务器具有P个并行的网络I]O,每一个网络I/O具有独立处理数据块的能力,一种情况是规定同一路流内的所有数据块只能从一个预先被分配的同一个通道输出,这种模型等同于单个多通道,接纳计算除了增加一个通道选择策略外,其余和单通道情况一样处理。在这里主要考虑另外一个情况,将流选择通道的方法由数据块来完成,即任意一流的每一个数据块可被调度到任意一个网络I/O通道输出,(CPU负责块调度,而网络I/O通道处理数据打包等问题)。

令P个网络I/O具有相同的数据传输率R,则每一个网络I/o通道在T内能输出的数据块长度为L=RXT。假定多磁盘I]O能及时地给出数据块,在第,个调度周期内只要直观地考虑nj个长度分别为矗的数据块,能全部装入长度为三的P个箱中,则说明冶个数据块能在,时间内能顺利从网络I/O端输出。这种情况等同于多个处理器中“一工作一处理器”的调度问题,每一个通道可看作一个处理器,每一个长度为la的数据块可看作是一个执行时间为矗的工作,其目的是决定是否所给工作能在时间三内完成。这个问题在文献【119】中称为Makespan问题,它是一个NP难闯题。

中南大学博士学位论文

2.3.1LS算法及数学描述

在13.个数据块无序的情况下,采用文献[120]的GrahamLS非空闲处理算法,新来的块总是被放入最空闲的通道中。为明确起见,在这里我们给出Graham算法。

Graham,sLS算法

给定:n个数据块。长度分别为九,2,…,,n。

结果:11个数据块在P个通道的分配结果。

1.fork=1toPdoM=0;{将所有通道中数据重设为0}。

2.fori=1tondo{将各数据块分配到各通道中去}。

选择通道k其数据量^靠最小:

Mk=Mk+^:f将数据块放于通道}

3.ifsomeMk>L

thenstop;fn个数据块不能在P个通道中在L时间完成}

elselet日=max{Mk};{分配成功}

令数据块r为Ls算法最后完成的数据块(即数据块r的完成时间是H),并假设数据块,的长度为h。Graham’sLS算法的调度结果如图2.2所示。

_

I‘一

__——

图2.2Graham’sLS算法结果图

由算法或图2.2看出,时间H—f,以内为非空闲,在f,以后被调度的块其开始时间都比h的要晚,用数学公式表示有:

H-l,-<!霎厶;Ⅳ≤一1刍n厶+^一1萎nPPP厶,

鲁等等

令翮川=古塾Er(M)=吉喜厶则腿Er(n)+f,一Er(M)。

其中牙(1,n)表示通道的平均工作时间,只要H≤L,所有的块都能在L时间内被处

第2章视频朋务器中网络I/O的调度

理。公式(4)说明了如果H的上限小于三,则所有的块在给定的时间内都能被处理。

H(I,门)一.H(‘”)+厶≤L(4)从图2.2可以得出下列一个事实。

事实1:如果一个数据块是厶,则说明在它后面被处理的所有块其长度都比f,小,而且有,,≥(∑:。l—r)/(p-1)。z表示调度的顺序数,x∈{1,2,…,r,…n)。

2.3.2随机调度及新流接纳

假定服务器正在为崎路流提供调度任务,用z≯=max{埘表示第,个周期中最大

。1日J州+ll

的块,当在第五个调度周期有新流J加入时,在LS策略下,其最坏的调度结果是厶取7尹,且在调度周期内最后被调度,此时可(r,琦+1)。吉7严。确保服务模式下新流接纳的条件由(4)式得到(5)式,其中M表示协个流中最后被服务完所需的周期数(包括新流),接纳算法为A1。

厨(1,吩+1)+型z?axsL,_,∈{乒,声+1,…,^+M)(5)

可(1,吩+1)中的下标表示第.,个调度周期中所有数据块之和对通道数求平均。若(5)式成立,就可以接纳新流,而与它在一个调度周期内被调度的次序无关。(5)式的时间复杂度同样为O(M-疗)。

随机调度算法A1

给定:M个调度周期及每一个周期的所有数据块。

结果:分配的结果。

Forj=1toM

Hfnot(5))

ReturnNo:

EndFor;ReturnOK;

2.4优化的调度及新流接纳

条件(4)式有两个可变参数n和厶。为提高n的值,优化的原则是厶越小越好,尽可能让较小的块成为厶。一个视频服务器可采用两种缓冲策略:一是采用双缓冲结构;另一个是采用单缓冲结构。在不同的策略下可对调度和新流的接纳算法进行一定的优化,以下分别讨论。

6中南大学博士学位论文

2.4.1双缓冲机制下的调度及新流接纳算法

对于具有双缓冲区的CM服务器:一个缓冲区存放输出数据,另~个缓冲区存放输入数据。这样的话,在调度之前n个数据块就已预置入缓冲区,有条件实现先排序、后调度。在n个数据块是排序的情况下,有h≥12≥h≥……≥,。,采用Graham的LPT【12”算法,即按照先大后小非空闲策略,可以获得好而稳定的调度结果,而随机调度的结果是不稳定。在这种情况下确保服务的接纳算法是A2。算法A2时间复杂度在O(M.1"l2)。根据上面提供的数字,算法A2的计算量达G的数量级。若有m个新流同时提出申请的话,这在实时环境下,要在一个调度周期内完成,将耗掉过多的CPU资源。

排宇调度算法A2

给定:M个调度周期及每一个周期的所有数据块。

结果:分配的结果。

For.-1toMfM表示n+1个流被调度完的绝对周期数}

Sort();{在第j个周期对n+1个数据块排序,

U(LS()>L)f调用Ls算法,若大于L)

ReturnNol

EndFor:ReturnOK:

2.4.2单缓冲机制下的调度及新流接纳算法

单缓冲机制下,磁盘输入的数据和等待网络输出的数据共享一个缓冲区,这种情况下数据块的到达是实时的、随机的。我们假定磁盘能及时给出数据块,且在共享缓冲区存在一块尺寸至少为口的数据滞留区(这可通过一定的延时,错开磁盘I/O调度周期和网络I/O调度周期),用来存放本调度周期无须立即发送的数据块。我们叫它为缓冲箱B,在这里叫缓冲箱是为了区别缓冲区。在上面提到,优化的方法就是让较小的块成为f,。从公式(5)看出,每次计算总是取本调度周期中最长的数据块作为矗且最后被调度。若在本调度周期将一些较短的块先放入缓冲箱B中,而在本调度周期末被调度,不让长数据块成为f,,这样可以减少Makespan的值,增加输出流量。

假定缓冲箱B能容纳m个数据块,其中o,/是一个变量,应满足条件了?。厶≤B茎>?厶。对于缓冲箱B设定一个阈值z;“,规定只有不大于阈值,≯的数据块才能进入B中。同样令f●=max{埘表示第_,个周期中最大的块。由事实1知,当

iti[1#/*lJ

目≥(p—1)×,●且填满数据块时,那么厶一定是缓冲箱内的某一块,若旦中的块采用J

随机调度时,在最坏的’隋况下取f,=,≯且是最后被处理。那么确保服务的新流接纳公式由(6)式表示:

第2章视频服务器中网络110的调度

可(1,悖+1)+掣曙“≤三,_,∈执fi+l,…,fl+M}(6)

当B中的块排序调度时,采用LPT算法时,其实际结果比(6)式要好。

现在来讨论占和?≯的取值问题。各调度周期的B可能不相同,为确保起见,B应按(7)式计算,取它的下限值,B值越大时,排序调度结果越好,但对(6)式的算法没有提高。

2(p一1)。IE。.1.1¥CmlYI。衅。,Team{f』m“}(7),尹的取值由(8)式确定,其中比例因子乃为小于1的正实数,如兄=0.5等,力的具体取值可以由经验估计(如小数据块所占的比例)和实时计算得到,见算法A3。

l。m“=力×P“,乃∈(o,1)(8)(6)式的前提是B被填满,但当没有足够的小块填充口时,如何计算接纳条件?用盯表示填充系数,B严表示第J个周期中数据块尺寸不大于,尹的所有块之和,取矿=(p一1)×,,“,有矽。=∞产。在垆<掣“情况下,那么成为f,的可能是缓冲箱外的某一块,或箱内的一块,当厶是缓冲箱外的某一块,在最坏的情况下取lr=,,,则箱中的m块必在7警之后被调度,那么调度结果的上限值为(9)式,注意(9)中要求Bd,ata<占ml“。

局s可(1,精+1)+,?“一二(口产”+,严)(9)

当,,是缓冲箱内的某一块时,(6)式仍然成立。在B不满时,为确保(6)式的结果,要求(9)式的上限小于(6)式的左项,有:

H—j(1,nv+1)+lj“一吉(垆+尹)≤聊Ⅲ1)+等伊,

得到。君严≥(1一乃)(p一1),≯,

得到盯≥(1一石)(10)由(10)知填充系数仃和比例因子丑有着反向关系,力越小即进入缓冲箱的块尺寸小,则缓冲箱越应填满。因此,当乃一定后,盯满足(10)式时,则新流的接纳可用(11)式进行计算,确保服务的接纳算法为A3。

、,面(1;崎+1)+乃型,P≤三,,∈{乒,乒+1,…,fi+M}(11)

中南大学博士学位论文

为算法书写方便,我们引入一个变量AL:上一【可(1,崎+1)+乃旦兰,?“],若

P’

ZkL≥0表示新流可以接受。

带缓冲箱的调度算法A3:

给定:M个调度周期及每个周期的所有块尺寸。

结果:接纳结果。

1.乃=Zo,七一∞=O.05:

{初始化所有的五,如取20=O.5,及五变化的步长厶”,如取以”=O.05}2.ForJ=1toM

3.corn呻B?”;

4.W}1ile(100p==con曲ue)

computeB。”.盯:

Casel:(盯≥(1一乃)andAt,≥0)Admission=OK,loop=exit;

Case2:(仃>(1一丑)andAT.<0)乃=乃一九印,loop=continue

Case3:(仃<(1一乃)andAT.>0)乃=乃-4-兄",loop=continue:

Case4:(仃<(1一丑)andAT.<0)

Clean(五),Return(Admission=NO);

{清除本次设置的所有乃,返回接纳被拒绝}

Endwhile:

5.Record(丑);{记住元,以后实际调度时要用到)

6.Endfor;

7.Return(Admission=o】K):

A3的算法中有3个循环:一个是For循环,循环次数不大于M(M的数值在前面己给出):另一个是While循环,循环次数取决于步长兄印,其循环量是有界的:主要一个是△上的计算,其计算量是n。所以A3的时间复杂度是O(cM?押),优于算法A2。

2.5仿真结果及性能评价

数据块特性:若轮转法调度周期的时间取1秒,对于以MPEG-1恒质量压缩的视频流,其数据长度在0-2Mb之间;以MPEG.2恒质量压缩的视频流,其数据长度在2-8Mb之间。我们仿真实验中的数据来自[114],MPEGTrace的名字为atp(ATPTenmsFinal1994:Becker-Sampras),用的是MPEG-1编码器。

本文来源:https://www.bwwdw.com/article/m1jq.html

Top