一种抗rtp媒体包网络丢包的方法

文档序号:7553158阅读:1939来源:国知局
专利名称:一种抗rtp媒体包网络丢包的方法
技术领域
本发明属于媒体数据网络传输技术领域,具体涉及ー种VOIP业务中抗RTP媒体包网络丢包的方法。
背景技术
RTP (实时传输协议)是Real-time Transport Protocol的缩写,通常用于音视频媒体数据的实时传输,在VOIP和音视频会议业务中得到广泛的应用。RTP底层基本使用UDP来传输,实行基于RTP序号的有序传送,但由于UDP本身是不可靠传输协议,因此很容易出现丢包问题。为了解决RTP丢包问题,IETF分别制订了 NACK和FEC两种算法来解决这个问题。但是这两种方法単独使用的过程中,都有各自不同的缺陷=NACK算法引入了确认重传,会导致媒体数据的实时性较差;FEC算法増加了数据冗余,会导致占用的网络带宽较多。

发明内容
为解决上述技术问题,本发明提供ー种抗RTP媒体包网络丢包的方法,综合了NACK和FEC两种算法的优点,同时规避了各自単独使用时存在的缺陷,能更好的适用目前大部分网络情況。为达到上述目的,本发明的技术方案如下:ー种抗RTP媒体包网络丢包的方法,包括以下步骤:A.客户端上行到服务器的数据,使用NACK算法,服务器接收时,根据RTP包序号,检测是否出现RTP包丢包,当服务器检测到客户端上行到服务器的RTP包出现丢包时,服务器通过NACK报文告知客户端丢失的包的包序号,要求客户端重传对应的包;B.服务器下行发送数据给客户端吋,使用FEC算法,服务器对发送的RTP进行网络层FEC冗余处理后,将加入了冗余机制的包下发给客户端;C.客户端接收服务器的RTP数据后,进行RTP去冗余处理,同时对出现的丢包通过FEC算法从冗余数据进行恢复。优选的,所述客户端系统与所述服务器系统遵循RTP协议。通过上述技术方案,本发明提供的抗RTP媒体包网络丢包的方法,综合了 NACK和FEC两种算法的优点,通过NACK保证了终端上行数据的可靠性,通过FEC的冗余机制能有效抵抗数据下行的网络丢包。同时规避了各自単独使用时存在的缺陷,能更好的适用目前大部分网络情況。


为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。图1为本发明实施例所公开的ー种抗RTP媒体包网络丢包的方法的系统终端发送 RTP包的处理流程图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。本发明提供的抗RTP媒体包网络丢包的方法,包括以下步骤:A.客户端上行到服务器的数据,使用NACK算法,服务器接收时,根据RTP包序号,检测是否出现RTP包丢包,当服务器检测到客户端上行到服务器的RTP包出现丢包时,服务器通过NACK报文告知客户端丢失的包的包序号,要求客户端重传对应的包;B.服务器下行发送数据给客户端吋,使用FEC算法,服务器对发送的RTP进行网络层FEC冗余处理后,将加入了冗余机制的包下发给客户端;C.客户端接收服务器的RTP数据后,进行RTP去冗余处理,同时,对出现的丢包,通过FEC算法从冗余数据进行恢复。其中,所述客户端系统与所述服务器系统遵循RTP协议。本发明所提供的ー种抗PTP媒体包网络丢包的方法的技术方案采取如下的步骤处理:1、终端建立时效为200ms的缓存RTP包队列;2、服务器接收RTP包,出现预期接收的包序号和实际接收不一致时,启用NACK算法,请求终端重传丢失的包;3、终端收到重传请求,到缓存队列中查找对应序号的包。如果找到对应序号的包,就重传;4、服务器下发数据给终端,数据经过FEC处理,増加冗余信息发送给終端;5、終端将接收的数据放入接收缓冲区,这个缓冲区的数据需要经过去冗余和丢包恢复处理后,提供给上层业务使用。实施例:图1为本发明实施例所公开的ー种抗RTP媒体包网络丢包的方法的系统终端发送RTP包的处理流程图參见附图1,假定服务器已经收到了终端的序号为7012的包,接下来收到了序号为7014的包,那么服务器认为丢失了 7013的包,发送重传请求给终端,终端从缓存队列里面找到序号为7013的包,重传给服务器。终端从服务器收到序号为7424、7426、7427的包,序号为7425的包丢失。由于7424、7426、7427三个包中都带了 7525的冗余信息,经过冗余恢复,终端还原出7424、7425、7426、7427四个包,提供给上层业务使用。本发明提供的抗RTP媒体包网络丢包的方法,综合了 NACK和FEC两种算法的优点,通过NACK保证了终端上行数据的可靠性,通过FEC的冗余机制能有效抵抗数据下行的网络丢包,同时规避了各自単独使用时存在的缺陷,能更好的适用目前大部分网络情況。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。
权利要求
1.ー种抗RTP媒体包网络丢包的方法,其特征在于,包括以下步骤: A.客户端上行到服务器的数据,使用NACK算法,服务器接收时,根据RTP包序号,检测是否出现RTP包丢包,当服务器检测到客户端上行到服务器的RTP包出现丢包时,服务器通过NACK报文告知客户端丢失的包的包序号,要求客户端重传对应的包; B.服务器下行发送数据给客户端吋,使用FEC算法,服务器对发送的RTP进行网络层FEC冗余处理后,将加入了冗余机制的包下发给客户端; C.客户端接收服务器的RTP数据后,进行RTP去冗余处理,同时对出现的丢包通过FEC算法从冗余数据进行恢复。
2.根据权利要求1所述的ー种抗RTP媒体包网络丢包的方法,其特征在于,所述客户端系统与所述服务器系统遵循RTP协议。
全文摘要
本发明公开了一种抗RTP媒体包网络丢包的方法,通过混合使用NACK和网络层FEC技术,最大限度减少客户端占用的上行带宽,在终端发送媒体数据到服务器的上行路径上,使用NACK算法,保证客户端上行到服务器的媒体数据可靠送达服务器;在服务器发送媒体数据到客户端的下行路径上,服务器使用FEC算法,通过网络层数据冗余,提高下行数据抗网络丢包能力;客户端接收服务器的下行媒体数据,如果出现丢包,客户端使用FEC算法,可以通过丢包的前后几个包恢复丢掉的包数据。本发明所公开的一种抗RTP媒体包网络丢包的方法,通过不对称的使用两种抗网络丢包算法,不但能集合上述两个算法的优点,同时规避了上述两种算法各自的缺陷。
文档编号H04L12/823GK103107952SQ20131007381
公开日2013年5月15日 申请日期2013年3月8日 优先权日2013年3月8日
发明者兰玉杰 申请人:苏州工业园区云视信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1