视频数据传输的丢包重传方法和系统的制作方法

文档序号:7779305阅读:170来源:国知局
视频数据传输的丢包重传方法和系统的制作方法
【专利摘要】一种视频数据传输的丢包重传方法和系统,其中方法包括步骤:分别建立与视频服务器之间的TCP链路和对等网络链路;检测传输中的丢包信息,根据丢包信息计算重传请求信息;通过TCP链路向视频服务器发送重传请求信息,并通过TCP链路接收重传请求信息对应的丢包数据;计算TCP链路响应重传请求信息的第一等待时间,在第一等待时间大于第一时延阀值时切换至对等网络链路,通过所述对等网络链路向视频服务器发送所述重传请求信息并接收对应的丢包数据。本发明的技术,优先采用TCP的重传,能够保证传输质量和可靠性,在时延波动大的状态下,辅以对等网络链路进行重传,可以提高传输效率和降低传输时延,从而可以保证视频数据传输的流畅,提高了视频播放质量,给用户更好的视觉享受和观看效果。
【专利说明】视频数据传输的丢包重传方法和系统【技术领域】
[0001]本发明涉及互联网【技术领域】,特别是涉及一种视频数据传输的丢包重传方法和系统。
【背景技术】
[0002]随着即时通信的普及和网络带宽的提升,越来越多的用户通过网站平台,(如web或flash平台)观看视频直播,但是由于网络带宽及传输质量的不稳定,造成了视频播放质量得不到保障。
[0003]由于丢包造成视频传输的停顿是目前视频通信质量的瓶颈之一,为此,通过数据丢包重传方法,目前,现有技术一般基于UDP的重传和基于TCP的重传,UDP的重传需要专门传输接口,在很多网站平台上无法使用,TCP的重传虽然能够按顺序传输,可靠性高,但是时延波动大,特别在网络存在比较大丢包的情况下,时延比较大,视频数据传输效果较差,严重影响了视频播放质量。

【发明内容】

[0004]基于此,有必要针对时延比较大,视频数据传输效果较差,严重影响了视频播放质量的问题,提供一种视频数据传输的丢包重传方法和系统。
[0005]一种视频数据传输的丢包重传方法,包括如下步骤:
[0006]分别建立与视频服务器之间的TCP链路和对等网络链路;
[0007]检测传输中的丢包信息,根据丢包信息计算重传请求信息;
[0008]通过所述TCP链路向视频服务器发送重传请求信息,并通过TCP链路接收重传请求信息对应的丢包数据;
[0009]计算TCP链路响应重传请求信息的第一等待时间,在第一等待时间大于第一时延阀值时切换至对等网络链路,通过所述对等网络链路向视频服务器发送所述重传请求信息,并接收对应的丢包数据。
[0010]一种视频数据传输的丢包重传系统,包括:
[0011]双链路建立模块,用于分别建立与视频服务器之间的TCP链路和对等网络链路;
[0012]重传请求模块,用于检测传输中的丢包信息,根据丢包信息计算重传请求信息;[0013]TCP链路重传模块,用于通过所述TCP链路向视频服务器发送重传请求信息,并通过TCP链路接收重传请求信息对应的丢包数据;
[0014]对等网络链路重传模块,用于计算TCP链路响应重传请求信息的第一等待时间,在第一等待时间大于第一时延阀值时切换至对等网络链路,通过所述对等网络链路向视频服务器发送所述重传请求信息,并接收对应的丢包数据。
[0015]上述视频数据传输的丢包重传方法和系统,首先建立TCP链路和对等网络链路的双重传链路,优先采用TCP的重传,能够保证传输质量和可靠性,在时延波动大的状态下,实时切换至对等网络链路进行重传,辅以对等网络链路进行重传,可以提高传输效率和降低传输时延,特别是在网络存在比较大丢包的情况下,也能及时重传所丢失的数据,从而可以保证视频数据传输的流畅,提高了视频播放质量,给用户更好的视觉享受和观看效果。
【专利附图】

