CN117896799A - 数据传输方法、系统、电子设备及存储介质 - Google Patents
数据传输方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117896799A CN117896799A CN202311828300.4A CN202311828300A CN117896799A CN 117896799 A CN117896799 A CN 117896799A CN 202311828300 A CN202311828300 A CN 202311828300A CN 117896799 A CN117896799 A CN 117896799A
- Authority
- CN
- China
- Prior art keywords
- transmission
- node
- data
- time slot
- path
- 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.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 396
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000003860 storage Methods 0.000 title claims abstract description 25
- 239000011159 matrix material Substances 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 11
- 230000000977 initiatory effect Effects 0.000 claims description 5
- 235000008694 Humulus lupulus Nutrition 0.000 claims description 2
- 238000004891 communication Methods 0.000 abstract description 19
- 238000013468 resource allocation Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 238000010845 search algorithm Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/246—Connectivity information discovery
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供了一种数据传输方法、系统、电子设备及存储介质,属于通信技术领域。方法包括:获取网络拓扑信息、源节点和目的节点;网络拓扑信息中包括多个传输节点;遍历传输节点,得到源节点传输至目的节点的至少一条传输路径,传输路径中源节点和目的节点之间的传输跳数最少;将每个传输路径上、与源节点相邻的传输节点作为邻居节点,计算邻居节点的连接权重占比,并选取最小的连接权重占比对应的传输路径作为目标路径,通过目标路径进行数据传输。本申请实施例提供的数据传输方法能够提高网络负载均衡,提高数据传输效率。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种数据传输方法、系统、电子设备及存储介质。
背景技术
无线自组网是一种无线通信网络,由一组相互连接的移动设备或节点组成,这些设备通过无线连接直接进行通信,而无需依赖于路由器或基站等基础设施网络。由于节点的无线覆盖范围有限,无线自组网中的数据通信通常需要通过多个节点的中继来进行。这种多跳通信方式可以扩展网络范围,克服单个节点覆盖范围的限制。
相关技术中,宽度优先搜索算法用于寻找网络中的最短路径,如果存在多个具有相同最短路径长度的路径,宽度优先搜索算法只能找到其中的一条路径,在构建路由表时可能会导致某些邻居节点负载过高,降低数据传输效率。
发明内容
本申请实施例的主要目的在于提出一种数据传输方法、系统、电子设备及存储介质,能够提高网络负载均衡,提高数据传输效率。
为实现上述目的,本申请实施例的第一方面提出了一种数据传输方法,所述方法包括:获取网络拓扑信息、源节点和目的节点;所述网络拓扑信息中包括多个传输节点;遍历所述传输节点,得到所述源节点传输至所述目的节点的至少一条传输路径,所述传输路径中所述源节点和所述目的节点之间的传输跳数最少;将每个所述传输路径上、与所述源节点相邻的所述传输节点作为邻居节点,计算所述邻居节点的连接权重占比,并选取最小的所述连接权重占比对应的所述传输路径作为目标路径,通过所述目标路径进行数据传输。
在一些实施例中,所述遍历所述传输节点,得到所述源节点传输至所述目的节点的至少一条传输路径,包括:基于所述网络拓扑信息选取与所述源节点的传输距离为一跳的至少一个所述传输节点为第一候选节点,并将所述第一候选节点存入初始候选序列;依次将初始序列中的所述传输节点作为初始节点,基于所述网络拓扑信息选取与所述初始节点的传输距离为一跳的至少一个所述传输节点为第二候选节点,将所述第二候选节点存入第二候选序列中;对所述第二候选序列中所述第二候选节点进行去重,将所述第二候选序列作为所述初始序列,重复本步骤,直至所述目的节点被选作所述第二候选节点;所述初始序列的初始值为所述初始候选序列;按照存储时间,根据所述初始候选序列和至少一个所述第二候选序列得到多个候选序列;从所述目的节点开始,以递减的顺序,逐一在所述候选序列中选取一个所述传输节点,直至到达所述源节点,得到至少一个所述传输路径。
在一些实施例中,所述基于所述网络拓扑信息选取与所述初始节点的传输距离为一跳的至少一个所述传输节点为第二候选节点,将所述第二候选节点存入第二候选序列中,包括:基于邻接矩阵获取所述初始节点的邻接值;所述邻接矩阵用于表征所述传输节点之间的链路连接状态,所述邻接矩阵根据所述网络拓扑信息得到;基于所述邻接值,将与所述初始节点连接为一跳的所述传输节点作为所述第二候选节点。
在一些实施例中,所述计算所述邻居节点的连接权重占比,包括:获取所述传输路径上存在业务发起需求的所述传输节点的节点数量;将所述节点数量的总和作为所述邻居节点上的业务连接数;根据所述邻居节点的节点带宽容量得到所述邻居节点的带宽权重;根据所述业务连接数在所述带宽权重上的占比得到所述连接权重占比。
在一些实施例中,所述通过所述目标路径进行数据传输,包括:获取目标传输数据的目标数据优先级;获取所述目标路径上所述传输节点在当前传输时刻的当前可用时隙;获取所述目标路径上所述传输节点在当前传输时刻的待传输数据,以及每个所述待传输数据的传输优先级;若所述目标数据优先级高于所述传输优先级,则根据所述当前可用时隙确定所述目标传输数据的第一传输时隙和所述待传输数据的第二传输时隙,所述第一传输时隙多于所述第二传输时隙,并利用所述第一传输时隙传输所述目标传输数据;若所述目标数据优先级等于所述传输优先级,则根据所述当前可用时隙确定所述目标传输数据的第三传输时隙和所述待传输数据的第四传输时隙,所述目标传输数据和所述待传输数据中数据包多的数据对应较多的时隙,并利用所述第三传输时隙传输所述目标传输数据。
在一些实施例中,所述获取所述目标路径上所述传输节点在当前传输时刻的当前可用时隙,包括:获取所述目标路径上前一传输时刻的所述传输节点的第一可用时隙;获取所述目标路径上当前传输时刻的传输节点的第二可用时隙;根据预设权重值和所述第一可用时隙得到第三可用时隙,基于所述第三时隙和所述第二可用时隙生成所述当前可用时隙。
在一些实施例中,所述方法还包括:若所述目标数据优先级等于所述传输优先级,则在所述传输节点上生成所述目标传输数据的第五传输时隙和所述待传输数据的第六传输时隙;所述第五传输时隙和所述第六传输时隙为根据所述当前可用时隙交替生成;在所述传输节点上,按照所述第五传输时隙传输所述目标传输数据。
为实现上述目的,本申请实施例的第二方面提出了一种数据传输系统,包括:网络信息模块,用于获取网络拓扑信息、源节点和目的节点;所述网络拓扑信息中包括多个传输节点;传输路径模块,用于遍历所述传输节点,得到所述源节点传输至所述目的节点的至少一条传输路径,所述传输路径中所述源节点和所述目的节点之间的传输跳数最少;目标路径模块,用于将每个所述传输路径上、与所述源节点相邻的所述传输节点作为邻居节点,计算所述邻居节点的连接权重占比,并选取最小的所述连接权重占比对应的所述传输路径作为目标路径,通过所述目标路径进行数据传输。
为实现上述目的,本申请实施例的第三方面提出了一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面实施例所述的方法。
为实现上述目的,本申请实施例的第四方面提出了一种存储介质,所述存储介质为计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面实施例所述的方法。
本申请提出的数据传输方法、系统、电子设备及存储介质,具有以下有益效果:获取网络拓扑信息、源节点和目的节点;网络拓扑信息中包括多个传输节点,遍历传输节点,得到源节点传输至目的节点的至少一条传输路径,传输路径中源节点和目的节点之间的传输跳数最少,将每个传输路径上、与源节点相邻的传输节点作为邻居节点,计算邻居节点的连接权重占比,并选取最小的连接权重占比对应的传输路径作为目标路径,通过目标路径进行数据传输。通过遍历全网的传输节点,获取源节点到其它节点的所有最短路径,使得路径选择能够符合更多的需求,避免了只有一条最短路径的局限性,根据各个邻居节点的带宽和业务情况选择目标路径,能够提高网络负载均衡,提高数据传输效率。
附图说明
图1是本申请实施例提供的数据传输方法的流程图;
图2是图1中的步骤S102的流程图;
图3是本申请实施例提供的数据传输方法的又一流程图;
图4是本申请实施例提供的邻接矩阵的示意图;
图5是本申请实施例提供的网络节点链路连接的示意图;
图6是图5中的步骤S202的流程图;
图7是图1中的步骤S103的流程图;
图8是本申请实施例提供的选择目标路径的流程图;
图9是图1中的步骤S103的又一流程图;
图10是图9中的步骤S502的流程图;
图11是本申请实施例提供的数据传输方法的又一流程图;
图12是本申请实施例提供的电子设备的硬件结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
无线自组网是一种无线通信网络,由一组相互连接的移动设备或节点组成,这些设备通过无线连接直接进行通信,而无需依赖于路由器或基站等基础设施网络。由于节点的无线覆盖范围有限,无线自组网中的数据通信通常需要通过多个节点的中继来进行。这种多跳通信方式可以扩展网络范围,克服单个节点覆盖范围的限制。
相关技术中,宽度优先搜索算法用于寻找网络中的最短路径,如果存在多个具有相同最短路径长度的路径,宽度优先搜索算法只能找到其中的一条路径,在构建路由表时可能会导致某些邻居节点负载过高,降低数据传输效率。
基于此,本申请实施例提供了一种数据传输方法、系统、电子设备及存储介质,能够提高网络负载均衡,提高数据传输效率。
本申请实施例提供的数据传输方法、系统、电子设备及存储介质,具体通过如下实施例进行说明,首先描述本申请实施例中的数据传输方法。
本申请实施例中的数据传输方法可以通过如下实施例进行说明。
需要说明的是,在本申请的各个具体实施方式中,当涉及到需要根据用户信息、用户行为数据,用户历史数据以及用户位置信息等与用户身份或特性相关的数据进行相关处理时,都会先获得用户的许可或者同意,例如,获取用户存储的数据以及用户的缓存数据访问请求时,均会先获得用户的许可或者同意。而且,对这些数据的收集、使用和处理等,都会遵守相关国家和地区的相关法律法规和标准。此外,当本申请实施例需要获取用户的敏感个人信息时,会通过弹窗或者跳转到确认页面等方式获得用户的单独许可或者单独同意,在明确获得用户的单独许可或者单独同意之后,再获取用于使本申请实施例能够正常运行的必要的用户相关数据。
图1是本申请实施例提供的数据传输方法的一个可选的流程图,图1中的方法可以包括但不限于包括步骤S101至步骤S103。
步骤S101,获取网络拓扑信息、源节点和目的节点;网络拓扑信息中包括多个传输节点。
可以理解的是,无线自组网的网络拓扑信息描述了在无线自组网中节点之间的连接方式和布局。由于无线自组网的特点是节点之间直接进行通信,网络拓扑是动态的,并且可以根据节点的移动和加入或离开网络而自适应变化。它描述了节点之间的物理或逻辑关系,例如星型拓扑、总线拓扑、网状拓扑等。
示例性的,可以通过邻接矩阵的方式来描述网络拓扑信息。邻接矩阵是一个二维矩阵,其中的元素表示节点之间的连接关系。矩阵的行和列分别代表网络中的节点,矩阵的元素表示节点之间的连接状态。通常使用1或0来表示连接或断开的状态,其中1表示节点之间有连接,0表示节点之间无连接。通过分析邻接矩阵,可以获得无线自组网的拓扑结构信息。例如,可以确定节点之间的直接邻居关系、查找可用的通信路径或路由、计算网络的连通性等。邻接矩阵还可以作为其他拓扑发现算法和路由协议的输入,用于网络管理和优化。
示例性的,传输节点是指网络中负责数据传输的节点,它们承担数据包的转发和路由功能传输节点在无线自组网中起到了桥梁的作用,它们通过相互协作和转发数据,使得节点能够实现直接通信并构建自组网。源节点是在网络中发起数据传输的起始节点,它是数据流的起点,将数据包发送到目的节点。目的节点是网络中接收数据的终点节点,它是数据流的终点,接收来自源节点发送的数据包。
步骤S102,遍历传输节点,得到源节点传输至目的节点的至少一条传输路径,传输路径中源节点和目的节点之间的传输跳数最少。
示例性的,遍历传输节点以获取源节点到目的节点的至少一条最短传输路径。遍历传输节点的实施可能会根据具体的应用场景和要求而有所不同。在实际应用中,还需要考虑网络拓扑、传输延迟、带宽限制等因素,并根据实际情况进行适当的调整和优化。
步骤S103,将每个传输路径上、与源节点相邻的传输节点作为邻居节点,计算邻居节点的连接权重占比,并选取最小的连接权重占比对应的传输路径作为目标路径,通过目标路径进行数据传输。
可以理解的是,获得至少一条传输路径之后,若传输路径只有一条则在数据传输时选择该条路径;若传输路径有多条,则从所有传输路径中优先选择整条路径以及邻居节点带宽容量最大的路径,能够避免使用拥塞大的路径,提高系统传输吞吐量使负载均衡。且选择数据占用量少的邻居节点,能够避免出现一条完整的路径负载最小,但是某单个节点数据量占率极高甚至达到阈值,路径上其他节点数据占用率极低的情况。邻居节点的连接权重占比可以为邻居节点对应的链路上有业务发起需求的节点个数的总和与该邻居节点的节点带宽容量比值。
本申请提出的数据传输方法,获取网络拓扑信息、源节点和目的节点;网络拓扑信息中包括多个传输节点,遍历传输节点,得到源节点传输至目的节点的至少一条传输路径,传输路径中源节点和目的节点之间的传输跳数最少,将每个传输路径上、与源节点相邻的传输节点作为邻居节点,计算邻居节点的连接权重占比,并选取最小的连接权重占比对应的传输路径作为目标路径,通过目标路径进行数据传输。通过遍历全网的传输节点,获取源节点到其它节点的所有最短路径,使得路径选择能够符合更多的需求,避免了只有一条最短路径的局限性,根据各个邻居节点的带宽和业务情况选择目标路径,能够提高网络负载均衡,提高数据传输效率。
请参阅图2,在一些实施例中,步骤S102可以包括步骤S201至步骤S204:
步骤S201,基于网络拓扑信息选取与源节点的传输距离为一跳的至少一个传输节点为第一候选节点,并将第一候选节点存入初始候选序列。
示例性地,可以初始化一个空的队列,初始化一个空的字典或列表,用于记录每个节点的前置节点(即在路径上的上一个节点)。初始化一个空的集合,用于记录已经访问过的节点,防止重复访问。将源节点加入队列,将与源节点的传输距离为一跳的至少一个传输节点加入集合中,并将集合作为初始候选序列输出。
步骤S202,依次将初始序列中的传输节点作为初始节点,基于网络拓扑信息选取与初始节点的传输距离为一跳的至少一个传输节点为第二候选节点,将第二候选节点存入第二候选序列中;对第二候选序列中第二候选节点进行去重,将第二候选序列作为初始序列,重复本步骤,直至目的节点被选作第二候选节点;初始序列的初始值为初始候选序列。
示例性地,进入循环,此时队列中存有初始序列对应的传输节点,初始序列的初始值为初始候选序列,即从初始候选序列开始循环。从队列中取出一个节点作为当前节点,如果当前节点是目的节点,表示已经找到了最短路径,可以结束循环,否则,将当前节点的传输距离为一跳的至少一个传输节点作为邻居节点进行遍历,如果邻居节点没有被访问过,将作为第二候选节点,加入队列中,此时队列中存储的是第二候选序列,并标记为已访问。同时,将当前节点设置为邻居节点的前置节点。如果循环结束时仍未找到目的节点,则表示无法从源节点到达目的节点。通过以上步骤,可以得到源节点到目的节点的最短传输路径。通过回溯前置节点的信息,可以从目的节点一直追溯到源节点,得到最短路径上的传输节点序列。
示例性的,请参阅图3,在一具体实施例中,获取到当前网络拓扑信息,以图4所示的邻接矩阵形式记录,其中,二维数组下标映射节点地址,矩阵元素表示节点与节点之间的链路值,有链路连接则链路值为1,对应的网络如图5所示。初始化一个空的队列,HeadAddr为队首节点地址,将源节点加入队列。Enqueue用于记录网络中的节点是否已入队;Dequeue用于记录网络中的节点是否已出队;AdjMatr[i][j]为邻接矩阵,节点i和节点j之间有链路,矩阵元素值为1,其余情况为0;HopCount[i]用于统计节点i距离源节点的最短跳数;FrontPoi nt[i]用于存放目的节点的上一跳节点,即前置节点;FrontCount用于统计传输节点的前置节点总数;AdjMatr[i][j]为邻接矩阵,节点i和节点j之间有链路,矩阵元素值为1,其余情况为0。
源节点加入队列后,作为队首节点,初始化源节点的跳数HopCount[i]为0,根据邻接矩阵遍历所有邻居节点,设定其中一跳邻居节点网络地址为AdjAddr。遍历当前的一跳邻居节点,若节点未入队则将节点入队,Enqueue记录节点入队,并将节点加入初始化的一个集合中,并将集合作为初始候选序列输出,将源节点作为当前邻居节点的前置节点存入FrontPoi nt[i]中,设置前置节点计数FrontCount加一,该邻居节点AdjAddr距离源节点的最短跳数HopCount[AdjAddr]=HopCount[HeadAddr]+1。至此,源节点的所有邻居节点遍历完成后将源节点移出队列。
进入循环时,初始队列中存有初始候选序列中对应的传输节点,从传输节点中依次选取当前节点的传输距离为一跳的至少一个传输节点作为邻居节点进行遍历,如果邻居节点没有被访问过,将作为第二候选节点,加入队列中,将该邻居节点距离源节点的最短跳数HopCount[AdjAddr]=HopCount[HeadAddr]+1,将本次遍历的队首节点作为前置节点FrontPoi nt[i]=HeadAddr,前置节点计数FrontCount加一。若邻居节点已访问过,则比较是否跳数为最小值,不是则跳过该邻居节点进行去重,若该邻居节点已经出队,则跳过该邻居节点进行去重。初始队列中所以传输节点完成邻居节点的遍历时,得到第二候选序列,将第二候选序列作为新的初始队列重复步骤,直至目的节点被选为第二候选节点。
步骤S203,按照存储时间,根据初始候选序列和至少一个第二候选序列得到多个候选序列。
步骤S204,从目的节点开始,以递减的顺序,逐一在候选序列中选取一个传输节点,直至到达源节点,得到至少一个传输路径。
可以理解的是,循环过程中不断产生新的第二候选节点并在不同时间存储,根据初始候选序列和得到的第二候选序列得到多个候选序列。目的节点可以根据前置节点FrontPoi nt[i]中记录的传输节点逐层从候选序列中选取传输节点回溯直至到达源节点,得到从源节点至目的节点的最短的传输路径。
示例性的,如图5所示的网络,假设源节点为V0节点,基于网络拓扑信息选取与源节点的传输距离为一跳的至少一个传输节点为第一候选节点,与V0的传输距离为一跳的第一候选节点为V1、V2和V3,将第一候选节点存入初始候选序列。初始序列的初始值为初始候选序列,即初始值为V1、V2和V3。
可以理解的是,依次将初始序列中的传输节点作为初始节点,即依次将V1、V2和V3作为初始节点,基于网络拓扑信息选取与初始节点的传输距离为一跳的至少一个传输节点为第二候选节点,将第二候选节点存入第二候选序列中。当V1作为初始节点时,第二候选节点为V0和V7;当V2作为初始节点时,第二候选节点为V0、V6、V7、V11;当V3作为初始候选节点时,第二候选节点为V0、V4、V6。对第二候选序列中第二候选节点进行去重,去除已经遍历过的传输节点,此时第二候选序列为V4、V6、V11、V7。
可以理解的是,将第二候选序列V4、V6、V11、V7作为初始序列,重复本步骤,得到去重后的第二候选序列为V15、V5、V13、V12、V10、V8。重复本步骤,直至目的节点被选作第二候选节点。
示例性的,假设目的节点为V11,当V2作为初始节点时,第二候选节点为V0、V6、V7、V11,目的节点被选作第二候选节点。按照存储时间,根据初始候选序列和至少一个第二候选序列得到多个候选序列,初始候选序列为V1、V2和V3,得到的一个第二候选序列为V7、V6、V11,得到两个候选序列。从目的节点V11开始,以递减的顺序,逐一在候选序列中选取一个传输节点,直至到达源节点,得到至少一个传输路径,即在序列V1、V2、V3中选取能够与V11组成一跳的传输路径的节点V2,节点V2再传输回源节点V0,即得到源节点V0到目的节点V11的最短路径,V0、V2、V11。
请参阅图6,在一些实施例中,步骤S202可以包括步骤S301至步骤S302:
步骤S301,基于邻接矩阵获取初始节点的邻接值;邻接矩阵用于表征传输节点之间的链路连接状态,邻接矩阵根据网络拓扑信息得到。
步骤S302,基于邻接值,将与初始节点连接为一跳的传输节点作为第二候选节点。
示例性的,根据网络拓扑信息,可以构建如图3所示的邻接矩阵,用于表征传输节点之间的链路连接状态,其中矩阵的行和列代表传输节点的编号。邻接矩阵中的元素表示传输节点之间的连接关系。如果两个节点之间存在连接,那么相应的矩阵元素为1;如果两个节点之间不存在连接,则矩阵元素为0。通过查找邻接矩阵中与初始节点对应行或列的元素,可以获取初始节点的邻接值。当初始节点为V2节点时,基于邻接矩阵获取V2的邻接值,得到与V2连接为一跳的传输节点V0、V6、V11、V7,作为第二候选节点。
请参阅图7,在一些实施例中,步骤S103可以包括步骤S401至步骤S404:
步骤S401,获取传输路径上存在业务发起需求的传输节点的节点数量。
步骤S402,将节点数量的总和作为邻居节点上的业务连接数。
步骤S403,根据邻居节点的节点带宽容量得到邻居节点的带宽权重。
步骤S404,根据业务连接数在带宽权重上的占比得到连接权重占比。
可以理解的是,传输路径为从源节点到目的节点的路径,沿途经过一系列传输节点。业务发起需求是指在传输网络中进行业务操作或请求。假设有一个传输路径由源节点A经过传输节点B、C和D最终到达目的节点E。在这个传输路径中,如果只有传输节点B和D需要发起业务需求,那么传输路径上存在业务发起需求的传输节点的节点数量为2。
示例性的,节点带宽容量表示节点在单位时间内能够传输的数据量或资源容量。它是衡量节点传输能力的指标,可以以比特率(bps)或其他单位来表示。带宽权重为基于节点带宽容量确定的权重值,用于衡量节点在路径选择或资源分配中的相对重要性。根据邻居节点的节点带宽容量得到邻居节点的带宽权重,节点带宽容量越大则对应带宽权重越大。例如,如果节点B的带宽容量为100Mbps,节点C的带宽容量为200Mbps,节点D的带宽容量为50Mbps,可以计算得到的带宽权重为:'B':100,'C':200,'D':50。实际应用中可能会考虑更多的因素,并使用更复杂的算法来计算带宽权重。
示例性的,根据业务连接数在带宽权重上的占比得到连接权重占比。假设c表示业务连接数,w表示权重,s表示邻居节点,相应邻居节点的连接权重占比为c(s)/w(s)。请参阅图8,在选择目标路径时,选取c(s)/w(s)占比最小的传输路径作为目标路径。
请参阅图9,在一些实施例中,步骤S103可以包括步骤S501至步骤S505:
步骤S501,获取目标传输数据的目标数据优先级。
步骤S502,获取目标路径上传输节点在当前传输时刻的当前可用时隙。
步骤S503,获取目标路径上传输节点在当前传输时刻的待传输数据,以及每个待传输数据的传输优先级。
步骤S504,若目标数据优先级高于传输优先级,则根据当前可用时隙确定目标传输数据的第一传输时隙和待传输数据的第二传输时隙,第一传输时隙多于第二传输时隙,并利用第一传输时隙传输目标传输数据。
步骤S505,若目标数据优先级等于传输优先级,则根据当前可用时隙确定目标传输数据的第三传输时隙和待传输数据的第四传输时隙,目标传输数据和待传输数据中数据包多的数据对应较多的时隙,并利用第三传输时隙传输目标传输数据。
可以理解的是,目标传输数据是指需要在网络中进行传输的具体数据或数据流。目标数据优先级是用于衡量目标传输数据相对于其他数据的重要性或优先级的指标。目标传输数据的目标数据优先级表示在传输过程中,特定数据或数据流的相对重要性或优先级。它用于确定数据传输的顺序、分配资源或进行网络流量管理,以满足数据的优先处理需求。可以通过设置多个优先级队列,将不同优先级的数据分别放置在不同的队列中,也可以通过为数据包添加服务质量(QoS)标记或优先级字段,来表示目标传输数据的目标数据优先级。
示例性的,获取目标路径上传输节点在当前传输时刻的当前可用时隙,在网络传输中,目标路径上的传输节点的当前可用时隙是指在当前传输时刻,节点上可供使用的传输资源或时间窗口。它表示节点在当前时刻能够进行传输操作的时间段或资源分配情况。
可以理解的是,目标路径上的传输节点可以已有业务传输,获取目标路径上传输节点在当前传输时刻的待传输数据,以及每个待传输数据的传输优先级。可以使用网络监测工具、流量分析器或网络管理系统来监测目标路径上的传输节点,帮助捕获传输节点上正在进行的业务传输。对于捕获到的传输数据,进行数据识别和分类,可以通过数据包分析、协议解析或特定的标识字段来确定哪些数据属于目标路径上的待传输数据。一旦确定了待传输数据,为每个待传输数据设置传输优先级标记。这些标记可以在数据包的头部或特定字段中进行设置,以表示数据的优先级。传输优先级可以根据应用需求、服务质量要求或系统策略来确定。若无待传输数据,则设置传输优先级为最低优先级。
示例性的,若目标数据优先级高于传输优先级,则根据当前可用时隙确定目标传输数据的第一传输时隙和待传输数据的第二传输时隙,第一传输时隙多于第二传输时隙,并利用第一传输时隙传输目标传输数据。假设节点G需要传输目标传输数据至节点F,还需要传输待传输数据至节点E,由节点G到节点F的目标传输数据的目标数据优先级高于待传输数据的传输优先级,则为目标传输数据分配第一传输时隙,第一传输时隙多于为待传输数据分配的第二传输时隙。由于目标传输数据的优先级高,所以待传输数据的第二传输时隙可能相对较短。
示例性的,若目标数据优先级等于传输优先级,则根据当前可用时隙确定目标传输数据的第三传输时隙和待传输数据的第四传输时隙,目标传输数据和待传输数据中数据包多的数据对应较多的时隙,并利用第三传输时隙传输目标传输数据。根据目标传输数据和待传输数据中数据包的数量,分配较多数据包的数据对应较多的传输时隙。这样可以确保在传输过程中,数据包较多的数据有更多的传输时隙来完成传输。
请参阅图10,在一些实施例中,步骤S502还包括步骤S601至步骤S602:
步骤S601,获取目标路径上前一传输时刻的传输节点的第一可用时隙。
步骤S602,获取目标路径上当前传输时刻的传输节点的第二可用时隙。
步骤S603,根据预设权重值和第一可用时隙得到第三可用时隙,基于第三可用时隙和第二可用时隙生成当前可用时隙。
示例性的,在前一个资源分配周期,为传输节点分配的资源为第一可用时隙。根据预设权重值和第一可用时隙得到第三可用时隙,基于第三可用时隙和第二可用时隙生成当前可用时隙,避免由于业务量的突增或骤降导致资源分配骤降或陡升,从而适应突发的后续情况。避免可能过一段时间还有业务要传输导致的重新建链问题,会把上一轮资源数量作为权重进行分配,预设权重值可以根据具体需求和经验设定,以平衡过去资源分配和当前资源需求之间的关系。例如前一传输时刻的传输节点的第一可用时隙为10个时隙,当前传输时刻的传输节点的第二可用时隙为2个时隙,此时可以按照经验值设定预设权重值为30%,此时第三可用时隙为10*0.3=3个时隙,将这3个时隙资源同样分配给该传输节点,此时当前可用时隙为2+3个时隙,从而避免出现资源分配骤降或陡升的情况。
请参阅图11,在一些实施例中,图10中的方法还包括步骤S701至步骤S702:
步骤S701,若目标数据优先级等于传输优先级,则在传输节点上生成目标传输数据的第五传输时隙和待传输数据的第六传输时隙;第五传输时隙和第六传输时隙为根据当前可用时隙交替生成。
步骤S702,在传输节点上,按照第五传输时隙传输目标传输数据。
示例性的,例如假设目标数据优先级等于传输优先级,有节点1、节点2和节点3,传输时隙可以间隔交叉分配,比如节点1分时隙1、4、7等等,节点2分时隙2、5、8等,节点3分时隙3、6、9等。各个节点的传输时隙在时间上交替出现,实现了间隔交叉的资源分配。通过间隔交叉的资源分配,各个节点在时间上较为均匀地获取传输时隙。这可以帮助实现传输的均衡,避免某个节点过度集中的情况,从而提高整体的传输效率和资源利用率。
本申请实施例还提供一种数据传输系统,可以实现上述数据传输方法,数据传输系统包括:网络信息模块,用于获取网络拓扑信息、源节点和目的节点;网络拓扑信息中包括多个传输节点;传输路径模块,用于遍历传输节点,得到源节点传输至目的节点的至少一条传输路径,传输路径中源节点和目的节点之间的传输跳数最少;目标路径模块,用于将每个传输路径上、与源节点相邻的传输节点作为邻居节点,计算邻居节点的连接权重占比,并选取最小的连接权重占比对应的传输路径作为目标路径,通过目标路径进行数据传输。
该数据传输系统的具体实施方式与上述数据传输方法的具体实施例基本相同,在此不再赘述。在满足本申请实施例要求的前提下,数据传输系统还可以设置其他功能模块,以实现上述实施例中的数据传输方法。
本申请实施例还提供了一种电子设备,电子设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述数据传输方法。该电子设备可以为包括平板电脑、车载电脑等任意智能终端。
请参阅图12,图12示意了另一实施例的电子设备的硬件结构,电子设备包括:
处理器1201,可以采用通用的CPU(CentralProcessingUnit,中央处理器)、微处理器、应用专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请实施例所提供的技术方案;
存储器1202,可以采用只读存储器(ReadOnlyMemory,ROM)、静态存储设备、动态存储设备或者随机存取存储器(RandomAccessMemory,RAM)等形式实现。存储器1202可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1202中,并由处理器1201来调用执行本申请实施例的数据传输方法;
输入/输出接口1203,用于实现信息输入及输出;
通信接口1204,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;
总线1205,在设备的各个组件(例如处理器1201、存储器1202、输入/输出接口1203和通信接口1204)之间传输信息;
其中处理器1201、存储器1202、输入/输出接口1203和通信接口1204通过总线1205实现彼此之间在设备内部的通信连接。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述数据传输方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本申请实施例描述的实施例是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本领域技术人员可以理解的是,图中示出的技术方案并不构成对本申请实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”和“若干”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例的方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序的介质。
以上参照附图说明了本申请实施例的优选实施例,并非因此局限本申请实施例的权利范围。本领域技术人员不脱离本申请实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本申请实施例的权利范围之内。
Claims (10)
1.一种数据传输方法,其特征在于,所述方法包括:
获取网络拓扑信息、源节点和目的节点;所述网络拓扑信息中包括多个传输节点;
遍历所述传输节点,得到所述源节点传输至所述目的节点的至少一条传输路径,所述传输路径中所述源节点和所述目的节点之间的传输跳数最少;
将每个所述传输路径上、与所述源节点相邻的所述传输节点作为邻居节点,计算所述邻居节点的连接权重占比,并选取最小的所述连接权重占比对应的所述传输路径作为目标路径,通过所述目标路径进行数据传输。
2.根据权利要求1所述的数据传输方法,其特征在于,所述遍历所述传输节点,得到所述源节点传输至所述目的节点的至少一条传输路径,包括:
基于所述网络拓扑信息选取与所述源节点的传输距离为一跳的至少一个所述传输节点为第一候选节点,并将所述第一候选节点存入初始候选序列;
依次将初始序列中的所述传输节点作为初始节点,基于所述网络拓扑信息选取与所述初始节点的传输距离为一跳的至少一个所述传输节点为第二候选节点,将所述第二候选节点存入第二候选序列中;对所述第二候选序列中所述第二候选节点进行去重,将所述第二候选序列作为所述初始序列,重复本步骤,直至所述目的节点被选作所述第二候选节点;所述初始序列的初始值为所述初始候选序列;
按照存储时间,根据所述初始候选序列和至少一个所述第二候选序列得到多个候选序列;
从所述目的节点开始,以递减的顺序,逐一在所述候选序列中选取一个所述传输节点,直至到达所述源节点,得到至少一个所述传输路径。
3.根据权利要求2所述的数据传输方法,其特征在于,所述基于所述网络拓扑信息选取与所述初始节点的传输距离为一跳的至少一个所述传输节点为第二候选节点,将所述第二候选节点存入第二候选序列中,包括:
基于邻接矩阵获取所述初始节点的邻接值;所述邻接矩阵用于表征所述传输节点之间的链路连接状态,所述邻接矩阵根据所述网络拓扑信息得到;
基于所述邻接值,将与所述初始节点连接为一跳的所述传输节点作为所述第二候选节点。
4.根据权利要求1所述的数据传输方法,其特征在于,所述计算所述邻居节点的连接权重占比,包括:
获取所述传输路径上存在业务发起需求的所述传输节点的节点数量;
将所述节点数量的总和作为所述邻居节点上的业务连接数;
根据所述邻居节点的节点带宽容量得到所述邻居节点的带宽权重;
根据所述业务连接数在所述带宽权重上的占比得到所述连接权重占比。
5.根据权利要求1所述的数据传输方法,其特征在于,所述通过所述目标路径进行数据传输,包括:
获取目标传输数据的目标数据优先级;
获取所述目标路径上所述传输节点在当前传输时刻的当前可用时隙;
获取所述目标路径上所述传输节点在当前传输时刻的待传输数据,以及每个所述待传输数据的传输优先级;
若所述目标数据优先级高于所述传输优先级,则根据所述当前可用时隙确定所述目标传输数据的第一传输时隙和所述待传输数据的第二传输时隙,所述第一传输时隙多于所述第二传输时隙,并利用所述第一传输时隙传输所述目标传输数据;
若所述目标数据优先级等于所述传输优先级,则根据所述当前可用时隙确定所述目标传输数据的第三传输时隙和所述待传输数据的第四传输时隙,所述目标传输数据和所述待传输数据中数据包多的数据对应较多的时隙,并利用所述第三传输时隙传输所述目标传输数据。
6.根据权利要求5所述的数据传输方法,其特征在于,所述获取所述目标路径上所述传输节点在当前传输时刻的当前可用时隙,包括:
获取所述目标路径上前一传输时刻的所述传输节点的第一可用时隙;
获取所述目标路径上当前传输时刻的所述传输节点的第二可用时隙;
根据预设权重值和所述第一可用时隙得到第三可用时隙,基于所述第三时隙和所述第二可用时隙生成所述当前可用时隙。
7.根据权利要求6所述的数据传输方法,其特征在于,所述方法还包括:
若所述目标数据优先级等于所述传输优先级,则在所述传输节点上生成所述目标传输数据的第五传输时隙和所述待传输数据的第六传输时隙;所述第五传输时隙和所述第六传输时隙为根据所述当前可用时隙交替生成;
在所述传输节点上,按照所述第五传输时隙传输所述目标传输数据。
8.一种数据传输系统,其特征在于,所述系统包括:
网络信息模块,用于获取网络拓扑信息、源节点和目的节点;所述网络拓扑信息中包括多个传输节点;
传输路径模块,用于遍历所述传输节点,得到所述源节点传输至所述目的节点的至少一条传输路径,所述传输路径中所述源节点和所述目的节点之间的传输跳数最少;
目标路径模块,用于将每个所述传输路径上、与所述源节点相邻的所述传输节点作为邻居节点,计算所述邻居节点的连接权重占比,并选取最小的所述连接权重占比对应的所述传输路径作为目标路径,通过所述目标路径进行数据传输。
9.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的数据传输方法。
10.一种计算机可读存储介质,所述存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的数据传输方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311828300.4A CN117896799A (zh) | 2023-12-28 | 2023-12-28 | 数据传输方法、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311828300.4A CN117896799A (zh) | 2023-12-28 | 2023-12-28 | 数据传输方法、系统、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117896799A true CN117896799A (zh) | 2024-04-16 |
Family
ID=90646589
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311828300.4A Pending CN117896799A (zh) | 2023-12-28 | 2023-12-28 | 数据传输方法、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117896799A (zh) |
-
2023
- 2023-12-28 CN CN202311828300.4A patent/CN117896799A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Koutsonikolas et al. | Efficient network-coding-based opportunistic routing through cumulative coded acknowledgments | |
CN103326913B (zh) | 用于对等通信的确定性退避方法和装置 | |
US8891534B2 (en) | Redirecting traffic via tunnels to discovered data aggregators | |
JP5296803B2 (ja) | 処理メトリック情報のノード間における交換 | |
JP6356285B2 (ja) | 産業応用のためのコンテンツ中心クロスレイヤスケジューリング | |
CN101057511A (zh) | 用于提供选择多跳跃通信系统中节点之间路由的拥塞感知路由选择度量的系统和方法 | |
CN109600815B (zh) | 一种实现数据转发的方法、装置及存储设备、程序产品 | |
CN108293200B (zh) | 设备吞吐量确定 | |
Bjurefors et al. | Congestion avoidance in a data-centric opportunistic network | |
WO2018207391A1 (en) | Method, computer readable storage medium and device for packet transmission in convergecast network | |
Jacquet et al. | Data transfer for hiperlan | |
KR101507270B1 (ko) | 무선 멀티미디어 센서 네트워크에서 혼잡을 고려한 QoS 라우팅 방법 | |
CN103814617A (zh) | 用于链路的自适应划分的方法和装置 | |
Marandi et al. | Practical Bloom filter based epidemic forwarding and congestion control in DTNs: A comparative analysis | |
CN105814850B (zh) | 路由数据包的方法、节点和通信系统 | |
CN117896799A (zh) | 数据传输方法、系统、电子设备及存储介质 | |
CN105900383B (zh) | 通信系统、控制节点和通信方法 | |
KR100780794B1 (ko) | 지그비 네트워크 망에서의 데이터 패킷 전송을 위한 라우팅 방법 및 그 기록매체 | |
Praghash et al. | Physical-traffic attentive vigorous routing (P-TAVR) and hot-spot detection to reduce the bottleneck in WSN | |
CN107592269B (zh) | 传输路径的负载信息的方法和网络节点 | |
KR101440454B1 (ko) | 무선 메쉬 네트워크 환경에서 가용 대역폭을 고려한 플로우별 라우팅 장치 및 방법 | |
CN105898817A (zh) | 无线路由数据的路由测度/转发方法及系统、无线传感器 | |
KR101611550B1 (ko) | 무선 센서 네트워크의 채널 할당 시스템 및 채널 할당 방법 | |
Khamforoosh et al. | A new multi-path AODV routing based on distance of nodes from the network center | |
CN107241777A (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 |