[发明专利]一种基于UDP的可靠一对多数据传输方法有效
申请号: | 202310237665.3 | 申请日: | 2023-03-14 |
公开(公告)号: | CN116073957B | 公开(公告)日: | 2023-06-06 |
发明(设计)人: | 吴阳 | 申请(专利权)人: | 南京鼎岩信创科技有限公司 |
主分类号: | H04L1/00 | 分类号: | H04L1/00;H04L1/1607;H04L67/06;H04L69/164 |
代理公司: | 南京源古知识产权代理事务所(普通合伙) 32300 | 代理人: | 郑宜梅 |
地址: | 210000 江苏省南京*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 udp 可靠 一对 多数 据传 方法 | ||
本发明公开了一种基于UDP的可靠一对多数据传输方法,包括发送端将待发送数据分块分包后并建立状态位图sbmp;接收端创建对应的状态位图rbmp;发送端依次发送数据块,每个块的数据传输具体包括:sbmp清零同时rbmp清零;如果sbmp位为0则发送当前位对应的数据包至发送端,接收端收到数据包后将对应的rbmp标记1;将sbmp所有位设置为1,则将sbmp与rbmp的对应位进行与运算,并将运算结果存入sbmp的对应位;发送端查看当前sbmp是否全部为1,如果全部为1则当前数据块发送完成,否则重复上述过程,直到sbmp的都为1;根据数据块的数目判断数据是否完成传输。本发明能够提升数据传输速度。
技术领域
本发明涉及数据传输技术领域,具体涉及一种基于UDP的可靠一对多数据传输方法。
背景技术
随着信息技术的快速发展,在数据传输方面的需求也越来越多,但是不同应用不同网络环境对数据传输方法的要求也不相同,但是可靠、高效永远是数据传输追求的目标。TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议,也就是说,在收发数据前,必须和对方建立可靠的连接。 一个TCP连接必须要经过三次握手才能建立起来,每次传输数据后必须等待对方回复ACK数据包确认收到,才能进行下一个数据包传输,在高延迟网络中,会浪费很多时间等待ACK。UDP(User Data Protocol,用户数据报协议)是一个非连接的协议,传输数据之前双端不建立连接,只是尽量把数据包发送给对方,且不需要等待对方确认,因此效率仅受限于当前网络环境能传输的最大速度,但是由于其不需要确认数据是否收到,会导致传输过程中出现数据丢失的情况。在不稳定的网络环境中(如wifi)使用TCP传输会导致效率很低,是其保障数据可靠的机制导致的,无法改变。因此,这种情况下通常使用UDP进行传输。
现有技术公开号为CN114124940A公开了一种UDP协议的数据定制传输方法,包括将Pattern数据文件进行编址、分块和压缩操作;该方案在提高测试效率的前提下,通过增加ACK机制,确保下发的Pattern数据的可靠性和完整性。但是该方案因为其状态位图无法同时存储多个接收端的状态,因此无法一对多数据传输使用,每个数据包接收端都要反馈ACK报文状态,由于网络带宽是固定的,会导致传输速度降低,浪费网络资源,且由于UDP的不稳定性会导致反馈的ACK报文丢失,本来已经接收成功的数据包,因其ACK报文丢失导致数据包重传,从而出现重复补包浪费网络资源。
因此,如何解决大文件数据通过TCP传输时效率较低问题,同时如何确保下发的文件数据的可靠性和完整性方面的问题成为急需解决的问题。
发明内容
1.所要解决的技术问题:
针对上述的技术问题,本申请提出一种基于UDP的可靠一对多数据传输方法,本方法通过舍弃实时反馈丢包信息,避免浪费等待反馈的时间,从而提升数据传输速度,且由于不再等待,可以直接最大化利用网络资源进行收发数据,来实现传输的高效性;最后通过状态位图反馈接收情况,进行数据补发,来实现数据的可靠性。
2.技术方案:
一种基于UDP的可靠一对多数据传输方法,包括以下步骤:
步骤一:发送端将待发送数据按照预设单位数据块大小b分成M块;每一个数据块按照预设单位数据包大小s分成N个数据包,其中s小于等于网络最大传输单元MTU;根据数据包的个数N创建对应数目位的状态位图sbmp;其中M、N均为大于等于1的整数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京鼎岩信创科技有限公司,未经南京鼎岩信创科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310237665.3/2.html,转载请声明来源钻瓜专利网。