一种基于Tarjan算法的以太网交换机拓扑生成及绘制方法与流程

文档序号:26402168发布日期:2021-08-24 16:14阅读:251来源:国知局
一种基于Tarjan算法的以太网交换机拓扑生成及绘制方法与流程

本发明属于网络技术领域,具体涉及交换机管理系统的拓扑生成及绘制方法。



背景技术:

交换机监控网络拓扑图是交换机网络监控和管理中的重要途经。其可以直观的反映出网络中的所有以太网交换机设备以及交换机设备之间的连接关系,因此网络拓扑发现以及生成具有重要的意义。

但是由于近年来网络技术的飞速发展,使得网络拓扑的规模变得更加巨大复杂;另外,整个监控网络拓扑都可能因为某台接入网络中的设备的状态变化而发生改变。因此,如何快速、完整、准确、高效的得到交换机网络拓扑,成为了刻不容缓需要解决的问题。

为了解决这一问题,已有专利提出了一种基于交换机连接关系的表达式。但此种方式只适合于在固定数量以及固定拓扑下生成交换机拓扑。而对于数量可变以及拓扑可能发生变化的情况,并没有全方位的进行考虑。



技术实现要素:

本发明的目的是快速、准确的生成以太网交换机拓扑图。为了达成上述目的,本发明提供一种基于tarjan算法的以太网交换机拓扑生成及绘制方法,方案如下:

a)基于icmp网络控制报文协议,依次测试网段中所有ip地址是否可用,如果当前ip地址不可用,则测试下一个ip地址;

b)确定可用ip地址后,基于snmp交换机简单网络管理协议与lldpmib,获取此ip地址下的交换机装置名称、mac地址、邻居信息、端口数、端口转发状态、装置告警状态以及所有链路信息;

c)根据所有可发现交换机mac地址以及链路信息,生成存储交换机连接信息的邻接矩阵;

d)利用tarjan算法对邻接矩阵进行深度优先搜索,得到整个交换机的网络拓扑图;

e)根据拓扑图网络结构,分层次绘制拓扑图。

进一步,a)中根据输入的起始ip地址和终止ip地址区间,按ip地址从小到大顺序依次进行icmp探测。

进一步,将ip地址转移为十进制数,依次增加进行ip地址的递增,从而减少icmp探测时间。

进一步,b)中使用snmp进行交换机信息问询的过程中,支持snmpv1,snmpv2c和snmpv3三种不同的snmp版本。

进一步,b)中对lldpmib访问得到每一个交换机自身的mac地址、端口数量、端口号以及每个端口号所对应的对侧交换机的mac地址。

进一步,c)中存储交换机连接信息的邻接矩阵是对称矩阵。

进一步,d)中利用tarjan算法对邻接矩阵进行深度优先搜索,判断所有可发现交换机形成的拓扑是否存在环,若不存在环,则通过计算每个邻接矩阵顶点到达其他所有顶点的最短路径,找到根节点,与根节点相连的顶点为一级节点,与一级节点连接的顶点为二级节点,以此类推;若存在环,则环上的所有顶点均为一级节点,与一级节点连接的节点为二级节点,以此类推。

进一步,e)中绘制拓扑图顺序为:先根据根节点取得所有一级节点进行绘制,再根据一级节点取得所有二级节点进行绘制,以此类推,直到所有节点绘制完成后,根据邻接矩阵中的连接关系绘制连接线,最终完成拓扑图的绘制。

采用上述方案后,本发明具有如下有益效果:指定搜索网络地址范围可以减少软件搜索时间、减少网络中的报文数量,对网络本身的稳定性影响可以降低到最小;另外,通过snmp协议得到交换机的连接信息后,形成邻接矩阵,通过tarjan算法,可以快速得到网络拓扑,减小了计算的工作量,也提高了网络拓扑计算的准确性。

附图说明

图1是本发明中以太网交换机拓扑生成及绘制的流程图;

图2是不包含环结构的交换机拓扑图;

图3是包含环结构的交换机拓扑图。

具体实施方式

以下将结合附图,对本发明的技术方案进行详细说明。以图1为例,一种基于tarjan算法的以太网交换机拓扑生成及绘制方法实现如下:

1)根据输入的起始地址和终止地址区间,按地址从小到大顺序依次进行icmp探测,若此地址不可用,则循环探测下一个地址。若地址可用,进入步骤2;所述icmp协议(以太网控制报文协议)是一种面向无连接的网络层协议,可用检测网路的连线状况,也可以确保连线的准确性。

2)利用snmp协议中的设备发现功能得到设备的ip地址以及端口号;所述snmp协议(简单网络管理协议)是一种专门设计用于在ip网络管理网络节点的一种应用层的标准协议,可以用于管理网络效能,发现并解决网络问题以及规划网络增长。所述snmp协议具有自动化网络管理、对不同厂商适应度高、请求及应答方式简单、具备超时和重传机制、报文格式简单、具备认证和加密安全机制等优点。

3)利用snmp协议对lldpmib进行访问,得到每一个发现交换机设备的设备名称、描述、mac地址、端口数量、端口id;所述lldp是一种数据链路层协议,网络设备可以通过在本地发送lldppdu来通告其他设备自身的状态,是一种能够使网络中的设备互相发现并通告状态、交互信息的协议。mib(管理信息库)定义了可访问的网络设备及其属性,其中包含信息的组织形式、通用结构和可能包含的分为若干组的太亮对象。

4)利用snmp协议对lldpmib进行访问,得到每一个已发现交换机设备的每一个端口连接的对侧设备的mac地址以及端口号;

