一种丢包重传方法、装置及系统制造方法及图纸

技术编号:18448896 阅读:49 留言:0更新日期:2018-07-14 11:59
本公开提供一种丢包重传方法、装置及系统,涉及数据传输领域,能够解决现有组播丢包无法重传的问题。具体技术方案为:接收发送设备通过组播链路发送的数据包,并存储至接收队列中;检测接收队列中的数据包是否连续;当检测到接收队列中的数据包不连续时,通过单播链路发送重传请求给发送设备,重传请求中包括重传数据包的标识;接收发送设备通过单播链路发送的重传数据包。本发明专利技术用于数据重传。

【技术实现步骤摘要】
一种丢包重传方法、装置及系统
本公开涉及数据传输领域,尤其涉及一种丢包重传方法、装置及系统。
技术介绍
随着视频传输技术的发展,目前大多数视频流是通过IP网络进行传输,IP网络数据传输方式包括:单播传输、广播传输和组播传输,具体采用何种传输方式主要根据应用场景进行选择。当应用场景为一个发送设备和多个接收设备时,可采用组播进行数据传输。但是,数据在传输过程中,在一定概率上会出现丢包情况,而且丢失的数据包难易补充修复,导致接收设备播放视频时出现马赛克或卡顿的情况,影响用户体验。
技术实现思路
本公开实施例提供一种丢包重传方法、装置及系统,能够解决现有组播丢包无法重传的问题。所述技术方案如下:根据本公开实施例的第一方面,提供一种丢包重传方法,该方法包括:接收发送设备通过组播链路发送的数据包,并存储至接收队列中;检测接收队列中的数据包是否连续;当检测到接收队列中的数据包不连续时,通过单播链路发送重传请求给发送设备,重传请求中包括重传数据包的标识;接收发送设备通过单播链路发送的重传数据包。该方法通过组播链路进行数据包的接收,并通过单播链路进行重传数据包的请求和发送,实现对丢失数据包的重传,解决现有组播丢包无法重传的问题,提高用户体验。在一个实施例中,数据包中包含数据包的序列号;检测接收队列中的数据包是否连续包括:检测接收队列中数据包的序列号是否连续。通过对序列号的检测,能够方便的检测到缺失的数据包,即需要重传的数据包。在一个实施例中,当检测到接收队列中的数据包不连续时,通过单播链路发送重传请求给发送设备包括:当检测到接收队列中的数据包不连续时,建立与发送设备之间的单播链路;通过单播链路发送重传请求给发送设备。在检测到接收队列的数据包不连续的情况下,再建立单播链路,能够提高链路利用率,避免单播链路建立后一段时间内或长期不使用的链路冗余。根据本公开实施例的第二方面,提供一种丢包重传方法,包括:通过组播链路将数据包发送给至少两个接收设备;接收第一接收设备通过第一单播链路发送的重传请求,重传请求中包括重传数据包的标识;根据重传请求,从暂存队列中获取重传数据包,暂存队列用于存储发送设备已发送的数据包;将重传数据包通过第一单播链路发送给第一接收设备。通过组播链路进行数据包的发送,并通过单播链路进行重传数据包的请求和发送,实现对丢失数据包的重传,解决现有组播丢包无法重传的问题,提高用户体验。在一个实施例中,通过组播链路将数据包发送给至少两个接收设备之前,方法还包括:建立与至少两个接收设备的组播链路;建立与每个接收设备对应的单播链路。在一个实施例中,通过组播链路将数据包发送给至少两个接收设备之后,该方法还包括:将已发送的数据包存储至暂存队列中。通过保存已发送的数据包,便于在接收到重传请求时,能够从已发送的数据包中找到需要重传的数据包,易于寻找,提高查找效率。根据本公开实施例的第三方面,提供一种接收设备,包括:接收模块,用于接收发送设备通过组播链路发送的数据包;存储模块,用于将数据包存储至接收队列中;检测模块,用于检测接收队列中的数据包是否连续;发送模块,用于当检测到接收队列中的数据包不连续时,通过单播链路发送重传请求给发送设备,重传请求中包括重传数据包的标识;接收模块,用于接收发送设备通过单播链路发送的重传数据包。在一个实施例中,数据包中包含数据包的序列号;检测模块,用于检测接收队列中数据包的序列号是否连续。在一个实施例中,接收设备还包括:建立模块;建立模块,用于当检测模块检测到接收队列中的数据包不连续时,建立与发送设备之间的单播链路;发送模块,用于通过单播链路发送重传请求给发送设备。根据本公开实施例的第四方面,提供一种发送设备,包括:发送模块,用于通过组播链路将数据包发送给至少两个接收设备;接收模块,用于接收第一接收设备通过第一单播链路发送的重传请求,重传请求中包括重传数据包的标识;获取模块,用于根据重传请求,从暂存队列中获取重传数据包,暂存队列用于存储发送设备已发送的数据包;发送模块,用于将重传数据包通过第一单播链路发送给第一接收设备。在一个实施例中,发送设备还包括:建立模块;建立模块,用于建立与至少两个接收设备的组播链路,以及建立与每个接收设备对应的单播链路。在一个实施例中,发送设备还包括:存储模块;存储模块,用于将已发送的数据包存储至暂存队列中。根据本公开实施例的第五方面,提供一种丢包重传系统,包括:第三方面及第三方面中任一实施例所描述的至少两个接收设备、以及第四方面及第四方面中任一实施例所描述的发送设备。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。图1是本公开实施例提供的一种丢包重传方法的流程图;图2是本公开实施例提供的一种丢包重传方法的流程图;图3是本公开实施例提供的一种丢包重传方法的应用场景示意图;图4是本公开实施例提供的一种视频发送设备和视频接收设备的示意图;图5是本公开实施例提供的一种接收设备的结构图;图6是本公开实施例提供的一种接收设备的结构图;图7是本公开实施例提供的一种发送设备的结构图;图8是本公开实施例提供的一种发送设备的结构图;图9是本公开实施例提供的一种发送设备的结构图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。本公开实施例提供一种丢包重传方法,该方法应用于接收设备,如图1所示,该丢包重传方法包括以下步骤:101、接收发送设备通过组播链路发送的数据包,并存储至接收队列中。本公开实施例的执行主体为接收设备,接收设备在接收发送设备发送的数据之前,建立与发送设备的组播链路,通过组播链路接收发送设备发送的数据,并存储至接收队列中。102、检测接收队列中的数据包是否连续。在一个实施例中,接收设备接收的数据包中包含数据包的序列号,那么,检测接收队列中的数据包是否连续包括:检测接收队列中数据包的序列号是否连续。当检测到接收队列中数据包的序列号连续时,意味着接收设备对发送设备发送的数据包全部接收,没有出现丢包现象;当检测到接收队列中数据包的序列号不连续时,意味着接收设备未对发送设备发送的数据包全部接收,出现丢包现象,则继续执行步骤103。103、当检测到接收队列中的数据包不连续时,通过单播链路发送重传请求给发送设备。当检测到接收队列中数据包的序列号不连续时,意味着出现丢包现象,此时,建立接收设备与发送设备之间的单播链路,通过该单播链路将重传请求发送给发送设备,重传请求中包括重传数据包的标识。当然,也可以是在建立该接收设备与发送设备之间的组播链路的同时,建立该接收设备与发送设置之间的单播链路,这样,当检测到接收队列中的数据包不连续时,直接通过对应的单播链路将重传请求发送给发送设备。104、接收发送设备通过单播链路发送的重传数据包。本公开实施例提供的丢包重传方法,接收发送设备通过组播链路发送的数本文档来自技高网...