【附图说明】
[0016]图1为一个实施例的视频数据传输的丢包重传方法流程图;
[0017]图2为重传过程的算法实例流程图;
[0018]图3为一个实施例的视频数据传输的丢包重传系统结构示意图。
【具体实施方式】
[0019]下面结合附图对本发明的视频数据传输的丢包重传方法的【具体实施方式】作详细描述。
[0020]参考图1所示,图1为一个实施例的视频数据传输的丢包重传方法流程图,包括如下步骤:
[0021]步骤SlOl:分别建立与视频服务器之间的TCP链路和对等网络链路。
[0022]在本步骤中,可以分别建立基于web平台或flash平台的用户端与视频直播的视频服务器之间的TCP链路和对等网络链路。
[0023]由于在web平台或flash平台上,缺乏UDP的传输端口,基于TCP的重传虽然能够保证传输质量和可靠性,但时延波动大,因此,在重传处理中同时建立TCP链路和对等网络链路,在首先保证TCP链路作为重传优先选择,辅以对等网络链路的实时切换,增强重传过程中的抢占带宽能力,降低时延,从而可以保证视频数据传输的流畅。
[0024]在一个实施例中,所述对等网络链路为基于对等协议联网实时媒体流协议(Real-Time Media Flow Protoco,RTMFP)建立的通信链路。RTMFP是服务于网络媒体数据传输的通信协议,该协议是基于udp的基础上开发的,对数据的收发处理增加了加密和解密处理,性能开销相对于udp要高出很多,具有时延低的优点,因此,可以基于该通信协议建立对等网络链路。
[0025]步骤S102:检测传输中的丢包信息,根据丢包信息计算重传请求信息。
[0026]在本步骤中,可以针对于通过TCP链路进行视频直播的web平台或flash平台,根据TCP链路收发数据情况计算传输时延,通过时延判定丢包状态,确定传输中的丢包信息并计算重传请求信息。
[0027]步骤S103:通过所述TCP链路向视频服务器发送重传请求信息,并通过TCP链路接收重传请求信息对应的丢包数据。
[0028]在本步骤中,当计算到需要重传时,优先采用TCP链路进行重发,将计算的重传请求信息通过TCP链路发送至视频服务器,请求重发丢包数据,且在此过程中,通常只通过TCP链路进行一次请求。
[0029]步骤S104:计算TCP链路响应重传请求信息的第一等待时间,在第一等待时间大于第一时延阀值时切换至对等网络链路,通过所述对等网络链路向视频服务器发送所述重传请求信息并接收对应的丢包数据。
[0030]在本步骤中,是根据接收数据缓冲动态计算重传时机,根据时延选择重传决策。在发送重发请求信息后进行计时,判断发出重发请求信息的等待时间,如果等待时间超过设定的时延阀值(如1S),说明当前TCP链路时延较大,不适宜用于重传丢包数据,此时,将当前通信链路切换至对等网络链路,利用对等网络链路重传对应的丢包数据。
[0031]在一个实施例中,对于切换至对等网络链路重传对应的丢包数据的步骤,具体可以包括如下:
[0032]首先将当前的通信链路由TCP链路切换至对等网络链路,然后通过对等网络链路向视频服务器重新发送重传请求信息,并通过对等网络链路接收所述视频服务器响应所述重传请求信息重传的丢包数据。
[0033]通过上述处理机制,优先采用TCP的重传,能够保证传输质量和可靠性,但在时延波动大的状态下,实时切换至对等网络链路进行重传,能够明显提高抢占带宽能力,降低传输时延,特别是在网络存在比较大丢包的情况下,也能及时重传所丢失的数据,从而可以保证视频数据传输的流畅,提高了视频播放质量,给用户更好的视觉享受和观看效果。
[0034]在一个实施例中,在通过对等网络链路接收所述视频服务器响应所述重传请求信息重传的丢包数据的步骤前,还可以包括以下处理过程:
[0035]判断对等网络链路响应重传请求信息的第二等待时间是否超过第二时延阀值(一般情况下,第二时延阀值小于第一时延阀值);如果不超过,执行通过对等网络链路接收所述视频服务器响应所述重传请求信息重传的丢包数据的步骤;如果超过,进一步判断重新发送重传请求信息的次数是否超过重传次数限制,若是,放弃重传当前的丢包数据,否则通过对等网络链路再次向视频服务器重新发送重传请求信息。
[0036]上述处理机制,是针对于对等网络链路重传的设定了重传的相应条件,包括每次重传请求的等待时间,当到达等待时间仍然没有接收到丢包数据时,再次发起重传请求,与TCP链路不同的是,通过对等网络链路可以发起多次请求,但也需要设定一定次数限制,这样可以避免进行死循环当中,放弃一些无法完成重传的丢包数据,从而可以保证视频数据传输的流畅,提高了视频播放质量。
[0037]以上提供的视频数据传输的丢包重传方法,可以节约带宽和硬件性能开销,降低了重传丢包数据的时延,减少了视频播放中的卡顿现象,提升用户的观看感受。
[0038]为了更加清晰本发明的技术方案,针对于上述视频数据传输的丢包重传方法,以下提供一个重传过程的算法实例。
[0039]参考图2所示,图2为重传过程的算法实例流程图,包括如下步骤:
[0040]步骤S201,计算重传请求信息;
[0041]步骤S202,选择TCP链路发送重传请求信息;
[0042]步骤S203,判断TCP链路的等待时间是否超过第一时延阀值,若是,执行步骤S204,否则执行步骤S209 ;
[0043]步骤S204,将当前通信链路切换至对等网络链路;
[0044]步骤S205,通过对等网络链路发起重传请求;
[0045]步骤S206,判断对等网络链路的等待时间是否超过第二时延阀值,若是,执行步骤S207,否则执行步骤S209 ;
[0046]步骤S207,判断该重传请求的请求次数是否超过次数限制,若是,执行步骤S208,否则转去执行步骤S205 ;
[0047]步骤S208,放弃当前的重传请求;[0048]步骤S209,通过当前的通信链路接收重传请求信息对应的丢包数据。
[0049]下面结合附图对本发明的视频数据传输的丢包重传系统的【具体实施方式】作详细描述。
[0050]参考图3所示,图3为一个实施例的视频数据传输的丢包重传系统结构示意图,包括:
[0051]双链路建立模块301,用于分别建立与视频服务器之间的TCP链路和对等网络链路;
[0052]重传请求模块302,用于检测传输中的丢包信息,根据丢包信息计算重传请求信息;
[0053]TCP链路重传模块303,用于通过所述TCP链路向视频服务器发送重传请求信息,并通过TCP链路接收重传请求信息对应的丢包数据;
[0054]对等网络链路重传模块304,用于计算TCP链路响应重传请求信息的第一等待时间,在第一等待时间大于第一时延阀值时切换至对等网络链路,通过所述对等网络链路向视频服务器发送所述重传请求信息并接收对应的丢包数据。
[0055]在一个实施例中,所述双链路建立模块301进一步用于:分别建立基于web平台或flash平台的用户端与视频直播的视频服务器之间的TCP链路和对等网络链路。
[0056]在一个实施例中,所述对等网络链路为基于对等协议联网实时媒体流协议建立的通信链路。
[0057]在一个实施例中,所述对等网络链路重传模块304用于切换至对等网络链路重传对应的丢包数据的过程进一步包括:
[0058]将当前的通信链路由TCP链路切换至对等网络链路;通过对等网络链路向视频服务器重新发送重传请求信息;通过对等网络链路接收所述视频服务器响应所述重传请求信息重传的丢包数据。
[0059]在一个实施例中,所述对等网络链路重传模块304用于通过对等网络链路接收所述视频服务器响应所述重传请求信息重传的丢包数据的步骤前还用于:
[0060]判断对等网络链路响应重传请求信息的第二等待时间是否超过第二时延阀值;如果不超过,执行通过对等网络链路接收所述视频服务器响应所述重传请求信息重传的丢包数据的步骤;如果超过,进一步判断重新发送重传请求信息的次数是否超过重传次数限制,若是,放弃重传当前的丢包数据,否则通过对等网络链路再次向视频服务器重新发送重传请求信息。
[0061]本发明的视频数据传输的丢包重传系统与本发明的视频数据传输的丢包重传方法一一对应,在上述视频数据传输的丢包重传方法的实施例阐述的技术特征及其有益效果均适用于视频数据传输的丢包重传系统的实施例中,特此声明。
[0062]以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
【权利要求】
1.一种视频数据传输的丢包重传方法,其特征在于,包括如下步骤: 分别建立与视频服务器之间的TCP链路和对等网络链路; 检测传输中的丢包信息,根据丢包信息计算重传请求信息; 通过所述TCP链路向视频服务器发送重传请求信息,并通过TCP链路接收重传请求信息对应的丢包数据; 计算TCP链路响应重传请求信息的第一等待时间,在第一等待时间大于第一时延阀值时切换至对等网络链路,通过所述对等网络链路向视频服务器发送所述重传请求信息,并接收对应的丢包数据。
2.根据权利要求1所述的视频数据传输的丢包重传方法,其特征在于,所述分别建立与视频服务器之间的TCP链路和对等网络链路的步骤包括: 分别建立基于web平台或flash平台的用户端与视频直播的视频服务器之间的TCP链路和对等网络链路。
3.根据权利要求1所述的视频数据传输的丢包重传方法,其特征在于,所述对等网络链路为基于对等协议联网实时媒体流协议建立的通信链路。
4.根据权利要求1至3任一项所述的视频数据传输的丢包重传方法,其特征在于,所述通过所述对等网络链路向视频服务器发送所述重传请求信息,并接收对应的丢包数据的步骤包括: 将当前的通信链路由TCP链路切换至对`等网络链路; 通过对等网络链路向视频服务器重新发送所述重传请求信息; 通过对等网络链路接收所述视频服务器响应所述重传请求信息重传的丢包数据。
5.根据权利要求4所述的视频数据传输的丢包重传方法,其特征在于,所述通过对等网络链路接收所述视频服务器响应所述重传请求信息重传的丢包数据的步骤前还包括: 判断对等网络链路响应重传请求信息的第二等待时间是否超过第二时延阀值; 如果不超过,执行通过对等网络链路接收所述视频服务器响应所述重传请求信息重传的丢包数据的步骤;如果超过,进一步判断重新发送重传请求信息的次数是否超过重传次数限制,若是,放弃重传当前的丢包数据,否则通过对等网络链路再次向视频服务器重新发送重传请求信息。
6.一种视频数据传输的丢包重传系统,其特征在于,包括: 双链路建立模块,用于分别建立与视频服务器之间的TCP链路和对等网络链路; 重传请求模块,用于检测传输中的丢包信息,根据丢包信息计算重传请求信息; TCP链路重传模块,用于通过所述TCP链路向视频服务器发送重传请求信息,并通过TCP链路接收重传请求信息对应的丢包数据; 对等网络链路重传模块,用于计算TCP链路响应重传请求信息的第一等待时间,在第一等待时间大于第一时延阀值时切换至对等网络链路,通过所述对等网络链路向视频服务器发送所述重传请求信息,并接收对应的丢包数据。
7.根据权利要求6所述的视频数据传输的丢包重传系统,其特征在于,所述双链路建立模块进一步用于: 分别建立基于web平台或flash平台的用户端与视频直播的视频服务器之间的TCP链路和对等网络链路。
8.根据权利要求6所述的视频数据传输的丢包重传系统,其特征在于,所述对等网络链路为基于对等协议联网实时媒体流协议建立的通信链路。
9.根据权利要求6至8任一项所述的视频数据传输的丢包重传系统,其特征在于,所述对等网络链路重传模块用于切换至对等网络链路重传对应的丢包数据的过程进一步包括: 将当前的通信链路由TCP链路切换至对等网络链路;通过对等网络链路向视频服务器重新发送所述重传请求信息;通过对等网络链路接收所述视频服务器响应所述重传请求信息重传的丢包数据。
10.根据权利要求9所述的视频数据传输的丢包重传系统,其特征在于,所述对等网络链路重传模块用于通过对等网络链路接收所述视频服务器响应所述重传请求信息重传的丢包数据的步骤前还用于: 判断对等网络链路响应重传请求信息的第二等待时间是否超过第二时延阀值;如果不超过,执行通过对等网络链路接收所述视频服务器响应所述重传请求信息重传的丢包数据的步骤;如果超过,进一步判断重新发送重传请求信息的次数是否超过重传次数限制,若是,放弃重传当前的丢包数据,否则通过对等网络链路再次向视频服务器重新发送重传请求信息。
【文档编号】H04N21/63GK103686446SQ201310652893
【公开日】2014年3月26日 申请日期:2013年12月6日 优先权日:2013年12月6日
【发明者】邱艺 申请人:广州华多网络科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1