5)根据已发现交换机mac地址集合以及所有交换机之间的连接信息,形成一个行和列相同的邻接矩阵二维数组arc[max][max],max为mac地址集合的长度,如果处于第n行和第m列的两个交换机有连接,那么则给arc[n-1][m-1]赋值为1,其他没有连接的位置赋值为0;

6)采用tarjan算法对邻接矩阵发起深度优先搜索,得到拓扑图中是否存在环。如果不存在环,则进入步骤7,如果存在环,则进入步骤8;所述tarjan算法是一种基于深度优先搜索的求解有向图强连通分量的线性时间的算法。tarjan算法可以在线性时间内求出无向图的割点与桥,进一步地可以求解无向图的双连通分量,从而得到拓扑图中是否存在环形结构。

7)不存在环时,遍历邻接矩阵,计算最短路径,路径最短的起始点则可认为是拓扑图根节点;在矩阵中与此根节点交换机连接的可认为是一级节点交换机,以此类推,直到所有交换机全部分配完节点等级;

8)存在环时,采用tarjan算法获得环上所有节点,这些节点全部认为是一级节点,与一级节点相连的设置为二级节点,以此类推,直到所有交换机全部分配完节点等级;

9)取得所有节点等级为一级的交换机进行绘制,再根据一级节点取得所有二级节点交换机集合进行绘制,以此类推直到所有交换机绘制完成后,根据邻接矩阵中的交换机的连接关系,从图中查找对应交换机并绘制连接线,最终完成拓扑图的绘制。图2和图3分别为已完成的不包含环结构与包含环结构的交换机拓扑图。

以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。



技术特征:

1.一种基于tarjan算法的以太网交换机拓扑生成及绘制方法,其特征在于包括如下步骤:

a)基于icmp网络控制报文协议,依次测试网段中所有ip地址是否可用,如果当前ip地址不可用,则测试下一个ip地址;

b)确定可用ip地址后,基于snmp交换机简单网络管理协议与lldpmib,获取此ip地址下的交换机装置名称、mac地址、邻居信息、端口数、端口转发状态、装置告警状态以及所有链路信息;

c)根据所有可发现交换机mac地址以及链路信息,生成存储交换机连接信息的邻接矩阵;

d)利用tarjan算法对邻接矩阵进行深度优先搜索,得到整个交换机的网络拓扑图;

e)根据拓扑图网络结构,分层次绘制拓扑图。

2.如权利要求1所述的一种基于tarjan算法的以太网交换机拓扑生成及绘制方法,其特征在于,a)中根据输入的起始ip地址和终止ip地址区间,按ip地址从小到大顺序依次进行icmp探测。

3.如权利要求2所述的一种基于tarjan算法的以太网交换机拓扑生成及绘制方法,其特征在于,将ip地址转移为十进制数,依次增加进行ip地址的递增,从而减少icmp探测时间。

4.如权利要求1所述的一种基于tarjan算法的以太网交换机拓扑生成及绘制方法,其特征在于,b)中使用snmp进行交换机信息问询的过程中,支持snmpv1,snmpv2c和snmpv3三种不同的snmp版本。

5.如权利要求1所述的一种基于tarjan算法的以太网交换机拓扑生成及绘制方法,其特征在于,b)中对lldpmib访问得到每一个交换机自身的mac地址、端口数量、端口号以及每个端口号所对应的对侧交换机的mac地址。

6.如权利要求1所述的一种基于tarjan算法的以太网交换机拓扑生成及绘制方法,其特征在于,c)中存储交换机连接信息的邻接矩阵是对称矩阵。

7.如权利要求1所述的一种基于tarjan算法的以太网交换机拓扑生成及绘制方法,其特征在于,d)中利用tarjan算法对邻接矩阵进行深度优先搜索,判断所有可发现交换机形成的拓扑是否存在环,若不存在环,则通过计算每个邻接矩阵顶点到达其他所有顶点的最短路径,找到根节点,与根节点相连的顶点为一级节点,与一级节点连接的顶点为二级节点,以此类推;若存在环,则环上的所有顶点均为一级节点,与一级节点连接的节点为二级节点,以此类推。

8.如权利要求7所述的一种基于tarjan算法的以太网交换机拓扑生成及绘制方法,其特征在于,e)中绘制拓扑图顺序为:先取得所有一级节点进行绘制,再根据一级节点取得所有二级节点进行绘制,以此类推,直到所有节点绘制完成后,根据邻接矩阵中的连接关系绘制连接线,最终完成拓扑图的绘制。


技术总结
本发明公开一种基于Tarjan算法的以太网交换机拓扑生成及绘制方法,所述方法包括:使用IMCP网络报文控制协议以及SNMP交换机简单网络管理协议获得指定网段中存在的交换机数量以及IP地址集合,利用SNMP对LLDP MIB节点进行访问获得已存在交换机对应的所有连接数据信息;对所采集的数据信息进行分析,基于MAC地址构建一个交换机之间连接关系的邻接矩阵;使用Tarjan对所建立的邻接矩阵进行整理分析,得到相应的交换机拓扑结构;并根据层次结构进行拓扑图的绘制。此方法,提高了拓扑生成及绘制的速度以及准确性。

技术研发人员:洪礼鑫;贾建梅;陈宏君;周磊;潘磊;叶立文;刘宁;张纲;韩科文
受保护的技术使用者:南京南瑞继保电气有限公司;南京南瑞继保工程技术有限公司
技术研发日:2021.04.15
技术公布日:2021.08.24
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1