【技术保护点】
1.一种丢包重传方法,其特征在于,所述方法包括:接收发送设备通过组播链路发送的数据包,并存储至接收队列中;检测所述接收队列中的数据包是否连续;当检测到所述接收队列中的数据包不连续时,通过单播链路发送重传请求给所述发送设备,所述重传请求中包括重传数据包的标识;接收所述发送设备通过所述单播链路发送的重传数据包。

【技术特征摘要】
1.一种丢包重传方法,其特征在于,所述方法包括:接收发送设备通过组播链路发送的数据包,并存储至接收队列中;检测所述接收队列中的数据包是否连续;当检测到所述接收队列中的数据包不连续时,通过单播链路发送重传请求给所述发送设备,所述重传请求中包括重传数据包的标识;接收所述发送设备通过所述单播链路发送的重传数据包。2.根据权利要求1所述的方法,其特征在于,所述数据包中包含所述数据包的序列号;所述检测所述接收队列中的数据包是否连续包括:检测所述接收队列中数据包的序列号是否连续。3.根据权利要求1所述的方法,其特征在于,所述当检测到所述接收队列中的数据包不连续时,通过单播链路发送重传请求给所述发送设备包括:当检测到所述接收队列中的数据包不连续时,建立与所述发送设备之间的单播链路;通过所述单播链路发送重传请求给所述发送设备。4.一种丢包重传方法,其特征在于,所述方法包括:通过组播链路将数据包发送给至少两个接收设备;接收第一接收设备通过第一单播链路发送的重传请求,所述重传请求中包括重传数据包的标识;根据所述重传请求,从暂存队列中获取所述重传数据包,所述暂存队列用于存储发送设备已发送的数据包;将所述重传数据包通过所述第一单播链路发送给所述第一接收设备。5.根据权利要求4所述的方法,其特征在于,所述通过组播链路发送数据包给至少两个接收设备之前,所述方法还包括:建立与所述至少两个接收设备的组播链路;建立与所述每个接收设备对应的单播链路。6.一种接收设备,其特征在于,包括:接收模块,用于接收发送设备通过组播链路发送的数据包;存储模块,用...

【专利技术属性】
技术研发人员:任斌苏睿
申请(专利权)人:西安万像电子科技有限公司
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1