CN106612231B - 一种基于wmn的矿井下多策略混合修复路由方法 - Google Patents
一种基于wmn的矿井下多策略混合修复路由方法 Download PDFInfo
- Publication number
- CN106612231B CN106612231B CN201611258436.6A CN201611258436A CN106612231B CN 106612231 B CN106612231 B CN 106612231B CN 201611258436 A CN201611258436 A CN 201611258436A CN 106612231 B CN106612231 B CN 106612231B
- Authority
- CN
- China
- Prior art keywords
- node
- routing
- field
- message
- repaired
- 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
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
- H04W40/04—Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- 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
- H04W40/12—Communication route or path selection, e.g. power-based or shortest path routing based on transmission quality or channel quality
- H04W40/125—Communication route or path selection, e.g. power-based or shortest path routing based on transmission quality or channel quality using a measured number of retransmissions as a link metric
-
- 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/248—Connectivity information update
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- 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
Abstract
本发明提出一种基于WMN的矿井下多策略混合修复路由协议,该协议包括网络初始化、节点间信息维护、路由建立和路由维护;在路由维护阶段中,在某一链路断裂前首先进行提前修复,由于该做法带来的网络开销很小,因此在对网络性能影响很小的情况下修复路由;当提前修复失败时进行小范围的快速修复以及快速修复失败后的二次修复,在修复过程中能够尽量选择成功率较高的节点进行路由修复,同时带来的开销较小。本协议对多种网络拓扑故障提出了较为完善的解决方案,并能在对网络影响较小的情况下有效的修复路由,对应对复杂环境下的网络有较好的效果。
Description
技术领域
本发明涉及无线通信技术领域,尤其是一种基于WMN的矿井下多策略混合修复路由方法。
背景技术
随着煤炭开采和巷道掘进,煤矿井下采煤工作面和掘进工作面在不断推进,是个移动的工作环境,且井下环境恶劣、开采条件复杂,有线通信网络无法到达这些特殊区域,由于有线节点受其数据传输方式的限制,使得有线链路的布控范围有限,容易受到环境因素的制约,且有线网络的监测点有限,无法全方位监测这些区域的灾害信息。由于有线网络的可拓展能力差,对故障应对能力相对薄弱,难以应对井下的复杂环境,因此需要无线通信。
无线Mesh网络(Wireless Mesh Network,WMN)具有快速部署、组网灵活和扩展性强等特点,因此适用于一些环境比较复杂的区域,例如煤矿井下巷道监测。井下的无线Mesh网络的体系结构可分成终端设备型、基础设施/骨干型和混合型等三种类型,其中,终端设备型无线Mesh网络仅由终端节点组成,终端节点除了可以发送数据外,还可以用于转发数据,自组网提供通信支撑。骨干型无线Mesh网络中,网络终端只能收发数据,不能转发来自其他节点的数据,且任意两个终端设备间不能直接通信,需用无线路由器作为节点间联系的桥梁,实现彼此的数据交换以及无线宽带接入。混合型无线 Mesh网络是一种结合了上述两种网络的特点形成的新型网络,且具备优于两者的良好性能。在混合型无线Mesh网络中,终端设备可以用于转发数据,与无线路由器组成混合数据传输通路。当链路出现故障时,由于节点都具有数据转发的功能,因此可以使用终端节点参与路由,配合网路中的无线路由节点,使得路由修复更加灵活,鲁棒性更好。由于井下巷道狭长造成井下网络多为带状拓扑结构,网络连接度低,鲁棒性差。一旦因为某些原因造成路由节点发生故障,则无线路由所覆盖的终端节点都会与网络脱离,造成通信故障,因此迫切需要一种更加适合该网络拓扑结构的路由算法。
发明内容
本发明的目的主要是针对煤矿井下复杂工作环境对通信质量的要求,提出一种能够快速修复网络故障,增加网络鲁棒性,提高网络通信能力的新型无线Mesh网络路由方法。方法采用链路状态预测机制及快速修复策略提高网络性能。
为了达到上述目的,本发明提出的技术方案为:
一种基于WMN的矿井下多策略混合修复路由方法,该方法包括以下阶段:
(1)网络初始化阶段:
各节点建立自己的邻居表和路由表,并初始化路与表、邻居表和HELLO数据包;路由表包括:路由的目的地、路由的序列号、路由的跳数、路由的下一跳地址、路由的下两跳地址、路由的超时时间和路由的状态;任意一个节点的邻居表包括该节点的邻居节点IP地址以及该节点与各邻居节点之间的链路连接质量;所述链路连接质量是用于衡量链路连接是否稳定的变量;
(2)节点间信息维护阶段:
各节点通过向相邻节点发送HELLO数据包定期交换信息,维护自己的邻居表;
(3)路由建立阶段:
网络中某节点需要发送数据包前,建立到达该数据包目的节点的路由;
(4)路由维护阶段:
在路由维护阶段,执行以下步骤:
(4-1)各节点初始化自己的邻居表中的链路连接质量为Q0;
(4-2)各节点根据接收到HELLO报文数量或接收到的数据包接收功率更新自己邻居表中链路连接质量;
(4-3)当任意一节点K+I发现邻居表中与上一跳节点K的链路连接质量为0时,该节点发起路由提前修复,提前修复的步骤为:
(4-3-1)节点K+1向节点K发送PROP_START报文,PROP_START报文中包括: TYPE字段、NC字段、DST字段、RT_SRC字段、RT_DST字段、Nn_IP字段、Nn_S 字段;其中,TYPE字段记录PROP_START报文的报文类型,NC字段记录与节点K+1 的链路连接质量不为零的邻居节点数,DST字段记录PROP_START报文发送的目的地, RT_SRC字段记录待修复路由的源节点,RT_DST字段记录待修复路由的目的节点, Nn_IP字段记录节点K+1第n个邻居节点的IP地址,Nn_S字段记录节点K+1与第n 个邻居节点的之间的链路连接质量值;
(4-3-2)节点K根据接收到的ROP_START报文选择自己与节点K+1共有的邻居节点集合,在选出的邻居节点集合中选择对应链路连接质量值最大的节点C作为中间节点;
(4-3-3)将节点C插入节点K、K+1之间,形成链路K-C-K+1;插入完成后,节点K将链路的变化情况告知正向路由中K的上游节点和反向路由中K的下游节点;
(4-4)当提前修复失败时,在断路处进行小范围的快速修复;快速修复包括以下步骤:
当节点K与下一跳节点K+1之间的链路发生断裂时,节点K以自己路由表中记录的下两跳节点K+2作为目的节点发送快速修复请求;节点K+2接收到节点K发送的快速修复请求后,向节点K回复一个接受请求的反馈报文,建立替换链路K-K+2;
(4-5)若步骤(4-4)中节点K未能找到下两跳节点作为目的节点,则快速修复失败;此时,进行二次修复,包括步骤:
节点K沿反向路由向上游发送回溯消息,回溯消息每到达一个节点时,会检查当前节点是否满足修复条件;修复条件为:
定义回溯消息回溯至节点A,节点A满足2*hop1>hop2,且节点A的邻居节点数量大于预设的阈值;其中,hop1表示节点A距离路由源节点的跳数,hop2表示节点A距离路由目的节点的跳数;
若节点A满足修复条件,则由节点A作为二次修复的发起节点;若节点A不满足修复条件,则回溯消息会沿着反向路由继续向上游节点转发,直至回溯到源节点或下一个满足条件的节点为止;
满足修复条件的节点发送以待修复路由的目的节点为目的地的RP_REQUEST包,当目的节点或者有目的节点信息的节点接收到该请求包后回复RP_REPLY报文,建立替换链并修复路由。
进一步的,所述步骤(4)中,各节点根据接收到HELLO报文数量更新链路连接质量的方法为:
对于任意一个节点X,每当X接收到一次邻居节点发送的HELLO报文,则令节点 X与对应邻居节点间的链路质量值加1。
进一步的,所述步骤(4)中,各节点根据接收到的数据包接收功率更新链路连接质量的方法为:
对于任意一个节点X,当X接收到一个邻居节点所发送的连续N个数据包,且这N 个数据包的接收功率逐渐增大,则令节点X与对应邻居节点间的链路质量值加1;否则,令节点X与对应邻居节点间的链路质量值加1;若X接收到一个邻居节点所发送的连续 M个数据包,且这M个数据包的接收功率均小于预设的阈值,则令节点X与对应邻居节点间的链路质量值为0。
进一步的,所述步骤(4-3-3)中将节点C插入节点K和K+1之间形成链路K-C-K+1 的方法为:
节点K通过对节点K+1发送PROP_START_ACK报文将节点C插入到正向路由,节点K+1向节点K发送PROP_START_ACK_REPLY报文将节点C插入到反向路由;至此C节点插入到节点K和K+1中间的过程结束,形成链路K-C-K+1;
所述PROP_START_ACK报文和PROP_START_ACK_REPLY报文的格式一致,均包括:TYPE字段、RT_SRC字段、RT_SRC_SEQNO字段、RT_DST字段、RT_DST_SEQNO 字段、RT_DST_PRE字段、RT_SRC_HOPS字段和RT_DST_HOPS字段;其中,TYPE 字段记录报文类型;RT_SRC字段记录待修复路由的源节点地址;RT_SRC_SEQNO字段记录待修复路由的源节点的序列号;RT_DST字段记录待修复路由的目的节点地址; RT_DST_SEQNO字段记录待修复路由的目的节点的序列号;RT_DST_PRE字段记录用于在建立路由时填充路由的下两跳地址;RT_SRC_HOPS字段记录现有路由到达源节点的跳数;RT_DST_HOPS字段记录现有路由到达目的节点的跳数。
进一步的,所述步骤(4-4)中,快速修复请求为RP_REQUEST报文,RP_REQUEST 报文包括:TYPE字段、RQ_DST字段、RQ_PREHOP字段、RQ_REALDST_SEQNO 字段、RQ_REAL_DST字段;其中,TYPE字段记录RP_REQUEST报文的报文类型; RQ_DST字段记录RP_REQUEST报文的目的地地址;RQ_PREHOP字段记录 RP_REQUEST报文到达的当前节点的前一跳;RQ_REALDST_SEQNO字段记录 RP_REQUEST报文所到达的当前节点知道的目的节点的最新序列号;RQ_REAL_DST 字段记录节点K所在路由的目的节点地址;
节点K+2向节点K回复的反馈报文为RP_REPLY报文,RP_REPLY报文包括:TYPE 字段、RP_HOP_CN字段、RP_DST字段、RP_PREHOP字段、RP_REALDST_SEQNO 字段、RP_REAL_DST字段;其中,TYPE字段记录RP_REPLY报文的报文类型; RP_HOP_CN字段记录RP_REPLY报文到达的当前节点距离路由目的节点的跳数;RP_DST字段记录节点K+2的地址;RP_PREHOP字段记录当前节点在路由中的后两跳节点的地址;RP_REALDST_SEQNO字段记录当前节点所知道的待修复路由的目的节点的序列号,RP_REALDST_SEQNO字段在每次回复时更新为RP_REQUEST中的 RQ_REALDST_SEQNO字段;RP_REAL_DST字段记录待修复路由的目的节点地址。
进一步的,在所述步骤(2)中的节点间信息维护阶段,各节点维护自己的邻居表的方法为:
节点通过HELLO数据包定期交换信息;若节点接收到另一个节点发来的HELLO 消息,则会检查邻居表中是否存在该邻居,若不存在则将其加入邻居表中;节点定期检查自己的邻居表,若在预设的时间段内没有接收到邻居表中的某个邻居节点发来的 HELLO消息,则认为对应的链路断裂并将该邻居删除。
进一步的,所述步骤(3)中路由建立的方法为:
当某节点X想要发送数据时,先检查自己的路由表,如果没有到达目的节点的路由,则节点X会广播一个RREQ数据包;邻居节点Y接收到RREQ数据包,会首先检查先前是否已经接收到该广播,如果有,则直接丢弃RREQ数据包;如果没有,则会检查自己的路由表中是否包含到达RREQ数据包源节点的反向路由;
如果邻居节点Y的路由表中不存在到达源节点的反向路由,则建立到达源节点的反向路由,该反向路由用于返回路由应答;然后节点Y检查路由表中是否包含到达RREQ 数据包目的节点的路由,如果有则生成路由回复RREP,并按照先前建立的反向路由返回RREP;如果没有则继续转发,直到到达RREQ数据包的目的节点;
RREP沿着反向路由转发,沿途的节点会将RREP中的序列号和跳数与自己的路由表比对,如果RREP中的序列号较大,或者是序列号相同但跳数较小,则将自己的路由表中的序列号替换为RREP中的序列号;当RREP到达源节点时,则建立正向路由,路由建立过程完毕。
有益效果:本发明提出的技术方案使得链路在断裂之前便已经切换了路由,降低了链路断裂修复的过程中所带来的丢包和延时,使得数据能够稳定持续的传输。同时在链路断裂后首先采用了快速修复策略,由于该做法带来的网络开销很小,因此在对网络性能影响很小的情况下修复路由。而对于快速修复失败后的二次修复策略,能够尽量选择成功率较高的节点进行路由修复,同时带来的开销较小。因此本方法对多种网络拓扑故障提出了较为完善的解决方案,并能在对网络影响较小的情况下有效的修复路由,对应对复杂环境下的网络有较好的效果,达到了本发明的目的。
附图说明
图1是实施例中提前修复阶段链路断裂前的网络拓扑图;
图2是实施例中提前修复阶段链路断裂时的网络拓扑图;
图3是实施例中快速修复阶段链路断裂前的网络拓扑图;
图4是实施例中快速修复阶段链路断裂时的网络拓扑图。
具体实施方式
本发明提出的路由方法包含四个部分:网络初始化、节点间信息维护、路由建立和路由维护。
步骤A,网络初始化:
步骤A-1,节点建立邻居表、路由表,为其申请内存空间。
步骤A-2,初始化节点序列号,设定HELLO消息定时器,邻居缓存定时器、路由缓存定时器等相关定时器。
步骤A-3,节点初始化HELLO数据包。
步骤B,节点间信息维护:
节点通过HELLO数据包定期交换信息,维护邻居表。若节点接收到节点发来的HELLO消息,则会检查邻居表中是否存在该邻居,若不存在则将其加入邻居表中。若长时间没有接收到邻居表中的某个邻居节点发来的HELLO消息,则认为链路断裂并将该邻居删除。
步骤C,路由建立:
当某节点想要发送数据时,如果没有到达目的节点的路由,则会广播一个路由请求分组称为RREQ包。邻居节点接收到该分组后,会首先检查先前是否已经接收到该广播,如果有,则直接丢弃,如果没有,则会检查路由表中是否包含到达源节点的反向路由,如果不存在则建立反向路由,该反向路由用于返回路由应答。然后检查路由表是否包含到达目的节点的路由,如果有则生成路由回复RREP,并按照先前建立的反向路由返回该回复。如果没有则继续转发,直到到达目的节点。路由回复消息沿着反向路由转发,沿途的节点会将回复消息中的序列号和跳数与现有路由表比对,其中序列号由RREQ和 RREP消息维护,代表了路由的新旧程度,序列号越大则路由越新。如果回复消息中的序列号较大,或者是序列号相同但跳数较小,则更新路由。当路由回复消息到达源节点时,则建立正向路由,路由建立过程完毕。
步骤D,路由维护:
路由维护过程主要包括三个阶段:避免链路断裂的链路状态检测、小范围的快速修复、初次修复失败的二次修复。
步骤D-1,避免链路断裂的链路状态检测。
定义:链路连接质量,用于衡量链路连接是否稳定的变量。其值由节点通信的接收功率以及HELLO消息获得。
步骤D-1-1,链路连接质量的更新。
节点间的链路连接质量的更新方法分为两种。
第一种是通过HELLO报文。邻居节点间往往会通过HELLO报文维持连通性,接受到HELLO报文的数量一定程度上能代表邻居间的联系是否频繁,链路是否正常工作。假设有两个节点X和Y,Y在某一时刻进入了X的通信范围,那么X和Y会接收到彼此广播的HELLO报文,此时X和Y会将对方加入邻居列表,并将其链路稳定度初始化为10,此后,每接收到一次HELLO报文就会将对应的链路稳定度加1。
第二种是节点之间的链路稳定度会随着数据包的接收功率实时更新。如果Y节点接收到的X节点的连续三个数据包的接收功率呈现上升趋势,则说明X与Y的通信质量增强,那么Y会将X的链路连接质量加1,最大值是255。反之,如果接收功率呈现下降趋势,则表示链路质量正在下降,Y将X的链路连接质量减1,最小值是0。如果Y 接收到的数据包的接收功率短时间内一直处于阈值以下,则表示链路很可能会不稳定,有断裂的可能性,Y将X的链路连接质量设为0。
步骤D-1-2,不稳定路由的提前修复。
当链路连接质量为0时发起路由维护。
在活跃数据链路A---B中,下游节点B发现上游邻居节点A的链路连接质量为0时会向A发送PROP_START包,其中PROP_START包记录了B节点的邻居信息。A节点接收到PROP_START包后首先会选择出与B节点共有的邻居节点集合,然后在该集合中选择稳定度最大的节点C作为中间节点。随后A节点通过对B发送 PROP_START_ACK消息将C节点插入到正向路由,B节点向A发送 PROP_START_ACK_REPLY消息将C节点插入到反向路由。至此C节点插入到AB节点中间的过程结束并形成链路A-C-B。插入完成后由A节点发送HOPSINCREASE消息告知链路上下游变化情况。
步骤D-2,小范围的快速修复;在链路提前修复失败时会在断路处的小范围内进行代价较小的快速修复,包括步骤:
D-2-1,目的节点的选择。
本路由方法在路由表中添加了记录下两跳的NEXT_TWOHOP项,并由控制报文进行维护。假设存在链路A--B--C,C节点即为A节点的下两跳节点。在进行路由修复时 A节点将以下两跳节点C作为目的节点并发起路由修复请求。
D-2-2,快速修复流程。
本方法的改进之处是在很小的范围内选择出少量的节点参与新路由,替换断链,原路由的剩余节点依旧参与路由。在进行路由修复时,发起路由修复的节点将广播以NEXT_TWOHOP(下两跳节点)为目的地的RP_REQUEST报文,报文中的序列号由请求发起节点主动更新。这样做是因为修复成功后的链路往往会比先前的链路长,更新序列号会有效避免因链路长度边长导致的目的节点不接受链路的现象,从而提高链路修复成功率。当NEXT_TWOHOP节点接收到该报文时则会回复RP_REPLY报文,从而建立替换链并修复路由。
步骤D-3:初次修复失败的二次修复。
如果在初次修复阶段没有找到合适的替换节点,则会造成修复失败。在本方法中,由于第一次修复占用的时间较短,所带来的网络负担较小,因此加入二次修复是一种可行的方案。
步骤D-3-1,二次修复节点的选取。
一般情况下,节点分布较密集的区域,节点之间的链路可能会比较多,因此有更多的链路供节点选择,在进行路由修复时,也会有更多的几率修复成功。因此,可以将某节点邻居数量的多少作为是否可以进行修复的判据。由于初次修复很可能是因为该节点周围节点分布较稀疏,难以找到合适的节点作为替换节点,因此继续选择初次修复的节点往往不可取。
初次修复不成功时会由初次修复节点向上游发送回溯消息。回溯的消息称为RECALL消息,RECALL消息到达每一个节点时,会检查当前节点所处的位置是否满足修复条件,修复条件有如下定义:
设RECALL消息回溯至节点A,A节点距离源节点的跳数为hop1,距离目的节点的跳数为hop2,若2*hop1>hop2,则A节点会检查自身的邻居节点数量是否大于阈值。如果上述条件均满足,则会由A节点发起第二次路由修复,否则,回溯消息会沿着反向路由继续向上游节点转发,直至回溯到源节点或下一个满足条件的节点为止。
步骤D-3-2,二次修复过程。
在修复的目的地的选择上,由于先前针对下两跳的修复失败了,如果仍然选择初次修复的目的节点,那么失败的可能性比较大,因此,发起二次修复的节点会直接以原来路由的目的节点作为修复的目的地。
选择出二次修复节点后,在二次修复节点的修复手段上,选用改进后的修复策略即发送RP_REQUEST包。这样做能够保证较高的修复成功率。
因此二次修复的过程为,节点发送以待修复路由的目的节点为目的地的 RP_REQUEST包,当目的节点或者有目的节点信息的节点接收到该请求包后回复 RP_REPLY报文,从而建立替换链并修复路由。
下面结合附图对本发明作更进一步的说明。
(一)提前修复阶段:
在图1所示的网络拓扑图中,数据流的方向是n0到n4,在方法的路由建立阶段由RREQ和RREP包建立起来的路由是n0---n1---n2---n4,n1是n2的邻居上游节点。RREQ 和RREP包的结构如下所示。
RREQ包的部分字段如下表所示:
TYPE | RQ_HOP_CN | RQ_SRC | RQ_DST |
表中,各字段的含义为:
TYPE:数据包类型
RQ_HOP_CN:请求包所经过的节点的个数
RQ_SRC:发起路由请求的节点地址
RQ_DST:路由请求的目的节点地址
RREP包的部分字段如下表所示:
TYPE | RP_HOP_CN | RP_SRC | RP_DST |
表中,各字段的含义为:
TYPE:数据包类型
RP_HOP_CN:距离目的节点的跳数
RP_SRC:路由回复的目的节点
RP_DST:路由回复的源节点
某一时刻,n2开始逐渐向其所在位置的右下方移动,直至移出n1的通信范围形成图2的网络拓扑。在n2移动的过程中会在某一时刻达到接收功率的阈值使得与n1的链路连接质量为0,或者是因为远离趋势使链路连接质量减为0。此时n2会启动路由提前修复流程避免链路断裂。当n2发现对n1的邻居链路连接质量变为0时,因为此时n1 到n2的链路并未断裂,n1和n2之间仍然能够收发数据,n2会向n1发送PROP_START 报文以启动路由提前修复过程。
在发送PROP_START报文时,n2会首先筛选出链路连接质量不为0的邻居节点并填充PROP_START报文,然后向n1发送。当n1接收到来自n2的PROP_START报文时,会首先筛选出邻居列表中稳定度不为0的节点。然后n1将这些节点与报文共有的相对稳定性高的节点选出并插入到n1和n2之间。
PROP_START报文的结构如下表所示:
TYPE | NC | DST | TR_SRC | RT_DST | N1_IP | N1_S | ... | Nn_IP | Nn_S |
表中,各字段的含义为:
TYPE:报文类型
NC:相对稳定度不为0的邻居数量
DST:PROP_START报文发送的目的地
RT_SRC:待修复路由的源节点
RT_DST:待修复路由的目的节点
N1_IP:第一个邻居节点的IP地址
N1_S:第一个邻居节点的相对稳定度
Nn_IP:第n个邻居节点的IP地址
Nn_S:第n个邻居节点的相对稳定度
假设n1和n2的邻居节点列表如下:
在上述邻居列表中,n2在给n1发送PROP_START报文时,已经将稳定度为0的邻居列表项过滤掉,因此,n1接收到的n2的邻居列表信息如下表所示为:
PROP_START消息中的邻居列表
经计算可知,n1筛选出的共有节点为n3。
筛选出共有节点后,会将其插入n1---n2链路中。首先,n1向n2发送消息,称为PROP_START_ACK消息。PROP_START_ACK首先单播至n3。当n3接收到来自n1的 PROP_STAR T_ACK消息后,会首先建立到达n4的路由,并将n2作为路由的下一跳,然后将PROP_START_ACK消息转发给n2。
当n2接收到PROP_STAR T_ACK消息后,n2会产生一个 PROP_STAR T_ACK_REPLY消息,该消息格式与PROP_START_ACK的消息格式一致,其发送与接收的过程是PROP_START_ACK的逆过程,除了方向相反外,别无二致。由此可见,PROP_START_ACK是将n3节点插入到了正向路由中, PROP_STAR T_ACK_RPLY则是将n3节点插入到了反向路由中。
PROP_STAR T_ACK和PROP_STAR T_ACK_RE PLY报文的结构如下表所示:
表中各字段的含义为:
TYPE:消息类型
RT_SRC:待修复路由的源节点
RT_SRC_SEQNO:待修复路由的源节点的序列号
RT_DST:待修复路由的目的节点
RT_DST_SEQNO:待修复路由的目的节点的序列号
RT_DST_PRE :用于在建立路由时填充路由的下两跳地址,该地址在本地修复时会用到
RT_SRC_PRE:作用同RT_DST_PRE。
RT_SRC_HOPS:记录现有路由到达源节点的跳数
RT_DST_HOPS:记录现有路由到达目的节点的跳数。
当n1节点接收到了PROP_START_ACK_RE PLY消息后,整个插入过程结束。但由此产生了一个问题:由于n3节点插入到了原先的链路中,使得原来链路的长度增加,必须尽快告知新的链路中的其他节点链路正常的消息。经过分析,无论是正向路由还是反向路由,链路增长影响到的是上游节点,因此,只需通知链路中正反向路由各自的上游节点即可。
当n1接收到了PROP_START_ACK_REPLY后,将会对正向路由和反向路由的上游节点发出HOPSINCRE ASE消息。HOPSINCREASE的消息格式如下表所示:
TYPE | RT_DST | RT_SRC | PRE_HOP | N_HOPS |
表中,各字段的含义为:
TYPE:消息类型
RT_DST:待修复路由的目的节点
RT_SRC:待修复路由的源节点
PRE_HOP:用于维护路由表中的下两跳
N_HOPS:接收到该消息的节点距离目的节点的跳数。
对于n1,n0---n1---n3---n2---n4为其正向路由,因此,节点插入影响到的是n0---n1 链路,所以n1向n0发出HOPSINCREASE。HOPSINCREASE消息向上游节点转发,沿途经过的各个节点都会将现有的路由表与HOPSINCREASE消息进行对比,若 HOPSINCREASE消息中路由跳数较大更新为该跳数。同理,n1也会向n4发出 HOPSINCREASE消息用于更新n4---n0的反向路由。
至此为止,在不稳定的链路断裂之前,便将原来的路由替换成了相对可靠的路由,避免了路由的断裂。
(二)快速修复阶段:
若提前修复未成功,则进入快速修复阶段。在快速修复阶段,为了实现该修复算法,首先定义路由表如下表所示:
路由表中各字段的含义为:
RT_DST:路由的目的地
RT_SEQNO:路由的序列号
RT_HOPS:路由的跳数
RT_NEXTHOP:路由的下一跳
RT_NEXTTWOHOP:路由的下两跳(新增)
RT_EXPIRE:路由的超时时间
RT_FLAGS:路由的状态。
图3所示的网络拓扑图中,初始路由为n0---n1---n2---n3---n4,某一时刻n1---n2链路发生断裂。当n1发现链路发生了断裂时,n1会产生一个RP_REQUEST包将RQ_DST 填充为NEXT_TWOHOP项的值即n3,将REAL_DST填充为待修复路由的目的节点即 n4,RQ_PREHOP填充为当前节点的前一跳节点。由于目的节点是n3节点,在原路由中是其下下跳,相距2跳,为了提高修复的几率,将RP_REQUEST的广播跳数设置为 3跳。RP_REQUEST报文的格式如下表所示:
表中,各字段的含义为:
TYPE:数据包类型
RQ_DST:RP_REQUEST包的目的地
RQ_PREHOP:RP_REQUEST包中记录的当前节点的前一跳,用于更新路由表中的后两跳
RQ_REALDST_SEQNO:记录的是当前节点所知道的目的节点的最新序列号。
RQ_REAL_DST:RP_REQUEST中记录的该节点所处的路由的目的节点。
RP_REPLY报文的格式如下表所示:
表中,各字段的含义为:
TYPE:数据包类型
RP_HOP_CN:记录到达路由目的地的跳数,会随着数据包到达的节点实时更新
RP_DST:记录RP_REQUEST包所到达的目的节点RQ_DST,在发送回复时初始化为当前节点
RP_PREHOP:用于更新新路由中的后两跳地址
RP_REALDST_SEQNO:当前节点所知道的待修复路由的目的节点的序列号,在回复时更新为RP_REQUEST中的RQ_REALDST_SEQNO
RP_REAL_DST:记录待修复路由的目的节点。
本方法在发送RP_REQUEST包的时候,n1会将其所拥有的n4的序列号加1,然后将其广播出去,过程与RREQ的广播过程大致相同。当n3接收到RP_REQUEST包时,会检查RP_REQUEST包中RQ_DST_SEQNO字段,如果RQ_DST_SEQNO比现有序列号大,则更新。当n3节点接收到该请求包时会发送回复信息RP_REPLY
RP_REPLY包按照传播RP_REQUEST包建立起的反向路由回到n1节点,由于 RP_REPLY包中的待修复路由的目的节点序列号比现有路由的大,因此会更新路由,新的路由为n0---n1---n5---n6---n3---n4,路由修复成功。
由于在修复的过程中设定的广播范围为3跳,因此最终寻得的路由可能会比原来的路由长,因此必须告知上游节点路由长度的变化。在这里采取的是发送HOPSINCRE ASE消息的方法来通知上游节点跳数的变化,由此保持前后跳数一致。
(三)二次修复阶段
图4所示的网络拓扑图中,初始路由为n0---n1---n2---n3---n4---n5---n6---n7---n8,在某一时刻,n5和n6之间的链路发生了断裂,按照快速修复算法进行第一次修复是失败的,因此,n5节点会向上游节点发出RECALL消息。RE CALL消息到达每一个节点时,会检查当前节点所处的位置是否满足修复条件,即2*hop1>hop2,除此之外还要检查自身的邻居节点数量是否大于阈值。假设阈值为3,即有三个邻居节点。如果上述条件均满足,则会发起第二次修复,否则,回溯消息会沿着反向路由继续向上游节点转发,直至回溯到源节点或下一个满足条件的节点为止。当来自n5节点的RECALL消息到达n4 节点时,n4满足二次修复条件,因此n4节点会进行第二次修复。
RECALL消息结构定义如下表所示:
TYPE | DST | REAL_DST | NEXT_TWO_HOP | HOPS |
表中,各字段的含义为:
TYPE:数据包类型
DST:RECALL消息发送的目的节点,一般是待修复路由的源节点
REAL_DST:待修复路由的目的节点
NEXT_TWO_HOP:初次修复时的目的节点,用作二次修复的目的节点
HOPS:RECALL消息所处的节点距离RE AL_DST的跳数。
在二次修复节点的修复手段上,是选用改进后的修复策略即发送RP_RE QUEST包。改进后的策略适当放宽了选择的标准,成功的可能性比较高。在各种资源比较紧张的无线Mesh网络中,快速而有效的路由修复策略往往比较可取,因此选择与初次修复相同的策略。
在修复的目的地的选择上,由于先前针对下两跳的修复失败了,如果仍然选择初次修复的目的节点,那么失败的可能性比较大,因此,二次修复选择的是待修复路由的目的节点作为目的节点,图中二次修复的目的节点为n8。
在请求的跳数设定上,通过字段HOPS记录此时距离待修复路由的目的节点的距离,在发出请求包时,直接用该值或者比该值稍大一点的值作为请求包的跳数。例如,在图中n4节点在发起二次修复请求时,会将请求包的跳数设为4+2跳,其中4是n4节点距离n8的跳数,2是为了保证修复的成功率添加的额外的跳数。n4发出请求包后的流程与初次修复完全相同。
如果二次修复失败,在失败后的应对方案同样分为两种,由源节点修复和由中间节点修复。由于前两次修复皆失败,如果继续选择由中间节点修复,仍可能会失败,且多次修复同样会造成时间和开销的问题,并且由于二次修复时的回溯机制,使得此时节点更加靠近源节点,因此,在第二次路由修复失败后将由当前节点通知源节点进行路由修复。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (7)
1.一种基于WMN的矿井下多策略混合修复路由方法,其特征在于,该方法包括以下阶段:
(1)网络初始化阶段:
各节点建立自己的邻居表和路由表,并初始化路与表、邻居表和HELLO数据包;路由表包括:路由的目的地、路由的序列号、路由的跳数、路由的下一跳地址、路由的下两跳地址、路由的超时时间和路由的状态;任意一个节点的邻居表包括该节点的邻居节点IP地址以及该节点与各邻居节点之间的链路连接质量;所述链路连接质量是用于衡量链路连接是否稳定的变量;
(2)节点间信息维护阶段:
各节点通过向相邻节点发送HELLO数据包定期交换信息,维护自己的邻居表;
(3)路由建立阶段:
网络中某节点需要发送数据包前,建立到达该数据包目的节点的路由;
(4)路由维护阶段:
在路由维护阶段,执行以下步骤:
(4-1)各节点初始化自己的邻居表中的链路连接质量为Q0;
(4-2)各节点根据接收到HELLO报文数量或接收到的数据包接收功率更新自己邻居表中链路连接质量;
(4-3)当任意一节点K+1发现邻居表中与上一跳节点K的链路连接质量为0时,该节点发起路由提前修复,提前修复的步骤为:
(4-3-1)节点K+1向节点K发送PROP_START报文,PROP_START报文中包括:TYPE字段、NC字段、DST字段、RT_SRC字段、RT_DST字段、Nn_IP字段、Nn_S字段;其中,TYPE字段记录PROP_START报文的报文类型,NC字段记录与节点K+1的链路连接质量不为零的邻居节点数,DST字段记录PROP_START报文发送的目的地,RT_SRC字段记录待修复路由的源节点,RT_DST字段记录待修复路由的目的节点,Nn_IP字段记录节点K+1第n个邻居节点的IP地址,Nn_S字段记录节点K+1与第n个邻居节点的之间的链路连接质量值;
(4-3-2)节点K根据接收到的PROP_START报文选择自己与节点K+1共有的邻居节点集合,在选出的邻居节点集合中选择对应链路连接质量值最大的节点C作为中间节点;
(4-3-3)将节点C插入节点K、K+1之间,形成链路K-C-K+1;插入完成后,节点K将链路的变化情况告知正向路由中K的上游节点和反向路由中K的下游节点;
(4-4)当提前修复失败时,在断路处进行小范围的快速修复;快速修复包括以下步骤:
当节点K与下一跳节点K+1之间的链路发生断裂时,节点K以自己路由表中记录的下两跳节点K+2作为目的节点发送快速修复请求;节点K+2接收到节点K发送的快速修复请求后,向节点K回复一个接受请求的反馈报文,建立替换链路K-K+2;
(4-5)若步骤(4-4)中节点K未能找到下两跳节点作为目的节点,则快速修复失败;此时,进行二次修复,包括步骤:
节点K沿反向路由向上游发送回溯消息,回溯消息每到达一个节点时,会检查当前节点是否满足修复条件;修复条件为:
定义回溯消息回溯至节点A,节点A满足2*hop1>hop2,且节点A的邻居节点数量大于预设的阈值;其中,hop1表示节点A距离路由源节点的跳数,hop2表示节点A距离路由目的节点的跳数;
若节点A满足修复条件,则由节点A作为二次修复的发起节点;若节点A不满足修复条件,则回溯消息会沿着反向路由继续向上游节点转发,直至回溯到源节点或下一个满足条件的节点为止;
满足修复条件的节点发送以待修复路由的目的节点为目的地的RP_REQUEST包,当目的节点或者有目的节点信息的节点接收到该请求包后回复RP_REPLY报文,建立替换链并修复路由。
2.根据权利要求1所述的一种基于WMN的矿井下多策略混合修复路由方法,其特征在于,所述步骤(4)中,各节点根据接收到HELLO报文数量更新链路连接质量的方法为:
对于任意一个节点X,每当X接收到一次邻居节点发送的HELLO报文,则令节点X与对应邻居节点间的链路质量值加1。
3.根据权利要求1所述的一种基于WMN的矿井下多策略混合修复路由方法,其特征在于,所述步骤(4)中,各节点根据接收到的数据包接收功率更新链路连接质量的方法为:
对于任意一个节点X,当X接收到一个邻居节点所发送的连续N个数据包,且这N个数据包的接收功率逐渐增大,则令节点X与对应邻居节点间的链路质量值加1;否则,令节点X与对应邻居节点间的链路质量值减1;若X接收到一个邻居节点所发送的连续M个数据包,且这M个数据包的接收功率均小于预设的阈值,则令节点X与对应邻居节点间的链路质量值为0。
4.根据权利要求2或3所述的一种基于WMN的矿井下多策略混合修复路由方法,其特征在于,所述步骤(4-3-3)中将节点C插入节点K和K+1之间形成链路K-C-K+1的方法为:
节点K通过对节点K+1发送PROP_START_ACK报文将节点C插入到正向路由,节点K+1向节点K发送PROP_START_ACK_REPLY报文将节点C插入到反向路由;至此C节点插入到节点K和K+1中间的过程结束,形成链路K-C-K+1;
所述PROP_START_ACK报文和PROP_START_ACK_REPLY报文的格式一致,均包括:TYPE字段、RT_SRC字段、RT_SRC_SEQNO字段、RT_DST字段、RT_DST_SEQNO字段、RT_DST_PRE字段、RT_SRC_HOPS字段和RT_DST_HOPS字段;其中,TYPE字段记录报文类型;RT_SRC字段记录待修复路由的源节点地址;RT_SRC_SEQNO字段记录待修复路由的源节点的序列号;RT_DST字段记录待修复路由的目的节点地址;RT_DST_SEQNO字段记录待修复路由的目的节点的序列号;RT_DST_PRE字段记录用于在建立路由时填充路由的下两跳地址;RT_SRC_HOPS字段记录现有路由到达源节点的跳数;RT_DST_HOPS字段记录现有路由到达目的节点的跳数。
5.根据权利要求4所述的一种基于WMN的矿井下多策略混合修复路由方法,其特征在于,所述步骤(4-4)中,
快速修复请求为RP_REQUEST报文,RP_REQUEST报文包括:TYPE字段、RQ_DST字段、RQ_PREHOP字段、RQ_REALDST_SEQNO字段、RQ_REAL_DST字段;其中,TYPE字段记录RP_REQUEST报文的报文类型;RQ_DST字段记录RP_REQUEST报文的目的地地址;RQ_PREHOP字段记录RP_REQUEST报文到达的当前节点的前一跳;RQ_REALDST_SEQNO字段记录RP_REQUEST报文所到达的当前节点知道的目的节点的最新序列号;RQ_REAL_DST字段记录节点K所在路由的目的节点地址;
节点K+2向节点K回复的反馈报文为RP_REPLY报文,RP_REPLY报文包括:TYPE字段、RP_HOP_CN字段、RP_DST字段、RP_PREHOP字段、RP_REALDST_SEQNO字段、RP_REAL_DST字段;其中,TYPE字段记录RP_REPLY报文的报文类型;RP_HOP_CN字段记录RP_REPLY报文到达的当前节点距离路由目的节点的跳数;RP_DST字段记录节点K+2的地址;RP_PREHOP字段记录当前节点在路由中的后两跳节点的地址;RP_REALDST_SEQNO字段记录当前节点所知道的待修复路由的目的节点的序列号,RP_REALDST_SEQNO字段在每次回复时更新为RP_REQUEST中的RQ_REALDST_SEQNO字段;RP_REAL_DST字段记录待修复路由的目的节点地址。
6.根据权利要求5所述的一种基于WMN的矿井下多策略混合修复路由方法,其特征在于,在所述步骤(2)中的节点间信息维护阶段,各节点维护自己的邻居表的方法为:
节点通过HELLO数据包定期交换信息;若节点接收到另一个节点发来的HELLO消息,则会检查邻居表中是否存在该邻居,若不存在则将其加入邻居表中;节点定期检查自己的邻居表,若在预设的时间段内没有接收到邻居表中的某个邻居节点发来的HELLO消息,则认为对应的链路断裂并将该邻居删除。
7.根据权利要求6所述的一种基于WMN的矿井下多策略混合修复路由方法,其特征在于,所述步骤(3)中路由建立的方法为:
当某节点X想要发送数据时,先检查自己的路由表,如果没有到达目的节点的路由,则节点X会广播一个RREQ数据包;邻居节点Y接收到RREQ数据包,会首先检查先前是否已经接收到该广播,如果有,则直接丢弃RREQ数据包;如果没有,则会检查自己的路由表中是否包含到达RREQ数据包源节点的反向路由;
如果邻居节点Y的路由表中不存在到达源节点的反向路由,则建立到达源节点的反向路由,该反向路由用于返回路由应答;然后节点Y检查路由表中是否包含到达RREQ数据包目的节点的路由,如果有则生成路由回复RREP,并按照先前建立的反向路由返回RREP;如果没有则继续转发,直到到达RREQ数据包的目的节点;
RREP沿着反向路由转发,沿途的节点会将RREP中的序列号和跳数与自己的路由表比对,如果RREP中的序列号较大,或者是序列号相同但跳数较小,则将自己的路由表中的序列号替换为RREP中的序列号;当RREP到达源节点时,则建立正向路由,路由建立过程完毕。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611258436.6A CN106612231B (zh) | 2016-12-30 | 2016-12-30 | 一种基于wmn的矿井下多策略混合修复路由方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611258436.6A CN106612231B (zh) | 2016-12-30 | 2016-12-30 | 一种基于wmn的矿井下多策略混合修复路由方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106612231A CN106612231A (zh) | 2017-05-03 |
CN106612231B true CN106612231B (zh) | 2019-06-04 |
Family
ID=58636802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611258436.6A Active CN106612231B (zh) | 2016-12-30 | 2016-12-30 | 一种基于wmn的矿井下多策略混合修复路由方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106612231B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10992383B2 (en) | 2018-04-16 | 2021-04-27 | Accenture Global Solutions Limited | Ad hoc light-based mesh network |
CN108901053B (zh) * | 2018-06-28 | 2021-07-13 | 广东工业大学 | 一种工业无线Mesh路由器部署方法、装置及系统 |
CN113766548A (zh) * | 2020-06-03 | 2021-12-07 | 株洲信通智能科技有限公司 | 矿用通信网络维护协议、系统及其设计方法 |
CN113260011B (zh) * | 2021-05-14 | 2022-07-22 | 中国矿业大学 | 基于移动轨迹的矿井安全监测机会网络路由方法 |
CN115835155A (zh) * | 2022-11-24 | 2023-03-21 | 广西电网有限责任公司电力科学研究院 | 一种自取能传感器自组织网络组网方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101371150A (zh) * | 2006-01-18 | 2009-02-18 | 思科技术公司 | 针对一个或多个te-lsp的头端节点的故障的动态保护 |
CN101478801A (zh) * | 2008-12-23 | 2009-07-08 | 华南理工大学 | 基于动态源树的无线自组织网络组播路由方法 |
US7653030B2 (en) * | 2000-04-12 | 2010-01-26 | Nokia Corporation | Generation broadband wireless internet, and associated method, therefor |
US8121053B2 (en) * | 2007-05-21 | 2012-02-21 | Arrowspan, Inc. | Multi-radio wireless mesh network solutions |
-
2016
- 2016-12-30 CN CN201611258436.6A patent/CN106612231B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7653030B2 (en) * | 2000-04-12 | 2010-01-26 | Nokia Corporation | Generation broadband wireless internet, and associated method, therefor |
CN101371150A (zh) * | 2006-01-18 | 2009-02-18 | 思科技术公司 | 针对一个或多个te-lsp的头端节点的故障的动态保护 |
US8121053B2 (en) * | 2007-05-21 | 2012-02-21 | Arrowspan, Inc. | Multi-radio wireless mesh network solutions |
CN101478801A (zh) * | 2008-12-23 | 2009-07-08 | 华南理工大学 | 基于动态源树的无线自组织网络组播路由方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106612231A (zh) | 2017-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106612231B (zh) | 一种基于wmn的矿井下多策略混合修复路由方法 | |
US8861398B2 (en) | Method for discovering multiple routes in sensor networks | |
US8064377B2 (en) | Method for enhancement of multicasting forwarding protocol in a wireless network | |
Ahn et al. | A node-disjoint multipath routing protocol based on aodv in mobile ad hoc networks | |
CN103260211B (zh) | 一种改进的aomdv路由方法 | |
CN106130905B (zh) | Hwmp先验树路由模式的链路恢复方法 | |
CN104469874B (zh) | 一种基于概率中心度的机会网络的消息转发方法 | |
CN109600312B (zh) | 一种面向智能终端自组网的BATMAN-Adv协议优化设计方法 | |
Somarin et al. | An efficient routing protocol for discovering the optimum path in mobile ad hoc networks | |
CN107645711A (zh) | 一种网络路由的方法及装置 | |
Othmen et al. | Power and delay-aware multi-path routing protocol for ad hoc networks | |
CN110943926B (zh) | 基于链路生存时间的mpr备份方法 | |
Kumar et al. | A review and design study of cross layer scheme based algorithm to reduce the link break in MANETs | |
Zangeneh et al. | New multipath node-disjoint routing based on aodv protocol | |
Metri et al. | Ant colony optimization algorithm based an intelligent protocol to improve QoS of MANETs | |
Lessmann et al. | Rope ladder routing: Position-based multipath routing for wireless mesh networks | |
Doghri et al. | On The Recovery Performance of Single-and Multipath OLSR in Wireless Multi-Hop Networks | |
Srinivasan et al. | Stability and energy aware multipath routing for mobile ad hoc networks | |
Sharma et al. | Study of Routing Protocols in MANET-A Review | |
Baccelli et al. | Multi-point relaying techniques with OSPF on ad hoc networks | |
CN104125148B (zh) | 三层以太网环的缺陷感知及路由条目刷新方法 | |
CN104320346B (zh) | 一种状态信息发布方法以及装置 | |
Banik et al. | Design of QoS Routing Framework based on OLSR Protocol | |
Khasawneh et al. | Intra-Domain Handoff Management Scheme for Wireless Mesh. Network | |
Du et al. | An Optimized OSPF Routing Protocol for Mobile Ad-hoc Networks |
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 |