资源描述:
《浅谈一种基于rtcp反馈的3g流媒体速率控制算法》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、浅谈一种基于RTCP反馈的3G流媒体速率控制算法 摘要:在3G流媒体业务中,缓存数据溢出严重地影响了多媒体画面质量和媒体播放的流畅性,降低了用户对流媒体业务感知的满意度。为了解决这个问题,根据3GPPPSS提出的反馈机制,阐述了一种基于RTCP反馈信息的3G流媒体速率控制算法。通过计算机仿真证明,该算法不仅有效防止了缓存数据上溢,而且保证了发送效率,避免了缓存数据欠载,从而实现了高质量的流媒体服务。 关键词:RTCP反馈;网络缓存上溢;客户缓存下溢;速率控制 RateControlAlgorithmfor3GStreamingMediaServiceBasedon
2、RTCPFeedback RONGp;InformationEngineering,HohaiUniversity,Changzhou213022,China) Abstract:Thebufferdataunder-runseriouslyaffectedthequalityofmultimediaimagesandmediaplaybacksmooth,andreducedtheuserpercEIvedstreamingmediabusinesssatisfactioninthe3Gstreamingmediaservices.Tosolvethisproblem,
3、theRTCPfeedback-based3Gstreamingmediaratecontrolalgorithmaccordingto3GPPfeedbackmechanismisintroduced.Thesimulationprovesthatthealgorithmnotonlyeffectivelypreventedthebufferoverfloissiontoavoidbufferunderfloingmediaservices. Keyber,NSN),它是缓存中下一个即将被解码的数据包序号。 可利用的缓存空间(FreeBufferSpace,FBS),它
4、反映了当前缓存可用空间的大小。 基于RTCP的反馈过程,如图2所示。当服务器与客户端完成会话建立之后,服务器便启动流媒体传输过程,RTP协议负责实现媒体数据从服务器到客户端的传输。客户端将统计的丢包率、最大接收包序号(HRSN)、播放延迟、可用的缓存空间和即将送入解码器的包序号(NSN)分别放入RTCPSR和NADU中对应的参数域,构成RTCP混合包。RTCP混合包周期性地发送给服务器,用以估计网络状态以及客户端缓存空间的占用状态。服务器还可以利用发送包序列号的统计值与RTCPRR中的HRSN对SGSN或RNC上的缓存状态做出判断,调整数据包的发送速率,实现发送速率控制[8
5、]。 图2RTCP反馈过程 2发送速率控制算法 当客户端向服务器发出服务请求后,服务器通过RTSP协议为客户端配置连接属性,并获得网络缓存和客户端缓存Nmax和Cmax,完成流媒体会话的建立[9]。会话建立后,服务器将媒体内容分割打包,标记序列号。并发送给客户端。设第i个数据包的大小为Si,当服务器在会话初始时刻发送的第一个数据包序号为ISN=0,则在t时间内发送N个数据包的数据量为∑Ni=ISN=0Si。服务器收到来自客户端的RTCP反馈后,可以获知RTCPRR报告产生时客户端已接收的包序号HRSN,以及本地记录的发送包序号,即当前已发送的最大包序号HTSN
6、。序号HTSN与HRSN的差值表示为正在网络中传输的数据包数目,假设这些数据包都暂存在网络缓存中,那么可估计当前网络缓存存储状态为: Ncurr=∑HTSNi=ISNSi-∑HRSNj=ISNSj (1) 因此,服务器每收到一个RTCP反馈包就可以由上式求得网络缓存状态。客户端收到的数据包预先存贮在终端缓存中,然后按时间戳顺序送入解码器解码播放。客户端生成NADU反馈与序号为NSN的数据包预定播放时间之间的延迟为tPD,服务器接收到RTCP反馈的时间为tRR,序号为i的数据包预定播放时间即时间戳Ti,故有时间偏移toff:toff=tRR
7、+tPD-TNSN (2) 这个时间偏移是RTCP反馈中NADU包从生成到被接收的时间,同时也考虑到了发生播放暂停或数据缓冲的情况。服务器在收到反馈包后t时刻(t>tRR)可测知当前客户端缓存的空余量为: Cfree=FBS+SNSN,TNSN+toff