(计算机软件与理论专业论文)流媒体的自适应传输.pdf_第1页
(计算机软件与理论专业论文)流媒体的自适应传输.pdf_第2页
(计算机软件与理论专业论文)流媒体的自适应传输.pdf_第3页
(计算机软件与理论专业论文)流媒体的自适应传输.pdf_第4页
(计算机软件与理论专业论文)流媒体的自适应传输.pdf_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学科:计算机软件与理论流媒体的自适应传输的不确定性,带宽、延时以及丢包率等网络参数不可预测的变化随时都可能造成客户端监控图像的停顿甚至中断的情况发生。为了解决在不确定的网络环境下的视频传输问题。必须对传输系统进行自适应传输控制。本论文研究的就是以远程监控为背景的流媒体自适应传输。本文首先从i n t e m e t 网络流量入手进行研究,深入地研究了i n t e m e t 网络流量特点以及对流媒体传输的特点,并尝试实现个流量模拟器,用以模拟流媒体传输的试验环境。在这个基础上,研究了自适应传输的策略,选择了适用用于复杂网络环境的主动探测的线性增加成倍减少的自适应传输策略,并在对这个算法进行了改进。发送端主动探测当前网络状况,并实时调整发送的速率;接收端对于接收到的媒体流进行统计并实时地向发送端反馈。根据流媒体传输的特点以及i n t e r n e t 网络传输的特性,本文中采用r t p u d p 的方式传送媒体流,网络状况则是根据r t c p 的反馈报告。流媒体的自适应传输系统使用j a v a 语言实现,采用了反馈控制的自适应控制模型和改进的线性增加成倍减少的传输策略。论文的最后在四种不同特点的网络环境下,对自适应传输与非自适应传输的传输效果进行了对比验,试验结果验证了自适应传输系统的可行性。关键词:流媒体,自适应传输,拥塞控制,h 2 6 3 ,网络流量t h ea d a p t i v et r a n s m i s s i o nt e c h n o l o g yo fs t r e a m i n gm e d i as u b j e c t :c o m p u t e rs o a r ea n dt h e o r ys i g n a t u r eo fg r a d u a t es t u d e n t :7 - 柳。peivisosignaturef s u p e r v i s o 礴:k 五“仫移一。礴:k 泌“扒彳 6 时,速率大于3 8 4 k b p s ,图像清晰度较好,适用于电视会议f 2 j o1 9 9 6 年i t u 在h 2 6 1 的基础上推出了h 2 6 3 。h 2 6 3 在许多方面对h 2 6 1进行了改进和补充,如在编码算法复杂度增加很少的基础上提供更好的图像质量和更低的速率,十分适合l p 视频会议、可视电话应用。h 2 6 3 建议是专为中高质量运动图像压缩所设计的低码率图像压缩标准。与h 2 6 1 的d 6 4 k 的传输码率相比,h 2 6 3 的码率更低:单位码率可以小于6 4 k ;支持4 c i f ( 7 0 4 5 7 6 ) 、c i f ( 3 5 2 2 8 8 ) 、q ( 2 1 f ( 1 7 6 x 1 4 4 ) 甚至s o c l f ( 1 2 8 9 6 ) 等多种图像分辨率;它是可变速率编码压缩算法,编码器采用自适应量化器来控制码率,可以允许在图像质量和图像连续性( 帧率) 之间进行取舍:h 2 6 3 的编码速度快,设汁编码延时不超过1 5 0 m s ;码率低,在5 1 2 k 乃至3 8 4 k 带宽下仍可以得到满意的图像效果,十分适用于需要双向编解码并实时传输以及网络条件不是很好的场合f 2 ,5 】。1 2 ,4 自适应传输制约流媒体传输的关键在于互联网的服务质量( o o s ) ,流媒体从理论上解决了大容量网络多媒体数据传输的实时性要求的问题,但是由于大型分组交换网络( 例,o f l i n t e m e t ) 中数据传输受到诸多因素的影响,网络的状况具有不确定性,其带宽、负荷等的变化难以满足流媒体宽带业务的实时性服务的质量要求,从而造成播放卡壳、延迟、视频抖动剧烈,给使用者感官造成很大影响,所以要解决这个问题必须使用自适应传输技术对传输进行控制。流媒体之所以能够实现多媒体数据的实时播放,是采用了专门的网络传输协议( r t p ,r t c p 等) 和数据传输机制。服务器端有专门的流媒体发布系统,而客户端则有专门的播放器,这两个部分都需要通过数据缓存区进行数据的缓存。流媒体系统示意图如图1 4 1 ”。两安:f :业学院硕士学位论文图1 4 :流媒体系统示意图解决流媒体系统的服务质量问题一般有两种方法:首先是采取高效率的传输算法;其次采取高效率的编码标准。虽然目前视频编码技术发展非常迅速,但是服务质量问题并没有得到根本的解决,所以本课题探讨高效率的传输问题。即自适应的传输问题。早期的流媒体服务器通过网络向客户端实时传送媒体信息时,由于媒体编码采用固定速率编码,不能根据网络状况迸行动态调整编码速率,如果网络带宽达不到编码速率要求时,就会出现播放停滞和马赛克等情况。显然这种模式不适合在i n t e r n e t 这样复杂网络条件下进行流媒体传输。目前一些主流流媒体系统中,采用了预先网络条件测试的方法,流媒体服务器事先对同一节目准备了几种不同数据量的版本,当收到服务请求时,先测试请求者的网络带宽,然后根据得到的测试结果自动选择发送的版本。这种模式下,可以自动根据网络条件为用户提供适应带宽要求的多媒体内容,因此相对于早期的固定模式来说,更有利于多媒体的流畅播放。但是这种模式只考虑了接入者预测时的网络状况,忽略了传输过程中的网络状况的变化,实际的网络状况往往变化很大,使得多媒体传输速率发生变化,从而导致数据的上溢和下溢,导致客户播放时出现跳帧和停滞等情况。道,一、- 一 1 i * 日;-。一葺击一图1 5 :自适应网络带宽的流媒体系统流媒体系统要适应不稳定的网络状况,克服网络状况不确定所造成的影响,就必须使用自适应发送策略来保证视频服务的质量和实时性,所以自适应网络带宽的流媒体传送技术也随之产生。自适应传输控制技术利用了自适应控制技术、模糊控制技术、反馈与前馈控制技术等。如图1 5 所示,与传统的流媒体传输系统不同之处在于流媒体服务器中增加了一个新的功能模块自适应传输调节控制器。它实时i l i 控网络传输状况,并调节服务器端的数掘传输速度来保证客户端能够流畅橘放。山于自适应传输调节控制器中能够实时监控网络? 状况所以能够最大限度地_ 乖4 用网络带宽n_l_1l两安_ 上业学院硕士学位论文1 3 论文主要工作要使流媒体能够顺利的通过复杂的网络环境,必须对网络流量特点以及网络流量参数对流媒体传输的影响进行研究,在此基础上再对流媒体自适应传输进j 于研究。本论文围绕流媒体的自适应传输,从i n t e r n e t 网络流量以及流媒体传输的特雎开始着手,并研究了自适应传输的相关理论,论文尝试了一个网络流量的模拟器,用来模拟实际网络的流量,希望能够作为流媒体自适应传输的试验环境:最后实现了一个自适应的流媒体传输系统,并对这个系统做了实际的测试。1 3 2 流媒体自适应传输系统本课题中涉及到的自适应传输理论包括:自适应控制、拥塞控制、差错控制以及可变速率编码技术等。本课题中对这些技术进行了深入的探讨和研究。在对网络流量、自适应传输理论的研究以及总结前人成果的基础上,本课题奖现一个流媒体的自适应传输系统,并在最后给出了自适应与非自适应对比的测试对比。1 3 1 网络流量模拟对予网络流量的研究是流媒体传输的基础,本文探讨了网络延时、丢包率以及带宽等参数对流媒体传输的影响;并对延时和丢包率等几个对流媒体传输起关键作用的参数进行建模并在实验室环境中对这些参数模拟,进而模拟现实的网络环境。在这个模拟的网络环境下,可以方便的对流媒体传输迸行研究,同时也可以在这个环境对流媒体传输系统进行测试。1 d 研究意义计算机网络在过去的十几年中经历了爆炸式的增长,特别是i n t e r n e t 的出现对我们的生活影响越来越大。随之网络硬件的改善以及新的网络标准、协议的j i ! 现,在i n t e r n e t 这种带宽较窄的异构网上进行多媒体传输逐渐成为现实。应用的改变导致现有的网络传输方式已经不能满足i = 1 益增长的用户需求。传统的网络协议是为了传送数据资料而设计的,没有把视频音频等媒体数据考虑进去:传统的传输协议对传输的准确性要求非常高,没有实时性的要求,而媒体数据j ; 勺传输则强调实时性,同时允许在传输时出现一定的失真i 7 1 。目前实时媒体数掘晌传输一般采用r t p u d p 的方式柬传送,虽然这个传输方式非常适合实时数据的传输,但是这种方式本身没有自适应机制,所以在复杂的网络环境中,这种传输方式仍然不能保证媒体流在客户端能够被流畅的播放出来。为了保证实7两安。i :业学院硕十学位论文时流媒体的数据能够以最适合网络的速率在i n t e r n e t 网络中传输,必须对实时流媒体的传输过程加以控制。目前虽然对网络流量的研究很多,但是适用于针对流媒体传输研究的网络环境却很少。如果能够在实验室中模拟出各种网络环境,在这个实验室环境中就可以初步验证流媒体传输系统的性能以及传输算法的效率等,可以提高研究效率,节约成本。基于这个目的,我们对流量模拟器进行了研究,并尝试实现这样的一个模拟器,如果能够实现这样一个专门应用于流媒体传输研究的模拟器,本 文中的许多测试任务就可以在此试验环境中进行。目前视频压缩标准已经日趋成熟,媒体流的数据量不会有太大的改善;同时网络环境一旦确定,传输率也将不会有很大的提高。综合上述两点,为了在复杂网络中传输数据量大、突发性强、实时性要求高的媒体流时,就必须采用比较完善的的传输算法和传输策略来适应这些复杂的网络。本论文从这些方面出发,深入探讨在复杂网络环境中传输实时媒体数据的问题。1 5 流媒体传输技术的研究现状研究流媒体传输技术主要从两个方面着手:网络传输技术和视频编码技术。视频编码技术考虑的是数据量的问题,而网络传输技术在考虑的是数据在线路上的传输问题。目前视频编码技术发展已经同趋成熟,媒体流的数据也不可能有很大的提高,所以本文研究重点是网络传输。1 5 1 流媒体传输的试验环境对流媒体传输系统进行研究时需要各种复杂的网络环境,这种试验环境还不多,国内外致力于网络流量研究的机构虽然很多,但是成熟的产品只有s h u n r a公司的c 】o u d 软件。所以本文尝试对网络流量进行模拟,进而创建一个能够进行流媒体传输研究的实验室环境。1 5 2 视频编码技术目前数字视频压缩编码技术已经相当成熟,国际上两大视频标准研究机构的推出的视频编码技术也逐步走向融合。i t u 致力于低码率视频的研究,制定了h 2 6 x 系列建议,在低速网络中有广泛的应用,特别是h 2 6 3 的编码速率可以达到6 4 k b p s 以下,对带宽很小的网络状况有较强的适应性。正是看到了h 2 6 3的优异的性能,i s o i e c 也加入了i t u 的h + 2 6 l 计划,成立了联合视频组( j o i n tv i d e o t e a m ,j v t ) ,并于2 0 0 3 年第二季度发布了高级视频编码( a d v a n c e d v i d e oc o d i n g ,a v c ) ,这个标准在i t u 系列建议中a v c 被穆为h 。2 6 4 ,在i s o e c系列标准l ia v c 被称为m p e g 4 1 0 a v c ( 或者1 4 4 9 6 1 0 a v c ) 1 2 1 。阳安。r 业学院硕十学位论文h 2 6 4 m p e g 4 1 0a v c ( 以下简称h 2 6 4 ) 编码标准与现有的视频编码标准相比较有了明显的改进。试验数据表明:h 2 6 4 相对于m p e g 4 、h 2 6 3 、m p e g 2 评价码率降低分别为4 1 、5 2 和6 7 ,但是h 2 6 4 的高性能要付出代价的,相对于m p e g 2 h 2 6 4 编码器复杂度增加5 倍,解码器增加3 倍。编解码的复杂度限制了h ,2 6 4 的应用目前主要出硬件来实现编码。但是随着计算机软硬件的发展,h 2 6 4 必将成为视频编码标准的主流。1 5 3 流媒体的传输技术目前对网络流量的研究大部分是基于传统网络业务流的研究,对多媒体数据流的研究只是最近几年才开始。流媒体的一些解决方案就是基于对传统业务流的研究,例如基于模型的拥塞控制方法就是基于传统业务模型的算法。多媒体流的实时传输对带宽和延迟比较敏感,要求有一定的服务质量保证。而i n t e r a c t 只提供尽力而为( b e s te f f o r t ) 的服务,它的带宽、延迟等是随时变化的。仅仅传统的传输协议无法满足多媒体流的实时传输需求。为解决这些问题,互联网工程任务组i e t f 推出了更高效的r t p r t c p 传输协议。虽然在复杂的网络环境中使用的r t p 协议非常适合传输实时流数据,但是只靠r t p r t c p 本身不能解决网络拥塞和传输错误等问题f 9 i 。为了使媒体流能够自动适应网络状况,必须在传输系统( 服务器端、客户端) 中加入自适应传输的功能。目前国内夕 对于拥塞控制的研究主要在以下几个方面l8 】;基于源端的拥塞控制,发送方根据当前的网络状况动态的调整发送速率。基于网络的拥塞控制,由路由器对那些占用了超过公平情况下带宽份额的数据流进行惩罚,即丢弃大多数该数据流的数据包。基于目的端的拥塞控制,接收方根据当前网络状况及相关参数动态加入或推出不同的会话过程。目前对于拥塞控制的研究大部分集中在基于源端的拥塞控制,大部分仍然针对t c p 这种传统的方式进行拥塞控制的研究。基于r t p f f c p 传输方式的拥塞控制主要借鉴了传统的传输方式。1 6 论文结构安排论文首先介绍了本课题的研究背景以及研究现状,然后综合介绍了流媒体题传输中使用到的各种技术,对这些技术进行深入研究和比较的基础上,选择了适合本课题的传输协议和视频编码标准。第一章主要介绍了流媒体的自适应传输的课题背景、磷究现状以及本沦文的1 i 凄丁作。第:二章中介绍了流媒体自适应传输系统的总体设计思想,从整体| i 对自适应传输系统进行晓明。9阳安i :业学院硕+ 学位论文第三章介绍了流;! ! f f 体自适应传输系统涉及到的技术,包括视频编码技术、传输协议和自适应传输技术。第四章介绍了流媒体自适应传输系统的实现。本章首先介绍了丌发工具;紧接着介绍了自适应传输系统的关键模块的实现以及系统设计:然后介绍了网络流量的研究,并介绍了网络流量器的详细设计;最后介绍了流媒体自适应传输系统与没有自适应传输控制的流媒体传输系统的传输效果进行了测试和结果分析。本文中用到的常用缩略语参见正文前面的常用缩略语表。1 0自适应传输的总体殴计2 自适应传输系统的总体设计流媒体虽然在理论上能够解决大容量网络多媒体数据传输的实时性要求问题,但是网络自身的不确定性,其带宽、延时等的变化很容易对流媒体传输造成不良影响,比如客户端播故的停顿、抖动甚至停止播放等:目前的视频压缩编码技术已经日趋完善,媒体流的数据量不可能有很大的改善。本文研究重点就是利用目前的视频编码技术,使流媒体流畅的通过复杂多变的网络,要使流媒体流畅的通过复杂多变的网络,必须对网络流量进行研究,在对网络流量和流媒体传输等问题研究的基础上才能对流媒体的自适应传输展开研究。本文从网络流量入手开始研究,研究了带宽、延时和丢包率对流媒体传输的影响,提出了流量模拟器的想法,希望能够实现一个流量的模拟器,使之能够模拟各种网络环境下的流量。在这个模拟的流量环境下,可以更加方便的对流媒体传输进行研究和测试。流媒体的自适应传输是远程视频监控的一部分,授权用户有可能在网络连接到的任何地方接收监控信息。考虑到视频在复杂的网络环境传输,视频编码必须对低带宽的网络环境有非常强的适应能力;同时编解码的速度能够满足监控信息的实时性等问题,系统的视频编码标准必须能够实现可变速率编码,而且在低带宽的环境中也能有比较好的效果,同时编解码必须能够保证实时性。综合考虑这些因素,本文的视频编码标准是h 。2 6 3 ,论文中自适应传输系统的结构如下图。自适应功能主要由发送端来实现,所以本文重点实现了发送端的功能;接收端的主要功能是向发送端反馈网络状况的信息。为了方便研究,本文的网络试验环境是由流量模拟器模拟的网络环境。它能够模拟真实网络环境中的带宽、延时以及丢包等参数。图2 1 :使用网络模拟器的流媒体传输试验2 , 1 流媒体自适应传输系统自适应传输系统的主要功能出发送端实现,接收端实现的是反馈网络状况的功能。所以设计臼适应传输系统的时候,主要考虑实现自适应传输系统发送端,接收端尽量利用现有的软件( 只要接收端软件能够实现反馈网络状况的功能) ,这样考虑优点是:两安_ - 1 3 1 k 学院硕一k 学位论文系统的通用性比较好。系统结构比较简单,容易实现。2 1 1 总体设计自适应传输系统结构图如图2 2 :自适应传输系统在功能上主要包括视频的自适应编解码模块、自适应发送模块、网络状况处理模块以及自适应传输策略模块四个功能模块。潞 爿黜竺竺、芒芝竺-一1 一一广网络t匮蚋习_ 、七i f图2 2 :自适应传输系统总体结构自适应编码模块主要功能对视频文件( 或视频捕捉设备) 提供的视频数据进行编码,为自适应发送模块提供能够适合当前带宽的多媒体数据流。自适应发送模块则是对媒体流进行打包并发送。网络状况处理模块主要功能是实时监控当前网络状况信息,对当前的网络状况做出判断,并对下一时刻的网络状况做出预测。自适应编码和自适应发送都是根据它的判断和预测做出反应。应传输策略模块根据网络状况向自适应编码模块发送控制信息,控制编码器的晌编码过程,使编码器输出的视频流适合当前网络状况,它是整个系统的核一c 、。自适应传输系统在结构上设计为:h 2 6 3 编解码器、网络状况监控、r t p任务管理器三部分。对应于总体结构,自适应编辑码模块的功能由h 2 6 3 编解码器实现;自适应发送模块由r t p 任务管理器实现;自适应策略和网络状况处理模块的功能由网络状况监控来实现。功能设计如图2 1 3 。2 1 2 自适应编码图2 3 自适应传输系统设计原理图h 2 6 3 编解码器在可以输入h 2 6 3 流,也可以输入其他格式的媒体流,经过棚应的解码器进行解码,将媒体流转换为通用中间格式;h 2 6 3 编码器根据控制信息提供的参数对中间 辛 式的媒体流进行编码。经过编码的h 2 6 3 媒体流山r t p 任务管理器士j 包并发送。过程如图2 4 所示。根据控制信息编码器可以编码输不同码率怕h 2 6 3 流,码率越小,图像质量越低,码率越高,图像质1 2 | i ;i 安i i 业学院硕+ 学位论文量就越高。降低码率的代价就是牺牲图像质量、帧速率,同时得到了流畅的图像。f 1 1 2 6 1h ,j 、* _ i 1对:蠢_ 陋i 二三i ;一潞i 一。【i :l j。一! 兰! _ |w 筋,糖水丹尽图2 4h 2 6 3 编码器设计原理图网络状况监控的功能实际上完成了网络状况处理模块和自适应传输策略模块的功能。它根据r t c p 反馈报告对网络状况进行评估,然后向h 2 6 3 编解码器发送控制信息。2 2 1 自适应模型与传输策略自适应传输系统是一个反馈的控制系统。如图2 5 所示,网络状况信息由客户端向服务器端的网络状况处理模块发送网络状况报告。网络状况处理模块根据报告得到当前网络参数,然后预测下一时刻网络状况,此后自适应编码模块和自适应发送模块根据它预测的网络状况来发送适合当前网络状况的视频流。图2 5 :自适应传输控制模型流媒体的自适应传输策略主要针对网络拥塞和传输错误这两个问题。在源端( 服务器) 的控制主要是对拥塞进行控制,而处理传输中的错误主要是由客户端来完成。本论文中使用的是基于服务器端的拥塞控制方法。在论文中使用了基于探测的自适应控制方法:线性增加成倍减少算法,并在大量试验的基础上对这个算法进行了改进。传统的线性增加成倍减少算法经常会引起网络流量的抖动:迅速减少的的同时导致了网络质量的暂时好转,但是随后的增加的带宽又极可能导致网络状况再次恶化,然后接着减小发送速率,造成网络的抖动。改进的算法尽量避免这种情况的发生:发送速率的减小程度跟网络状况联系,网络状况非常差的时候,发送速率下降也快。如果网络状况得到一定的改善,发送速率也会缓慢减小。2 2 网络流量模拟器由于流媒体数据量大,实时性要求高,加上目前网络质量不是特别理想4 , 1 j ) j l j 足征i n t e r n e l 擘输i 卜f ,4 i 可避免会发生丢包和延时,甚至发生网络捌鏖现这种情况叫,客户端播放叫就会 现丽而质量下降、停顿甚至丽而停【e 。两安- l 业学院硕士学位论文为了保证流媒体能够流畅的播放,除了保证带宽外,对丢包和延时也有一定的要求。与传统的业务流相比,媒体流的传输有自身的特点:数据量大、突发性强而且对实时性的要求也非常高。流媒体在复杂网络中传输,必须适应复杂多变的网络状况。流媒体传输对网络有比较高的要求,带宽、延时以及丢包率等参数都有一定的要求。对流媒体传输系统进行测试时也需要多种复杂的网络环境,实验室中不可能具有这么多样网络试验条件,为进行网络流媒体传输的研究,本文对网络流量进行了测试和模拟,希望能够对网络参数进行建模并模拟,设计一个网络流量模拟器,用来建立一个能够模拟真实网络参数的试验环境,如下图所示。实验室网络环境单一,如果流量模拟器能够在模拟不同的网络环境,就会极大的方便流媒体传输的研究。 雌,:匿中专 v 、号f 。f 网络流量模拟器 _ 型吁感;一自t g * #图2 6 :流媒体传输的试验环境流量模拟器是对流媒体数据进行存储转发:首先模拟器接收发送端发送的流媒体数据包,将这些数据包放入接收缓冲,并对缓冲中的数据包根据策略进行处理,放入发送缓冲中,发送时验证各个数据包是否被允许发送,如果条件满足则发送。流量模拟器由发送缓冲、策略模块以及接收缓冲三部分组成。接收缓冲用来缓冲接收的网络数据,经过策略模块处理的数据进入发送缓冲等待发送,策略则是根据实际网络环境定义的。模拟器的接收发送过程如下图2 7和图2 8 所示。i 划2 7 :接收线利曲 ,一t : 是_ 4c 一c - i 划2 8 :发送线稗自适应传输的关键技术3 自适应传输的关键技术流媒体自适应传输技术中使用到的关键技术主要包括视频编码技术、传输协议以及自适应技术三个方面。3 1 传输协议网络协议通常被划分为不同的几个层次,每一层分别负责不同的通信功能。t c p 1 p 协议簇就是一组在不同层次上共同工作的多个协议的组合【1 7 i 。t c p i p 通常被认为是一个四层协议系统,如图3 1 :应用层传输层嘲络层链路层t e l n e t 、f i p 、r t p r t c p 警1 p 、i c m p 和i g m p设备驱动程序以及接口| 墨| 3 1 :t c p i p 协议簇链路层( 数据链路层或网络接口层) ,通常包括操作系统中的设各驱动程序和计算机中定义的网络接口卡。它们处理与电缆( 或其他任何传输媒介) 的网络接l = :_ 细节。网络层( 互联网层) ,处理分组在网络中的活动,例如分组的选路。在t c p i p 协议族中,网络层协议包括i p 协议( 网际协议) ,i c m p 协议( i n t e r n e t互联网控制报文扔议) ,以及i g m p 协议( i n t e r n e t 组管理协议) 。传输层主要为两台主机上的应用程序提供端到端的通信。在t c p p 协议簇巾,有两个不相同的传输协议:t c p ( 传输控制协议) 和u d p ( 用户数据报眺议) 。t c p 为两台主机提供高可靠性的数据通信:把数据分成合适的小块交给下而的网络层,确认接收到的分组,设置发送最后确认分组的超时时间等。u d p则为应用层提供一种非常简单的服务:它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必需的可靠性必须山应用层来完成,比如流媒体传输系统中,可靠性就是由应用层协议r t p r t c p ( 实时传输协议实时传输控制协议) 完成。应用层负责处理特定的应用程序的细节。西安工业学院硕士学位论文3 1 1t c p u d p传输层提供了两种不同的传输协议1 1 2 , 1 3 , 2 6 】:传输控制协议( t c p ) 和用户数据报协议( u d p ) 。( 一) 、传输控制协议t c p 和u d p 的传输使用了相同的网络层( i p ) ,t c p 提供服务与u d p 的完全不同。t c p 提供一种面向连接的、可靠的字节流服务,而u d p 提供的是非面向连接的、不可靠的服务。面向连接意味着两个使用t c p 的应用在彼此交换数据之前必须先建立一个t c p 连接,并且在建立连接后,只有双方进行彼此通信。t c p 通过下列方式来提供可靠性:应用数据被分割成t c p 认为最适合发送的数据块。由t c p 传递给i p的信息单位称为报文段或段。当t c p 发出一个段后,启动一个定时器,等待目的端确认收到这个报文端。如果不能及时收到确认,将重发这个报文段。当t c p 收到发自t c p 连接另一端的数据,它将发送一个确认。t c p 将保持它首部和数据的检验和。如果收到的检验和有差错,t c p将丢弃这个报文端同时不确认收到此报文段。如果必要,t c p 将对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层。既然l p 数据报会发生重复,t c p 的接收端必须丢弃重复的数据。t c p 能提供流量控制。t c p 连接的每一方都有固定大小的缓冲空间。t c p 的接收端只允许另一端发送接收端缓冲区所能接纳的数据,防止缓冲区溢出。t c p 提供了一种可靠的面向连接的字节流传输层服务,许多流行的应用程序都使用t c p ,比如:t e l n e t 、r l o g i n 、f r p 和s m t p 等【5 1 。( 二) 、用户数据报协议u d p 是一个简单的面向数据报的传输层协议:进程的每一个输出操作都正好产生一个u d p 数据报,并组装成一份待发送的i p 数掘报。u d p 不提供可靠性:它把应用程序传给i p 层的数据发送出去,但是并不保证他们能够到达目的地。u d p 报文的格式如图3 2 ,u d p 报头各字段定义如图3 3 所示。hi p h # m h 一u d p 镕推一r0 醚r 瓣r i 竺蔓毒,幽3 2 :u d p 封装阿安:l :业学院硕士学位论文1 6 扯埠端i l 峙1 6 忙 i 枘坫1 1 q】6 口u d p 硅鹰啦船f 目* 青)幽3 3 :u d p 数据报u d p 长度字段指的是u d p 报头和数据长度之和,所以这个字段最小值是8 ( u d p 报头的长度) 。u d p 检验和覆盖u d p 报头和u d p 数据,与t c p 不同,u d p 检验和是可选的。若检验和的值为0 ,则说明发送端没有计算检验和。理论上,i p 数据报的最大长度是6 5 5 3 5 字节,这是由于i p 报头的1 6 位的长度字段所限制的。除去2 0 字节的i p 报头和8 个字节的u d p 报头,u d p 数据报中用户数据最大长度位6 5 5 0 7 字节。但是大部分情况下,u d p 数据长度要比这个值要小的多。原因有两个:首先应用程序受到其程序接口的限制。s o c k e ta p i 提供了一个可供应用程序调用的函数来设置接收和发送缓存的长度。对于u d ps o c k e t 来说,这个长度与应用程序可以读写的最大u d p 数据报的长度有关。现在大部分系统都默认提供了可读写大于8 1 9 2 字节的u d p 数据报( 默认值是8 1 9 2 字节) 。其次,t c p i p 的内核可能存在一些特性( 或差错) ,这就使得i p 数据报小于6 5 5 3 5 字节。例如,使用s o c k 程序对不同数据报长度进行试验,在s u n o s 4 1 3 下使用环回接口的最大i p 数据报长度是3 2 7 6 7 字节。从b s d 3 8 6 到s u n o s4 1 3 ,s u n 能接收最大数据报长度为3 2 7 8 6 字节。在s o l a r i s 2 2下使用环回接口,最大可收发6 5 5 3 5 字节的i p 数据报,从s o l a r i s 2 2 到a i x 3 2 2 ,发送的l p 数据报长度最大可以是6 5 5 3 5 。显然这个限制与源端和目的端有直接关系 5 l 。3 1 2r t c p r t pr t p ( r e a l t i m e t r a n s p o r tp r o t o c 0 1 ) 是针对多媒体数据流传输的一个应用层协议。通常使用u d p 来传送数据,但r t p 也可以在t c p 或a t m 等其他协议之f :工作。砌r p 允许用户了解、调整甚至制定连续媒体的打包方案,充分体现了应用层分帧这一现代通信协议的设计思想。由于该协议能够确保具体应用对于每一个r t p 包所携带的数掘内容有足够的了解,因而使得应用程序可以根据r t p 包头的顺序号、时间戳等内容及连续媒体的编码方式的特点,有效的判断各种差错以及网络流量的变化对于实时数据的传输质量的影响程度,并在考虑具体应用的特点、网络环境等因素的基础上,选用最为恰当的方法灵活的完成j | :| 塞控制、差错控制、同步控制等任务以更好的满足实时应用的要求。整个r 1 1 p 阱议包括两个部分:负责数据传输的r t p 和负责控制的r t c p 。虽然r t p 协议是为多媒体数拆:流传输而没计,但是其用途不仅限于此,7两安 :业学院硕士学位论文r t p 协汉还可以用于连续数据的存储交互式分布仿真和一些控制、测量的应用中。r t p 协议本身包括两部分:r t p 数据传输协议和r t c p 传输控制协议。为了可靠、高效的传送实时数据,r t p 和r t c p 必须配合使用。r t p ( 实时传输协议) 主要用于传输多媒体数据流,并通过包头时间参数的配置使其具有实时的特征。r t c p ( 实时传输控制协议) 主要用于周期的传送r t c p 包,监视r t p 传输的服务质量。在r t c p 包中,含有已发送的数据包的数量、丢失的数据包的数量等统计资料。因此,服务器可以利用这些信息动态的改变传输速率,甚至改变有效负荷类型,实现流量控制和拥塞控制。r t p 提供端到端网络传输功能。适合通过组播和点播传送实时数据,如视频、音频和仿真数据。r t p 没有涉及资源预定和质量保证等实时服务,r t c p扩充数据传输以允许监控数据传送,提供最小的控制和识别功能。r t p 的报文格式如图3 4 :! l ! lx lc cl m l净荷类型序列号时目碡屙步穗标记符贡献潭标诹特( 1 )贡献瓣标讽符( n )。耋。图3 4 :r t p 报文格式v ( 版本) 字段表明所用r t p 的版本,p 是填充位,x 为扩展标记用于以后定义和添加基本头部的扩展部分。在多播会话中,每个对会话起作用的( 而不是被动接收) 的参与者被称为贡献源( c o n t r i b u t i n gs o l l c e ,简记c s r c ) ,并且由一个3 2 位的标识符唯一确定。通常这个标识符是源的i p 地址。在多播会话过程中,为了传送的需要,来自多个源的报文流将通过混合器( m i x e r ) 进行复接。因此复用的r t p 报文可能包括来自不同源的数字化信息块( 或帧) ,为了使接收端能够正确的将每个块( 或帧)与参与者对应,在新报文的头部就必须设置一个c s r c 标识符。报文中这个标识符的个数在存储在c s r c 计数( c c ) 字段中,这是一个4 位的字段,所以在r t p 报文的头部最多可以存储1 5 个贡献源( 即1 5 个c s r c 标识符) 。标志位m ( m a k e r ) 标明的是处在数据块( 1 唢) 边界上的报文,不同类型的音频视频编解码器产生的比特流是由一个数据块( 帧) 的序列组成,每一块( 帧) 都有唯一的一个起始和终止分界符。序号字段用于检测丢失或无序报文,如果有报文丢失,通常的做法是将晟近正确收到的报文内容替补到这个位置上。若收到的无序报文,在将先到的报文缓存。净衙类型宁段标 ! l :| 了用于对报文数据进行编码的编码器类型。每个报文都西安:l :业学院硕士学位论文包含这个字段,如果网路服务质量发生改变,那么在一次会话中所用的编码器类型也可以发生改变。这位今后设计流媒体自适应传输方案提供了一种手段。时问戳字段标明生成报文的时间参考,用于判断当前的平均传输延时以及延时抖动。这个信息连同丢失的报文数构成了当前网络的服务质量,这些信息周期性的由r t c p 数据报返回给发送端。流媒体自适应传输最基本的原理就是根据服务质量的变化,实时改变r t p 发送的数据量。同步源标识符( s s r c ) 字段指明产生报文内容的源设备。比如,一次视频会议中,每个贡献源产生的数据可能来自于不同的设备,这就需要用s s r c来表弱源信息来自哪个设备。图3 5 是r t p 的工作原理。重蝉悱信息褫巨叵圈f 茧司m n、j巴幢回、。曝避i 篁 亟固,m图3 5 :r t p 工作原理当r t p 工作于一对多的传输情况下时,依靠底层网络实现组播,利用r t po v c ru d p 模式实现组播的传输就是其典型应用。r t p 传输协议有以下几个特点:( 一) 、协议灵活性r t p 协议不具备传输层协议的完整功能,其本身也不提供任何机制来保证实时的传输数据,不支持资源预留,也不保证服务质量。r t p 报文甚至不包括长度和报文边界的描述,而是依靠下层协议提供长度标识和长度限制。另外,i 汀p 协议将部分传输层协议功能( 比如流量控制) 上移到应用层完成,简化了传输层处理,提高了该层的效率。( 二) 、数据流和控制流分离r t p 协议的数据报文和控制报文使用相邻的不同端口,这样大大提高了协议的灵活行和处理的简单性。( 三) 、协议的可扩展性和适应性r t p 协议通常为一个具体的应用来提供服务,通过一个具体的应用进程来实现,而不是作为o s i 体系结构中单独的一层来实现,r t p 只提供协议框架,丌发者可以根据应用的具体要求对协议进行充分的扩展。r t c p ( r e a l t i m et r a n s p o r tc o n t r o lp r o t o c 0 1 ) 和r t p 一起提供流量控制和捌塞控制服务。n :r t p 会话期间,备参与者周期性的传送r t c p 包,r t c p 包1 9两安:l :业学院硕士学位论文中包括已发送数据包的数量、丢失的数据包的统计资料等,服务器可以利用这些信息动态的改变传输速率,实现各种操作。r t p 主要关心与多媒体会话相关的各个数据流的传输问题,而r t c p 则是在r t p 的基础上添加了一层系统层功能,例如,通知发送r t p 的一方当前主要的网络服务质量。r t c p 和r t p 同时工作并且分享信息。为了能使r t c p 能够独立与r t p 之外进行工作,每个r t c p 都有与之相关的不相同的u d p 端口号。在一次会话中涉及的所有系统的r t c p 互相之自j 周期性的交换信息。r t c p 报文中的每个消息被发送给与r t p 相同的网络地址,但要对应于r t c p的端口号。通常方案如图3 6 。一图3 6 :实时传输控制协议( r t c p ) 用法r t c p 报文包含的信息主要有以下几项:集成媒体同步( i n t e g r a t e dm e d i as y n c h r o n i z a t i o n ) :在包括分离的音频视频流的应用中,为了能够实现同步,采用一个共同的系统时钟,需要将它集成。通常发起会话或会议的系统提供这项功能( 有些情况下使用的是独立的参考时问服务器) ,在所有其它系统中的r t c p 与这个系统中的r t c p 交换信息,以使它们能够使用相同系统的时钟。服务质量报告( q o sr e p o r t s ) :每个r t p 都根据从其它贡献源收到的报文流不断的计算丢失的报文数、抖动水平和平均传输延时,r t c p 在向系统中其它的r t c p 周期性的发送相关信息。参与者报告( p a r t i c i p a t i o nr e p o r t s ) :它应用在会议会话中,例如,用于一个参与者向其它参与者表明它退出这个会话,参与者报告通过其r t c p 发送给其它系统的r t c p 。参与者详细情况( p a r t i c i p a t i o nd e t a i l s ) :每个参与者的资料( 如名字、电子邮件、f 乜话号码等) 以r t c p 消息的形式被发送给其它参与者。这样每个参与者就可以知道其它参与者的身份以及联系方式了。r t c p 的主要功能包括:( ) 、提供数据发布质量反馈,这是r t c p 最主要的功能。r t c p 对使用r t p 协泌发送数据流进行参数统计并向发送方进行反馈。( 二) 、发送带有规范名字( c n a m e ) 的r 1 p 源持久传输层标识。如发现7 l f | 突,或张序瞳新肩动,既然s s r c 杯谚 可以改变,接受糟就需要搠c n a m e两安一f _ q k 学院硕士学位论文跟踪参加者。接受者也需要c n a m e 与相关r t p 连接中给定的数据流联系。( 三) 、控制r t c p 包数量。前两种功能要求所有参加者发送r t c p 包,但是出于参与者的增加,r t c p 将占用相当一部分带宽,所以必须对r t c p 包的数量进行控制。( 四) 、传送最小连接控制信息,如参加者标识。最可能用在“松散控制”连接,那里参加者自由进入或离开,没有成员控制或参数协调,r t c p 充当通往所有参加者的方便通道,但不必支持应用的所有控制通讯要求。r t c p 控制报文的发送周期是变化的,与报文长度l 、用户数n 和控制报文带宽b 相关:周期p = l x n b 。原因是r t p 设计成允许应用自动扩展的模式,连接数可从几个到上千个。在一般的音频会议中,因为同一时刻一般只有两个人说话,所以数据流和控制流都是内在限制的,控制流不会对传输造成影响。而在组播发送模式下,给定连接数据率独立于用户数,仍是常数,但控制流量不是内在限制的。如果每个参加者以固定速率发送接收报告,控制流量将随参加者数量线性增长,因此,速率必须按比例下降。r t c p 报文的类型主要有以下几种:发送报告s r :当前活动发送者的发送、接收统计。接收报告r r :非活动发送者的接收统计。源描述项s d e s :包括c n a m e 。结束b y e :表示结束。a p p :应用特定函数。v2pl e n g t hs s r c o f p a c k e ts 皿d c rs s r c i ( s s r co f f i r s t 岍c )n - c 1 i 。c u m u i l t i v en 岫i b ho f p u c k d s l o s te x t “lh i g h e t t m m i b hr t c e i v e db s t s r ( l s r )d e l a ys _ 日b l o t s r ( d l s r )s s r c2 ( s s r c o f s e c o o ds m u r lp r o f i l e - s p e c i f i c s i 图3 7 :r t c p 接收报告的报文格式其中最主要的是r t c p 报文是s r 和r r ,通常s r 报文占总r t c p 包数量的2 5 ,r r 报文占7 5 ,图3 7 就是r r 报文格式。类似于r t p 数据包,每个r t c p 报文以固定的包头部分开始,紧接着是可变长结构元素,但是以3 2 位为结束边界。在r t c p 报文中,不需要插入任何分隔符就可以将多个r t c p 报文连接起来形成一个r t c p 组合报文。由于需要底层协议提供整体长度来决定组合报文的结尾,所以在组合报文中没有单个r t c p 报文的显示计数。本文中的流媒体系统主要用到的是接收报文r r ,它的各个字段含义为:v :版本,2 位。表明r t p ( r t c p ) 的版本。p :填充位,1 位。如果这个值设置为1 则说媒这个r t c p 数据包包含一些非控制信息的填充信息。r c :接收报告计数5 位。2两安1 :业学院硕士学位论文p t :包类型,8 位。l e n g t h :1 6 位,包括头利填充信息的整个r t c p 包的长度。s s r c :3 2 位,同步源标志。s s r cn :3 2 位,表明这个接收报告来自哪一个源。f r a c t i o nl o s t :8 位表明上一个s r 或者r r 包发送以来的数据丢失率。c u m u l a t i v en u m b e ro f p a c k e t sl o s t :2 4 位,米自s s r cn 的所有的丢失的数据总数。e x t e n d e dh i g h e s ts e q u e n c en u m b e rr e c e i v e d :3 2 位,接收到的所有的r t p 数据包中队列标志最人的( 最近发送的) 队列号。i n t e r a r r i v a li i t t e r :3 2 位,接收的时间抖动值。l a s ts rt i m e s t a m p ( l s r ) :3 2 位。最近的s r 的时间戳。d e l a ys i n c el a s ts r ( d l s r ) :3 2 位,最近的s r 以来的延时。3 2 自适应传输技术提高实时性的同时保证流畅性是流媒体传输技术的重点和难点,目前网络( 特别是i n t e m e t ) 带宽有限而且不稳定,当网络带宽低于流媒体传输速率时,接收的视频会出现不连续、停顿的现象,甚至会停止播放。因此为了保证实时性和流畅性,需要在流媒体传输系统中引入自适应机制,使流媒体的传输能够自动适应网络状况的变化。目前大多数自适应传输系统采用的方案是根据接收端的反馈信息动态调整编码方案以及传输方案,维持发送和接收的平衡【l 引。为了维持发送和接收的平衡,就需要在流媒体的自适应传输系统中引入拥塞控制、差错控制和错误隐藏等多种机制使流媒体能够更好的使用当前网络带宽。其中拥塞控制主要在发送端来完成,差错控制则是出发送端和接收端共同协作来实现,错误隐藏则是在接收端实现。3 2 1 自适应传输控制在流媒体传输中应用到的自适应理论主要是根

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论