一种网管系统拓扑搜索的实现方法和装置的制作方法

文档序号:7713978阅读:134来源:国知局
专利名称:一种网管系统拓扑搜索的实现方法和装置的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种网管系统拓朴搜索的实现方法和 装置。
背景技术
随着电信技术的不断发展,许多新业务(如隧道、端到端业务)越来越趋 向于网络中的整体部署。其中,基于路径的业务(以下简称"业务,,)配置,可 能涉及多个设备,甚至于涉及网络中所有设备。 一条业务的配置,本质上是对 网络中多台设备的配置。业务若想配置成功,首先要在网络拓朴中找到要部署 的相关设备及端口,再根据各设备和端口在业务中所处的角色,分别下发不同 的命令,不能有丝毫偏差。在如今的大规模网络中,网络情况复杂、多变,逐 个设备的去查看、记录可用端口,并分配给相应业务,对于作为"人"的用户 来说,操作难度无疑十分巨大。这就需要设备层网管可以提供一种简单、易用
的业务部署功能,供用户使用。关键技术在于如何在复杂多变的网络拓朴环 境下,根据业务的具体需求,找到符合要求的可用拓朴路径,其中,拓朴路径 指此业务经过的所有网元及端口;可用指路径中所有网元支持此业务,路径中 所有网元之间存在连4妻且数据包能流通。
通常网管系统的解决方式为在拓朴中,计算出业务起始、目的节点间的 最短路径,在此基础上对业务进行部署。但现有技术存在以下问题
首先,网管中的最短路径是根据网管中的拓朴计算出来的,可能经过网元 数最少,但由于设备带宽、接口使用率等问题,此路径在实际环境中不一定是 最优的;
其次,如果需要在相同的起始、目的网元上部署多个业务,由于计算出的最短路径是完全一致的,那么所有业务必定部署在同样的网元及网元端口上,
造成一部分设备资源繁忙,而其他资源闲置的情况;
最后,最短路径,不一定就是用户所期望的路径,从而导致用户无法在想要的设备上部署业务。

发明内容
为了解决上述问题,本发明提供一种网管系统拓朴搜索的实现方法和装置。
具体的,本发明一种网管系统拓朴搜索的实现方法,包括
步骤l、基于预设的搜索原则,在根据用户设定的搜索条件而生成的无向图
中,搜索当前待搜索网元未经过的、代价最小的边的对端网元V;
步骤2、当所述网元V符合用户设定的搜索条件时,判断所述网元V是否
为目的网元,若是,执行步骤4,否则,执行步骤3;
步骤3、将本次搜索到的路径的代价R与所述网元V当前存储的路径的代
价R/进行比较,若R小于R',将所述网元V当前存储的路径信息更新为本
次搜索到的路径信息,并以所述网元V为当前待搜索网元继续搜索,返回步骤
1;若R大于等于R',将本次搜索到的路径丟弃,返回步骤l;
步骤4、将本次搜索到的路径存入所述网元V内预设的存储栈内,并以所
述网元V在本次搜索到的路径上的上一个网元为当前待搜索网元继续搜索,返
回步骤1。
其中,所述用户设定的搜索条件包括起始网元和目的网元;所述搜索原则包括釆用深度优先的递归方式、每条路径中已经过的网元
不再次经过以及除用户设定的搜索起始网元外的其他网元在初始化时存储的代
价均为无穷大。
进一步的,所述用户设定的搜索条件还包括下述条件中的一个或多个限定搜索路径的起始端口、限定必经的网元及端口、限定必不经的网元及端口、限定待搜索的路径结果数、限定待搜索的网元、限定链路类型、限定最多经过
6的网元数、限定在指定的VLAN范围内搜索。 进一步的,本发明提供的方法还包括
若所述当前待搜索网元不是用户设定的起始网元,且在所述无向图中未搜 索到所述当前待搜索网元未经过的、代价最小的边的对端网元V时,以所述当 前待搜索网元在本次搜索到的路径上的上一个网元为当前待搜索网元继续搜 索,返回步骤1;
若所述当前待搜索网元为用户设定的起始网元,且在所述无向图中未搜索 到所述当前待搜索网元未经过的、代价最小的边的对端网元V时,全图搜索结 束,通过客户端向用户呈现搜索结果。
进一步的,所述步骤4中将本次搜索到的路径存入所述网元V内预设的存 储栈内具体包括
判断所述存储栈是否已满,若已满,按路径花费代价递减关系对所述存储 栈内的路径的代价进行排序,当所述存储栈栈顶路径的代价大于本次搜索到的 路径的代价时,将本次搜索到的路径存入所述存储栈内;若未满,则直接将本 次搜索到的路径存入所述存储栈内。
其中,当所述存储栈栈顶路径的代价小于本次搜索到的路径的代价时,将 本次搜索到的路径丟弃,返回步骤l。
进一步的,本发明提供的方法还包括当所述网元V不符合用户设定的搜 索条件时,将本次搜索到的路径丟弃,返回步骤l。
本发明还提供一种网管系统拓朴搜索的实现装置,包括
网元搜索单元,用于基于预设的搜索原则,在根据用户设定的搜索条件而 生成的无向图中,搜索当前待搜索网元未经过的、代价最小的边的对端网元V;
目的网元判断单元,用于在所述网元V符合用户设定的搜索条件时,判断 所述网元V是否为目的网元,若是,触发目的网元处理单元,否则,触发中间 网元处理单元;
目的网元处理单元,用于将本次搜索到的路径存入所述网元V内预设的存储栈内,并以所述网元V在本次搜索到的路径上的上一个网元为当前待搜索网元继续搜索,触发所述网元搜索单元。
中间网元处理单元,用于将本次搜索到的路径的代价R与所述网元V当前存储的路径的代价R/进行比较,若R小于R',将所述网元V当前存储的路径信息更新为本次搜索到的路径信息,并以所述网元V为当前待搜索网元继续搜索,触发所述网元搜索单元;若R大于等于R',将本次搜索到的路径丢弃,触发所述网元搜索单元。
其中,所述网元搜索单元,还用于若所述当前待搜索网元不是用户设定的起始网元,且在所述无向图中未搜索到所述当前待搜索网元未经过的、代价最小的边的对端网元V时,以所述当前待搜索网元在本次搜索到的路径上的上一个网元为当前待搜索网元继续搜索,触发所述网元搜索单元;若所述当前待搜索网元为用户设定的起始网元,且在所述无向图中未搜索到所述当前待搜索网元未经过的、代价最小的边的对端网元V时,全图搜索结束,通过客户端向用户呈现搜索结果。
所述目的网元处理单元判断所述存储栈是否已满,若已满,按路径花费代价递减关系对所述存储栈内的路径的代价进行排序,当所述存储栈栈顶路径的代价大于本次搜索到的路径的代价时,将本次搜索到的路径存入所述存储栈内;若未满,则直接将本次搜索到的路径存入所述存储栈内。
基于上述技术特征,所述目的网元处理单元,还用于当所述存储栈栈顶路径的代价小于本次搜索到的路径的代价时,将本次搜索到的路径丟弃,触发所述网元搜索单元。
与现有技术相比,本发明具有以下优点
本发明提供的方法可以搜索出前N个最短路径而不是唯一的最短路径,供用户选择所期望的结果,且根据网管的特性和用户的具体需求,不但提供了多种的搜索限制条件,还可以大大提高搜索效率。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施 例或现有技术描述中所需要使用的附图进行简单地介绍,显而易见地,下面描 述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不 付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种网管系统拓朴搜索的实现方法的流程图; 图2为本发明实施例中网管系统拓朴搜索的实现方法在网管系统中的应用 基本流程图3为本发明实施例中的服务端计算出多条可用的路径的算法流程图; 图4为本发明提供的一种网管系统拓朴搜索的实现装置的结构图。
具体实施例方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是 全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造 性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
基于现有技术中存在的网管中的最短路径是根据网管中的拓朴计算出来 的,可能经过网元数最少,但由于设备带宽、接口使用率等问题,此路径在实 际环境中不一定是最优的等缺陷,本发明提供一种网管系统拓朴搜索的实现方 法和装置。
具体的,本发明提供一种网管系统拓朴搜索的实现方法,如图1所示,包 括以下步骤
步骤SIOI、基于预设的搜索原则,在根据用户设定的搜索条件而生成的无 向图中,搜索当前待搜索网元未经过的、代价最小的边的对端网元V。
其中,用户设定的搜索条件包括起始网元和目的网元,进一步的,还可以 包含下述附加条件中的一个或多个限定搜索路径的起始端口、限定必经的网
9元及端口、限定必不经的网元及端口、限定待搜索的路径结果数、限定待搜索
的网元、限定链路类型、限定最多经过的网元数、限定在指定的VLAN范围内搜索。
搜索原则包括釆用深度优先的递归方式、每条路径中已经过的网元不再次经过以及除用户设定的起始网元外的其他网元在初始化时存储的代价均为无穷大。
值得注意的是,在启动本次拓朴搜索时,该步骤中当前待搜索网元为用户设定的起始网元。
步骤S102、当网元V符合用户设定的搜索条件时,判断网元V是否为目的网元,若是,执行步骤S104,否则,执行步骤S103。
步骤S103、将本次搜索到的路径的代价R与网元V当前存储的路径的代价R'进行比较,若R小于R',将网元V当前存储的路径信息更新为本次搜索到的路径信息,并以网元V为当前待搜索网元继续搜索,返回步骤S101;若R大于等于R',将本次搜索到的路径丢弃,返回步骤S101;
步骤S104、将本次搜索到的路径存入网元V内预设的存储栈内,并以网元V在本次搜索到的路径上的上一个网元为当前待搜索网元继续搜索,返回步骤SlOl。
本发明提供的方法可以搜索出前N个最短路径而不是唯一的最短路径,供用户选择所期望的结果,且根据网管的特性和用户的具体需求,不但提供了多种的搜索限制条件,还可以大大提高搜索效率。
下面通过一较佳实施例来详细阐述本发明提供的网管系统拓朴搜索的实现方法的具体实现过程。
为了清楚的表述本发明,本实施例首先简述一下本发明提供的方法在网管系统中的应用基本流程,如图2所示,具体包括以下步骤
步骤S201、连接系统内所有设备,手动或利用自动发现协议,使网管中的拓朴视图和实际连接保持一致。
步骤S202、通过客户端为用户提供图形界面,由用户选择搜索的起始网元、 目的网元及附加条件。
其中,附加条件包括是否限定路径的起始端口、是否限定必经的网元及 端口、是否限定必不经过的网元及端口、是否限定待搜索的路径结果数、是否 限定待搜索的网元、是否限定链路类型(链路指两个网元之间的连接,可以 是逻辑上的或物理上的,其包含了两端的网元及端口等信息)、是否限定最多经 过的网元数、是否限定在指定的VLAN范围内搜索等。
步骤S203、将用户通过客户端定义的数据发送到服务端,由服务端计算出 多条可用的路径。
步骤S204、将计算出的多条可用路径在客户端拓朴视图上呈现给用户,并 可以让用户在该视图上调整任意 一条搜索的结果路径,以达到期望的效果。
步骤S205、返回结果数据给使用此功能的具体业务^t块,进行该业务的详 细配置。
具体的,上述步骤203中服务端计算出多条可用的路径的算法流程,如图3 所示,包括以下步骤
步骤S300、流程开始。
步骤S301、网管系统服务端收到客户端发来的搜索条件后,先根据该条件 对现有网元和链路进行过滤,只保留符合条件的网元和链路。
其中搜索条件为用户设定的起始网元、目的网元及附加条件。其中,附加 条件为步骤S202中的附加条件中的一个或多个。
步骤S302、将过滤后的网元和链路形成一张无向图,并利用预设的搜索原 则进行路径搜索。
其中,网元为无向图中的顶点,链路为无向图中的边。并在图中的每个顶 点建立一个临时变量A,用来保存经过此网元的路径信息;在目的顶点(即用 户设定的目的网元)建立一个存储栈Z,用来保存最终的路径结果信息。该步骤中,预设的搜索原则包括(1)采用深度优先策略的递归方式;(2)每条路径中已经过的网元不再经过;(3)除起始顶点外的其他每个顶点初始化时顶点的临时变量A中存储的代价都为无穷大,起始顶点临时变量A中存储的代价为零。
步骤S303、从用户设定的起始顶点(即起始网元)开始搜索。
步骤S304、搜索当前待搜索顶点周围未经过的、代价最小的边的对端顶点V。
其中,在启动拓朴搜索时,该步骤中当前待搜索网元为用户设定的起始网元。
该步骤中,代价可以根据链路带宽、链路带宽乘以可用率或其他某种合适规则进行计算。
步骤S305、判断本次搜索到的路径是否符合用户设定的搜索条件,若是,执行步骤S310,否则,执行步骤S306。
步骤S306、此次递归结束,执行步骤S307。
步骤S307、判断当前待搜索顶点是否存在未经过的边,若是,返回步骤S304,否则,执行步骤S308。
步骤S308、判断当前待搜索顶点是否为用户设定的起始顶点,若是,执行步骤S309;否则,退到当前待搜索顶点在本次搜索到的路径上的上一个顶点,并以该顶点为当前待搜索顶点,继续查找,转步骤S307。
步骤S309、全图轮询结束,取出目的顶点存储栈Z中的数据,发送给客户端,并在客户端拓朴图上呈现给用户。
其中,存储栈Z中每个数据即为一条搜索路径结果,栈底的数据为最短路径。
步骤S310、判断搜索到的顶点V是否为目的顶点,若是,执行步骤S311,否则,执行步骤S315。
步骤S311、计算出此时从用户设定的起始顶点到达该搜索到的顶点V的路径的代价R,并将代价R与顶点V当前存储的路径的代价R'进行比较,若R大于R',执行步骤S306;否则,执行步骤S312。
步骤S312、判断目的顶点存储栈Z是否已满,若已满,执行步骤S313,否则,将本次搜索到的路径存入存储栈Z后,执行步骤S314。
步骤S313、按"路径花费代价递减关系"对整个栈进行排序,并将本次搜索到的路径的代价与存储栈Z顶路径的代价进行比较,若本次搜索到的代价小于栈顶路径的代价,则栈顶数据出栈,新数据入栈,否则,执行步骤S306。
步骤S314、中断此次递归,退到目的顶点在本次搜索到的路径上的上一个顶点,并以该顶点为当前待搜索顶点继续查找,转步骤S307。
步骤S315、计算出此时从用户设定的起始顶点到达该搜索到的顶点V的代价R,并将代价R与顶点V当前存储的路径的代价R'进行比较,若R大于R',执行步骤S306;否则,执行步骤S316。
步骤S316、将顶点V当前存储的路径信息更新为本次搜索到的路径信息,再以顶点V为当前待搜索顶点继续查找,返回步骤S304,直到找到目的顶点或是超出了用户的定义条件为止,例如此路径经过的网元数目超过了用户定义的数目。
步骤S317、结束流程。
本发明提供的方法可以搜索出前N个最短路径而不是唯一的最短路径,供用户选择所期望的结果,且根据网管的特性和用户的具体需求,不但提供了多种的搜索限制条件,还可以大大提高搜索效率。
本发明还提供一种网管系统拓朴搜索的实现装置,如图4所示,具体包括网元搜索单元410,用于基于预设的搜索原则,在根据用户设定的搜索条件
而生成的无向图中,搜索当前待搜索网元未经过的、代价最小的边的对端网元V;目的网元判断单元420,用于在网元V符合用户设定的搜索条件时,判断
网元V是否为目的网元,若是,触发目的网元处理单元430,否则,触发中间
13网元处理单元440;
目的网元处理单元430,用于将本次搜索到的路径存入网元V内预设的存储栈内,并以网元V在本次搜索到的路径上的上一个网元为当前待搜索网元继续搜索,触发网元搜索单元410。
中间网元处理单元440,用于将本次搜索到的路径的代价R与所述网元V当前存储的路径的代价R'进行比较,若R小于R',将所述网元V当前存储的路径信息更新为本次搜索到的路径信息,并以所述网元V为当前待搜索网元继续搜索,触发网元搜索单元410;若R大于等于R',将本次搜索到的路径丟弃,触发网元搜索单元410。
其中,网元搜索单元410,还用于若当前待搜索网元不是用户设定的起始网元,且在无向图中未搜索到当前待搜索网元未经过的、代价最小的边的对端网元V时,以当前待搜索网元在本次搜索到的路径上的上一个网元为当前待搜索网元继续搜索,触发网元搜索单元410;若当前待搜索网元为用户设定的起始网元,且在无向图中未搜索到当前待搜索网元未经过的、代价最小的边的对端网元V时,全图搜索结束,通过客户端向用户呈现搜索结果。
进一步的,目的网元处理单元430判断存储栈是否已满,若已满,按路径花费代价递减关系对存储栈内的路径的代价进行排序,当存储栈栈顶路径的代价大于本次搜索到的路径的代价时,将本次搜索到的路径存入存储栈内;若未满,则直接将本次搜索到的路径存入存储栈内。
基于上述技术特征,目的网元处理单元430,还用于当存储栈栈顶路径的代价小于本次搜索到的路径的代价时,将本次搜索到的路径丟弃,触发网元搜索单元410。
明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1、一种网管系统拓扑搜索的实现方法,其特征在于,包括步骤1、基于预设的搜索原则,在根据用户设定的搜索条件而生成的无向图中,搜索当前待搜索网元未经过的、代价最小的边的对端网元V;步骤2、当所述网元V符合用户设定的搜索条件时,判断所述网元V是否为目的网元,若是,执行步骤4,否则,执行步骤3;步骤3、将本次搜索到的路径的代价R与所述网元V当前存储的路径的代价R′进行比较,若R小于R′,将所述网元V当前存储的路径信息更新为本次搜索到的路径信息,并以所述网元V为当前待搜索网元继续搜索,返回步骤1;若R大于等于R′,将本次搜索到的路径丢弃,返回步骤1;步骤4、将本次搜索到的路径存入所述网元V内预设的存储栈内,并以所述网元V在本次搜索到的路径上的上一个网元为当前待搜索网元继续搜索,返回步骤1。
2、 如权利要求l所述的方法,其特征在于,所述用户设定的搜索条件包括 起始网元和目的网元;所述搜索原则包括采用深度优先的递归方式、每条路径中已经过的网元 不再次经过以及除用户设定的起始网元外的其他网元在初始化时存储的代价均 为无穷大。
3、 如权利要求2所述的方法,其特征在于,所述用户设定的搜索条件还包 括下述条件中的一个或多个限定搜索路径的起始端口、限定必经的网元及端 口、限定必不经的网元及端口、限定待搜索的路径结果数、限定待搜索的网元、 限定链路类型、限定最多经过的网元数、限定在指定的VLAN范围内搜索。
4、 如权利要求2所述的方法,其特征在于,还包括若所述当前待搜索网元不是用户设定的起始网元,且在所述无向图中未搜 索到所述当前待搜索网元未经过的、代价最小的边的对端网元V时,以所述当 前待搜索网元在本次搜索到的路径上的上一个网元为当前待搜索网元继续搜索,返回步骤1;若所述当前待搜索网元为用户设定的起始网元,且在所述无向图中未搜索 到所述当前待搜索网元未经过的、代价最小的边的对端网元V时,全图搜索结 束,通过客户端向用户呈现搜索结果。
5、 如权利要求1或2所述的方法,其特征在于,所述步骤4中将本次搜索 到的路径存入所述网元V内预设的存储栈内具体包括判断所述存储栈是否已满,若已满,按路径花费代价递减关系对所述存储 栈内的路径的代价进行排序,当所述存储栈栈顶路径的代价大于本次搜索到的 路径的代价时,将本次搜索到的路径存入所述存储栈内;若未满,则直接将本 次搜索到的路径存入所述存储栈内。
6、 如权利要5所述的方法,其特征在于,当所述存储栈栈顶路径的代价小 于本次搜索到的路径的代价时,将本次搜索到的路径丟弃,返回步骤l。
7、 如权利要求1或2所述的方法,其特征在于,还包括 当所述网元V不符合用户设定的搜索条件时,将本次搜索到的路径丢弃,返回步骤1。
8、 一种网管系统拓朴搜索的实现装置,其特征在于,包括 网元搜索单元,用于基于预设的搜索原则,在根据用户设定的搜索条件而生成的无向图中,搜索当前待搜索网元未经过的、代价最小的边的对端网元V;目的网元判断单元,用于在所述网元V符合用户设定的搜索条件时,判断 所述网元V是否为目的网元,若是,触发目的网元处理单元,否则,触发中间 网元处理单元;目的网元处理单元,用于将本次搜索到的路径存入所述网元V内预设的存 储栈内,并以所述网元V在本次搜索到的路径上的上一个网元为当前待搜索网 元继续搜索,触发所述网元搜索单元。中间网元处理单元,用于将本次搜索到的路径的代价R与所述网元V当前 存储的路径的代价R/进行比较,若R小于R',将所述网元V当前存储的路径信息更新为本次搜索到的路径信息,并以所述网元V为当前待搜索网元继续搜索,触发所述网元搜索单元;若R大于等于R/ ,将本次搜索到的路径丢弃, 触发所述网元搜索单元。
9、 如权利要求8所述的装置,其特征在于,所述网元搜索单元,还用于若 所述当前待搜索网元不是用户设定的起始网元,且在所述无向图中未搜索到所 述当前待搜索网元未经过的、代价最小的边的对端网元V时,以所述当前待搜 索网元在本次搜索到的路径上的上一个网元为当前待搜索网元继续搜索,触发 所述网元搜索单元;若所述当前待搜索网元为用户设定的起始网元,且在所述 无向图中未搜索到所述当前待搜索网元未经过的、代价最小的边的对端网元V 时,全图搜索结束,通过客户端向用户呈现搜索结果。
10、 如权利要求8或9所述的装置,其特征在于,所述目的网元处理单元判断所述存储栈是否已满,若已满,按路径花费代 价递减关系对所述存储栈内的路径的代价进行排序,当所述存储栈栈顶路径的 代价大于本次搜索到的路径的代价时,将本次搜索到的路径存入所述存储栈内; 若未满,则直接将本次搜索到的路径存入所述存储栈内。
11、 如权利要求IO所述的装置,其特征在于,所述目的网元处理单元,还 用于当所述存储栈栈顶路径的代价小于本次搜索到的路径的代价时,将本次搜 索到的路径丟弃,触发所述网元搜索单元。
全文摘要
本发明公开了一种网管系统拓扑搜索的实现方法和装置,该方法包括基于预设搜索原则,在根据用户设定的搜索条件生成的无向图中,搜索当前待搜索网元未经过的、代价最小的边的对端网元V;若网元V符合用户设定的搜索条件且非目的网元,将本次搜索到的路径代价R与网元V当前存储的路径代价R′进行比较,若R小于R′,将本次搜索到的路径保存到网元V内,并以网元V为当前待搜索网元继续搜索;若R大于R′,将本次搜索到的路径丢弃;若网元V符合用户设定的搜索条件且为目的网元,将本次搜索到的路径存入网元V内预设的存储栈内,并以网元V的上一个网元为当前待搜索网元继续搜索。本发明提供的方法,实现了网管系统拓扑的高速、高效搜索。
文档编号H04L12/24GK101651572SQ20091017753
公开日2010年2月17日 申请日期2009年9月15日 优先权日2009年9月15日
发明者欢 鲁 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1