专利名称:一种网状网中环路路径的查找方法及装置的制作方法
技术领域:
本发明涉及网络领域,更具体的涉及一种网状网中环路路径的查找方法及装置。
背景技术:
首先,环路路径是指在Mesh(网状)网G(V,Ε)中的一条连通性路径P = [ν1 V2,……vn,V1] (η彡3),路径中除首尾节点外,其他节点各不相同。此路径又叫做节点Vl 的一条环路路径。传统的环路路径的计算方法,则路径ρ = [V1, Vffl, vn, V1]为节点V1的一条环路路 径。否则传统的环路路径计算方法采取递归遍历的方式,其Mesh网图见图1,计算vl的环 路路径,其流程图如图2所示第一步查找与V1相邻的所有节点Vm,Vffl = {ν e ν (V1, ν) e Ε};第二步记录V1与相邻节点的路径信息;查找所有与Vm相邻的所有节点vn,Vn = {ν e V (vm, ν) e Ε};第三步检查V1是否与Vn相邻,如果是相邻的节点,则找到节点V1的一条环路路 径P = [V1, vm, vn, V1]。否则重复第二步。其中,要查找出节点V1的所有环路径,时间复杂度彡0 (Κη3) (η为Mesh网中的节点 数),当前的传统方法存在查找环路路径的效率较低的问题。
发明内容
本发明所要解决的技术问题是提供一种网状网中环路路径的查找方法及装置,解 决了当前的传统方法存在查找环路路径的效率较低的问题,提高了环路路径查找的效率。为了解决上述问题,本发明提供了一种网状网中环路路径的查找方法,包括网络侧查找所述网状Mesh网中与节点V1相邻的所有节点,在所述Mesh网中将节 点V1和与其直接连接的节点形成的所有边删除;所述网络侧对得到的与节点V1相邻的所有节点通过K优路径算法进行计算,得到 与所述节点V1相邻的所有节点之间的所有路径;所述网络侧遍历得到的所述与节点V1相邻的所有节点之间的所有路径,在每条路 径的起始处和终止处添加节点V1,完成在Mesh网中查找节点V1的所有环路路径。进一步地,上述方法还可包括,所述网络侧计算后得到的与所述节点V1相邻的所 有节点之间的所有路径的起始节点和终止节点不同,且都是所述节点V1的相邻节点。进一步地,上述方法还可包括,所述网络侧查找所述Mesh网中与节点V1相邻的所 有节点后,还包括通过存储装置对得到的与节点V1相邻的所有节点的信息进行存储。进一步地,上述方法还可包括,所述网络侧得到与所述节点V1相邻的所有节点之 间的所有路径后,还包括通过存储装置对得到的与节点V1相邻的所有节点之间的所有路径 的信息进行存储。进一步地,上述方法还可包括,所述网络侧完成在Mesh网中查找节点V1的所有环路路径后,还包括通过存储装置对得到的节点V1的环路路径的信息进行存储。本发明还提供了一种网状网中环路路径的查找装置,包括查找节点模块、计算模 块和环路路径搜寻模块,其中,所述查找节点模块,用于查找所述网状Mesh网中与节点V1相邻的所有节点,在所 述Mesh网中将节点V1和与其直接连接的节点形成的所有边删除,并将得到的与节点V1相 邻的所有节点的信息发送给所述计算模块;所述计算模块,用于对得到的与节点V1相邻的所有节点通过K优路径算法进行 计算,得到与所述节点V1相邻的所有节点之间的所有路径,并发送给所述环路路径搜寻模 块;所述环路路径搜寻模块,用于遍历得到的所述与节点V1相邻的所有节点之间的所 有路径,在每条路径的起始处和终止处添加节点V1,完成在Mesh网中查找节点V1的所有环 路路径。进一步地,上述装置还可包括,所述计算模块计算后得到的与所述节点V1相邻的 所有节点之间的所有路径的起始节点和终止节点不同,且都是所述节点V1的相邻节点。进一步地,上述装置还可包括所述存储模块,用于存储所述查找节点模块得到的 与节点V1相邻的所有节点的信息,存储所述计算模块得到的与节点V1相邻的所有节点之间 的所有路径的信息以及存储所述环路路径搜寻模块得到的节点V1的环路路径的信息。与现有技术相比,应用本发明,借助KSP算法(K优路径算法),将环路路径拆分为 两部分,一部分为相邻节点之间的路径,另一部分为相邻节点到Vl节点的路径部分,本发 明方法的时间复杂度为所选择的KSP算法的时间复杂度,解决了当前的传统方法存在查找 环路路径的效率较低的问题,提高了环路路径查找的效率,降低了系统的负载。
图1是传统方法计算Vl的环路路径时的遍历过程的示意图;图2是传统方法计算Vl的环路路径的流程图;图3是本发明在Mesh网中查找节点vl的环路路径的流程图;图4是本发明的网状网中环路路径的查找装置的结构示意图;图5是环路路径的示意图;图6是本发明实例中的一 Mesh网图,基于该图进行解释说明;图7是本发明实例中计算Vl相邻节点之间路径的说明的示意图;图8是本发明实例中计算Vl的环路路径时的遍历过程的示意图。
具体实施例方式下面结合附图和具体实施方式
对本发明作进一步说明。如图3所示,本发明在Mesh网G(V,E)中查找节点vl的环路路径,包括如下步骤步骤310 网络侧查找所述Mesh网中与节点vl相邻的所有节点Vm,在Mesh网中 将节点vl和与其直接连接的节点形成的所有边删除;其中,Vm={v G V| (ν ,ν) G E}。网络侧查找所述Mesh网中与节点vl相邻的所有节点Vm后,还包括通过存储装置对得到的与节点Vl相邻的所有节点的信息进行存储。步骤320 网络侧对得到的与节点vl相邻的所有节点通过KSP算法进行计算,得 到与所述节点Vl相邻的所有节点Vm之间的所有路径;网络侧得到与所述节点Vl相邻的所有节点Vm之间的所有路径后,还包括通过存 储装置对得到的与节点Vl相邻的所有节点Vm之间的所有路径的信息进行存储。其中,网络侧得到的所述路径的起始节点和终止节点不同,且都是节点Vl的相邻 节点。步骤330 网络侧遍历得到的所述与节点vl相邻的所有节点Vm之间的所有路径, 在每条路径的起始处和终止处添加节点vl,完成在Mesh网中查找节点vl的所有环路路径, 并通过存储装置对得到的节点vl的环路路径进行存储。如图4所示,一种网状网中环路路径的查找装置,包括查找节点模块、计算模块、 环路路径搜寻模块和存储模块,其中,所述查找节点模块,用于查找所述网状Mesh网中与节点vl相邻的所有节点,在所 述Mesh网中将节点vl和与其直接连接的节点形成的所有边删除,并将得到的与节点vl相 邻的所有节点的信息发送给所述计算模块;所述计算模块,用于对得到的与节点Vl相邻的所有节点通过K优路径算法进行 计算,得到与所述节点vl相邻的所有节点之间的所有路径,并发送给所述环路路径搜寻模 块;所述环路路径搜寻模块,用于遍历得到的所述与节点Vl相邻的所有节点之间的 所有路径,在每条路径的起始处和终止处添加节点vl,完成在Mesh网中查找节点vl的所有 环路路径。所述计算模块计算后得到的与所述节点Vl相邻的所有节点之间的所有路径的起 始节点和终止节点不同,且都是所述节点vl的相邻节点。所述存储模块,用于存储所述查找节点模块得到的与节点Vl相邻的所有节点的 信息,存储所述计算模块得到的与节点vl相邻的所有节点之间的所有路径的信息以及存 储所述环路路径搜寻模块得到的节点vl的环路路径的信息。一条环路路径也可以理解为是一条起始、终止节点相同的路径。本方法定义节点 vm的环路路径,即表示在该路径中以vm作为该路径的起始、终止节点,可表示为ρ = [vm, vl, ......vn, vm] (η > 2)。参考图5,vl的一条环路路径为ρ = [V1,V2,V3,V4,V5,V6,V1]。该路径可以理解 为由两部分组成。一部分为vl的相邻节点(v2,v6)之间的路径pa = [ν2, ν3, ν4, ν5, ν6], 另一部分为vl与相邻节点(v2,v6)之间的路径pb = [vl, v2]和pc = [vl, v6]。那么所 求的环路路径就是这两部分路径的相加之和P = [vl,v2, v3, v4, v5, v6, vl] = pb+pa+pc。 可将上述思路推广到一般情况下,即在一个Mesh网G(V,E)中查找某个节点vm的所有环路 路径。下面结合图例说明具体的实施过程。如图6所示,假设要在图6中寻找节点Vl的 所有环路径。首先获得vl的相邻节点v2,v3,v4,接下来分别计算这三个节点两两之间的路径,推荐使用KSP算法(K优路径算法)计算两节点间的所有路径。计算完毕后,可以得到下面的路径(见图7):pl23 = [v2, v5, v6, v7, v3]p223 = [v2, v6, v7, v3]pl24 = [v2, v5, v6, v7, v4]p224 = [v2, v6, v7, v4]pl34 = [v3, v7, v4]又已知vl与相邻节点v2,v3, v4之间的路径为pll2 = [vl, v2]pll3 = [vl, v3]pll4 = [vl, v4]把这两部分相加就得到了 vl的所有环路径(见图8):pll = [vl, v2, v5, v6, v7, v3, vl]p21 = [vl, v2, v6, v7, v3, vl]p31 = [vl, v2, v5, v6, v7, v4, vl]p41 = [vl, v2, v6, v7, v4, vl]p51 = [vl, v3, v7, v4, vl]流程结束。以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖 在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
权利要求
一种网状网中环路路径的查找方法,其特征在于,包括网络侧查找所述网状Mesh网中与节点v1相邻的所有节点,在所述Mesh网中将节点v1和与其直接连接的节点形成的所有边删除;所述网络侧对得到的与节点v1相邻的所有节点通过K优路径算法进行计算,得到与所述节点v1相邻的所有节点之间的所有路径;所述网络侧遍历得到的所述与节点v1相邻的所有节点之间的所有路径,在每条路径的起始处和终止处添加节点v1,完成在Mesh网中查找节点v1的所有环路路径。
2.如权利要求1所述的查找方法,其特征在于,所述网络侧计算后得到的与所述节点V1相邻的所有节点之间的所有路径的起始节点 和终止节点不同,且都是所述节点V1的相邻节点。
3.如权利要求1所述的查找方法,其特征在于,所述网络侧查找所述Mesh网中与节点V1相邻的所有节点后,还包括通过存储装置对 得到的与节点V1相邻的所有节点的信息进行存储。
4.如权利要求1所述的查找方法,其特征在于,所述网络侧得到与所述节点V1相邻的所有节点之间的所有路径后,还包括通过存储装 置对得到的与节点V1相邻的所有节点之间的所有路径的信息进行存储。
5.如权利要求1所述的查找方法,其特征在于,所述网络侧完成在Mesh网中查找节点V1的所有环路路径后,还包括通过存储装置对 得到的节点V1的环路路径的信息进行存储。
6.一种网状网中环路路径的查找装置,其特征在于,包括查找节点模块、计算模块和环路路径搜寻模块,其中,所述查找节点模块,用于查找所述网状Mesh网中与节点V1相邻的所有节点,在所述 Mesh网中将节点V1和与其直接连接的节点形成的所有边删除,并将得到的与节点V1相邻 的所有节点的信息发送给所述计算模块;所述计算模块,用于对得到的与节点V1相邻的所有节点通过K优路径算法进行计算, 得到与所述节点V1相邻的所有节点之间的所有路径,并发送给所述环路路径搜寻模块;所述环路路径搜寻模块,用于遍历得到的所述与节点V1相邻的所有节点之间的所有路 径,在每条路径的起始处和终止处添加节点V1,完成在Mesh网中查找节点V1的所有环路路 径。
7.如权利要求6所述的查找装置,其特征在于,所述计算模块计算后得到的与所述节点V1相邻的所有节点之间的所有路径的起始节 点和终止节点不同,且都是所述节点V1的相邻节点。
8.如权利要求6所述的查找装置,其特征在于,还包括所述存储模块,用于存储所述查找节点模块得到的与节点V1相邻的所有节点的 信息,存储所述计算模块得到的与节点V1相邻的所有节点之间的所有路径的信息以及存储 所述环路路径搜寻模块得到的节点V1的环路路径的信息。
全文摘要
本发明公开了一种网状网中环路路径的查找方法及装置,包括网络侧查找所述网状Mesh网中与节点v1相邻的所有节点,在所述Mesh网中将节点v1和与其直接连接的节点形成的所有边删除;网络侧对得到的与节点v1相邻的所有节点通过K优路径算法进行计算,得到与所述节点v1相邻的所有节点之间的所有路径;网络侧遍历得到的所述与节点v1相邻的所有节点之间的所有路径,在每条路径的起始处和终止处添加节点v1,完成在Mesh网中查找节点v1的所有环路路径。应用本发明,解决了传统方法存在查找环路路径的效率较低的问题,提高了环路路径查找的效率。
文档编号H04W40/02GK101827414SQ20101014069
公开日2010年9月8日 申请日期2010年3月26日 优先权日2010年3月26日
发明者喻磊 申请人:中兴通讯股份有限公司