[发明专利]丢包重传方法、设备及存储介质在审
申请号: | 202010686294.3 | 申请日: | 2020-07-16 |
公开(公告)号: | CN111953454A | 公开(公告)日: | 2020-11-17 |
发明(设计)人: | 朱英龙;范志刚;卢涛 | 申请(专利权)人: | 西安万像电子科技有限公司 |
主分类号: | H04L1/08 | 分类号: | H04L1/08 |
代理公司: | 北京挺立专利事务所(普通合伙) 11265 | 代理人: | 彭豆 |
地址: | 710075 陕西省西安市高新区唐*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 丢包重传 方法 设备 存储 介质 | ||
本公开提供一种丢包重传方法、设备及存储介质,涉及数据传输技术领域,能够降低现有UDP传输中发生丢包的问题。具体技术方案为:获取接收端发送的窗口同步确认SAK控制消息;获取与第一数据包的包序号对应的第一数据包,并将第一数据包添加至发送端的丢包队列中;检测目标范围内的数据包是否存在丢包;在检测到目标范围内的第二数据包丢包时,将第二数据包添加至发送端的丢包队列中;将丢包队列中的数据包发送至接收端。本发明用于丢包重传。
技术领域
本公开涉及数据传输技术领域,尤其涉及一种丢包重传方法、设备及存储介质。
背景技术
为了提高发送效率,视频帧会采用UDP(User Datagram Protocol,用户数据报协议)方式进行传输,但是,UDP是一种不可靠的传输协议,当数据包发送之后,无法得知其是否安全完整的到达接收端,因此,在这种情况下,若出现丢包则会造成接收端视频花屏。
发明内容
本公开实施例提供一种丢包重传方法、设备及存储介质,能够降低现有UDP传输中发生丢包的问题。所述技术方案如下:
根据本公开实施例的第一方面,提供一种丢包重传方法,应用于发送端,该方法包括:
获取接收端发送的窗口同步确认SAK控制消息,SAK控制消息至少包括:接收窗口的边界序号、接收端当前接收到的数据包的包序号、第一数据包的包序号,接收窗口的边界序号以及第一数据包的包序号均小于当前接收到的数据包的包序号;
获取与第一数据包的包序号对应的第一数据包,并将第一数据包添加至发送端的丢包队列中;
检测目标范围内的数据包是否存在丢包,目标范围用于指示接收窗口的边界序号与接收端当前接收到的数据包的包序号之间的范围;
在检测到目标范围内的第二数据包丢包时,将第二数据包添加至发送端的丢包队列中;
将丢包队列中的数据包发送至接收端。
通过设置SAK响应机制,不仅能够使接收端直接通知发送端哪些数据包发生了丢包,而且能够使发送端根据SAK控制消息主动判断哪些数据包发生了丢失,这样,在两种方式相结合的情况下,能够尽可能降低丢包比例,保证接收端尽可能完整的接收发送端发送的数据包,降低UDP传输中发生丢包的可能性。
在一个实施例中,检测目标范围内的数据包是否存在丢包包括:
获取在接收到SAK控制消息时对应的到达时间;
根据接收端当前接收到的数据包的包序号,获取发送端发送接收端当前接收的数据包的发送时间;
根据到达时间与发送时间计算得到参考往返时延;
根据参考往返时延检测目标范围内的数据包是否存在丢包。
在一个实施例中,根据到达时间与发送时间计算得到参考往返时延包括:
根据到达时间与发送时间计算得到当前往返时延;
将当前往返时延插入预设的链表尾部,并根据链表中每个节点对应的往返时延确定得到参考往返时延,参考往返时延为链表中所有往返时延中的最小值、最大值或平均值。
在一个实施例中,根据参考往返时延检测目标范围内的数据包是否存在丢包包括:
检测在参考往返时延内是否接收到接收端发送的目标数据包对应的目标SAK控制消息,目标数据包为满足反馈SAK控制消息的数据包。
在一个实施例中,在检测到目标范围内的第二数据包丢包时,将第二数据包添加至发送端的丢包队列中包括:
在参考往返时延内未接收到接收端发送的目标数据包对应的目标SAK控制消息时,确定目标数据包丢包;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安万像电子科技有限公司,未经西安万像电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010686294.3/2.html,转载请声明来源钻瓜专利网。