CN113259490B - 基于udp传输协议的多级节点网络数据传输方法 - Google Patents
基于udp传输协议的多级节点网络数据传输方法 Download PDFInfo
- Publication number
- CN113259490B CN113259490B CN202110722711.XA CN202110722711A CN113259490B CN 113259490 B CN113259490 B CN 113259490B CN 202110722711 A CN202110722711 A CN 202110722711A CN 113259490 B CN113259490 B CN 113259490B
- Authority
- CN
- China
- Prior art keywords
- node
- data
- packet
- data packet
- segmented
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/164—Adaptation or special uses of UDP protocol
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供了一种基于UDP传输协议的多级节点网络数据传输方法,包括:当前节点获取上级节点通过UDP协议发送的数据包,生成原始应用数据;对所述原始应用数据的数据长度进行检测,响应于所述原始应用数据的数据长度大于预设数据包长度,对所述原始应用数据进行切分,生成切分数据包;对所述切分数据包进行编号,并为所述切分数据包添加用于标识所述切分数据包类型的包头;向下级节点发送探测窗口数据包,响应于下级节点返回的剩余接收窗口的大小能够接收全部的切分数据包,通过UDP协议将全部的切分数据包添加至发送队列以发送至所述下级节点。以此方式,能够快速传输数据并且使得传输过程稳定可靠。
Description
技术领域
本公开的实施例一般涉及通信技术领域,并且更具体地,涉及一种基于UDP传输协议的多级节点网络数据传输方法。
背景技术
在计算机通信中,通信协议用于实现计算机与网络连接之间的标准,通信协议包括TCP协议和UDP协议等。
TCP协议在传递数据之前,要先建连接消耗时间,而且在数据传递时,有确认机制、重传机制、拥塞控制机制等,都会消耗大量的时间,而且要在每台设备上维护所有的传输连接,每个连接都会占用系统的CPU、内存等硬件资源。
UDP协议是一个无连接的传输层通信协议,通信是不可靠的。通信过程中会出现一些问题,如:因为UDP是无连接的,所以UDP的通信双方是不会针对发送消息进行确认的,发送方只负责发送数据,接收方只负责接收数据,不会有确认机制。在互联网传输的环境中,如果设备性能不足、网络环境不好,UDP协议是无连接的协议,基于UDP协议传输的数据则会出现丢包的情况。同时,UDP的数据包在网络上传输的时候,有可能造成数据的顺序更改,接收方的数据顺序和发送方的数据顺序发生了颠倒,则接收方则无法正常的组装还原原始数据了,就导致了通信的失败。
由于UDP没有TCP那些可靠的机制,在数据传递时,如果网络质量不好,就会很容易丢包,因此UDP不可靠,不稳定。但UDP协议有其先天的优势,快:UDP没有TCP的握手、确认、窗口、重传、拥塞控制等机制,UDP是一个无状态的传输协议,所以它在传递数据时非常快。
现有技术中的通信协议,TCP协议传输时间长,且占用硬件资源,UDP协议传输快,但是不可靠,不稳定。
发明内容
根据本公开的实施例,提供了一种能够快速传输数据并且使得传输过程稳定可靠的数据传输方法。
在本公开的第一方面,提供了一种基于UDP传输协议的多级节点网络数据传输方法,包括:
当前节点获取上级节点通过UDP协议发送的数据包,对所述数据包进行解析处理,生成原始应用数据;
对所述原始应用数据的数据长度进行检测,响应于所述原始应用数据的数据长度大于预设数据包长度,以所述预设数据包长度为基准对所述原始应用数据进行切分,生成切分数据包;
对所述切分数据包进行编号,并为所述切分数据包添加用于标识所述切分数据包类型的包头;
向下级节点发送探测窗口数据包,响应于下级节点返回的剩余接收窗口的大小能够接收全部的切分数据包,通过UDP协议将全部的切分数据包添加至发送队列以发送至所述下级节点,其中,所述剩余接收窗口的大小为接收窗口大小减去接收队列大小的差值。
在一些实施例中,上级节点以切分数据包的形式通过UDP协议向所述当前节点发送所述数据包,所述当前节点在接收到切分数据包后,向所述上级节点发送确认收到对应编号的切分数据包的信息。
在一些实施例中,所述以所述预设数据包长度为基准对所述原始应用数据进行切分,生成切分数据包,包括:
将所述原始应用数据进行切分n个切分数据包,其中n为所述原始应用数据的长度与所述预设数据包长度的商向上取整的值,并且前n-1个切分数据包的长度为预设数据包长度,最后一个切分数据包的长度小于等于所述预设数据包长度, n为大于0的自然数。
在一些实施例中,所述对所述切分数据包进行编号,并为所述切分数据包添加用于标识所述切分数据包类型的包头,包括:
对所述n个切分数据包进行倒序编号,第一个切分数据包的编号为n-1,后续切分数据包的编号依次递减1,并为每个切分数据包添加用于标识该数据包为内容数据的标签。
在一些实施例中,所述发送队列中包含两种类型的切分数据包,一种是未发送的切分数据包,一种是已发送但未接收到下级节点发送的确认收到对应编号的切分数据包的信息的切分数据包,对于已发送但未接收到下级节点发送的确认收到对应编号的切分数据包的信息的切分数据包,
当前节点在预设时间段内未接收到所述下级节点发送的确认对应编号切分数据包的信息时,将所述对应编号切分数据包重新发送至所述下级节点,和/或,
对于一个目标编号切分数据包,当前节点在间隔预设数量的所述下级节点发送的确认对应编号切分数据包的信息时仍未接收到所述目标编号切分数据包对应的确认信息时,将所述目标编号切分数据包重新发送至所述下级节点,和/或,
当当前节点接收所述下级节点发送的未接收到对应编号切分数据包的信息时,将所述对应编号切分数据包重新发送至所述下级节点。
在一些实施例中,所述当前节点、所述上级节点和所述下级节点为多级节点网络中的相邻节点,所述多节节点网络由以下方式确定:
根据节点的特性值间的距离值确定传输数据的节点的顺序,生成节点路径,其中,节点的特性值通过以下维度确定:
节点数据包的可追踪性、节点的受控制程度、在节点中分析信息数据的难易程度,以及,人工对节点的可溯源性进行赋值。
在一些实施例中,所述根据节点的特性值间的距离值确定传输数据的节点的顺序,包括:
根据目标节点的标识确定与所述目标节点的特性值的距离值最大的节点,作为所述目标节点的前一跳节点;
将与所述目标节点的前k跳的节点的特性值的距离值第二大的节点,作为所述目标的前k+1跳的节点;
其中,k为大于1且小于等于s的自然数,s为节点的总数量。
在一些实施例中,还包括:
在所述切分数据包的包头中添加所述切分数据包的数据长度值。
在本公开的第二方面,提供了一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现如以上所述的方法。
在本公开的第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如以上所述的方法。
通过本公开的UDP传输协议的多级节点网络数据传输方法,能够快速传输数据并且使得传输过程稳定可靠。
应当理解,发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1示出了本公开实施例一的基于UDP传输协议的多级节点网络数据传输方法的流程图;
图2示出了本公开实施例二的基于UDP传输协议的多级节点网络数据传输方法的交互图;
图3示出了本公开实施例三的基于UDP传输协议的多级节点网络数据传输方法的多级节点网络确定方法的流程图;
图4示出了本公开实施例四的基于UDP传输协议的多级节点网络数据传输设备的结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的全部其他实施例,都属于本公开保护的范围。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本公开实施例的基于UDP传输协议的多级节点网络数据传输方法,用于在多级节点网络中节点之间的数据传输,在快速传输数据的同时能够使得传输过程稳定可靠。具体地,如图1所示,为本本公开实施例一的基于UDP传输协议的多级节点网络数据传输方法的流程图。从图1中可以看出,本实施例的基于UDP传输协议的多级节点网络数据传输方法,可以包括以下步骤:
S101:当前节点获取上级节点通过UDP协议发送的数据包,对所述数据包进行解析处理,生成原始应用数据。
本实施例的基于UDP传输协议的多级节点网络数据传输方法,可以应用于多级节点网络。多级节点网络为由多个网络节点构成的集群,在进行数据传输时,根据确定传输数据的节点的先后顺序将传输数据的节点级联为多级节点网络。多级节点网络中相邻的三个节点(即上级节点、当前节点和下级节点)之间的数据传输方法,体现了数据在多级节点网络中的传输方法,例如,当前节点可以作为下级节点的上级节点,也可以作为上级节点的下级节点,因此,只需要对多级节点网络中相邻的三个节点间的数据传输方法进行说明,那么多级节点网络中数据的传输方法就清晰了。
下面以相邻的三个节点间的数据传输方法为例,对本申请的技术方案进行说明。首先,当前节点获取上级节点通过UDP协议发送的数据包,对所述数据包进行解析处理,生成原始应用数据。关于上级节点怎么向当前节点发送数据包参见后续的当前节点向下级节点发送数据包的方法。当前节点在接收到上级节点发送的数据包时,对所述数据包进行解析处理,生成原始应用数据,所述原始应用数据即用户端发送至多级节点网络需要在多级节点网络中传输的数据。
S102:对所述原始应用数据的数据长度进行检测,响应于所述原始应用数据的数据长度大于预设数据包长度,以所述预设数据包长度为基准对所述原始应用数据进行切分,生成切分数据包。
在本实施例中,当当前节点接收上级节点发送的数据包并解析生成原始应用数据后,对所述原始应用数据的数据长度进行检测,响应于所述原始应用数据的数据长度大于预设数据包长度,以所述预设数据包长度为基准对所述原始应用数据进行切分,生成切分数据包。在本申请中,节点进行数据传输是以数据包的方式进行的,而数据包设置有最大数据量,即数据包的长度设置有最大长度值,即预设数据包长度,例如1200字节,因此,需要对所述原始应用数据的数据长度进行检测,若原始应用数据的数据长度小于等于1200字节,则可以以一个数据包的形式将所述原始应用数据发送至下级节点,而若原始应用数据的数据长度大于1200字节,则需要以1200字节为基准对原始应用数据进行切分。
具体地,可以将所述原始应用数据进行切分n个切分数据包,其中n为所述原始应用数据的长度与所述预设数据包长度的商向上取整的值,并且前n-1个切分数据包的长度为预设数据包长度,最后一个切分数据包的长度小于等于所述预设数据包长度, n为大于0的自然数。
例如原始应用数据的长度为1129字节,由于1129<1200,所以,无需对所述原始应用数据进行切分。例如原始应用数据的长度为2129字节,由于2129>1200,并且2129/1200向上取整为2,2129=1200+929所以,因此需要对所述原始应用数据进行切分,生成切分数据包,其中一个数据包的长度为1200字节,另一个数据包的长度为929字节。
S103:对所述切分数据包进行编号,并为所述切分数据包添加用于标识所述切分数据包类型的包头。
在本实施例中,当对原始应用数据进行切分后,还可以对切分生成的切分数据包进行编号。具体地,以生成n切分数据包为例,可以对n个切分数据包进行倒序编号,第一个切分数据包的编号为n-1,后续切分数据包的编号依次递减1,则,最后一个数据的编号为0,并为每个切分数据包添加用于标识该数据包为内容数据的包头,例如,可以约定PUSH为内容数据包包头。
在一些实施例中,也可以以其他方式对生成的n个切分数据包进行编号,例如从1开始进行顺序编号等。
S104:向下级节点发送探测窗口数据包,响应于下级节点返回的剩余接收窗口的大小能够接收全部的切分数据包,通过UDP协议将全部的切分数据包添加至发送队列以发送至所述下级节点,其中,所述剩余接收窗口的大小为接收窗口大小减去接收队列大小的差值。
在完成对切分数据包的编号后,向下级节点发送探测窗口数据包,例如,可以约定WASK为探测窗口数据包包头,WINS为告知窗口大小数据包包头,则发送的探测窗口数据包可以为WASK+当前节点的标识信息(例如IP地址等),下级节点在接收到探测窗口数据包后,将自身的剩余接收窗口的大小发送至当前节点,知窗口大小数据包可以为WINS+下级节点的标识信息。当前节点根据下级节点返回的剩余接收窗口的大小判断下级节点能否接收全部切分数据包,若能接受全部切分数据包,则将全部的切分数据包添加至发送队列,然后通过UDP协议发送至下级节点。
在一些实施例中,可以按照切分数据包的编号由大到小的顺序添加至发送队列,例如,切分数据包的编号为5,4,3,2,1,0,则按照编号5,4,3,2,1,0的顺序先后添加至发送队列,发送队列先发送编号为5的切分数据包。
发送队列中包含两种类型的切分数据包,一种是未发送的切分数据包,一种是已发送但未接收到下级节点发送的确认收到对应编号的切分数据包的信息的切分数据包,对于已发送但未接收到下级节点发送的确认收到对应编号的切分数据包的信息的切分数据包,
当前节点在预设时间段内未接收到所述下级节点发送的确认对应编号切分数据包的信息时,将所述对应编号切分数据包重新发送至所述下级节点,和/或,
对于一个目标编号切分数据包,当前节点在间隔预设数量的所述下级节点发送的确认对应编号切分数据包的信息时仍未接收到所述目标编号切分数据包对应的确认信息时,将所述目标编号切分数据包重新发送至所述下级节点,和/或,
当当前节点接收所述下级节点发送的未接收到对应编号切分数据包的信息时,将所述对应编号切分数据包重新发送至所述下级节点。
在将全部的切分数据包添加至发送队列后,以与UDP协议数据传输方式相同的方式将切分数据包发送至下级节点,即直接将切分数据包发送至下级节点。
通过本公开的UDP传输协议的多级节点网络数据传输方法,能够快速传输数据并且使得传输过程稳定可靠。
上述实施例介绍了本公开基于UDP传输协议的多级节点网络数据传输方法的原理,下面结合时序图以一个具体实例对本公开的技术方案进行进一步说明。具体地,参见图2,为本公开实施例二的基于UDP传输协议的多级节点网络数据传输方法的交互图。
仍以多级节点网络中的三个相邻节点为例,上级节点发送带有编号的切分数据包至当前节点,当前节点在接收到全部带有编号的切分数据包后,解析生成原始应用数据,当前节点将原始应用数据的长度与预设数据包长度进行对比,判断是否需要对原始应用数据进行切分,当原始应用数据的长度超过预设数据包长度时,对长度超过预设数据包长度的原始应用数据进行切分,生成切分数据包,对切分数据包进行编号,然后向下级节点发送探测窗口数据包,来确定下级节点是否有足够的空间接收全部的切分数据包,下级节点在接收到探测窗口数据包后,向当前节点发送反馈剩余接收窗口大小的数据包,当前节点在接收到反馈剩余接收窗口大小的数据包后,判断剩余接收窗口大小能够接收全部切分数据包,若剩余接收窗口大小能够接收全部切分数据包,将全部的切分数据包添加至发送队列,然后按照编号由大到小的顺序将带编号的切分数据包发送至下级节点。
在本实施例中,当下级节点有未接收到的数据包时,通过前文所述的方法将所述对应编号切分数据包重新发送至所述下级节点。
通过本公开的UDP传输协议的多级节点网络数据传输方法,能够快速传输数据并且使得传输过程稳定可靠。
如图3所示,为本公开实施例三的基于UDP传输协议的多级节点网络数据传输方法的多级节点网络确定方法的流程图,本实施例针对多级节点网络中节点的确定方法进行说明,包括:
S301:根据目标节点的标识确定与所述目标节点的特性值的距离值最大的节点,作为所述目标节点的前一跳节点。
节点的特性值通过以下维度确定:
(1)数据包的可追踪性,即判断节点能否追踪溯源单包数据,以及是否能够获取数据包的特征信息,所述维度的值可以占全部四个维度值的25%,每满足上述的一个条件减少5%;(2)节点的受控制程度,确定对节点控制程度是反射控制、跳板控制、费标准跳板控制、僵尸控制还是物理控制,所述维度的值可以占全部四个维度值的25%,上述的控制程度相邻级别递减5%,初始级别对应的值为25%,例如,反射控制对应的值为25%,物理控制对应的值为5%;(3)在节点中分析信息数据的难易程度,主要体现在以下两个方面,一是节点网络的联通性是否满足第一预设条件,二是节点的可访问性是否满足第二预设条件,所述第一预设条件例如可以是与所述节点连接的其他节点的数量上是否大于目标值,所述第二预设条件例如可以是节点在预设时间段的被访问量是否大于目标值,所述维度的初始值为25%,每满足上述的一个方面的条件,在初始值的基础上减少5%;(4)根据人工经验值对节点的可溯源性进行赋值。人工赋值时,可以参考区域名称在时事新闻中或者相关网络信息中出现的频次对节点的可溯源性进行赋值。
其中,特性区域的可溯源性的总值为1,也就是说,上述的四个维度分别对应的可溯源性对应的值为25%,即0.25,当然,也可以每个维度对应的可溯源性对应的值根据实际需要进行动态调整。
S302:将与所述目标节点的前k跳的节点的特性值的距离值第二大的节点,作为所述目标的前k+1跳的节点。
将与所述目标的前n跳的节点的特性值的距离值第二大的节点,作为所述目标的前n+1跳的节点;其中,n为大于1且小于等于m的自然数,m为需要经过的节点的数量,特性值的距离值为两节点的特性值的差值的绝对值。
通过上述方法,确定了数据在多级节点网络中的传输顺序,进而能够快速传输数据并且使得传输过程稳定可靠。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应所述知悉,本公开并不受所描述的动作顺序的限制,因为依据本公开,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应所述知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本公开所必须的。
图4示出了可以用来实施本公开的实施例的电子设备400的示意性框图。如图所示,设备400包括中央处理单元(CPU)401,其可以根据存储在只读存储器(ROM)402中的计算机程序指令或者从存储单元408加载到随机访问存储器(RAM)403中的计算机程序指令,来执行各种适当的动作和处理。在RAM 403中,还可以存储设备400操作所需的各种程序和数据。CPU 401、ROM 402以及RAM 403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
设备400中的多个部件连接至I/O接口405,包括:输入单元406,例如键盘、鼠标等;输出单元407,例如各种类型的显示器、扬声器等;存储单元408,例如磁盘、光盘等;以及通信单元409,例如网卡、调制解调器、无线通信收发机等。通信单元409允许设备400通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理单元401执行上文所描述的各个方法和处理,其被有形地包含于机器可读介质,例如存储单元408。在一些实施例中,计算机程序的部分或者全部可以经由ROM 402和/或通信单元409而被载入和/或安装到设备400上。当计算机程序加载到RAM 703并由CPU401执行时,可以执行上文描述的方法的一个或多个步骤。备选地,在其他实施例中,CPU401可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行上述方法。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)等等。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (9)
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传输协议的多级节点网络数据传输方法,其特征在于,所述发送队列中包含两种类型的切分数据包,一种是未发送的切分数据包,一种是已发送但未接收到下级节点发送的确认收到对应编号的切分数据包的信息的切分数据包,对于已发送但未接收到下级节点发送的确认收到对应编号的切分数据包的信息的切分数据包,
当前节点在预设时间段内未接收到所述下级节点发送的确认对应编号切分数据包的信息时,将所述对应编号切分数据包重新发送至所述下级节点,和/或,
对于一个目标编号切分数据包,当前节点在间隔预设数量的所述下级节点发送的确认对应编号切分数据包的信息时仍未接收到所述目标编号切分数据包对应的确认信息时,将所述目标编号切分数据包重新发送至所述下级节点,和/或,
当当前节点接收所述下级节点发送的未接收到对应编号切分数据包的信息时,将所述对应编号切分数据包重新发送至所述下级节点。
6.根据权利要求5所述的基于UDP传输协议的多级节点网络数据传输方法,其特征在于,所述根据节点的特性值间的距离值确定传输数据的节点的顺序,包括:
根据目标节点的标识确定与所述目标节点的特性值的距离值最大的节点,作为所述目标节点的前一跳节点;
将与所述目标节点的前k跳的节点的特性值的距离值第二大的节点,作为所述目标的前k+1跳的节点;
其中,k为大于1且小于等于s的自然数,s为节点的总数量。
7.根据权利要求6所述的基于UDP传输协议的多级节点网络数据传输方法,其特征在于,还包括:
在所述切分数据包的包头中添加所述切分数据包的数据长度值。
8.一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1~6中任一项所述的方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1~6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110722711.XA CN113259490B (zh) | 2021-06-29 | 2021-06-29 | 基于udp传输协议的多级节点网络数据传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110722711.XA CN113259490B (zh) | 2021-06-29 | 2021-06-29 | 基于udp传输协议的多级节点网络数据传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113259490A CN113259490A (zh) | 2021-08-13 |
CN113259490B true CN113259490B (zh) | 2021-09-24 |
Family
ID=77190041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110722711.XA Active CN113259490B (zh) | 2021-06-29 | 2021-06-29 | 基于udp传输协议的多级节点网络数据传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113259490B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114337921B (zh) * | 2021-12-24 | 2024-01-19 | 海光信息技术股份有限公司 | 一种数据传输方法、数据传输装置和相关设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101262437A (zh) * | 2008-04-17 | 2008-09-10 | 中兴通讯股份有限公司 | 一种流控制传输协议状态迁移的方法 |
CN107580233A (zh) * | 2017-08-21 | 2018-01-12 | 武汉斗鱼网络科技有限公司 | 一种传输数据的方法、装置及计算机设备 |
CN111107398A (zh) * | 2019-12-27 | 2020-05-05 | 深圳市小溪流科技有限公司 | 一种流媒体数据的传输方法及接收方法、电子设备 |
CN112333094A (zh) * | 2020-11-27 | 2021-02-05 | 迈普通信技术股份有限公司 | 数据传输处理方法、装置、网络设备及可读存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101436978A (zh) * | 2007-11-15 | 2009-05-20 | 盛乐信息技术(上海)有限公司 | 使用udp协议进行可靠数据传输的方法 |
US7817631B1 (en) * | 2008-07-09 | 2010-10-19 | Google Inc. | Network transfer protocol |
JP5335354B2 (ja) * | 2008-10-03 | 2013-11-06 | キヤノン株式会社 | 情報送信装置、情報送信装置の制御方法及びコンピュータプログラム |
CN108901044B (zh) * | 2018-07-23 | 2021-09-21 | 成都鼎桥通信技术有限公司 | 多级中继网络的数据传输方法、装置及设备 |
CN111147564B (zh) * | 2019-12-20 | 2022-07-26 | 国久大数据有限公司 | 数据文件传输方法、系统及通信终端 |
-
2021
- 2021-06-29 CN CN202110722711.XA patent/CN113259490B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101262437A (zh) * | 2008-04-17 | 2008-09-10 | 中兴通讯股份有限公司 | 一种流控制传输协议状态迁移的方法 |
CN107580233A (zh) * | 2017-08-21 | 2018-01-12 | 武汉斗鱼网络科技有限公司 | 一种传输数据的方法、装置及计算机设备 |
CN111107398A (zh) * | 2019-12-27 | 2020-05-05 | 深圳市小溪流科技有限公司 | 一种流媒体数据的传输方法及接收方法、电子设备 |
CN112333094A (zh) * | 2020-11-27 | 2021-02-05 | 迈普通信技术股份有限公司 | 数据传输处理方法、装置、网络设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113259490A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113259391B (zh) | 应用于多级节点网络的数据传输方法和装置 | |
EP3338396B1 (en) | Device and method for establishing connection in load-balancing system | |
CN106612284B (zh) | 一种流数据的传输方法和装置 | |
EP2978171B1 (en) | Communication method, communication device, and communication program | |
RU2540815C2 (ru) | Прерывание, по меньшей мере частичное, передачи кадра | |
US8976814B2 (en) | Method of transporting data from sending node to destination node | |
CN110581812A (zh) | 一种数据报文的处理方法和装置 | |
CN104980257B (zh) | 物联网通讯方法及装置 | |
CN114629822A (zh) | 链路检测方法、装置、电子设备及存储介质 | |
CN113259490B (zh) | 基于udp传输协议的多级节点网络数据传输方法 | |
JP6963411B2 (ja) | 通信装置、通信方法、およびプログラム | |
CN108432287A (zh) | 一种数据传输方法及网络侧设备 | |
CN113259989B (zh) | 数据重传方法、装置及电子设备 | |
CN111404872A (zh) | 一种报文处理方法、装置及系统 | |
US9451524B2 (en) | Wireless networking with flexibly-ordered relayers | |
CN114390054A (zh) | 一种核心网网络加速方法、电子设备及计算机存储介质 | |
CN107733903B (zh) | 一种基于udp的数据传输确认方法和基站 | |
US9172654B2 (en) | Transfer device and transfer method | |
US6961777B1 (en) | Systems and methods for predicting fields in a data packet | |
EP2725760B1 (en) | Transfer device and transfer method | |
CN111385069A (zh) | 数据传输方法及计算机设备 | |
KR101376583B1 (ko) | 이동통신 시스템에서 패킷 데이터 수신 응답 신호 구성방법 및 장치 | |
US9307509B1 (en) | Transmitting radio signals using simultaneous retransmission | |
CN113347681A (zh) | 数据传输方法、装置、存储介质及电子装置 | |
CN115242353B (zh) | 用于更新无线网格网络中重传次数的方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |