CN104994556A - 一种基于混合无线网状网络协议的路由建立的方法和装置 - Google Patents
一种基于混合无线网状网络协议的路由建立的方法和装置 Download PDFInfo
- Publication number
- CN104994556A CN104994556A CN201510259521.3A CN201510259521A CN104994556A CN 104994556 A CN104994556 A CN 104994556A CN 201510259521 A CN201510259521 A CN 201510259521A CN 104994556 A CN104994556 A CN 104994556A
- Authority
- CN
- China
- Prior art keywords
- routing iinformation
- message
- route
- address
- interface
- 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.)
- Granted
Links
Classifications
-
- 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
-
- 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/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- 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
- H04W40/10—Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources based on available power or energy
Abstract
本发明公开了一种基于混合无线网状网络协议的路由建立的方法,应用于节点中,包括:接收路由学习报文,根据所述接收的路由学习报文生成路由信息;若存在与所述生成的路由信息相匹配的已保存的路由信息、且两条路由信息的链路开销值相等,则将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息中;其中,所述路由学习报文包括路由请求报文和路由应答报文。本发明通过更改路由规则,在到达该节点的多条路径的链路开销值相同时,不用采取覆盖更新的方法,而是兼容存储该多条路径上的链路开销值相同的路由,从而使无线网状网络可以支持等价路由。本发明还公开了一种基于混合无线网状网络协议的路由建立的装置。
Description
技术领域
本发明涉及无线通信技术领域,尤其涉及一种基于混合无线网状网络协议的路由建立的方法和装置。
背景技术
新的无线网络技术——无线网状网(Wireless Mesh Network,WMN)因其具有宽带无线汇聚连接功能、有效的路由及故障发现特性、无需有线网络资源等独特的优势,正受到越来越多的关注。
HWMP协议(Hybrid Wireless Mesh Protocol,混合无线网状网络协议)为IEEE802.11s协议族指定的Mesh网络路由协议。该协议专门为WMN网络定义了MAC层协议以及基于该MAC层的网络和其他协议。
HWMP协议的基本工作机制为按需路由模式,即某个MP有到另一个目的MP的流量转发需求,但MAC转发表中不存在该MP到目的MP的转发信息,触发HWMP协议进行路由学习。
现有基于HWMP协议的路由学习中,存在以下缺陷:
a)路由学习时,靠链路开销大小决定路由的优劣,如果针对同一请求及对应的应答,覆盖了不同的路径,且链路开销相同的情况下,协议标准采用简单的覆盖更新的方法,即根据接收到的报文的序列号,将序列号大的报文(即最新的报文)对应的路由信息覆盖已保存的路由信息。这样,就会导致等价路由中只能有一条路由存在。
b)链路断开,导致路由下一跳不可达时,现有协议机制中,断开链路的两端节点分别逆向通告上一跳节点进行路由删除,直至流量的两个源头,对于存 在等价路由的情形,事实上两个源头之间还存在其他的路由,但是经过路由删除后,只能重新学习两个源头之间的路由,该过程存在大量时延,流量中断。
所以,亟需对现有无线网状网络中的路由学习过程进行改进,以消除上述缺陷。
发明内容
有鉴于此,本发明提出一种基于混合无线网状网络协议的路由建立的方法和装置,以解决上述问题。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供一种基于混合无线网状网络协议的路由建立的方法,应用于节点中,该方法包括:
接收路由学习报文,根据所述接收的路由学习报文生成路由信息;
若存在与所述生成的路由信息相匹配的已保存的路由信息、且两条路由信息的链路开销值相等,则将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息中;
其中,所述路由学习报文包括路由请求报文和路由应答报文。
可选地,将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息之后,该方法还包括:
丢弃接收的所述路由学习报文。
可选地,将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息之后,该方法还包括:
若接收的所述路由学习报文为路由请求报文,则针对所述路由请求报文构造路由应答报文,并通过所述路由请求报文对应的路由信息中记录的下一跳地址所对应的接口发送所述路由应答报文。
可选地,当检测到自身的接口发生故障时,该方法还包括:
查找下一跳地址包含故障接口地址的路由信息;
若路由信息的下一跳地址中还包含除所述故障接口地址外的其他接口地址时,将所述故障接口地址从路由信息的下一跳地址中删除;
若路由信息的下一跳地址中仅包含所述故障接口地址,则删除路由信息,并生成路由错误报文,查找与删除的路由信息反向的路由信息,通过所述反向的路由信息中记录的下一跳地址所对应的接口发送所述路由错误报文。
可选地,该方法还包括:
接收到路由错误报文时,查找下一跳地址包含接收所述路由错误报文的接口地址的路由信息;
若路由信息的下一跳地址中还包含除接收所述路由错误报文的接口地址外的其他接口地址时,将接收所述路由错误报文的接口地址从路由信息的下一跳地址中删除,丢弃所述路由错误报文;
若路由信息的下一跳地址中仅包含接收所述路由错误报文的接口地址,则删除路由信息,查找与删除的路由信息反向的路由信息,通过所述反向的路由信息中记录的下一跳地址所对应的接口转发所述路由错误报文。
本发明实施例还提供一种基于混合无线网状网络协议的路由建立的装置,设于节点上,包括:
报文收发模块、接收路由学习报文,并发送至路由信息生成模块;其中,所述路由学习报文包括路由请求报文和路由应答报文;
路由信息生成模块、根据接收的路由学习报文生成路由信息,并将生成的路由信息发送至路由信息保存模块;
路由信息保存模块、将生成的路由信息与已保存的路由信息相比较,若存在与所述生成的路由信息相匹配的已保存的路由信息、且两条路由信息的链路开销值相等,则将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息中。
可选地,所述路由信息保存模块将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息之后,
丢弃接收的所述路由学习报文。
可选地,所述路由信息保存模块将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息之后,
若接收的所述路由学习报文为路由请求报文,则针对所述路由请求报文构造路由应答报文,并通知所述报文收发模块通过所述路由请求报文对应的路由信息中记录的下一跳地址所对应的接口发送所述路由应答报文。
可选地,
当所述报文收发模块检测到节点的接口发生故障时,通知所述路由信息保存模块查找下一跳地址包含故障接口地址的路由信息;
若路由信息的下一跳地址中还包含除所述故障接口地址外的其他接口地址时,则所述路由信息保存模块将所述故障接口地址从路由信息的下一跳地址中删除;
若路由信息的下一跳地址中仅包含所述故障接口地址,则所述路由信息保存模块删除路由信息,并生成路由错误报文,然后查找与删除的路由信息反向的路由信息,通知所述报文收发模块通过所述反向的路由信息中记录的下一跳地址所对应的接口发送所述路由错误报文。
可选地,本发明实施例的装置还包括:
所述报文收发模块接收到路由错误报文时,通知所述路由信息保存模块查找下一跳地址包含接收所述路由错误报文的接口地址的路由信息;
若路由信息的下一跳地址中还包含除接收所述路由错误报文的接口地址外的其他接口地址时,则所述路由信息保存模块将接收所述路由错误报文的接口地址从路由信息的下一跳地址中删除,丢弃所述路由错误报文;
若路由信息的下一跳地址中仅包含接收所述路由错误报文的接口地址,则所述路由信息保存模块删除路由信息,查找与删除的路由信息反向的路由信息,然后通知所述报文收发模块通过所述反向的路由信息中记录的下一跳地址所对应的接口转发所述路由错误报文。
本发明的有益效果为,通过更改路由规则,在到达该节点的多条路径的链路开销值相同时,不用采取覆盖更新的方法,而是兼容存储该多条路径上的链路开销值相同的路由,从而使无线网状网络可以支持等价路由。
并且,在链路断开时,由于等价路由的存在,各个节点仅仅删除不可达的路由即可,而不会导致流量的中断。
附图说明
图1a~1b为两种存在等价路由的网状网络的组网示意图;
图2为本发明实施例的网状网络中建立节点路由的方法流程图;
图3为本发明实施例的网状网络中链路故障时删除路由的方法流程图一;
图4为本发明实施例的网状网络中链路故障时删除路由的方法流程图二;
图5为无线网状网WMN的组网结构示意图;
图6a~6h为一个现有技术中WMN网络下的路由学习过程示例的示意图;
图7为本发明实施例的支持等价路由的WMN组网的结构图;
图8为本发明实施例的WMN组网在发生链路故障时的路由删除示意图;
图9为本发明实施例中混合无线网状网络中的每个节点的模块框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下通过具体实施例并参见附图,对本发明进行详细说明。
对于现有技术中存在的问题,参见图1a和图1b。在图1a给出的网络中,节点S和节点D之间存在三条路径,并且链路开销值全部相同,此时应形成三条等价路由,而非简单的覆盖更新;当某条链路不可达时,只应撤销某一条路由,而其他路由应保持不断,流量转发不断。图1b中,存在等价路由情况,节点S到节点D经过节点A,而节点A到节点D有两个等价下一跳B和C。当B和E、C和E其中一条链路断开时,实际上并不影响节点S到节 点D的流量转发,所以也不适于采用直接删除下一跳节点的路由的做法。可见,现有技术中的WMN组网架构的路由学习过程无法支持等价路由的情况广泛存在。
为了解决现有技术中的WMN组网架构的路由学习过程无法支持等价路由的技术问题,本发明实施例公开了一种基于混合无线网状网络协议的路由建立的方法,应用于每个节点中,参见图2,该方法包括以下步骤:
a1、接收路由学习报文,根据所述接收的路由学习报文生成路由信息,并进入步骤a2。
其中,路由学习报文包括路由请求报文和路由应答报文。
路由请求报文为源节点请求到目的节点的路由时生成,并且,源节点将该路由请求报文沿所有可达路径发送至目的节点。
路由应答报文为目的节点收到请求报文后而生成,并沿收到该路由请求报文的路径返回发送;或在中间节点根据路由请求报文生成等价路由后,由中间节点生成路由应答报文、并沿收到该路由请求报文的路径返回发送。此在后文中会进行详细的介绍。
其中,在该网状网络中,任何一个节点都可能会作为源节点,向其他节点请求路由;也可能会作为目的节点,接收其他节点请求的路由。
a2、节点比较生成的路由信息与已保存的路由信息是否匹配;如果是,则进入步骤a3;如果否,则进入步骤a4。
其中,路由信息至少包括:目的地址、下一跳地址以及链路开销值。其中,若为根据路由请求报文生成的路由信息,则链路开销值为本节点到源节点的链路开销值;若为根据路由应答报文生成的路由信息,则链路开销值为本节点到目的节点的链路开销值。
并且,需要说明的是,节点比较两条路由信息是否匹配,其依据是比较两条路由信息的目的地址是否相同,若相同,则确定两条路由信息匹配。
a3、节点继续比较生成的路由信息与已保存的路由信息的链路开销值的大小; 若二者相等,则进入步骤a5;若生成的路由信息的链路开销值大,则进入步骤a6;若生成的路由信息的链路开销值小,则进入步骤a7。
a4、直接保存路由信息,且该保存的路由信息的下一跳地址为接收该路由学习报文的接口地址。接口地址的形式一般为eth0/0/0。
a5、将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息中,并进入步骤a8。
通过此步骤a5,可以使每个节点上存储链路开销值相同的多条路由,从而使无线网状网可以支持等价路由。
a6、不保存生成的路由信息,并且丢弃接收到的路由学习报文。
a7、将生成的路由信息覆盖已保存的路由信息后并保存。
a8、丢弃该接收到的路由学习报文。
在步骤a8中,若接收的所述路由学习报文为路由请求报文,则针对所述路由请求报文构造路由应答报文,并通过所述路由请求报文对应的路由信息中记录的下一跳地址所对应的接口发送所述路由应答报文。
在此需要说明的是,对于等价路由的场景,中间节点针对接收的路由请求报文构造路由应答报文时,需要先确认已保存的链路开销相等的路由信息是否已经得到了回复,如果是,则中间节点针对当前接收到的路由请求报文构造路由应答报文,如果否,则需要等待已保存的链路开销相等的路由信息得到回复后,再构造路由应答报文。
关于确认已保存的链路开销相等的路由信息是否已经得到了回复,可以采用如下的方式:将路由信息和路由学习报文进行绑定,例如,在路由信息中还可以包含对应的路由学习报文的标识,其中,路由请求报文的标识和路由应答报文的标识也具有绑定关系。中间节点根据已保存的链路开销相等的路由信息对应的路由请求报文的标识、查找包含对应路由应答报文的标识的路由信息,如果存在,确认为已经得到回复。或者,也可以在路由信息中添加相应的指示信息,通过该指示信息指示是否得到回复。
通过上述方法可见,本发明通过更改路由规则,在到达该节点的多条路由信息的链路开销值相同时,不用采取覆盖更新的方法,而是兼容存储链路开销值相同的多条路由信息,从而使无线网状网可以支持等价路由。
在建立等价路由后,若任意两个节点之间的链路不通,则需要对已建立的路由中不可达的路由进行删除。
参见图3,当本节点检测到自身的接口发生故障时:
300、查找下一跳地址包含故障接口地址的路由信息,并进入步骤301;
301、查看路由信息的下一跳地址中是否仅包含故障接口地址;若否,进入步骤302;若是,进入步骤303。
302、将所述故障接口地址从路由信息的下一跳地址中删除;
303、则删除路由信息,并生成路由错误报文,查找与删除的路由信息反向的路由信息,通过所述反向的路由信息中记录的下一跳地址所对应的接口发送所述路由错误报文。查找不到反向路由信息时(例如节点为路由的两端节点),丢弃路由错误报文即可。
在此需要说明的是,与删除的路由信息反向的路由信息,指的是与删除的路由信息的源地址和目的地址相反。
当节点接收到路由错误报文时,参见图4:
400、查找下一跳地址包含接收所述路由错误报文的接口地址的路由信息,并进入步骤401;
401、查看路由信息的下一跳地址中是否仅包含接收所述路由错误报文的接口地址;若否,则进入步骤402;若是,则进入步骤403。
402、将接收所述路由错误报文的接口地址从路由信息的下一跳地址中删除,丢弃所述路由错误报文。
403、则删除路由信息,查找与删除的路由信息反向的路由信息,通过所述反向的路由信息中记录的下一跳地址所对应的接口转发所述路由错误报文。
查找不到反向路由信息时(例如节点为路由的两端节点),丢弃路由错误报 文即可。
至此,对本实施例中等价路由的建立和删除进行了详细的说明。为了便于理解,下面分别针对现有技术和本发明举例进行说明。
参见图5,WMN网络(Wireless Mesh Network,无线网状网络)包括MP(Mesh Point,网状节点)、MAP(Mesh Access Point,网状访问接入点)以及STA组成的网状结构。其中,各个MP(Mesh Point)、MAP(Mesh AP)组成一个较大的网络拓扑结构,这些网络拓扑之间需要进行路由,以按照最优路径指导流量转发。
现有技术中,一个完整的路由学习过程如图6a~图6h所示。
首先需要对图中的字符进行说明。
图中,节点A、B、C、D、S对应的是图5中的MAP或MP。
每个节点上保存的路由信息由m、dest和next字段组成:
m:链路开销,即图中两个节点之间的链路上所标示的数字。以下图中均同,下文便不再一一解释。
dest:路由所到达的目的节点;
next:路由所指向的下一跳节点;
PREP(Path Reply,路由应答报文):HWMP协议中用于路由确认应答;
PREQ(Path Request,路由请求报文):HWMP协议中用于发现和维护路由的报文;
PERR(Path Error,路由错误报文):HWMP协议中用于路由发生变化不可达时发送的报文,以触发路由收敛。
1)参见图6a。假设节点S请求到节点D的路由。节点S向所有与其连接的节点广播发送PREQ报文。PREQ报文携带的路径开销字段m初始为0。节点A、B、C收到节点S发送的PREQ报文后,说明到节点S可达,于是生成一条到达节点S的路由,下一跳地址为本节点接收PREQ报文的接口地址,m为对应的该节点到节点S的链路开销值,如在图3中,节点C生成的路由为:dest=S, m=8,next=Cs(Cs表示节点C接收S发送的PREQ报文的接口地址)。同时,节点A、B、C分别通过自身除接收PREQ报文的接口以外的其他接口转发PREQ报文,其携带的链路开销值为初始值加上该节点到节点S的链路开销值,如节点A向节点D发送的PREQ报文中,m=10。
2)参见图6b。节点D收到节点A转发的PREQ后,生成一条到达S的路由表项,下一跳地址为Da,m为接收到的PREQ携带的m值加上节点D到节点A的链路开销值,即为13,即dest=S,m=13,next=Da。
3)参见图6c。节点D收到节点A转发的PREQ报文后,发现PREQ报文请求的目的MAC地址为自身,需要回复PREP报文。PREP报文只在接收到对应PREQ的接口上进行发送,例如节点D收到节点A发送的PREQ报文,则向节点A回复PREP报文。节点A收到后,按照接收PREQ报文的方向往上一跳节点扩散该PREP报文,即节点S。节点A、S收到该PREP报文后,添加反向路由,并更新下一跳及链路开销值m,如图中所示。这样节点S和节点D之间就建立了一条完整的双向转发路径。
注意:此时建立的路径可能是次优的,在后续的过程中逐步收敛为最优。
4)然后,节点A收到了节点B转发的PREQ报文,由于本次收到的PREQ报文携带的链路开销值m较小,路径更优,于是更新到达节点S的路由下一跳地址为Ab,并更新链路开销值为7,参见图6d。
5)由于节点A此次收到的PREQ报文携带的链路开销值m较小,也就意味着存在一条节点S到达节点D的更优路由。节点A再次转发该PREQ报文,并更新PREQ报文中的m值。节点D再次收到了由节点A发送的PREQ报文,由于该PREQ报文携带的m值较小,路径更优,更新到达S的路由下一跳及m值,参见图6e。
6)由于该路径更优,节点D需要再次应答PREP报文,该PREP报文按照PREQ报文接收的反向路径进行扩散,路径中各节点更新到D节点路由的下一跳以及m值,即图6f中的画下横线的值。
7)再看节点C,参见图6g。节点C扩散PREQ报文,节点D收到后,发现该路径的链路开销值m为12,比本地路由表项中存储的到节点S的链路开销值m(即10)要大,该路径没有当前路径优,因此,无需再次处理该PREQ报文,也无需向节点C回复PREP报文。
8)当链路断开后,HWMP协议采用PERR机制进行路由撤销,加快路由收敛。假设节点A和节点B之间的链路断开,节点A将遍历自己所有下一跳地址为Ab的路由,将其撤销删除,并构造PERR报文往删除路由的反方向进行扩散;B节点则遍历自己所有下一跳为Ba的路由,进行同样过程。节点收到PERR报文后,检查自身路由表,如果存在下一跳地址为接收PERR报文的接口地址的路由,则需要将该路由删除。通过此过程,使整条路径上的不可达的路由全部撤销。参见图6h中删除的路由。
上述过程为HWMP协议进行路由学习以及路由撤销的典型过程。下述为本发明实施例的路由学习过程。
参见图7,以节点S请求到节点D的路由为例。图中,dest为路由的目的地址,next为路由的下一跳地址;m为本节点到目的地址的链路开销值。
节点S作为源节点,通过自己所有的接口向下一跳节点发送PREQ报文。
S构造请求报文1:源MAC地址为S、目的MAC地址为D、开销为0,从接口Sa发出;
S构造请求报文2:源MAC地址为S、目的MAC地址为D、开销为0,从接口Sb发出;
S构造请求报文3:源MAC地址为S、目的MAC地址为D、开销为0,从接口Sc发出。
各个节点上建立的路由表如下表所示:
对于节点A:
通过接口As接收S发送的请求报文1,生成并保存下一跳地址为As、链路开销为7的路由,然后转发请求报文1到D;
通过接口Ab接收B发送的请求报文2,生成下一跳地址为Ab、链路开销为7的路由信息,由于存在等价路由,则将接口Ab添加到已保存的下一跳地址为As的路由中,并丢弃请求报文2。并且,在A通过其他接口接收到节点D返回的针对请求报文1的应答报文1时,A构造针对请求报文2的应答报文2(m=3)按照已保存的路由信息从接口Ab转发出去。
A通过接口Ad接收D发送的应答报文1,生成下一跳地址为Ad、链路开销为3的路由,并根据已保存的路由信息从接口As转发应答报文1。
对于节点B:
B通过接口Bs接收S发送的请求报文2,生成下一跳地址为Bs、链路开销为3的路由,然后转发请求报文2到A;
B通过接口Ba接收A发送的应答报文2,生成下一跳地址为Ba、链路开销为7的路由,转发应答报文2到S。
对于节点C:
C通过接口Cs接收S发送的请求报文3,生成并保存下一跳地址为Cs、链路开销为6的路由,然后转发请求报文3到D;
C通过接口Cd接收D发送的应答报文3,生成并保存下一跳地址为Cd、链路开销为4的路由,然后转发应答报文3到S。
对于节点D:
D通过接口Da接收A发送的请求报文1,生成并保存下一跳地址为Da、链路开销为10的路由,然后针对请求报文1构造应答报文1,根据已保存的路由信息从接口Da发送应答报文1;
D通过接口Dc接收C发送的请求报文3,生成下一跳地址为Dc、链路开销为10的路由,由于存在等价路由,则将接口Dc添加到已保存的下一跳地址为Da的路由中。然后,针对请求报文3构造应答报文3,并根据已保存的路由信息从接口Dc发送应答报文3。
对于节点S:
接口Sa接收A发送的应答报文1,生成并保存下一跳地址为Sa、链路开销为10的路由;
接口Sb接收B发送的应答报文2;生成下一跳地址为Sb、链路开销为10的路由,由于存在等价路由,则并将接口Sb添加到已保存的下一跳地址为Sa的路由中。
接口Sc接收C发送的应答报文3;生成下一跳地址为Sc、链路开销为10的路由,由于存在等价路由,则将接口Sc添加到已保存的下一跳地址为Sa的路由中。
对于图7的WMN网络,若A和B之间的链路发生故障,如图8所示,则节点B的故障接口地址为Ba,节点A的故障接口地址为Ab。
对于节点B,查找下一跳地址包含故障接口地址Ba的路由信息,并查看路由信息的下一跳地址中是否仅包含故障接口地址Ba;
若仅包含故障接口地址Ba,则删除路由信息,并生成路由错误PERR报文,并经由接口Bs向节点S发送该PERR报文。
对于节点S,接收到PERR报文时,
查找下一跳地址包含接收所述路由错误报文的接口地址Sb的路由信息, 并查看路由信息的下一跳地址中是否仅包含接收所述路由错误报文的接口地址Sb;
若除去该故障接口地址Sb外还有其余的下一跳地址,将接收所述路由错误报文的接口地址Sb从路由信息的下一跳地址中删除,丢弃PERR报文。
对于节点A,查找下一跳地址包含故障接口地址Ab的路由信息,并查看路由信息的下一跳地址中是否仅包含故障接口地址Ab;
若除去该故障接口地址Ab外有其余的下一跳地址,则将所述故障接口地址Ab从路由信息的下一跳地址中删除,则节点A无需构造PERR报文。
等价路由撤销完毕。
路由撤销后的路由表如下所示:
上述为本发明实施例的基于混合无线网状网络协议的路由建立的方法部分,下面对本发明实施例的基于混合无线网状网络协议的路由建立的装置进行说明。
本发明实施例还提供一种基于混合无线网状网络协议的路由建立的装置,如图9所示,设于每个节点上,包括:
报文收发模块、接收路由学习报文,并发送至路由信息生成模块;其中,所述路由学习报文包括路由请求报文和路由应答报文;
路由信息生成模块、根据接收的路由学习报文生成路由信息,并将生成的路由信息发送至路由信息保存模块。
路由信息保存模块、将生成的路由信息与已保存的路由信息相比较,若存在与所述生成的路由信息相匹配的已保存的路由信息,则继续比较两条路由信息的链路开销值是否相等。
若两条路由信息的链路开销值相等,则将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息中;
若生成的路由信息的链路开销值大,路由信息保存模块不保存生成的路由信息,并且丢弃接收到的路由学习报文;
若生成的路由信息的链路开销值小,路由信息保存模块将生成的路由信息覆盖已保存的路由信息后并保存。
其中,路由信息至少包括:目的地址、下一跳地址以及链路开销值。其中,若为根据路由请求报文生成的路由信息,则链路开销值为本节点到源节点的链路开销值;若为根据路由应答报文生成的路由信息,则链路开销值为本节点到目的节点的链路开销值。
并且,需要说明的是,节点比较两条路由信息是否匹配,其依据是比较两条路由信息的目的地址是否相同,若相同,则确定两条路由信息匹配。
可选地,所述路由信息保存模块将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息之后:
若接收的所述路由学习报文为路由请求报文,则针对所述路由请求报文构造路由应答报文,并通知所述报文收发模块通过所述路由请求报文对应的路由信息中记录的下一跳地址所对应的接口发送所述路由应答报文。
通过上述方法可见,本发明通过更改路由规则,在到达该节点的多条路由信息的链路开销值相同时,不用采取覆盖更新的方法,而是兼容存储链路开销值相同的多条路由信息,从而使无线网状网可以支持等价路由。
在建立等价路由后,若任意两个节点之间的链路不通,则需要对已建立的路 由中不可达的路由进行删除。
可选地,本发明实施例的装置中,
当本节点的所述报文收发模块检测到节点的接口发生故障时,通知所述路由信息保存模块查找下一跳地址包含故障接口地址的路由信息;
若路由信息的下一跳地址中还包含除所述故障接口地址外的其他接口地址时,则所述路由信息保存模块将所述故障接口地址从路由信息的下一跳地址中删除;
若路由信息的下一跳地址中仅包含所述故障接口地址,则所述路由信息保存模块删除路由信息,并生成路由错误报文,然后查找与删除的路由信息反向的路由信息,通知报文收发模块通过所述反向的路由信息中记录的下一跳地址所对应的接口发送所述路由错误报文。查找不到反向路由信息时(例如节点为路由的两端节点),丢弃路由错误报文即可。
在此需要说明的是,与删除的路由信息反向的路由信息,指的是与删除的路由信息的源地址和目的地址相反。
并且,在节点的报文收发模块接收到路由错误报文时,通知所述路由信息保存模块查找下一跳地址包含接收所述路由错误报文的接口地址的路由信息;
若路由信息的下一跳地址中还包含除接收所述路由错误报文的接口地址外的其他接口地址时,则所述路由信息保存模块将接收所述路由错误报文的接口地址从路由信息的下一跳地址中删除,丢弃所述路由错误报文;
若路由信息的下一跳地址中仅包含接收所述路由错误报文的接口地址,则所述路由信息保存模块删除路由信息,查找与删除的路由信息反向的路由信息,然后通知报文收发模块通过所述反向的路由信息中记录的下一跳地址所对应的接口转发所述路由错误报文。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在 本发明保护的范围之内。
Claims (10)
1.一种基于混合无线网状网络协议的路由建立的方法,应用于节点中,其特征在于,该方法包括:
接收路由学习报文,根据所述接收的路由学习报文生成路由信息;
若存在与所述生成的路由信息相匹配的已保存的路由信息、且两条路由信息的链路开销值相等,则将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息中;
其中,所述路由学习报文包括路由请求报文和路由应答报文。
2.根据权利要求1所述的方法,其特征在于,将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息之后,该方法还包括:
丢弃接收的所述路由学习报文。
3.根据权利要求1所述的方法,其特征在于,将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息之后,该方法还包括:
若接收的所述路由学习报文为路由请求报文,则针对所述路由请求报文构造路由应答报文,并通过所述路由请求报文对应的路由信息中记录的下一跳地址所对应的接口发送所述路由应答报文。
4.根据权利要求1所述的方法,其特征在于,当检测到自身的接口发生故障时,该方法还包括:
查找下一跳地址包含故障接口地址的路由信息;
若路由信息的下一跳地址中还包含除所述故障接口地址外的其他接口地址时,将所述故障接口地址从路由信息的下一跳地址中删除;
若路由信息的下一跳地址中仅包含所述故障接口地址,则删除路由信息,并生成路由错误报文,查找与删除的路由信息反向的路由信息,通过所述反向的路由信息中记录的下一跳地址所对应的接口发送所述路由错误报文。
5.根据权利要求4所述的方法,其特征在于,该方法还包括:
接收到路由错误报文时,查找下一跳地址包含接收所述路由错误报文的接口地址的路由信息;
若路由信息的下一跳地址中还包含除接收所述路由错误报文的接口地址外的其他接口地址时,将接收所述路由错误报文的接口地址从路由信息的下一跳地址中删除,丢弃所述路由错误报文;
若路由信息的下一跳地址中仅包含接收所述路由错误报文的接口地址,则删除路由信息,查找与删除的路由信息反向的路由信息,通过所述反向的路由信息中记录的下一跳地址所对应的接口转发所述路由错误报文。
6.一种基于混合无线网状网络协议的路由建立的装置,设于节点上,其特征在于,包括:
报文收发模块、接收路由学习报文,并发送至路由信息生成模块;其中,所述路由学习报文包括路由请求报文和路由应答报文;
路由信息生成模块、根据接收的路由学习报文生成路由信息,并将生成的路由信息发送至路由信息保存模块;
路由信息保存模块、将生成的路由信息与已保存的路由信息相比较,若存在与所述生成的路由信息相匹配的已保存的路由信息、且两条路由信息的链路开销值相等,则将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息中。
7.根据权利要求6所述的装置,其特征在于,所述路由信息保存模块将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息之后,
丢弃接收的所述路由学习报文。
8.根据权利要求6所述的装置,其特征在于,所述路由信息保存模块将接收所述路由学习报文的接口地址作为下一跳地址添加到所述已保存的路由信息之后,
若接收的所述路由学习报文为路由请求报文,则针对所述路由请求报文构造路由应答报文,并通知所述报文收发模块通过所述路由请求报文对应的路由信息中记录的下一跳地址所对应的接口发送所述路由应答报文。
9.根据权利要求6所述的装置,其特征在于,
当所述报文收发模块检测到节点的接口发生故障时,通知所述路由信息保存模块查找下一跳地址包含故障接口地址的路由信息;
若路由信息的下一跳地址中还包含除所述故障接口地址外的其他接口地址时,则所述路由信息保存模块将所述故障接口地址从路由信息的下一跳地址中删除;
若路由信息的下一跳地址中仅包含所述故障接口地址,则所述路由信息保存模块删除路由信息,并生成路由错误报文,然后查找与删除的路由信息反向的路由信息,通知所述报文收发模块通过所述反向的路由信息中记录的下一跳地址所对应的接口发送所述路由错误报文。
10.根据权利要求9所述的装置,其特征在于,还包括:
所述报文收发模块接收到路由错误报文时,通知所述路由信息保存模块查找下一跳地址包含接收所述路由错误报文的接口地址的路由信息;
若路由信息的下一跳地址中还包含除接收所述路由错误报文的接口地址外的其他接口地址时,则所述路由信息保存模块将接收所述路由错误报文的接口地址从路由信息的下一跳地址中删除,丢弃所述路由错误报文;
若路由信息的下一跳地址中仅包含接收所述路由错误报文的接口地址,则所述路由信息保存模块删除路由信息,查找与删除的路由信息反向的路由信息,然后通知所述报文收发模块通过所述反向的路由信息中记录的下一跳地址所对应的接口转发所述路由错误报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510259521.3A CN104994556B (zh) | 2015-05-20 | 2015-05-20 | 一种基于混合无线网状网络协议的路由建立的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510259521.3A CN104994556B (zh) | 2015-05-20 | 2015-05-20 | 一种基于混合无线网状网络协议的路由建立的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104994556A true CN104994556A (zh) | 2015-10-21 |
CN104994556B CN104994556B (zh) | 2019-03-08 |
Family
ID=54306287
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510259521.3A Active CN104994556B (zh) | 2015-05-20 | 2015-05-20 | 一种基于混合无线网状网络协议的路由建立的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104994556B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106059932A (zh) * | 2016-08-08 | 2016-10-26 | 杭州华三通信技术有限公司 | 一种路由表项生成方法及装置 |
CN106685836A (zh) * | 2017-03-23 | 2017-05-17 | 江苏中科羿链通信技术有限公司 | Hwmp按需路由广播包抑制方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1527559A (zh) * | 2003-03-04 | 2004-09-08 | 华为技术有限公司 | 一种向位置服务器查询路由的方法 |
CN101110784A (zh) * | 2007-09-05 | 2008-01-23 | 杭州华三通信技术有限公司 | 一种无线网状网中混合路由方法及设备 |
CN101127714A (zh) * | 2007-09-06 | 2008-02-20 | 杭州华三通信技术有限公司 | 一种无线网状网络中路由管理方法及设备 |
CN101192961A (zh) * | 2006-11-28 | 2008-06-04 | 华为技术有限公司 | 路由方法以及路由设备 |
CN101252494A (zh) * | 2008-04-09 | 2008-08-27 | 杭州华三通信技术有限公司 | 业务负载分担的方法和设备 |
CN101499960A (zh) * | 2008-02-03 | 2009-08-05 | 华为技术有限公司 | 一种流量路径切换的方法和装置 |
US20110013509A1 (en) * | 2008-03-21 | 2011-01-20 | Yuan Zhou | Network node and method for establishing network path and sending data |
CN102413062A (zh) * | 2012-01-05 | 2012-04-11 | 杭州华三通信技术有限公司 | 一种路由选择的方法和路由设备 |
CN103458487A (zh) * | 2013-09-25 | 2013-12-18 | 盐城工学院 | 无线传感网中网络编码感知跨层节能路由方法 |
CN104486224A (zh) * | 2014-12-10 | 2015-04-01 | 杭州华三通信技术有限公司 | 路由学习方法和设备 |
-
2015
- 2015-05-20 CN CN201510259521.3A patent/CN104994556B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1527559A (zh) * | 2003-03-04 | 2004-09-08 | 华为技术有限公司 | 一种向位置服务器查询路由的方法 |
CN101192961A (zh) * | 2006-11-28 | 2008-06-04 | 华为技术有限公司 | 路由方法以及路由设备 |
CN101110784A (zh) * | 2007-09-05 | 2008-01-23 | 杭州华三通信技术有限公司 | 一种无线网状网中混合路由方法及设备 |
CN101127714A (zh) * | 2007-09-06 | 2008-02-20 | 杭州华三通信技术有限公司 | 一种无线网状网络中路由管理方法及设备 |
CN101499960A (zh) * | 2008-02-03 | 2009-08-05 | 华为技术有限公司 | 一种流量路径切换的方法和装置 |
US20110013509A1 (en) * | 2008-03-21 | 2011-01-20 | Yuan Zhou | Network node and method for establishing network path and sending data |
CN101252494A (zh) * | 2008-04-09 | 2008-08-27 | 杭州华三通信技术有限公司 | 业务负载分担的方法和设备 |
CN102413062A (zh) * | 2012-01-05 | 2012-04-11 | 杭州华三通信技术有限公司 | 一种路由选择的方法和路由设备 |
CN103458487A (zh) * | 2013-09-25 | 2013-12-18 | 盐城工学院 | 无线传感网中网络编码感知跨层节能路由方法 |
CN104486224A (zh) * | 2014-12-10 | 2015-04-01 | 杭州华三通信技术有限公司 | 路由学习方法和设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106059932A (zh) * | 2016-08-08 | 2016-10-26 | 杭州华三通信技术有限公司 | 一种路由表项生成方法及装置 |
CN106059932B (zh) * | 2016-08-08 | 2020-12-11 | 新华三技术有限公司 | 一种路由表项生成方法及装置 |
CN106685836A (zh) * | 2017-03-23 | 2017-05-17 | 江苏中科羿链通信技术有限公司 | Hwmp按需路由广播包抑制方法 |
CN106685836B (zh) * | 2017-03-23 | 2020-01-14 | 江苏中科羿链通信技术有限公司 | Hwmp按需路由广播包抑制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104994556B (zh) | 2019-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1926835B (zh) | 在无线多跳自组织网络中用于地址解析映射的方法、通信装置和系统 | |
CN101394341B (zh) | 维护路由的方法、系统及装置 | |
US8473633B2 (en) | Method of routing packets in a packet network | |
JP5462360B2 (ja) | モバイルマルチキャストソースからのマルチキャストトラヒックを共同処理するための複数のランデブーポイントにおける方法および装置 | |
CN102907072B (zh) | 利用NAT64启用IPv6移动性 | |
CN101455030B (zh) | 动态共享风险节点组(srng)成员发现 | |
CN101534239B (zh) | 路由安装方法和设备 | |
CN102148756B (zh) | 一种基于6LoWPAN邻居发现的树状路由方法 | |
CN104283789B (zh) | 路由收敛方法和系统 | |
WO2007016417B1 (en) | Mesh network methods and apparatus | |
CN104113459A (zh) | 一种evi网络中虚拟机平滑迁移方法和装置 | |
CN110752997B (zh) | 一种数据包主动寻路的命名数据网络转发方法 | |
CN101312438A (zh) | 路由器及其路由更新方法 | |
EP3200404A1 (en) | Content-centric network on-demand distance vector route method | |
CN102752205A (zh) | 一种路由迭代的方法和装置 | |
CN101174970A (zh) | 任播服务的实现方法、发送任播请求的方法、任播路由器 | |
CN104994556A (zh) | 一种基于混合无线网状网络协议的路由建立的方法和装置 | |
US20140376409A1 (en) | Routing method and apparatus | |
CN104754649A (zh) | 一种数据传输方法与无线Mesh节点 | |
CN104811377A (zh) | 生成媒体接入控制表的方法及网络设备 | |
CN101552714B (zh) | 一种多归属多地址空间网络中实现流量工程的方法和设备 | |
US10333830B2 (en) | Passive routing in mesh network | |
CN101383758B (zh) | 多地址空间移动网络架构、路由器及数据发送方法 | |
CN106658479B (zh) | 一种无线网络融合的实现方法 | |
JP4369882B2 (ja) | ルーティング方法、および、ネットワークシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |