一种传输多媒体数据的方法

文档序号:7759718阅读:115来源:国知局
专利名称:一种传输多媒体数据的方法
技术领域
本发明涉及多媒体网络通信领域技术,具体涉及到一种根据二项式概率模型所 计算出的冗余数据包个数来传输多媒体数据的方法。
背景技术
在互联网上传输多媒体数据时,由于网络拥塞状况实时变化,导致数据传输的 可靠性受到严重影响。一般情况下,多媒体数据采用打包传输,在网络不拥塞的情况 下,网络延迟小,多媒体数据包丢包率也小,多媒体数据的传输效率高;然而在网络拥 塞时,多媒体数据的丢包率增大,传输延迟也增大,多媒体传输受到严重影响。
如何解决网络大量丢包对互联网面向无连接的多媒体传输带来的问题,是业内 亟待解决的技术问题。发明内容
本发明的目的是提出一种基于二项式概率模型对传输数据进行冗余处理的传输 多媒体数据的方法。
本发明采取了对将要发送的原始数据包进行冗余处理的策略。通过发送冗余信 息来使得接收端在收到数据后能够根据这些冗余信息还原出原始数据。
基于此,本发明使用了 Reed-Solomon 0 )编解码器。RS码是差错控制领域中 一类重要的线性分组码,具有较强的纠正突发错误和随机错误的能力。发送端使用该算 法将要发送的数据进行冗余计算,将计算结果同原始数据一起发送到接收端。通过动态 地调整输入组合参数(n,k)使得有足够多的数据包到达接收端,从而保证接收端能够利 用这些数据将原始数据还原回来,其中η为原始数据包的个数,k为使用RS算法需要进 行冗余处理的包个数。
在互联网上传输视频数据及其冗余包时,由于视频数据本身比较大,视频 原始数据包和冗余数据包分开传输并不会浪费带宽资源。但是如果使用同样的方法 传输音频数据及其冗余数据包,则会浪费大量的带宽。一个RTP协议包的额外开销 (RTP(12)+UDP⑶+IP(12))就占用了 40个字节。然而音频数据在使用AMR(自适应多速 率)编码时原始数据包最多才占用31个字节。于是可得,40/(40+31) = 44%。可见, 将会有44%的带宽资源被浪费掉。如果将音频冗余数据包直接传输,则会浪费更多的带 宽。同时,如果冗余数据包在传输过程被丢失,也会严重影响接收端的播放效果。因 此,本发明提出使用交织丢包恢复技术,将冗余数据包与原始数据包打包一起传输。这 样既节省了传输冗余数据包的带宽消耗,同时又充分利用了原始数据的载荷进行传输, 提高了传输效率。尤其在网络状况差的时候,网络比较拥塞的时候更能体现出这种冗余 传输策略的优势。
本发明提出的传输多媒体数据的方法具体包括下列步骤
步骤101:发送端对待发数据进行冗余处理,将待发数据分为原始数据包η和冗余数据包k,并对每个数据包中的序列号cseq字段信息以递增方式标记序号;
步骤102 发送端使用RTP协议向接收端发送原始数据包η和冗余数据包k ;
步骤103:接收端收到传输数据后,根据cseq字段信息计算网络丢包率,并将 丢包信息反馈给发送端;
步骤104:发送端收到丢包信息后,根据此信息动态调整冗余数据包个数,即 计算出下一轮待发数据包和冗余数据包大小和个数,并重复步骤101至104,直到数据传 输结束;
步骤105 接收端根据原始数据包和冗余数据包还原出多媒体数据。


