单位文秘网 2021-10-08 08:11:44 点击: 次
摘要:介绍了TCP协议和RTP/RTCP协议,阐述了服务质量控制的常用方法,为了控制网络拥塞、减小延迟、达到网络负载平衡,针对流媒体提出了三种基于RTP/RTCP协议的拥塞控制策略。
关键词:实时传输协议;RTP/RTCP;QoS;拥塞控制;Internet;流媒体
中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)36-2612-02
Research of Congestion Control Strategy Based on RTP/RTCP Protocol
ZHANG Hai-jun1,YANG Yin-gen1,WU Ke-jie1,ZHANG Jian-jun2
(College of Computer Information Engineering, Jiangxi Normal University,Nanchang 330022,China)
Abstract: In this article, introduce TCP protocol and RTP/RTCP protocol,introduce methods of the quality of service control. Three kinds of congestion control strategies are presented based on RTP/RTCP about fluid flow.These methods can control network congestion and reduce delay for getting network load balancing.
Key words: the protocol of real-time transmission;RTP/RTCP;QoS;internet;fluid FLOW
1 引言
目前网络应用非常广泛,网络实时数据的传输也越来越多:在线视频、实时监控、实时报警等等。因而带宽资源也显得十分紧张,网络拥塞时常出现。而端到端的实时通信业务对于网络传输又有如下要求:
1) 保证数据传送的实时性;
2) 探测和利用可用带宽;
3) 为了维护带宽使用的公平性和避免网络崩溃,实现对通信业务的友好性;
4) 降低传输过程中的延迟抖动,包括往返时间(Round Trip Time, RTT)和单向传输时间的抖动。
为了保证实时数据传输的流畅、声音视频图像的清晰,本文提出了基于RTP协议的服务质量动态反馈控制的一些方法。
1 传统的TCP协议和RTP/RTCP协议
1.1 传统的TCP协议
TCP协议,即传输控制协议[1],该协议首先要通过三次握手来建立连接,再利用“发送-等待确认-再发送”机制来保证数据传输的可靠性,但是显然造成了对宝贵的网络资源的严重浪费,降低了传输效率,而且因为这种控制机制的时延太长,灵活性太差,不能满足实时的音视频数据的传输。但是可以利用TCP协议中的传输控制方法来实现实时数据传输的控制。TCP的报文段格式如图 1所示。
1.2 RTP/RTCP协议
RTP协议主要是用来传输实时音、 视频数据,它包括RTP和RTCP两种数据包。RTP包用于实时数据端到端传输,RTP包中最大的特点就是其提供了时间戳(即发送数据块首字节的创建时间)和序列号,以达到数据的同步和重组。而在RTCP包中含有已发送的数据包的数量、丢失数据包的情况和数据包到达时延抖动等信息,通过该信息可以计算出如下有关的服务质量参数:数据包丢失比、数据包时间片丢失比、数据包丢失率、数据包时间片丢失率、有效数据传输率、数据包传输率、吞吐量、吞吐率数据包到达时延抖动、往返传播时延等等。以监视网络的服务质量、通信带宽以及网上传送的信息。RTP[2]协议的数据包格式如图 2所示。
图1 TCP的报文段格式
图2 RTP 协议数据包格式
图3 数据传输控制模型
常用的RTCP包有五种:发送方报告包(SR),接受者报告包(RR),源描述包(SDES),站点离开系统报告包(BYE)和特殊应用包(APP)。
2 常用服务质量控制方法
一般的分布式流媒体实时应用环境中,网络和终端资源在多个应用之间竞争共享。在不保证服务质量的分组/包交换网络上,网路带宽等资源的波动较大,因此流媒体应用具有连续调整资源需求和适应不同资源状况的能力。这对具有不同服务质量等级要求的应用更为重要。
服务质量控制目的是根据实际情况对流媒体实时应用做出相应的调整,以获得尽可能好的服务质量,主要的控制方法有三种:
1) 许可控制(AdmissionControl)
分布式流媒体实时应用环境中,网路带宽和媒体服务器资源(如CPU、内存、磁盘访问速度等)所能支持的客户端应用程序数目有限。服务器必须采用某种许可控制算法,判断新用户加入媒体会话后是否会妨碍已被服务用户的服务质量。如果加入后所有用户的服务质量都可以得到保证,则允许新用户加入;否则,应该拒绝该用户的加入。许可控制的基础是对当前可利用资源的估计和对即将加入用户的资源需求的预测。目前公认的控制策略有三种:基于确定性的策略、基于统计性的策略和基于预测的策略。
2) 资源预留(Resource Reservation)
资源预留的核心思维式,在发送端和接收端之间的各个节点上为用户预保留足够的资源以保证端到端服务质量。由于预测某一媒体流的确切特征通常是不可能的,所以系统在预留资源时常常过多或过少。资源预留不足时会导致服务质量得不到保证;而预留过多则导致资源利用率较低。此外。资源预留机制必须由发送端和接收端之间的所有网络节点支持,这个目前是不可能的,因此资源预留目前处在实验阶段。
3) 应用程序自适应控制(Application Adaptive Control)
应用程序的自适应控制即根据网络带宽等资源的实际情况,通过采用动态调整流媒体应用的资源需求等策略,以保持可接受的服务质量等级。对于不保证服务质量的分组/包交换网络,自适应控制在网络状况波动时给流媒体实时应用提供了较大的弹性。自适应控制首先需要对服务质量和资源状况进行监测,监测所得到的信息通过适当的途径反馈给媒体源端,源端和目的端根据监测所得到的信息采取适当策略,动态保证应用的服务质量。自适应控制的最大优点是不改变现有网络的基础体系结构,将服务质量控制工作交由网络应用程序来完成。虽然该方法控制较弱,但它具有动态控制服务质量和适应性较强的特点,在不保证服务质量的分组交换网络上较好的实现了带宽共享,因而在现有因特网上具有广泛的应用前景。
3 利用RTP/RTCP进行传输控制
远程网络传输不可靠性主要表现在:
1) 数据包“乱序到达”,先发送数据包有可能后到;
2) 在Internet环境下,网络传输带宽变动会引起发送的数据包丢失;
3) 数据包到达的时延过大而产生抖动会引起数据的失真。
RTP/RTCP能很好的解决上述问题。发送端和接收端应遵循以下步骤:
1) 在接受端缓冲区中依靠RTP包中的序列号来调整到达数据包的顺序,使之与发送时的数据顺序一致。
2) 分析RTCP控制包。
3) 评估网络状态。采用某种判断依据,评估实际的网络拥塞状况,以决定是否对带宽需求进行动态控制以改善服务质量。
4) 调整所需带宽。如接收端用户可以设置可接受的最大和最小带宽。
为了改进远程视频传输系统的稳定性[3],建立一个传输控制模型,这样可通过网络状况的反馈及时调整采样频率以及编码格式以适应当前的网络传输要求。RTCP利用主要的两种控制包SR和RR反馈的信息如数据包丢失比、数据包丢失率、吞吐量和吞吐率、数据包到达时延抖动J(interarrival jitter)和往返传播时延等来调节实时传输,并调整系统的打包格式、发包速率来保证流畅地传输数据和清晰地播放视频。图3 是数据传输控制模型示意图。
4 TCP在服务质量动态控制中的重要作用
前面通过对RTCP包中的参数监测,从而实现对服务质量的动态控制。在上面的分析比较,我们知道相对于新型协议RTP/RTCP,TCP不适合实时音视频数据的传输。但是RTP协议可以利用TCP来实现数据传输的新的控制,从而使数据传输的效果会更好。这种控制方法也是很独特、新颖。
因为利用RTCP虽然可以实现数据传输的控制,因其主要是在源端和接收端之间的参数交流,从而只能大概、初略的估计线路的阻塞程度,从而调整发送速率。随着计算机网络的迅速发展,拥塞控制机制的目标从单独地避免拥塞趋向于怎样有效地利用网络资源。RTCP中的控制将丢包和传输延迟的增长作为网络出现拥塞的指示,没有依赖于网络的中间节点。在实际网络中,引起网络拥塞的因素是很多的:可能由于中间节点队列溢出引起丢包,也可能是由于设备故障或者链路干扰导致节点校验错误引起丢包;可能由于中间节点队列长度增长引起延迟增加,也可能由于传输路径很长(如卫星链路)或者链路层数据包重传引起延迟增加。因此,利用TCP协议,可以采用很多拥塞控制机制来保证服务质量。大部分TCP拥塞控制协议和增强版本的焦点都集中在窗口管理机制上。而基于这些协议调节窗口所利用的反馈信息,可以大致地将其划分为3类[4-5]:
基于丢包反馈地协议(loss-based congestion avoidance ,简称 LCA );
基于路径延时反馈地协议(delay-based congestion avoidance ,简称DCA);
基于显式反馈的协议(ECN(explicit congestion notification )-like algorithms)。
即在源端发送一些TCP探测包,经过中间网络节点,到达接收端,接收端再发送TCP数据包,与源端进行交流,从而达到传输控制。TCP用于RTP传输控制如图4所示。
图4 TCP传输控制模型图
图5 IP 网络控制模型图
5 IP在服务质量动态控制中的重要作用
TCP拥塞控制本质上是一种基于信源的拥塞控制方法,实现在端系统中。显然这种拥塞控制方法在网络拥塞发生到感知到拥塞后采取控制行动之间存在着比较大的延迟,在传输数据不太大的情况下,很可能传递拥塞信息的反馈在数据传输完后才到达发送源端。因为IP[6-7]拥塞控制在网络中实现,因而可以及时感知到网络拥塞的发生,采取控制行为。而且在IP拥塞控制中,可以区分不同的发送源端产生的数据流,可以在路由器中通过队列调度方案,接受或丢弃不同发送源端产生的数据,从而也实现带宽的公平性。IP控制模型如图5所示。
6 结束语
该文针对Internet 中实时多媒体通信系统提出了三种拥塞控制方法,这有助于解决网络拥塞控制和QoS控制等多媒体通信技术问题。根据源端和接收端的实际情况和网络运行状况,有针对性的选择某种或某几种控制方法的组合,可以使音、视频播放的传输达到最佳效果。这些控制方法曾用于设计与实现:机房实时视频监视系统、智能综合安防监控系统和基于RTP/RTCP的手机报警系统。
参考文献:
[1] Misra V, Gong W B, Towsley D. Fluid-based Analysis of a Network of AQM Routers Supporting TCP Flows with an Application to RED[C]. Proc. of ACM/SIGCOMM,2000:151-160.
[2] Schulzrinne H,Casner S,Fredeirck R et a1.RTP:A Transport Protocol for Real—TimeApplications[S].RFC 1889,1996.
[3] H.Sehulzrine.RTP Profile for Audio and Video Conferences with Minimal Control.RFC1890,IETF,1996.2-10.
[4] Kim M S,Won Y J, Hong W J. Characteristic Analysis of Internet Traffic from the Perspective of Flows[J].ComputerCommunications, 2006,29(10):1639-1652.
[5] Bas turk E,BirmanA. Design and Implement of A QoS Capable Switch-router. Computer Networks and ISDN Systems,1999,31(1/2):19-32.
[6] Liu J,Li B,Zhang Y Q.A Hybrid Adaptation Protocol for TCP-friendly Layered Multicast and Its Optimal Rate Allocation[M].IEEE Press,2002:1520-1530.
[7] Floyd S, Jacobson V. Random Early Detection Gateways for Congestion Avoidance[J].IEEE/ACM Transactions on Networking,1993,1(4):397-413.
(责任编辑:单位文秘网) )地址:https://www.kgf8887.com/show-227-94701-1.html
上一篇:浅谈现代光纤通信技术
下一篇:网络建设的降龙18掌
版权声明:
本站由单位文秘网原创策划制作,欢迎订阅或转载,但请注明出处。违者必究。单位文秘网独家运营 版权所有 未经许可不得转载使用