【技术实现步骤摘要】
基于UDP传输协议的多级节点网络数据传输方法
本公开的实施例一般涉及通信
,并且更具体地,涉及一种基于UDP传输协议的多级节点网络数据传输方法。
技术介绍
在计算机通信中,通信协议用于实现计算机与网络连接之间的标准,通信协议包括TCP协议和UDP协议等。TCP协议在传递数据之前,要先建连接消耗时间,而且在数据传递时,有确认机制、重传机制、拥塞控制机制等,都会消耗大量的时间,而且要在每台设备上维护所有的传输连接,每个连接都会占用系统的CPU、内存等硬件资源。UDP协议是一个无连接的传输层通信协议,通信是不可靠的。通信过程中会出现一些问题,如:因为UDP是无连接的,所以UDP的通信双方是不会针对发送消息进行确认的,发送方只负责发送数据,接收方只负责接收数据,不会有确认机制。在互联网传输的环境中,如果设备性能不足、网络环境不好,UDP协议是无连接的协议,基于UDP协议传输的数据则会出现丢包的情况。同时,UDP的数据包在网络上传输的时候,有可能造成数据的顺序更改,接收方的数据顺序和发送方的数据顺序发生了颠倒,则接收方则无法正常的组装还原原始数据了,就导致了通信的失败。由于UDP没有TCP那些可靠的机制,在数据传递时,如果网络质量不好,就会很容易丢包,因此UDP不可靠,不稳定。但UDP协议有其先天的优势,快:UDP没有TCP的握手、确认、窗口、重传、拥塞控制等机制,UDP是一个无状态的传输协议,所以它在传递数据时非常快。现有技术中的通信协议,TCP协议传输时间长,且占用硬件资源,UDP协议 ...
【技术保护点】
1.一种基于UDP传输协议的多级节点网络数据传输方法,其特征在于,包括:/n当前节点获取上级节点通过UDP协议发送的数据包,对所述数据包进行解析处理,生成原始应用数据;/n对所述原始应用数据的数据长度进行检测,响应于所述原始应用数据的数据长度大于预设数据包长度,以所述预设数据包长度为基准对所述原始应用数据进行切分,生成切分数据包;/n对所述切分数据包进行编号,并为所述切分数据包添加用于标识所述切分数据包类型的包头;/n向下级节点发送探测窗口数据包,响应于下级节点返回的剩余接收窗口的大小能够接收全部的切分数据包,通过UDP协议将全部的切分数据包添加至发送队列以发送至所述下级节点,其中,所述剩余接收窗口的大小为接收窗口大小减去接收队列大小的差值。/n
【技术特征摘要】
1.一种基于UDP传输协议的多级节点网络数据传输方法,其特征在于,包括:
当前节点获取上级节点通过UDP协议发送的数据包,对所述数据包进行解析处理,生成原始应用数据;
对所述原始应用数据的数据长度进行检测,响应于所述原始应用数据的数据长度大于预设数据包长度,以所述预设数据包长度为基准对所述原始应用数据进行切分,生成切分数据包;
对所述切分数据包进行编号,并为所述切分数据包添加用于标识所述切分数据包类型的包头;
向下级节点发送探测窗口数据包,响应于下级节点返回的剩余接收窗口的大小能够接收全部的切分数据包,通过UDP协议将全部的切分数据包添加至发送队列以发送至所述下级节点,其中,所述剩余接收窗口的大小为接收窗口大小减去接收队列大小的差值。
2.根据权利要求1所述的基于UDP传输协议的多级节点网络数据传输方法,其特征在于,上级节点以切分数据包的形式通过UDP协议向所述当前节点发送所述数据包,所述当前节点在接收到切分数据包后,向所述上级节点发送确认收到对应编号的切分数据包的信息。
3.根据权利要求2所述的基于UDP传输协议的多级节点网络数据传输方法,其特征在于,所述以所述预设数据包长度为基准对所述原始应用数据进行切分,生成切分数据包,包括:
将所述原始应用数据进行切分n个切分数据包,其中n为所述原始应用数据的长度与所述预设数据包长度的商向上取整的值,并且前n-1个切分数据包的长度为预设数据包长度,最后一个切分数据包的长度小于等于所述预设数据包长度,n为大于0的自然数。
4.根据权利要求3所述的基于UDP传输协议的多级节点网络的数据传输方法,其特征在于,所述对所述切分数据包进行编号,并为所述切分数据包添加用于标识所述切分数据包类型的包头,包括:
对所述n个切分数据包进行倒序编号,第一个切分数据包的编号为n-1,后续切分数据包的编号依次递减1,并为每个切分数据包添加用于标识该数据包为内容数据的标签。
5.根据权利要求4所述的基于UDP传输协议的多级节点网络的数据传输方法,其特征在于,所述发送队列中包含两种类型的切分数据包,一种是未发送的切分数据包,一种是已发送但未接收到下级节点发送的确认收到对应编号的切分数据...
【专利技术属性】
技术研发人员:刘加瑞,沈传宝,郝伟,吴璇,
申请(专利权)人:北京华云安信息技术有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。