CN117241337B - 双路径无线网格网络的路由方法、装置、设备和存储介质 - Google Patents
双路径无线网格网络的路由方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN117241337B CN117241337B CN202311511537.XA CN202311511537A CN117241337B CN 117241337 B CN117241337 B CN 117241337B CN 202311511537 A CN202311511537 A CN 202311511537A CN 117241337 B CN117241337 B CN 117241337B
- Authority
- CN
- China
- Prior art keywords
- routing
- link
- axis
- request
- transmit
- 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
- 238000000034 method Methods 0.000 title claims abstract description 66
- 230000005540 biological transmission Effects 0.000 claims abstract description 81
- 238000004590 computer program Methods 0.000 claims description 37
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000009977 dual effect Effects 0.000 claims description 3
- 235000003642 hunger Nutrition 0.000 abstract description 14
- 230000037351 starvation Effects 0.000 abstract description 14
- 230000000903 blocking effect Effects 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 17
- 238000005516 engineering process Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请涉及一种双路径无线网格网络的路由方法、装置、设备和存储介质。采用本方法能够通过在二维坐标内的所有路由节点传输路由请求时,在沿X轴、Y轴任一正负方向中选取其中一个方向设置为在同向双路中的顺时针和逆时针方向路由分别选取设置不同标记路径传输路由请求,避免了在相邻四个路由节点中形成环形锁死回路,实现了始终朝向目标路由节点传输路由请求,从而形成最短路由路径,因此也不存在活锁现象;且所有路由节点的路由请求在传输过程中都是等地位的,不会产生饿死现象;本申请不仅能解决死锁、活锁和饿死问题还能尽量保持路径的多样性,减少阻塞。
Description
技术领域
本申请涉及片上网络技术领域,特别是涉及一种双路径无线网格网络的路由方法、装置、计算机设备和存储介质。
背景技术
由于片上网络从诞生至今不过数十年,尚且处于理论研究阶段。总体上看,片上网络的研究还处于起步阶段,相关的理论和技术就不大成熟,但是遵循着由单机到网络的发展趋势,相信片上网络在不久的将来会成为一种关键的技术得到广泛的应用,因此对之进行相关的研究还是很有必要的。
在现有的二维无线网格网络(mesh)片上网络的拓扑结构中,路由器用于仲裁数据的流向,决定数据包在路由网络内的传输路径;资源节点可以发送和接受数据,路由器与路由器之间以及路由器与资源节点之间都是双向连接线形成的链路,即全双工。每个路由使用链路连接一个资源节点。路由节点与资源节点之间,路由节点与路由节点之间都是通过两条独立且单向的链路连接起来的。
在实际网络中,路由节点数量N的取值可以是任意大的,只要保证每个路由节点都连接一个资源节点即可。但是随着的增大,网络的直径和规模也随着增大,对网络的时延,功耗等性能将会产生很大影响。由于结构的组成结构简单,在规模不大的网络环境中得到了大量应用。且因为存在“闭环”,可能会出现死锁,XY路由方法可以避免死锁的产生,但是对于任意的路由请求,使用XY路由方法都只有一条路径,很容易造成阻塞。当然还有奇偶排序方法(Odd-Even Sort),但是对于任意的路由请求路径比XY路由方法多,但是也很容易阻塞。
路由方法一般是指路由器R之间相互传输数据,因此后续我们只考虑数据在路由器R之间的传输。路由方法是NoC研究人员研究内容的重点之一。在确定了网络拓扑结构的情况下,路由方法决定了消息包在网络中的传递路径。它会根据源节点和目标节点选择中间需要路由的节点。所以说路由方法就是对中间节点进行选择,在选择了合适节点的前提下向目标节点传输小细胞。这样做的目的是使数据包的网络延迟、投递过程中所需要的功耗、数据吞吐率以及可靠性都能达到所设定的指标。一个好的路由方法可以时芯片的性能达到最优,相反一个坏的路由方法则会使芯片的性能大大降低。同时一个好的路由方法能够有效的避免死锁、活锁和饿死这些降低芯片性能的问题。
对于一个二维无线网格网络拓扑结构的片上网络而言,每一个路由器都有一个坐标(x,y)与之唯一对应。但是目前二维无线网格网络拓扑结构的路由方法存在死锁、活锁和饿死的问题。
发明内容
基于此,有必要针对目前二维无线网格网络拓扑结构的路由方法存在死锁、活锁和饿死的技术问题,提供一种双路径无线网格网络的路由方法、装置、计算机设备和存储介质,能够避免死锁、活锁和饿死的情况出现,防止产生阻塞,提升芯片性能。
一方面,提供一种双路径无线网格网络的路由方法,所述方法包括:
对双路径无线网格网络构建二维坐标系,在二维坐标系中为双路径无线网格网络中各个路由节点设置一个坐标;
将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记,将所有设置第一正向标记和第一反向标记的链路作为第一链路,将所有设置第二正向标记和第二反向标记的链路作为第二链路;
响应于存在路由请求时,获取路由请求的目标路由节点坐标以及路由请求当前所在的路由节点坐标,将目标路由节点坐标的X轴值与路由请求当前所在的路由节点坐标的X轴值的差值作为实时坐标差值ΔX,将目标路由节点坐标的Y轴值与路由请求当前所在的路由节点坐标的Y轴值的差值作为实时坐标差值ΔY;
当ΔX>0时判定路由请求向X轴正向传输,当ΔX<0时判定路由请求向X轴负向传输,当ΔY>0时判定路由请求向Y轴正向传输,当ΔY<0时判定路由请求向Y轴负向传输;
设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求。
在其中一个实施例中,所述对双路径无线网格网络构建二维坐标系步骤包括:
获取双路径无线网格网络中各个路由节点的阵列排布方式,形成多排沿第一方向排布设置的路由节点以及多列沿第二方向排布设置的路由节点,将第一方向设置为X轴,将第二方向设置为Y轴,形成对应双路径无线网格网络的二维坐标系。
在其中一个实施例中,所述将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记步骤包括:
获取双路径无线网格网络中任意相邻两个路由节点之间沿X轴方向或Y轴方向的正向双路径链路和反向双路径链路;
将X轴方向以及Y轴方向的位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记;
将X轴方向或Y轴方向的位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记。
在其中一个实施例中,所述将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记步骤包括:
设置第一正向标记与第一反向标记均为“+”路径;
设置第二正向标记与第二反向标记均为“-”路径。
在其中一个实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿X轴正向传输时,控制在X轴正向上沿顺时针方向和沿逆时针方向传输路由请求时分别选取第一链路或第二链路来传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴负向传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第二链路沿X轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路沿X轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求。
在其中一个实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束。
在其中一个实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿X轴负向传输时,控制在X轴负向上沿顺时针方向选取第一链路传输路由请求,沿逆时针方向选取第二链路来传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴负向传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路沿X轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第二链路沿X轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求。
在其中一个实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束。
在其中一个实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿Y轴正向传输时,控制在Y轴正向上沿顺时针方向传输路由请求时选取第一链路传输路由请求,沿逆时针方向传输路由请求时选取第二链路传输路由请求;
当ΔY<0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴负向传输路由请求;
当ΔY<0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴负向传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第二链路沿Y轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路沿Y轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求。
在其中一个实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束。
在其中一个实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿Y轴负向传输时,控制在Y轴负向上沿顺时针方向传输路由请求时选取第一链路传输路由请求,沿逆时针方向传输路由请求时选取第二链路传输路由请求;
当ΔY>0,ΔX>0或ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴正向、X轴负向、Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路沿Y轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第二链路沿Y轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求。
在其中一个实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束。
另一方面,提供了一种双路径无线网格网络的路由装置,所述装置包括:
构建二维坐标系模块,用于对双路径无线网格网络构建二维坐标系,在二维坐标系中为双路径无线网格网络中各个路由节点设置一个坐标;
标记路径设置模块,用于将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记,将所有设置第一正向标记和第一反向标记的链路作为第一链路,将所有设置第二正向标记和第二反向标记的链路作为第二链路;
实时坐标差值计算模块,用于响应于存在路由请求时,获取路由请求的目标路由节点坐标以及路由请求当前所在的路由节点坐标,将目标路由节点坐标的X轴值与路由请求当前所在的路由节点坐标的X轴值的差值作为实时坐标差值ΔX,将目标路由节点坐标的Y轴值与路由请求当前所在的路由节点坐标的Y轴值的差值作为实时坐标差值ΔY;
路由方向判断模块,用于当ΔX>0时判定路由请求向X轴正向传输,当ΔX<0时判定路由请求向X轴负向传输,当ΔY>0时判定路由请求向Y轴正向传输,当ΔY<0时判定路由请求向Y轴负向传输;
路由节点路由路径控制模块,用于设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求。
再一方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
对双路径无线网格网络构建二维坐标系,在二维坐标系中为双路径无线网格网络中各个路由节点设置一个坐标;
将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记,将所有设置第一正向标记和第一反向标记的链路作为第一链路,将所有设置第二正向标记和第二反向标记的链路作为第二链路;
响应于存在路由请求时,获取路由请求的目标路由节点坐标以及路由请求当前所在的路由节点坐标,将目标路由节点坐标的X轴值与路由请求当前所在的路由节点坐标的X轴值的差值作为实时坐标差值ΔX,将目标路由节点坐标的Y轴值与路由请求当前所在的路由节点坐标的Y轴值的差值作为实时坐标差值ΔY;
当ΔX>0时判定路由请求向X轴正向传输,当ΔX<0时判定路由请求向X轴负向传输,当ΔY>0时判定路由请求向Y轴正向传输,当ΔY<0时判定路由请求向Y轴负向传输;
设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求。
又一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
对双路径无线网格网络构建二维坐标系,在二维坐标系中为双路径无线网格网络中各个路由节点设置一个坐标;
将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记,将所有设置第一正向标记和第一反向标记的链路作为第一链路,将所有设置第二正向标记和第二反向标记的链路作为第二链路;
响应于存在路由请求时,获取路由请求的目标路由节点坐标以及路由请求当前所在的路由节点坐标,将目标路由节点坐标的X轴值与路由请求当前所在的路由节点坐标的X轴值的差值作为实时坐标差值ΔX,将目标路由节点坐标的Y轴值与路由请求当前所在的路由节点坐标的Y轴值的差值作为实时坐标差值ΔY;
当ΔX>0时判定路由请求向X轴正向传输,当ΔX<0时判定路由请求向X轴负向传输,当ΔY>0时判定路由请求向Y轴正向传输,当ΔY<0时判定路由请求向Y轴负向传输;
设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求。
上述双路径无线网格网络的路由方法、装置、计算机设备和存储介质,通过在二维坐标内的所有路由节点传输路由请求时,在沿X轴、Y轴任一正负方向中选取其中一个方向设置为在同向双路中的顺时针和逆时针方向路由分别选取设置不同标记路径传输路由请求,避免了在相邻四个路由节点中形成环形锁死回路,实现了始终朝向目标路由节点传输路由请求,从而形成最短路由路径,因此也不存在活锁现象;且所有路由节点的路由请求在传输过程中都是等地位的,不会产生饿死现象;本申请不仅能解决死锁、活锁和饿死问题还能尽量保持路径的多样性,减少阻塞。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一个实施例中双路径无线网格网络的路由方法的应用环境图;
图2为本申请一个实施例中双路径无线网格网络的路由方法的流程示意图;
图3为本申请一个实施例中所构建的二维坐标系的结构框图;
图4为本申请一个实施例中将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记步骤的流程示意图;
图5为本申请一个实施例中在X轴方向标注完成路径的标记后的结构示意图;
图6为本申请一个实施例中设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤的流程示意图;
图7为本申请一个实施例中在X轴正向上路由的路径示意图;
图8为本申请一个实施例中在Y轴正向上路由的路径示意图;
图9为本申请一个实施例中在Y轴负向上路由的路径示意图;
图10为本申请一个实施例中在X轴负向上路由的路径示意图;
图11为本申请一个实施例中列举的一个环形拓扑结构的示意图;
图12为本申请一个实施例中列举的一个环形拓扑结构的顺时针产生死锁的示意图;
图13为本申请一个实施例中列举的一个环形拓扑结构的逆时针产生死锁的示意图;
图14为本申请一个实施例中双路径无线网格网络顺时针无死锁的示意图;
图15为本申请一个实施例中双路径无线网格网络逆时针无死锁的示意图;
图16为本申请一个实施例中双路径无线网格网络的路由装置的结构框图;
图17为本申请一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
如背景技术所述,对于一个二维网格拓扑结构的片上网络而言,每一个路由器都有一个坐标(x,y)与之唯一对应。XY 路由是经典的确定性路由方法。首先消息包会将自己所在的源节点的 X轴坐标与目的节点的 X 轴目标相比较,若源节点的 X 轴坐标小于目的节点的 X轴坐标,则向东路由,若源节点的 X 轴坐标大于目的节点的 X 轴坐标,则向西路由。当消息包路由到和目的节点相同的 X 轴坐标后,则会向 Y 轴传输。此时,若是消息包的 Y 轴坐标小于目标节点的 Y 轴坐标则消息包选择向北继续传递,若消息包的 Y 轴坐标大于目的节点的 Y 轴坐标,则消息包选择向南传递。这种路由方法有时延小,并且可以预防死锁、活锁和饿死这些可能存在的问题。
因此,传统的无线网格网络(mesh网络)结构的路由节点与路由节点之间都是通过两条独立且单向的链路连接起来的,常用的路由方法是XY路由方法,容易产生阻塞,但是由于组成结构简单,在规模不大的网络环境中得到了大量应用。但XY路由方法任然存在死锁、活锁和饿死的问题。
为解决上述问题,本发明实施例中创造性的提出了一种双路径无线网格网络的路由方法,对传统的无线网格网络(mesh网络)结构进行改进,路由节点与路由节点之间通过四条独立的链路连接起来,每个方向上有两条,实现路由节点与路由节点之间的链路端口都是双向双路的,对比原始结构增加了路径的多样性,在尽量保证路径多样性的基础上解决死锁的问题。
本申请提供的双路径无线网格网络的路由方法,可以应用于如图1所示的应用环境中。图1中R代表路由器,仲裁数据的流向,决定数据包在路由网络内的传输路径;IP代表资源节点,可以发送和接受数据。路由器与路由器之间以及路由器与资源节点之间都是双向双路的连接线形成的链路,即往返方向均为全双工。每个路由使用链路连接一个资源节点。路由节点与资源节点之间,路由节点与路由节点之间都是通过四条单向的链路连接起来的,实现路由节点与路由节点之间的链路端口都是双向双路的。
在图1中以是一个4×4的二维无线网格网络(mesh网络)拓扑结构。在实际网络中,路由节点数量N的取值可以是任意大的,只要保证每个路由节点都连接一个资源节点即可。如图2所示,为对应图1所示二维无线网格网络(mesh网络)拓扑结构的各个路由节点的坐标,每一个路由器都有一个坐标(x,y)。
在一个实施例中,如图2所示,提供了一种双路径无线网格网络的路由方法,以该方法应用于图1中的二维无线网格网络拓扑结构为例进行说明,包括以下步骤:
步骤S1,对双路径无线网格网络构建二维坐标系,在二维坐标系中为双路径无线网格网络中各个路由节点设置一个坐标;
步骤S2,将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记,将所有设置第一正向标记和第一反向标记的链路作为第一链路,将所有设置第二正向标记和第二反向标记的链路作为第二链路;
步骤S3,响应于存在路由请求时,获取路由请求的目标路由节点坐标以及路由请求当前所在的路由节点坐标,将目标路由节点坐标的X轴值与路由请求当前所在的路由节点坐标的X轴值的差值作为实时坐标差值ΔX,将目标路由节点坐标的Y轴值与路由请求当前所在的路由节点坐标的Y轴值的差值作为实时坐标差值ΔY;
步骤S4,当ΔX>0时判定路由请求向X轴正向传输,当ΔX<0时判定路由请求向X轴负向传输,当ΔY>0时判定路由请求向Y轴正向传输,当ΔY<0时判定路由请求向Y轴负向传输;
步骤S5,设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求。
其中,在步骤S1中,所构建的二维坐标系如图3所示。
在本实施例中,所述对双路径无线网格网络构建二维坐标系步骤包括:
获取双路径无线网格网络中各个路由节点的阵列排布方式,形成多排沿第一方向排布设置的路由节点以及多列沿第二方向排布设置的路由节点,将第一方向设置为X轴,将第二方向设置为Y轴,形成对应双路径无线网格网络的二维坐标系。
如图4所示,在本实施例中,所述将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记步骤包括:
步骤S21,获取双路径无线网格网络中任意相邻两个路由节点之间沿X轴方向或Y轴方向的正向双路径链路和反向双路径链路;
步骤S22,将X轴方向以及Y轴方向的位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记;
步骤S23,将X轴方向或Y轴方向的位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记。
在本实施例中,所述将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记步骤包括:
设置第一正向标记与第一反向标记均为“+”路径;
设置第二正向标记与第二反向标记均为“-”路径。
其中,在步骤S2中,以X轴方向为例标注完成路径的标记后的结构如图5所示。
其中,在步骤S3中,具体的,在响应于存在路由请求时,获取路由请求的目标路由节点坐标(xD,yD),获取路由请求当前所在的路由节点坐标(xnow,ynow),计算出实时坐标差值(ΔX,ΔY),其中ΔX=xD-xnow,ΔY=yD-ynow。
如图6所示,在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿X轴正向传输时,控制在X轴正向上沿顺时针方向和沿逆时针方向传输路由请求时分别选取第一链路或第二链路来传输路由请求;
步骤S51,当ΔX<0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴正向传输路由请求;
步骤S52,当ΔX<0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴负向传输路由请求;
步骤S53,当ΔX>0,ΔY>0时,在当前路由节点选取第二链路沿X轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求;
步骤S54,当ΔX>0,ΔY<0时,在当前路由节点选取第一链路沿X轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿X轴负向传输时,控制在X轴负向上沿顺时针方向选取第一链路传输路由请求,沿逆时针方向选取第二链路来传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴负向传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路沿X轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第二链路沿X轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿Y轴正向传输时,控制在Y轴正向上沿顺时针方向传输路由请求时选取第一链路传输路由请求,沿逆时针方向传输路由请求时选取第二链路传输路由请求;
当ΔY<0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴负向传输路由请求;
当ΔY<0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴负向传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第二链路沿Y轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路沿Y轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿Y轴负向传输时,控制在Y轴负向上沿顺时针方向传输路由请求时选取第一链路传输路由请求,沿逆时针方向传输路由请求时选取第二链路传输路由请求;
当ΔY>0,ΔX>0或ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴正向、X轴负向、Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路沿Y轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第二链路沿Y轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束。
为了便于理解,本申请以设置所有路由节点控制路由请求沿X轴负向传输时,控制在X轴负向上沿顺时针方向选取第一链路传输路由请求,沿逆时针方向选取第二链路来传输路由请求为例进行具体说明。其中设置第一正向标记与第一反向标记均为“+”路径;
设置第二正向标记与第二反向标记均为“-”路径。
约定1:当ΔX>0时,X轴方向只能向东走,相反当ΔX<0时,X轴方向只能向西走;当ΔY>0时,Y轴方向只能向北走,相反当ΔY<0时,Y轴方向只能向南走;这样的约定是为了保证不管在X轴还是Y轴都是向着目的节点进行路由,不存在背离目的节点的路由,即一直遵循最短路径。
为了避免死锁,需要对路由路径做进一步的约束:
约定2:在X轴方向上,从西向东路由时,“+”路径和“-”路径都可以走;如果上一步路由是X方向西向东路由的,此时如果在Y轴方向上路由,不管是向北路由还是向南路由,“+”路径和“-”路径都可以走;如图7所示。
约定3:在Y轴方向上, “+”路径和“-”路径都可以走。
如果上一步路由是Y方向上从南向北路由,此时如果在X轴方向上向西路由,则只能走“+”路径;此时如果在X轴方向上向东路由,则“+”路径和“-”路径都可以走;如图8所示。
如果上一步路由是Y方向上从北向南路由,此时如果在X轴方向上向东路由,则“+”路径和“-”路径都可以走;此时如果在X轴方向上向西路由,则只能走“-”路径;如图9所示。
约定4:在X轴方向上,从东向西路由时,如果走了“+”路径,下一步路由如果是Y方向,则只能是从南向北路由;在X轴方向上,从东向西路由时,如果走了“-”路径,下一步路由如果是Y方向,则只能是从北向南路由,如图10所示。
当ΔX>0,ΔY>0,在当前路由节点,X方向可以向东路由,Y方向可以向北路由,不管是X方向,还是Y方向,“+”路径和“-”路径都可以走;
当ΔX>0,ΔY<0,在当前路由节点,X方向可以向东路由,Y方向可以向南路由,不管是X方向,还是Y方向,“+”路径和“-”路径都可以走;
当ΔX<0,ΔY>0,在当前路由节点,X方向可以向西路由,只能走“+”路径;Y方向可以向北路由,“+”路径和“-”路径都可以走;
当ΔX<0,ΔY<0,在当前路由节点,X方向可以向西路由,只能走“-”路径;Y方向可以向南路由,“+”路径和“-”路径都可以走;
更新消息包当前所在的路由节点坐标(xnow,ynow),继续第二步;
当ΔX=0,当ΔY>0时,从任意路径向北路由,直至ΔY=0,路由结束;当ΔY<0时,从任意路径向南路由,直至ΔY=0,路由结束;
当ΔY=0,当ΔX>0时,从任意路径向东路由,直至ΔX=0,路由结束;当ΔX<0时,从任意路径向西路由,直至ΔX=0,路由结束。
可以看出本发明的约束只有ΔX<0时才有效,其余情况下本发明的约束并不会起作用,最大程度上保证了路径的多样性;且本发明提出的这种路由方法可以避免死锁。我们取中的一个环,对死锁的产生进行阐述。
对于图11,是一个环形拓扑,很容易产生死锁。例如,假设同时有四个路由请求:1.路由节点2到路由节点7,2.路由节点3到路由节点6,3.路由节点7到路由节点2,4.路由节点6到路由节点3,这四个路由请求都需要经过一个路由节点且都选择顺时针路由,且都已经占用中间路由节点时,就产生了死锁,如图12。相反如果都选择逆时针路由,且都已经占用中间路由节点时,也会产生死锁,如图13。在图12和图13中实线表示当前已经占用的通道,虚线表示正在请求的通道。
死锁一旦产生,就会导致互联网络全面瘫痪,因此必须寻找一种避免死锁产生的路由方法。因此对于片上网络必须从方法角度避免死锁,本发明提出的方法可以避免死锁。从图14和图15可以看出,无论是顺时针方向还是逆时针方向都没有形成依赖环,所以,使用该方法可以避免死锁。
上述双路径无线网格网络的路由方法中,通过在二维坐标内的所有路由节点传输路由请求时,在沿X轴、Y轴任一正负方向中选取其中一个方向设置为在同向双路中的顺时针和逆时针方向路由分别选取设置不同标记路径传输路由请求,避免了在相邻四个路由节点中形成环形锁死回路,实现了始终朝向目标路由节点传输路由请求,从而形成最短路由路径,因此也不存在活锁现象;且所有路由节点的路由请求在传输过程中都是等地位的,不会产生饿死现象;本申请不仅能解决死锁、活锁和饿死问题还能尽量保持路径的多样性,减少阻塞。
在一个实施例中,如图16所示,提供了一种双路径无线网格网络的路由装置10,包括:构建二维坐标系模块1、标记路径设置模块2、实时坐标差值计算模块3、路由方向判断模块4、路由节点路由路径控制模块5。
所述构建二维坐标系模块1用于对双路径无线网格网络构建二维坐标系,在二维坐标系中为双路径无线网格网络中各个路由节点设置一个坐标。
所述标记路径设置模块2用于将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记,将所有设置第一正向标记和第一反向标记的链路作为第一链路,将所有设置第二正向标记和第二反向标记的链路作为第二链路。
所述实时坐标差值计算模块3用于响应于存在路由请求时,获取路由请求的目标路由节点坐标以及路由请求当前所在的路由节点坐标,将目标路由节点坐标的X轴值与路由请求当前所在的路由节点坐标的X轴值的差值作为实时坐标差值ΔX,将目标路由节点坐标的Y轴值与路由请求当前所在的路由节点坐标的Y轴值的差值作为实时坐标差值ΔY。
所述路由方向判断模块4用于当ΔX>0时判定路由请求向X轴正向传输,当ΔX<0时判定路由请求向X轴负向传输,当ΔY>0时判定路由请求向Y轴正向传输,当ΔY<0时判定路由请求向Y轴负向传输。
所述路由节点路由路径控制模块5用于设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求。
在本实施例中,所述对双路径无线网格网络构建二维坐标系步骤包括:
获取双路径无线网格网络中各个路由节点的阵列排布方式,形成多排沿第一方向排布设置的路由节点以及多列沿第二方向排布设置的路由节点,将第一方向设置为X轴,将第二方向设置为Y轴,形成对应双路径无线网格网络的二维坐标系。
在本实施例中,所述将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记步骤包括:
获取双路径无线网格网络中任意相邻两个路由节点之间沿X轴方向或Y轴方向的正向双路径链路和反向双路径链路;
将X轴方向以及Y轴方向的位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记;
将X轴方向或Y轴方向的位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记。
在本实施例中,所述将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记步骤包括:
设置第一正向标记与第一反向标记均为“+”路径;
设置第二正向标记与第二反向标记均为“-”路径。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿X轴正向传输时,控制在X轴正向上沿顺时针方向和沿逆时针方向传输路由请求时分别选取第一链路或第二链路来传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴负向传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第二链路沿X轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路沿X轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿X轴负向传输时,控制在X轴负向上沿顺时针方向选取第一链路传输路由请求,沿逆时针方向选取第二链路来传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴负向传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路沿X轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第二链路沿X轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿Y轴正向传输时,控制在Y轴正向上沿顺时针方向传输路由请求时选取第一链路传输路由请求,沿逆时针方向传输路由请求时选取第二链路传输路由请求;
当ΔY<0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴负向传输路由请求;
当ΔY<0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴负向传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第二链路沿Y轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路沿Y轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿Y轴负向传输时,控制在Y轴负向上沿顺时针方向传输路由请求时选取第一链路传输路由请求,沿逆时针方向传输路由请求时选取第二链路传输路由请求;
当ΔY>0,ΔX>0或ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴正向、X轴负向、Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路沿Y轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第二链路沿Y轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求。
在本实施例中,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束。
上述双路径无线网格网络的路由装置中,通过在二维坐标内的所有路由节点传输路由请求时,在沿X轴、Y轴任一正负方向中选取其中一个方向设置为在同向双路中的顺时针和逆时针方向路由分别选取设置不同标记路径传输路由请求,避免了在相邻四个路由节点中形成环形锁死回路,实现了始终朝向目标路由节点传输路由请求,从而形成最短路由路径,因此也不存在活锁现象;且所有路由节点的路由请求在传输过程中都是等地位的,不会产生饿死现象;本申请不仅能解决死锁、活锁和饿死问题还能尽量保持路径的多样性,减少阻塞。
关于双路径无线网格网络的路由装置的具体限定可以参见上文中对于双路径无线网格网络的路由方法的限定,在此不再赘述。上述双路径无线网格网络的路由装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图17所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储双路径无线网格网络的路由数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种双路径无线网格网络的路由方法。
本领域技术人员可以理解,图17中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
对双路径无线网格网络构建二维坐标系,在二维坐标系中为双路径无线网格网络中各个路由节点设置一个坐标;
将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记,将所有设置第一正向标记和第一反向标记的链路作为第一链路,将所有设置第二正向标记和第二反向标记的链路作为第二链路;
响应于存在路由请求时,获取路由请求的目标路由节点坐标以及路由请求当前所在的路由节点坐标,将目标路由节点坐标的X轴值与路由请求当前所在的路由节点坐标的X轴值的差值作为实时坐标差值ΔX,将目标路由节点坐标的Y轴值与路由请求当前所在的路由节点坐标的Y轴值的差值作为实时坐标差值ΔY;
当ΔX>0时判定路由请求向X轴正向传输,当ΔX<0时判定路由请求向X轴负向传输,当ΔY>0时判定路由请求向Y轴正向传输,当ΔY<0时判定路由请求向Y轴负向传输;
设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述对双路径无线网格网络构建二维坐标系步骤包括:
获取双路径无线网格网络中各个路由节点的阵列排布方式,形成多排沿第一方向排布设置的路由节点以及多列沿第二方向排布设置的路由节点,将第一方向设置为X轴,将第二方向设置为Y轴,形成对应双路径无线网格网络的二维坐标系。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记步骤包括:
获取双路径无线网格网络中任意相邻两个路由节点之间沿X轴方向或Y轴方向的正向双路径链路和反向双路径链路;
将X轴方向以及Y轴方向的位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记;
将X轴方向或Y轴方向的位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记步骤包括:
设置第一正向标记与第一反向标记均为“+”路径;
设置第二正向标记与第二反向标记均为“-”路径。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿X轴正向传输时,控制在X轴正向上沿顺时针方向和沿逆时针方向传输路由请求时分别选取第一链路或第二链路来传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴负向传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第二链路沿X轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路沿X轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿X轴负向传输时,控制在X轴负向上沿顺时针方向选取第一链路传输路由请求,沿逆时针方向选取第二链路来传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴负向传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路沿X轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第二链路沿X轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿Y轴正向传输时,控制在Y轴正向上沿顺时针方向传输路由请求时选取第一链路传输路由请求,沿逆时针方向传输路由请求时选取第二链路传输路由请求;
当ΔY<0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴负向传输路由请求;
当ΔY<0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴负向传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第二链路沿Y轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路沿Y轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿Y轴负向传输时,控制在Y轴负向上沿顺时针方向传输路由请求时选取第一链路传输路由请求,沿逆时针方向传输路由请求时选取第二链路传输路由请求;
当ΔY>0,ΔX>0或ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴正向、X轴负向、Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路沿Y轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第二链路沿Y轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束。
关于处理器执行计算机程序时实现步骤的具体限定可以参见上文中对于双路径无线网格网络的路由的方法的限定,在此不再赘述。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
对双路径无线网格网络构建二维坐标系,在二维坐标系中为双路径无线网格网络中各个路由节点设置一个坐标;
将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记,将所有设置第一正向标记和第一反向标记的链路作为第一链路,将所有设置第二正向标记和第二反向标记的链路作为第二链路;
响应于存在路由请求时,获取路由请求的目标路由节点坐标以及路由请求当前所在的路由节点坐标,将目标路由节点坐标的X轴值与路由请求当前所在的路由节点坐标的X轴值的差值作为实时坐标差值ΔX,将目标路由节点坐标的Y轴值与路由请求当前所在的路由节点坐标的Y轴值的差值作为实时坐标差值ΔY;
当ΔX>0时判定路由请求向X轴正向传输,当ΔX<0时判定路由请求向X轴负向传输,当ΔY>0时判定路由请求向Y轴正向传输,当ΔY<0时判定路由请求向Y轴负向传输;
设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述对双路径无线网格网络构建二维坐标系步骤包括:
获取双路径无线网格网络中各个路由节点的阵列排布方式,形成多排沿第一方向排布设置的路由节点以及多列沿第二方向排布设置的路由节点,将第一方向设置为X轴,将第二方向设置为Y轴,形成对应双路径无线网格网络的二维坐标系。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记步骤包括:
获取双路径无线网格网络中任意相邻两个路由节点之间沿X轴方向或Y轴方向的正向双路径链路和反向双路径链路;
将X轴方向以及Y轴方向的位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记;
将X轴方向或Y轴方向的位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记步骤包括:
设置第一正向标记与第一反向标记均为“+”路径;
设置第二正向标记与第二反向标记均为“-”路径。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿X轴正向传输时,控制在X轴正向上沿顺时针方向和沿逆时针方向传输路由请求时分别选取第一链路或第二链路来传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴负向传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第二链路沿X轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路沿X轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿X轴负向传输时,控制在X轴负向上沿顺时针方向选取第一链路传输路由请求,沿逆时针方向选取第二链路来传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴负向传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路沿X轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第二链路沿X轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿Y轴正向传输时,控制在Y轴正向上沿顺时针方向传输路由请求时选取第一链路传输路由请求,沿逆时针方向传输路由请求时选取第二链路传输路由请求;
当ΔY<0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴负向传输路由请求;
当ΔY<0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴负向传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第二链路沿Y轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路沿Y轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿Y轴负向传输时,控制在Y轴负向上沿顺时针方向传输路由请求时选取第一链路传输路由请求,沿逆时针方向传输路由请求时选取第二链路传输路由请求;
当ΔY>0,ΔX>0或ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴正向、X轴负向、Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路沿Y轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第二链路沿Y轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束。
关于计算机程序被处理器执行时实现步骤的具体限定可以参见上文中对于双路径无线网格网络的路由的方法的限定,在此不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (15)
1.一种双路径无线网格网络的路由方法,其特征在于,包括步骤:
对双路径无线网格网络构建二维坐标系,在二维坐标系中为双路径无线网格网络中各个路由节点设置一个坐标;
将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记,将所有设置第一正向标记和第一反向标记的链路作为第一链路,将所有设置第二正向标记和第二反向标记的链路作为第二链路;
响应于存在路由请求时,获取路由请求的目标路由节点坐标以及路由请求当前所在的路由节点坐标,将目标路由节点坐标的X轴值与路由请求当前所在的路由节点坐标的X轴值的差值作为实时坐标差值ΔX,将目标路由节点坐标的Y轴值与路由请求当前所在的路由节点坐标的Y轴值的差值作为实时坐标差值ΔY;
当ΔX>0时判定路由请求向X轴正向传输,当ΔX<0时判定路由请求向X轴负向传输,当ΔY>0时判定路由请求向Y轴正向传输,当ΔY<0时判定路由请求向Y轴负向传输;
设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求。
2.根据权利要求1所述的双路径无线网格网络的路由方法,其特征在于,所述对双路径无线网格网络构建二维坐标系步骤包括:
获取双路径无线网格网络中各个路由节点的阵列排布方式,形成多排沿第一方向排布设置的路由节点以及多列沿第二方向排布设置的路由节点,将第一方向设置为X轴,将第二方向设置为Y轴,形成对应双路径无线网格网络的二维坐标系。
3.根据权利要求2所述的双路径无线网格网络的路由方法,其特征在于,所述将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记步骤包括:
获取双路径无线网格网络中任意相邻两个路由节点之间沿X轴方向或Y轴方向的正向双路径链路和反向双路径链路;
将X轴方向以及Y轴方向的位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记;
将X轴方向或Y轴方向的位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记。
4.根据权利要求1-3任一项所述的双路径无线网格网络的路由方法,其特征在于,所述将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记步骤包括:
设置第一正向标记与第一反向标记均为“+”路径;
设置第二正向标记与第二反向标记均为“-”路径。
5.根据权利要求1所述的双路径无线网格网络的路由方法,其特征在于,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿X轴正向传输时,控制在X轴正向上沿顺时针方向和沿逆时针方向传输路由请求时分别选取第一链路或第二链路来传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴负向传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第二链路沿X轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路沿X轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求。
6.根据权利要求5所述的双路径无线网格网络的路由方法,其特征在于,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束。
7.根据权利要求1所述的双路径无线网格网络的路由方法,其特征在于,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿X轴负向传输时,控制在X轴负向上沿顺时针方向选取第一链路传输路由请求,沿逆时针方向选取第二链路来传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴负向传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路沿X轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第二链路沿X轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求。
8.根据权利要求7所述的双路径无线网格网络的路由方法,其特征在于,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束。
9.根据权利要求1所述的双路径无线网格网络的路由方法,其特征在于,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿Y轴正向传输时,控制在Y轴正向上沿顺时针方向传输路由请求时选取第一链路传输路由请求,沿逆时针方向传输路由请求时选取第二链路传输路由请求;
当ΔY<0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向、Y轴负向传输路由请求;
当ΔY<0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向、Y轴负向传输路由请求;
当ΔX>0,ΔY>0时,在当前路由节点选取第二链路沿Y轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求;
当ΔX<0,ΔY>0时,在当前路由节点选取第一链路沿Y轴正向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求。
10.根据权利要求9所述的双路径无线网格网络的路由方法,其特征在于,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束。
11.根据权利要求1所述的双路径无线网格网络的路由方法,其特征在于,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤包括:
当设置所有路由节点控制路由请求沿Y轴负向传输时,控制在Y轴负向上沿顺时针方向传输路由请求时选取第一链路传输路由请求,沿逆时针方向传输路由请求时选取第二链路传输路由请求;
当ΔY>0,ΔX>0或ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴正向、X轴负向、Y轴正向传输路由请求;
当ΔX>0,ΔY<0时,在当前路由节点选取第一链路沿Y轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求;
当ΔX<0,ΔY<0时,在当前路由节点选取第二链路沿Y轴负向传输路由请求,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求。
12.根据权利要求11所述的双路径无线网格网络的路由方法,其特征在于,所述设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求步骤还包括:
当路由请求传输至下一路由节点后,更新路由请求当前所在的路由节点坐标,继续控制路由请求在当前路由节点的传输路径;
当ΔY=0,ΔX>0时,在当前路由节点选取第一链路或第二链路沿X轴正向传输路由请求,直至ΔX=0,路由结束;
当ΔY=0,ΔX<0时,在当前路由节点选取第一链路或第二链路沿X轴负向传输路由请求,直至ΔX=0,路由结束;
当ΔX=0,ΔY>0时,在当前路由节点选取第一链路或第二链路沿Y轴正向传输路由请求,直至ΔY=0,路由结束;
当ΔX=0,ΔY<0时,在当前路由节点选取第一链路或第二链路沿Y轴负向传输路由请求,直至ΔY=0,路由结束。
13.一种双路径无线网格网络的路由装置,其特征在于,所述装置包括:
构建二维坐标系模块,用于对双路径无线网格网络构建二维坐标系,在二维坐标系中为双路径无线网格网络中各个路由节点设置一个坐标;
标记路径设置模块,用于将位于相邻两个路由节点之间的正向双路径链路分别设置第一正向标记、第二正向标记,对将位于相邻两个路由节点之间的反向双路径链路分别设置第一反向标记、第二反向标记,将所有设置第一正向标记和第一反向标记的链路作为第一链路,将所有设置第二正向标记和第二反向标记的链路作为第二链路;
实时坐标差值计算模块,用于响应于存在路由请求时,获取路由请求的目标路由节点坐标以及路由请求当前所在的路由节点坐标,将目标路由节点坐标的X轴值与路由请求当前所在的路由节点坐标的X轴值的差值作为实时坐标差值ΔX,将目标路由节点坐标的Y轴值与路由请求当前所在的路由节点坐标的Y轴值的差值作为实时坐标差值ΔY;
路由方向判断模块,用于当ΔX>0时判定路由请求向X轴正向传输,当ΔX<0时判定路由请求向X轴负向传输,当ΔY>0时判定路由请求向Y轴正向传输,当ΔY<0时判定路由请求向Y轴负向传输;
路由节点路由路径控制模块,用于设置所有路由节点控制路由请求沿X轴正向、X轴负向、Y轴正向、Y轴负向中的一个方向传输时,控制沿顺时针方向选取第一链路,沿逆时针方向选取第二链路传输路由请求;或者控制沿顺时针方向选取第二链路,沿逆时针方向选取第一链路传输路由请求。
14.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至12中任一项所述方法的步骤。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311511537.XA CN117241337B (zh) | 2023-11-14 | 2023-11-14 | 双路径无线网格网络的路由方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311511537.XA CN117241337B (zh) | 2023-11-14 | 2023-11-14 | 双路径无线网格网络的路由方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117241337A CN117241337A (zh) | 2023-12-15 |
CN117241337B true CN117241337B (zh) | 2024-02-23 |
Family
ID=89093340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311511537.XA Active CN117241337B (zh) | 2023-11-14 | 2023-11-14 | 双路径无线网格网络的路由方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117241337B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117395746B (zh) * | 2023-12-12 | 2024-03-29 | 苏州元脑智能科技有限公司 | 双路径无线网格网络的路由方法、装置、设备和存储介质 |
CN117811996A (zh) * | 2024-03-01 | 2024-04-02 | 山东云海国创云计算装备产业创新中心有限公司 | 双路径三维超立方网络的路由方法、装置、设备和介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932250A (zh) * | 2012-10-30 | 2013-02-13 | 清华大学 | 一种基于容错计算机网络结构的无死锁自适应路由方法 |
CN105356979A (zh) * | 2015-12-11 | 2016-02-24 | 中山大学 | 一种基于双路径并行传输的无线传感网络代码分发方法 |
CN108494601A (zh) * | 2018-04-04 | 2018-09-04 | 西安电子科技大学 | 层次化确定网络中的多约束双路径路由方法 |
CN110224927A (zh) * | 2019-06-11 | 2019-09-10 | 西安电子科技大学 | 基于反向删减策略的确定网络多约束双路径路由方法 |
CN111182607A (zh) * | 2019-12-30 | 2020-05-19 | 四川速宝网络科技有限公司 | 一种基于4g路由器的双路径转发加速方法 |
CN113965508A (zh) * | 2021-12-22 | 2022-01-21 | 北京华云安信息技术有限公司 | 双路径数据传输方法、电子设备和计算机可读存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230327976A1 (en) * | 2021-06-23 | 2023-10-12 | Rockport Networks Inc. | Deadlock-free multipath routing for direct interconnect networks |
-
2023
- 2023-11-14 CN CN202311511537.XA patent/CN117241337B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932250A (zh) * | 2012-10-30 | 2013-02-13 | 清华大学 | 一种基于容错计算机网络结构的无死锁自适应路由方法 |
CN105356979A (zh) * | 2015-12-11 | 2016-02-24 | 中山大学 | 一种基于双路径并行传输的无线传感网络代码分发方法 |
CN108494601A (zh) * | 2018-04-04 | 2018-09-04 | 西安电子科技大学 | 层次化确定网络中的多约束双路径路由方法 |
CN110224927A (zh) * | 2019-06-11 | 2019-09-10 | 西安电子科技大学 | 基于反向删减策略的确定网络多约束双路径路由方法 |
CN111182607A (zh) * | 2019-12-30 | 2020-05-19 | 四川速宝网络科技有限公司 | 一种基于4g路由器的双路径转发加速方法 |
CN113965508A (zh) * | 2021-12-22 | 2022-01-21 | 北京华云安信息技术有限公司 | 双路径数据传输方法、电子设备和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117241337A (zh) | 2023-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN117241337B (zh) | 双路径无线网格网络的路由方法、装置、设备和存储介质 | |
Chiu | The odd-even turn model for adaptive routing | |
Mukherjee et al. | The Alpha 21364 network architecture | |
US8769459B2 (en) | High-end fault-tolerant computer system and method for same | |
Chen et al. | Fault-tolerant routing algorithm for meshes without using virtual channels | |
CN117395746B (zh) | 双路径无线网格网络的路由方法、装置、设备和存储介质 | |
CN117135108B (zh) | 路由路径规划方法、路由请求处理方法、设备及介质 | |
CN114844827B (zh) | 一种用于片上网络芯片的基于共享存储的生成树路由硬件架构及方法 | |
CN106953800B (zh) | 一种基于片上网络的自适应垂直路由方法及路由单元 | |
Silveira et al. | Preprocessing of Scenarios for Fast and Efficient Routing Reconfiguration in Fault-Tolerant NoCs | |
CN117135106B (zh) | 路由路径规划方法、路由请求处理方法、设备及介质 | |
Miura et al. | An adaptive routing of the 2-D torus network based on turn model | |
Wu et al. | A methodology for cognitive NoC design | |
CN116886591B (zh) | 计算机网络系统及路由方法 | |
Pratomo et al. | Gradient—An adaptive fault-tolerant routing algorithm for 2D mesh network-on-chips | |
JPS63501663A (ja) | マルチプロセッサ通信装置 | |
CN116545960A (zh) | 二维片上网络结构及其路由方法、装置、设备和存储介质 | |
WO2015165280A1 (zh) | 一种确定中间路由节点的方法、装置及系统 | |
US11303559B1 (en) | Method, apparatus and computer storage medium for deadlock-free adaptive routing in two-dimensional mesh network based on the overlapping virtual network partitioning scheme | |
Yang et al. | A fault tolerance noc topology and adaptive routing algorithm | |
CN113203940A (zh) | 3D NoC测试规划中的并行测试方法 | |
US11811512B2 (en) | Multicast routing method, interconnection device, mesh network system and configuration method thereof | |
Seydim | Wormhole routing in parallel computers | |
CN117811993B (zh) | 三维超立方结构网络及其路由方法、装置、设备和介质 | |
Ramakrishnan et al. | Analysis of network on chip topologies |
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 |