下面结合附图和实施例对本发明进行详细地说明,其中
图1为本发明中丢包率反馈信令流程图2(a)为本发明中丢包率反馈状态接收端状态机转换图;图2(b)为本发明中丢 包率反馈状态发送端状态机转换图3为本发明中对视频数据进行冗余编码后的分包结果图4为本发明中对音频数据进行冗余编码时所使用的交织丢包回复技术原理 图5为本发明传输数据包的流程图。
具体实施方式
为了解决多媒体在互联网中传输过程中存在的大量丢包而导致数据播放效果差 的问题,本发明提出了一种基于二项式概率对传输数据进行冗余处理的多媒体传输方 法。该方法包括
发送端使用二项式概率模型计算冗余数据包个数,并使用RS编码器产生冗余数 据包k;
接收端接收到数据后计算网络丢包率,并根据信令传输状态机将丢包结果反馈 给发送端;
发送端接收到丢包结果后,动态地调整冗余数据包个数,发送新一轮数据包, 包括原始数据和冗余数据包。
上述二项式概率模型的核心思想为假设η为原始数据包个数,Ic1为使用概率 模型计算出的冗余数据包个数,1 为实际上需要的冗余数据包个数,ρ为丢包率。由于 网络状况实时变化,一个数据包有可能在传输过程中被丢失。故假设发送端发送的数据 包达到接收端的概率为P,则被丢失的概率为(1-p),并且每个不同cseq的数据包到达接 收端的概率是相互独立的。因此,由二项式分布可知,发送端发送(n+k2)个数据包有i 个到达接收端的概率为
Parr{i) = Clk2PiUX-pft2"
故至少有η个数据包都能够达到的接收端的概率为
Parr = Σ KO(2)i=0
将式⑴带入式⑵可得总概率计算公式为
(3)
通过公式(3),本发明至少有η个数据包都达到接收端的总概率
PaiT> θ(4)
同时令]c2 = kl,使用搜索方式可以计算出第一个使得式(4)成立的i值,即发送 端需要冗余的数据包个数。
发送端根据反馈结果并使用以上概率模型,动态地调整RS编码器需要冗余的数 据包个数,并将冗余后的数据包与原始数据包进行分包处理后发送到接收端。
以下结合图5描述本发明实施例的具体实施步骤。
步骤101:发送端对待发数据进行冗余处理,将待发数据分为原始数据包η和冗 余数据包k,并对每个数据包中的序列号cseq字段信息以递增方式标记序号;
步骤102 发送端使用RTP协议向接收端发送原始数据包η和冗余数据包k ;
步骤103:接收端收到传输数据后,计算网络丢包率,并将丢包信息反馈给发 送端;
接收端收到数据后从接收缓冲中取出cseq字段信息,并根据cseq信息计算网络 丢包率。如图1所示,接收端使用UDP协议将丢包结果反馈给接收端。由于UDP传输 是面向无连接、不可靠的传输。因此,为保证传输数据的可靠性,本发明使用了三条信 令来完成该次事务过程,分别为Pcktlnfo,Response, ACK0信息交互的双方使用了如 图2所示的状态机,以保证数据传输的可靠性。所述状态机的状态迁移过程描述如下
(I)Init状态。在该状态下,如图2(a)所示,接收端发送PcktInfo信令到发送 端。该信令里面包含了起始数据包的cseq值、结束数据包的cseq值和丢包概率值ρ。
同时将自己的状态从Init转入Waiting状态。而接收端接收到Pcktlnfo信令包, 将数据解析并保存,同时发送Response消息,并将状态从Init转入Waiting状态。
( Waiting状态。在该状态中,接收端如果没有收到来自发送端的应答包,就 触发超时事件TimeOut。
接收端处理超时事件,将Pcktlnfo信令包重新发送,同时将定时器的时间乘以 2。为保证不加重网络带宽的消耗,本发明在状态机中进行信息重传时采用了二进制回退 算法。当消息重传5次以上时,即可认为网络已经断开,通信结束。
在发送端同样使用该重传算法。如图2(b)所示,如果发送端收到ACK消息后, 它先将定时器停止,同时清理定时器的相关数据,最后将状态转入End。如果没有收到 ACK消息,发送端将触发TimeOut消息并重传Response消息。
(3)End状态。在该状态中,接收端发送ACK并结束状态机。为了保证这个 ACK消息能够到达接收端,本发明为ACK消息数据申请一块额外的存储区用于重传,并 规定定时器超时5次后将该消息数据所占存在空间释放同时清除定时器。如果在重传期 间收到接收端的Response消息,则立刻将ACK消息发送出去。5
接收端在End状态中,将状态资源释放,最后结束状态机。
步骤104 发送端接收到反馈的丢包信息后,使用公式(4)提出的概率模型来计 算下一轮数据传输时应该冗余出的数据包个数,并发送新一轮的数据包,包括原始数据 饱和冗余数据包。即重复步骤101-104,直到数据传输结束。
步骤105 接收端根据原始数据包和冗余数据包还原出多媒体数据。
对于视频数据,发送端发送视频前先根据计算出来的Ic2值,使用RS冗余编码 算法编出Ic2个冗余数据包,并将这1 个冗余数据包与原始视频数据一起发送,即将这Ic2 个冗余数据包的cseq标记为紧随原始数据的cseq。如图3所示,若根据4个原始数据包 {(P1 Ii1),(p2, n2),(P3, n3),(P4, n4) }及反馈结果计算出来的1 = 3,则编码后的 结果为{(R1, n5), (R2, n6),(R3, n7)}。
根据Reed Solomon算法原理,这7个数据包中无论丢弃了哪3个或者3个以下的数据包,接收端接收到剩下的数据后都能将原始数据还原回来
对于音频数据,发送端在发送音频数据时为了避免丢包对播放质量带来的负面 影响,也需要采用RS算法进行冗余处理。但是发送端此时所采用的冗余策略与视频包冗 余策略将有所不同。
由于音频数据包比较小,通常只有1-34个字节。如果将音频冗余数据包以视频 冗余数据包的方式发送,则会浪费大量的带宽,因为传输音频的UDP及RTP包头加起来 将超过视频数据的大小。为提高音频冗余数据包的发送效率,有效的利用带宽资源,本 发明提出将音频冗余进行分割,并利用交织修包技术将分割后的冗余包混合起来,最后 将这些混合后的冗余包分别加入到原始数据包中进行传输。
为了能够将混合后的数据包平均分配到每个原始音频数据包中,本发明在进行 分割数据包时给出了如下两条规则
假设原始音频数据包有k个,则
规则1:将每个冗余包平均分成k分,若冗余包的字节数不是k的整数倍,则在 冗余后面补0,使得冗余包的大小能被k整除;
规则2 将这些平分后的具有不同下标i的的冗余小分包组合成一个新的冗余 包,其中l<i<ko
这样,通过以上两条规则进行混合后就可以将冗余出来的k2个包混合成k个冗 余包,如图4所示。最后在将这k个冗余包与原始数据一起发送到接收端。同样的,接 收端只要能接收到这k个中数据包中的(k_k2/2)个数据包便能将原始音频数据包还原出 来并播放。
权利要求
1.一种传输多媒体数据的方法,其特征在于,该方法包括下列步骤步骤101:发送端对待发数据进行冗余处理,将待发数据分为原始数据包η和冗余数 据包k,并对每个数据包中的序列号(cseq)字段信息以递增方式标记序号;步骤102 发送端使用RTP协议向接收端发送原始数据包η和冗余数据包k ;步骤103:接收端收到传输数据包后,根据cseq字段信息计算网络丢包率,并将丢 包信息反馈给发送端;步骤104:发送端收到丢包信息后,根据此信息动态调整冗余数据包个数,并重复 步骤101至104,直到数据传输结束;步骤105 接收端根据原始数据包和冗余数据包还原出多媒体数据。
2.根据权利要求1所述的方法,其特征在于发送端采用二项式概率模型,并使用 Reed-Solomon冗余编码算法对原始数据进行冗余处理。
3.根据权利要求1所述的方法,其特征在于接收端使用UDP协议将丢包信息反馈 给发送端,反馈过程使用三条信令,分别为Pcktlnfo,Response,和ACK。
4.根据权利要求2所述的方法,其特征在于对于视频数据的传输,将冗余数据包k 与原始数据包η分开发送。
5.根据权利要求2所述的方法,其特征在于对于音频数据的传输,先对音频冗余 进行分割,并利用交织修包技术将分割后的冗余包混合起来,最后将这些混合后的冗余 包分别加入到原始数据包中进行传输。
6.根据权利要求5所述的方法,其特征在于在对音频冗余进行分割时,遵循如下 两条规则假设原始音频数据包有k个,则规则(1)将每个冗余包平均分成k分,若冗余包的字节数不是k的整数倍,则在冗 余后面补0,使得冗余包的大小能被k整除;规则O)将这些平分后的具有不同下标i的冗余小分包组合成一个新的冗余包,其 中1企k。
全文摘要
本发明提出了一种传输多媒体数据的方法。该方法在发送端对待发数据进行冗余处理,将待发数据分为原始数据包n和冗余数据包k,并对每个数据包中的cseq字段信息以递增方式标记序号,然后发送至接收端;接收端收到多媒体数据包后,根据cseq字段信息计算网络丢包率并将计算结果以UDP传输方式反馈给发送端。发送端使用Reed-Solomon冗余编解码器根据所接收的丢包率计算下一轮发送的冗余信息包个数。本发明中,针对视频数据,则只填充冗余数据包的cseq字段信息;针对音频数据,则根据交织丢包恢复技术将音频数据及冗余信息包混合后一起发送。本发明能充分利用带宽资源,提高带宽利用率。
文档编号H04L1/00GK102025717SQ20101028120
公开日2011年4月20日 申请日期2010年9月10日 优先权日2010年9月10日
发明者周磊, 张历卓, 沈平, 贾维嘉 申请人:香港城市大学深圳研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1