CN108206792B - 交换机的拓扑结构发现方法及装置 - Google Patents
交换机的拓扑结构发现方法及装置 Download PDFInfo
- Publication number
- CN108206792B CN108206792B CN201611173831.4A CN201611173831A CN108206792B CN 108206792 B CN108206792 B CN 108206792B CN 201611173831 A CN201611173831 A CN 201611173831A CN 108206792 B CN108206792 B CN 108206792B
- Authority
- CN
- China
- Prior art keywords
- switch
- physical address
- interface
- forwarding table
- data
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0213—Standardised network management protocols, e.g. simple network management protocol [SNMP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明是关于一种交换机拓扑结构发现方法及装置,首先,通过采集目标网路中各个交换机的物理地址转发表、端口索引映射关系表以及接口配置信息表,然后,根据采集到的物理地址转发表、端口索引映射关系表以及接口配置信息表,获取所述目标网路中各个交换机的各个接口转发的物理地址以及各个所述接口的物理地址;最后,根据获取到的交换机接口所转发的物理地址与另一个对端交换机接口所转发的物理地址是否存在交集的方法,来确定两个交换机之间的连接关系,为网络管理员快速直观的掌握当前网络的交换机连接关系拓扑信息提供了可视化查看的手段,具有适用范围广泛的优势。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种交换机的拓扑结构发现方法及装置。
背景技术
随着因特网的大规模发展,作为计算机网络关键设备之一的交换机的管理和优化也越来越得到足够的重视。交换机的网络拓扑信息不仅包括网络中的交换机实体,而且包括交换机间互相连接的方式,这使得网络管理员对当前的网络状况有一个清晰、直观的了解,对定位网络故障、进行错误相关性分析等具有重要的辅助参考作用。
目前交换机的拓扑发现方法主要有基于二层协议的拓扑发现和基于三层协议的拓扑发现。传统的基于三层协议的拓扑发现主要是针对IP(Internet Protocol,互联网协议),基于路由协议的拓扑发现,发现路由器和子网的连接,这种技术显然不适合一些不具备路由功能的交换机的拓扑发现。基于二层协议的拓扑发现是指实现拓扑发现的报文承载于二层协议之上,根据一定拓扑发现算法,完成网络设备的拓扑发现,由于不同的VLAN隔离了不同的广播域,具有不同的数据通道,更加上交换机MSTP(Multi-Service TransferPlatform,多生成树协议)的应用,使得交换机在不同VLAN(Virtual Local Area Network,虚拟局域网)内拓扑结构具有一定的多样性,因此该方法的拓扑发现只能局限在不打VLAN标记的缺省VLAN中,不能发现任意指定VLAN内的设备,这给实际组网应用带来了很大局限性。
因此,能够提供一种适用范围广泛的发现交换机与交换机之间连接关系的方法,来提供可视化的交换机之间的连接信息,成为本领域技术人员研究的重点内容。
发明内容
为克服相关技术中存在的问题,本发明提供一种交换机的拓扑结构发现方法及装置。
根据本发明实施例的第一方面,提供一种交换机的拓扑结构发现方法,该方法包括:
采集目标网路中各个交换机的物理地址转发表、端口索引映射关系表以及接口配置信息表;
根据所述物理地址转发表、端口索引映射关系表以及接口配置信息表,获取所述目标网路中各个交换机的各个接口转发的物理地址以及各个所述接口的物理地址;
判断所述各个交换机中的第一交换机的第一接口转发的物理地址中与第二交换机的第二接口转发的物理地址中是否存在相同的物理地址,其中,所述第一交换机的第一接口的物理地址为所述第二交换机的第二接口转发的物理地址中的一个地址;
如果不存在,则建立所述第一交换机与所述第二交换机直接连接的拓扑结构。
可选地,判断所述各个交换机中的第一交换机的第一接口转发的物理地址中与第二交换机的第二接口转发的物理地址中是否存在相同的物理地址,包括:
判断所述各个交换机中的第一交换机的第一接口转发的物理地址中是否包含第二交换机的第二接口的物理地址;
如果包含,则判断所述第一交换机的第一接口转发的物理地址中与所述第二交换机的第二接口转发的物理地址中是否存在相同的物理地址。
可选地,采集目标网路中各个交换机的物理地址转发表、端口索引映射关系表以及接口配置信息表,包括:
从目标网络中各个交换机的简单网络管理协议SNMP管理信息库中,采集各个所述交换机的物理地址转发表;
判断所述物理地址转发表中是否包含物理地址数据;
如果包含,则从所述物理地址转发表对应交换机的SNMP管理信息库中,分采集所述物理地址转发表对应交换机的端口索引映射关系表和接口配置信息表。
可选地,从所述物理地址转发表对应交换机的SNMP管理信息库中,采集所述物理地址转发表对应交换机的端口索引映射关系表和接口配置信息表之前,所述方法还包括
判断所述物理地址转发表中各个物理地址数据对应的端口状态数据是否为预设状态数据;
如果不是,则将所述端口状态数据不是预设状态数据对应的物理地址数据从所述物理地址转发表中删除,得到更新后的物理地址转发表;
判断所述更新后的物理地址转发表中是否包含物理地址数据;
如果包含,则从所述物理地址转发表对应交换机的SNMP管理信息库中,采集所述物理地址转发表对应交换机的端口索引映射关系表和接口配置信息表。
可选地,根据所述物理地址转发表、端口索引映射关系表以及接口配置信息表,获取所述目标网路中各个交换机的各个接口转发的物理地址以及各个所述接口的物理地址,包括:
利用所述目标网路中各个交换机的物理地址转发表,得到各个物理地址数据对应的端口号以及各个所述端口号对应的物理地址,其中,所述物理地址数据为所述目标网路中的交换机接口的地址数据;
利用所述交换机的端口索引映射关系表,得到各个所述端口号对应端口索引号;
利用所述交换机的接口配置信息表,得到各个所述接口索引号对应的物理地址。
可选地,建立所述第一交换机与所述第二交换机直接连接的拓扑结构,包括:
分别从所述第一交换机和所述第二交换机的SNMP管理信息库中,采集所述第一交换机和所述第二交换机的互联网协议IP地址;
分别将所述第一交换机和所述第二交换机的互联网协议IP地址作为所述第一交换机和所述第二交换机的标签,建立所述第一交换机的第一接口与所述第二交换机的第二接口直接连接的拓扑结构。
可选地,所述方法还包括:
遍历所述目标网络,得到所述目标网络中各交换机之间所有的直接连接的拓扑结构,根据各交换机之间所有的直接连接的拓扑结构,构建所述目标网络的交换机连接关系拓扑图;
在所述交换机连接关系拓扑图中,添加用于连接两个交换机连线的属性信息,其中,所述属性信息包括所述连线所连接的两个交换机接口的接口配置信息。
根据本发明实施例的第二方面,提供一种交换机的拓扑结构发现装置,该装置包括:
接口信息采集模块:用于采集目标网路中各个交换机的物理地址转发表、端口索引映射关系表以及接口配置信息表;
接口信息提取模块:用于根据所述物理地址转发表、端口索引映射关系表以及接口配置信息表,获取所述目标网路中各个交换机的各个接口转发的物理地址以及各个所述接口的物理地址;
接口关联判断模块:用于判断所述各个交换机中的第一交换机的第一接口转发的物理地址中与第二交换机的第二接口转发的物理地址中是否存在相同的物理地址,其中,所述第一交换机的第一接口的物理地址为所述第二交换机的第二接口转发的物理地址中的一个地址;
拓扑结构建立模块:用于如果所述各个交换机中的第一交换机的第一接口转发的物理地址中与第二交换机的第二接口转发的物理地址中不存在相同的物理地址,则建立所述第一交换机与所述第二交换机直接连接的拓扑结构。
可选地,所述接口关联判断模块包括:
第一接口关联判断子模块:用于判断所述各个交换机中的第一交换机的第一接口转发的物理地址中是否包含第二交换机的第二接口的物理地址;
第二接口关联判断子模块:用于如果所述各个交换机中的第一交换机的第一接口转发的物理地址中包含第二交换机的第二接口的物理地址,则判断所述第一交换机的第一接口转发的物理地址中与所述第二交换机的第二接口转发的物理地址中是否存在相同的物理地址。
可选地,所述接口信息采集模块包括:
地址信息采集子模块:用于从目标网络中各个交换机的简单网络管理协议SNMP管理信息库中,采集各个所述交换机的物理地址转发表;
地址数据判断子模块:用于判断所述物理地址转发表中是否包含物理地址数据;
接口信息采集子模块:用于如果所述物理地址转发表中包含物理地址数据,则从所述物理地址转发表对应交换机的SNMP管理信息库中,分别采集所述物理地址转发表对应交换机的端口索引映射关系表和接口配置信息表。
本发明实施例提供的交换机拓扑结构发现方法,首先,通过采集目标网路中各个交换机的物理地址转发表、端口索引映射关系表以及接口配置信息表,然后,根据采集到的物理地址转发表、端口索引映射关系表以及接口配置信息表,获取所述目标网路中各个交换机的各个接口转发的物理地址以及各个所述接口的物理地址;最后,根据一个交换机接口转发的物理地址与另一个对端交换机接口转发的物理地址是否存在交集的方法,来确定两个交换机之间的连接关系,为网络管理员快速直观的掌握当前网络的交换机连接关系拓扑信息提供了可视化查看的手段;并且本发明实施例是基于管理数据库中MAC地址转发表,该管理数据库在每一个网络节点中均存在,因此本发明实施例提供的方法还具有适用范围广泛的优势。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为交换机的MAC地址学习过程示意图;
图2为本发明实施例提供的一种交换机的拓扑结构发现方法的流程示意图;
图3为本发明实施例提供的对交换机的管理信息库进行数据采集的方法流程示意图;
图4为本发明实施例提供的目标网络中交换机的拓扑结构示意图;
图5为本发明实施例提供的一种交换机的拓扑结构发现装置的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
现有的网路监控和管理的协议主要为简单网络管理协议(Simple NetworkManagement Protocol,SNMP)。SNMP是一种基于TCP/IP协议的互联网管理协议,其由一组网络管理的标准组成,该协议能够支持网络管理系统对连接到网络上的设备发生的任何引起管理上关注的情形进行监控。其中,SNMP的管理由三部分组成:管理信息库(ManageInformation Base,MIB)、管理信息结构和SNMP本身。
具体的,网络管理系统中的每个节点都包括一个管理信息库,它反映了该节点中被管资源的状态,利用SNMP协议访问网络设备的管理信息库,就可以得到网络设备的统计内容,例如,通过应用层协议对管理信息库进行访问,便可采集到各节点的MAC物理地址转换表(即BRIDGE-MIB中的dot1dTpFdbTable)。
其中,网络管理系统中交换机的交换技术主要就是基于MAC地址转换表,MAC地址转换表显示了用户(包括终端、交换机)的MAC地址与交换机端口映射关系,指出数据帧去往目的主机的方向。如图1所示,为交换机的MAC地址学习过程示意图,当用户A需要同处在局域网中的用户B通信时,需要将报文发送至交换机10的Ethernet1/0/1端口,此时,交换机10将该报文的源MAC地址,即“MAC-A”记录到自身的MAC地址转发表中,学习过程完成后,交换机10对该报文进行转发,将收到报文的目的MAC地址(即“MAC-B”)与MAC地址表进行查找匹配,如果没有查找到,交换机20则会将该报文数据向除Ethernet1/0/1端口之外的所有端口进行转发,用户B会收到该报文会向用户A发送报文进行响应,当该响应报文发送至Ethernet1/0/3端口,交换机10会采取同样的MAC地址学习方式,将用户B的MAC地址和端口对应关系保存到MAC地址转发表中。
由于MAC地址转发表内存储有交换机端口与其用户MAC地址间的映射关系,本发明实施例便是基于管理信息库中的MAC地址转发表中的信息判断交换机之间连接关系,该方法的基本原理为:首先对各交换机的管理信息库中的数据信息进行采集,并将采集结果传入拓扑图处理模块,然后,利用拓扑图处理模块对采集结果进行处理,通过两个交换机的端口所转发的MAC地址是否存在交集的判断,确定交互机之间是否直连,是否存在中间设备,从而完成交换机连接关系拓扑图的绘制。
图2为本发明实施例提供的一种交换机的拓扑结构发现方法的流程示意图。如图2所示,该方法主要包括如下步骤:
S110:采集目标网路中各个交换机的物理地址转发表、端口索引映射关系表以及接口配置信息表。
具体的,由于目标网络的每个网络节点上配置一个管理信息库,本发明实施例,通过应用层协议对管理信息库进行访问,采集目标网络中各交换机的物理地址转发表dot1dTpFdbTable、端口索引映射关系表dot1dBasePortTable以及接口配置信息表ifTable。
图3为本发明实施例提供的对交换机的管理信息库进行数据采集的方法流程示意图。如图3所示,该方法包括:
S111:从目标网络中各个交换机的简单网络管理协议SNMP管理信息库中,采集各个所述交换机的物理地址转发表。
如表一所示,为本发明实施例提供的采集到的物理地址转发表dot1dTpFdbTable的示意图,该表包括三列数据,其中第一列dot1dTpFdbAddress数据为端口MAC地址数据,即从端口学习到的MAC地址,第二列dot1dTpFdbPort数据表示该行的MAC地址数据是从哪个端口学习到的,第三列dot1dTpFdbStatus数据表示该行数据的端口状态,其中,1标识其它类型,2表示非法的数据(例如超时),3表示学习到的数据,4表示设备自身的MAC地址,5表示静态的地址(例如端口绑定的MAC地址)。
表一:
dot1dTpFdbAddress | dot1dTpFdbPort | dot1dTpFdbStatus |
00 10 b5 07 07 13 | 28 | leaned(3) |
00 0a eb 9a ec 76 | 28 | leaned(3) |
00 e0 4c 77 68 82 | 29 | leaned(3) |
00 04 dd f2 f4 d0 | 31 | self(3) |
00 04 dd f2 f4 d2 | 32 | self(3) |
S112:判断所述物理地址转发表中是否包含物理地址数据。
例如,判断表一中的第一列是否包含物理地址数据,如果没有数据,则说明该交换机没有正常网络访问,则结束对该交换机的数据采集;如果包含数据则继续执行步骤S113。
S113:判断所述物理地址转发表中各个物理地址数据对应的端口状态数据是否为预设状态数据。
由于在物理地址转发表中,当dot1dTpFdbStatus中的数据为leaned(3),则表示这个该行的MAC地址是学习到的端口转发的有效数据,并本发明是基于各交换机有正常网络访问的情况下获知其端口数据,因此,本发明实施例对物理地址转发表中数据进行筛选,以减少后续的数据分析处理量。
具体的,判断第一列dot1dTpFdbAddress中各行物理地址数据行对应行的dot1dTpFdbStatus数据是否为预设的设状态数据leaned(3),如果不是则执行步骤S114,如果是,则继续对该物理地址转发表中的下一行数据进行判断。
S114:如果不是,则将所述端口状态数据不是预设状态数据对应的物理地址数据从所述物理地址转发表中删除,得到更新后的物理地址转发表。
通过上述处理,便可以过滤掉表物理地址转发表中中物理地址数据对应的dot1dTpFdbStatus字段值不是leaned(3)的数据,得到更新后的物理地址转发表,后续的数据处理便可以该表为基础。
S115:判断所述更新后的物理地址转发表中是否包含物理地址数据。
如果不包含,则不再进行后续的端口索引映射关系表和接口配置信息表的采集;如果包含,则执行步骤S116。
S116:如果包含,则从所述物理地址转发表对应交换机的SNMP管理信息库中,采集所述物理地址转发表对应交换机的端口索引映射关系表和接口配置信息表。
如表二所示,为本发明实施例提供的采集到的端口索引映射关系表dot1dBasePortTable的示意图,该表包括两列数据,其中第一列dot1dBasePort数据表示端口号数据,该列数据是与表一的物理地址转发表dot1dTpFdbTable中的第二列dot1dTpFdbPort数据相对应的;第二列dot1dBasePortifindex数据表示每个端口号对应的接口索引号,当然,该表还包括有其它的数据,本发明实施例再次不再赘述。
表二:
如表三所示,为本发明实施例提供的采集到的接口配置信息表ifTable的示意图,该表包括两列数据,其中第一列ifindex数据表示每个接口所对应的惟一接口索引号,取值范围为1至ifNumber,该列数据是与端口索引映射关系表dot1dBasePortTable中的第二列dot1dBasePortifindex数据相对应的;第二列ifPhysAddress数据表示每个的接口MAC地址。
表三:
ifindex | ifPhysAddress |
16 | 00 04 dd f2 f4 cf |
17 | 00 e0 4c 97 64 33 |
18 | 00 04 dd f2 f4 35 |
19 | 00 04 dd f2 a4 cf |
20 | 00 04 dd f2 68 cf |
本发明实施例对应交换机的端口索引映射关系表和接口配置信息表的采集,是基于对物理地址转发表dot1dTpFdbTable中具体数据的判定结果,如果dot1dTpFdbTable中的数据不符合预设条件或者没有数据,则不执行端口索引映射关系表和接口配置信息表的采集工作,这不仅可以减少不必要的数据采集工作,还可以提高目标网络的工作稳定性。
S120:根据所述物理地址转发表、端口索引映射关系表以及接口配置信息表,获取所述目标网路中各个交换机的各个接口转发的物理地址以及各个所述接口的物理地址。
具体的,本发明实施例采用对物理地址转发表dot1dTpFdbTable中第一列dot1dBasePort数据进行逐行处理的方式。需要说明的是,如果该物理地址转发表dot1dTpFdbTable为经过上述筛选处理更新后的表,那么本步骤的所使用的物理地址转发表也可以是更新后的表。
1)利用所述目标网路中各个交换机的物理地址转发表,得到各个物理地址数据对应的端口号以及各个所述端口号对应的物理地址,其中,所述物理地址数据为所述目标网路中的交换机接口的地址数据。
如图4所示,为本发明实施例提供的目标网络中交换机的拓扑结构示意图,以图4中的A交换机11为例,假设上述表一为A交换机11的物理地址转发表,首先获取第一列dot1dTpFdbAddress中第一行的MAC地址00 10 b5 07 07 13,然后,判断该00 10 b5 07 0713是否为在目标网络的网管系统中存储的属于某个交换机接口的MAC地址,如果不是,则放弃该行数据,继续对该物理地址表中的下一行数据进行分析处理,如果属于某个交换机接口的MAC地址,则获取该物理地址00 10 b5 07 07 13对应的端口号dot1dTpFdbPort为28,并在该表中查找经该端口号28转发的的所有MAC地址00 10 b5 07 07 13和00 0a eb 9aec 76。
2)利用所述交换机的端口索引映射关系表,得到各个所述端口号对应端口索引号。
假设上述表二为A交换机11的端口索引映射关系表dot1dBasePortTable,在该表中查找端口号dot1dTpFdbTable为28的行对应的dot1dBasePortifindex,即为接口索引号16。
3)利用所述交换机的接口配置信息表,得到各个所述接口索引号对应的物理地址。
假设上述表三为A交换机11的接口配置信息表ifTable,在该表中查找接口索引ifindex为16的行对应ifPhysAddress数据,即为00 04 dd f2 f4 cf,这样便可以查找到表一中交换机11的端口号为28的接口MAC地址。
S130:判断所述各个交换机中的第一交换机的第一接口转发的物理地址中与第二交换机的第二接口转发的物理地址中是否存在相同的物理地址,其中,所述第一交换机的第一接口的物理地址为所述第二交换机的第二接口转发的物理地址中的一个地址。
需要说明的是,本发明实施例中的第一交换机和第二交换机为目标网路中各交换机中的任意两个交换机,第一接口和第二接口分别为上述两个交换机的任意一个接口,“第一”和“第二”仅仅用来将一个交换机与另一个交换机区分开来,而不一定要求两者之间存在任何的先后顺序,该过程遍历所述目标网络中所有交互机的各个接口物理地址及接口转发的物理地址,得到所述目标网络中各交换机之间所有的直接连接的拓扑结构,根据各交换机之间所有的直接连接的拓扑结构,构建所述目标网络的交换机连接关系拓扑图。
为了减少对各交换机之间连接关系的判断次数,减少数据处理量,本发明实施例采用判断交换机对应MAC地址转发表中MAC地址对应的对端交换机连接关系的方式,对目标网络中的各个交换机之间的拓扑结构进行判断,例如,在步骤S120的步骤1)中,判断该0010 b5 07 07 13是否为在目标网络的网管系统中存储的属于某个交换机接口的MAC地址,假设该00 10 b5 07 07 13为图4中的B交换机12的端口号为30的物理地址,则在本步骤中便判断A交换机11和B交换机12之间的连接关系,即设A交换机11为第二交换机、B交换机12为第一交换机,则第一交换机的第一接口(端口号为30)的物理地址为所述第二交换机的第二接口转发的物理地址中的一个地址。
同样的,按照步骤S120的步骤1)中方法在第一交换机(B交换机12)的MAC地址转发表中查找经其第一接口(端口号为30)转发的MAC地址,然后,判断第一交换机的第一接口转发的MAC地址中与第二交换机的第二接口转发的MAC地址中是否存在相同的MAC地址,如果存在相同的MAC地址,则说明第一交换机和第二交换机的两个接口之间还存在其它的交换机,例如,在上述步骤中A交换机11的MAC地址转发表中的一个MAC地址为C交换机13中的一个接口,即C交换机13为A交换机11找着到的对端交换机,但是由于两个交换机之间还有B交换机12,那么在数据交互的过程A交换机11和C交换机13存在给B交换机12发送数据情况,相应的两者的MAC地址转发表中就均包含关于B交换机12的部分接口的MAC地址数据;相反,如果不存在相同的MAC地址,则说明两个交换机的接口之间不存在任何其它的设备,并执行步骤S140。
进一步的,为了提高数据处理速度,在判断第一交换机的第一接口转发的MAC地址中与第二交换机的第二接口转发的MAC地址中是否存在相同的MAC地址之前,本实例还包括如下判断步骤:
判断所述各个交换机中的第一交换机的第一接口转发的物理地址中是否包含第二交换机的第二接口的物理地址。
即判断对端交换机的第一接口转发的物理地址中是否包含本端交换机的第二接口的物理地址,如果不包含,则说明两个交换机之间存在其它的交换机,并返回步骤S120对本端交换机的MAC地址转发表中下一行MAC地址进行分析判断;相反,如果包含,则判断第一交换机的第一接口转发的MAC地址中与第二交换机的第二接口转发的MAC地址中是否存在相同的MAC地址。
S140:如果不存在,则建立所述第一交换机与所述第二交换机直接连接的拓扑结构。
具体的,可以首先判断在构建好的交换机连接关系拓扑图是否存在该第一交换机、第二交换机的图标,如果不存,则说明第一交换机的第一接口与第二交换机的第二接口为直接连接的拓扑结构
进一步的,还可以构建交换机连接关系拓扑图,在交换机连接关系拓扑图中创建两个设备的图标(如果已有该交换机图标,则无需重复创建);然后,在交换机连接关系拓扑图中建立该第一交换机的图标和第二交换机图标之间的连线,并且在这条连线属性中记录第一交换机的第一接口和第二交换机的第二接口的接口配置信息(如接口号、接口物理地址信息等),这样,当对目标网路中的每一个交换机的连接关系分析完后,便可以得到该目标网络中各交换机之间的连接关系。
当然,还可以遍历所述目标网络,得到所述目标网络中各交换机之间所有的直接连接的拓扑结构,根据各交换机之间所有的直接连接的拓扑结构,构建所述目标网络的交换机连接关系拓扑图,在所述交换机连接关系拓扑图中,添加用于连接两个交换机连线的属性信息,其中,所述属性信息包括所述连线所连接的两个交换机接口的接口配置信息。
进一步的,为了对交换机连接关系拓扑图中的各交换机进行区分标识,本发明实例在本步骤S140中提供了如下建立拓扑结构的方法:
S141:分别从所述第一交换机和所述第二交换机的SNMP管理信息库中,采集所述第一交换机和所述第二交换机的互联网协议IP地址;
S142:分别将所述第一交换机和所述第二交换机的互联网协议IP地址作为所述第一交换机和所述第二交换机的标签,建立所述第一交换机的第一接口与所述第二交换机的第二接口直接连接的拓扑结构。
利用本发明实施例提供的交换机拓扑结构发现方法,通过对交换机MAC地址转发表中的每一行MAC地址进行分析判断,得到该交换机的接口与目标网络中的其它交换机的连接关系,并且,对采集到的各交换机的MAC地址转发表中进行分析判断,便可以得到目标网络中各交换机之间的拓扑结构。
本发明实施例提供的交换机拓扑结构发现方法,利用简单网络管理协议管理数据库中的MAC地址转发表,获取经一个交换机接口转发的物理地址与另一个对端交换机接口转发的物理地址是否存在交集的方法,来确定两个交换机之间的连接关系,为网络管理员快速直观的掌握当前网络的交换机连接关系拓扑信息提供了可视化查看的手段;并且本发明实施例是基于管理数据库中MAC地址转发表,该管理数据库在每一个网络节点中均存在,因此本发明实施例提供的方法还具有适用范围广泛的优势。
基于同一发明构思,本公开实施例还提供了一种交换机的拓扑结构发现装置。图5为本发明实施例提供的一种交换机的拓扑结构发现装置的结构示意图。如图5所示,该装置包括:
接口信息采集模块51:用于采集目标网路中各个交换机的物理地址转发表、端口索引映射关系表以及接口配置信息表。
接口信息提取模块52:用于根据所述物理地址转发表、端口索引映射关系表以及接口配置信息表,获取所述目标网路中各个交换机的各个接口转发的物理地址以及各个所述接口的物理地址;
接口关联判断模块53:用于判断所述各个交换机中的第一交换机的第一接口转发的物理地址中与第二交换机的第二接口转发的物理地址中是否存在相同的物理地址,其中,所述第一交换机的第一接口的物理地址为所述第二交换机的第二接口转发的物理地址中的一个地址;
拓扑结构建立模块54:用于如果所述各个交换机中的第一交换机的第一接口转发的物理地址中与第二交换机的第二接口转发的物理地址中不存在相同的物理地址,则建立所述第一交换机与所述第二交换机直接连接的拓扑结构。
为提高数据处理速度,所述接口关联判断模块53还包括:
第一接口关联判断子模块531:用于判断所述各个交换机中的第一交换机的第一接口转发的物理地址中是否包含第二交换机的第二接口的物理地址;
第二接口关联判断子模块532:用于如果所述各个交换机中的第一交换机的第一接口转发的物理地址中包含第二交换机的第二接口的物理地址,则判断所述第一交换机的第一接口转发的物理地址中与所述第二交换机的第二接口转发的物理地址中是否存在相同的物理地址。
为减少不必要的数据采集工作,还可以提高目标网络的工作稳定性,所述接口信息采集模块51包括:
地址信息采集子模块511:用于从目标网络中各个交换机的简单网络管理协议SNMP管理信息库中,采集各个所述交换机的物理地址转发表。
地址数据判断子模块512:用于判断所述物理地址转发表中是否包含物理地址数据;
接口信息采集子模块513:用于如果所述物理地址转发表中包含物理地址数据,则从所述物理地址转发表对应交换机的SNMP管理信息库中,分别采集所述物理地址转发表对应交换机的端口索引映射关系表和接口配置信息表。
进一步的,接口信息采集模块51还包括:
数据状态判断子模块514:用于判断所述物理地址转发表中各个物理地址数据对应的端口状态数据是否为预设状态数据;
数据删除子模块515:如果不是,则将所述端口状态数据不是预设状态数据对应的物理地址数据从所述物理地址转发表中删除,得到更新后的物理地址转发表;
更新后地址数据判断子模块516:判断所述更新后的物理地址转发表中是否包含物理地址数据;
相对应的,接口信息采集子模块513的功能被更新为:如果所述更新后的物理地址转发表中包含物理地址数据,则从所述物理地址转发表对应交换机的SNMP管理信息库中,采集所述物理地址转发表对应交换机的端口索引映射关系表和接口配置信息表。
优选地,所述接口信息提取模块52包括:
端口号提取子模块521:用于利用所述目标网路中各个交换机的物理地址转发表,得到各个物理地址数据对应的端口号以及各个所述端口号对应的物理地址,其中,所述物理地址数据为所述目标网路中的交换机接口的地址数据。
索引号提取子模块522:用于利用所述交换机的端口索引映射关系表,得到各个所述端口号对应端口索引号。
物理地址提取子模块523:用于利用所述交换机的接口配置信息表,得到各个所述接口索引号对应的物理地址。
为对拓扑图中的交换机进行标识,所述拓扑结构建立模块54包括:
IP地址提取子模块541:用于分别从所述第一交换机和所述第二交换机的SNMP管理信息库中,采集所述第一交换机和所述第二交换机的互联网协议IP地址;
拓扑结构建立模块子模块542:分别将所述第一交换机和所述第二交换机的互联网协议IP地址作为所述第一交换机和所述第二交换机的标签,建立所述第一交换机的第一接口与所述第二交换机的第二接口直接连接的拓扑结构。
本发明实施例提供的交换机拓扑结构发现装置,利用简单网络管理协议管理数据库中的MAC地址转发表,获取经一个交换机接口转发的物理地址与另一个对端交换机接口转发的物理地址是否存在交集的方法,来确定两个交换机之间的连接关系,为网络管理员快速直观的掌握当前网络的交换机连接关系拓扑信息提供了可视化查看的手段;并且本发明实施例是基于管理数据库中MAC地址转发表,该管理数据库在每一个网络节点中均存在,因此本发明实施例提供的方法还具有适用范围广泛的优势。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上仅是本发明的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (7)
1.一种交换机的拓扑结构发现方法,其特征在于,包括:
采集目标网路中各个交换机的物理地址转发表、端口索引映射关系表以及接口配置信息表;
根据所述物理地址转发表、端口索引映射关系表以及接口配置信息表,获取所述目标网路中各个交换机的各个接口转发的物理地址以及各个所述接口的物理地址;
判断所述各个交换机中的第一交换机的第一接口转发的物理地址中与第二交换机的第二接口转发的物理地址中是否存在相同的物理地址,其中,所述第一交换机的第一接口的物理地址为所述第二交换机的第二接口转发的物理地址中的一个地址;
如果不存在,则建立所述第一交换机与所述第二交换机直接连接的拓扑结构;
其中,采集目标网路中各个交换机的物理地址转发表、端口索引映射关系表以及接口配置信息表,包括:
从目标网络中各个交换机的简单网络管理协议SNMP管理信息库中,采集各个所述交换机的物理地址转发表;
判断所述物理地址转发表中是否包含物理地址数据;
如果包含物理地址数据,判断所述物理地址转发表中各个物理地址数据对应的端口状态数据是否为预设状态数据;
如果不是,则将所述端口状态数据不是预设状态数据对应的物理地址数据从所述物理地址转发表中删除,得到更新后的物理地址转发表;
判断所述更新后的物理地址转发表中是否包含物理地址数据;
如果包含,则从所述物理地址转发表对应交换机的SNMP管理信息库中,采集所述物理地址转发表对应交换机的端口索引映射关系表和接口配置信息表。
2.根据权利要求1所述的方法,其特征在于,判断所述各个交换机中的第一交换机的第一接口转发的物理地址中与第二交换机的第二接口转发的物理地址中是否存在相同的物理地址,包括:
判断所述各个交换机中的第一交换机的第一接口转发的物理地址中是否包含第二交换机的第二接口的物理地址;
如果包含,则判断所述第一交换机的第一接口转发的物理地址中与所述第二交换机的第二接口转发的物理地址中是否存在相同的物理地址。
3.根据权利要求1或2所述的方法,其特征在于,根据所述物理地址转发表、端口索引映射关系表以及接口配置信息表,获取所述目标网路中各个交换机的各个接口转发的物理地址以及各个所述接口的物理地址,包括:
利用所述目标网路中各个交换机的物理地址转发表,得到各个物理地址数据对应的端口号以及各个所述端口号对应的物理地址,其中,所述物理地址数据为所述目标网路中的交换机接口的地址数据;
利用所述交换机的端口索引映射关系表,得到各个所述端口号对应端口索引号;
利用所述交换机的接口配置信息表,得到各个所述接口索引号对应的物理地址。
4.根据权利要求1或2所述的方法,其特征在于,建立所述第一交换机与所述第二交换机直接连接的拓扑结构,包括:
分别从所述第一交换机和所述第二交换机的SNMP管理信息库中,采集所述第一交换机和所述第二交换机的互联网协议IP地址;
分别将所述第一交换机和所述第二交换机的互联网协议IP地址作为所述第一交换机和所述第二交换机的标签,建立所述第一交换机的第一接口与所述第二交换机的第二接口直接连接的拓扑结构。
5.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
遍历所述目标网络,得到所述目标网络中各交换机之间所有的直接连接的拓扑结构,根据各交换机之间所有的直接连接的拓扑结构,构建所述目标网络的交换机连接关系拓扑图;
在所述交换机连接关系拓扑图中,添加用于连接两个交换机连线的属性信息,其中,所述属性信息包括所述连线所连接的两个交换机接口的接口配置信息。
6.一种交换机的拓扑结构发现装置,其特征在于,包括:
接口信息采集模块:用于采集目标网路中各个交换机的物理地址转发表、端口索引映射关系表以及接口配置信息表;
接口信息提取模块:用于根据所述物理地址转发表、端口索引映射关系表以及接口配置信息表,获取所述目标网路中各个交换机的各个接口转发的物理地址以及各个所述接口的物理地址;
接口关联判断模块:用于判断所述各个交换机中的第一交换机的第一接口转发的物理地址中与第二交换机的第二接口转发的物理地址中是否存在相同的物理地址,其中,所述第一交换机的第一接口的物理地址为所述第二交换机的第二接口转发的物理地址中的一个地址;
拓扑结构建立模块:用于如果所述各个交换机中的第一交换机的第一接口转发的物理地址中与第二交换机的第二接口转发的物理地址中不存在相同的物理地址,则建立所述第一交换机与所述第二交换机直接连接的拓扑结构;
其中,所述接口信息采集模块包括:
地址信息采集子模块:用于从目标网络中各个交换机的简单网络管理协议SNMP管理信息库中,采集各个所述交换机的物理地址转发表;
地址数据判断子模块:用于判断所述物理地址转发表中是否包含物理地址数据;
数据状态判断子模块:如果包含物理地址数据,判断所述物理地址转发表中各个物理地址数据对应的端口状态数据是否为预设状态数据;
数据删除子模块:如果不是,则将所述端口状态数据不是预设状态数据对应的物理地址数据从所述物理地址转发表中删除,得到更新后的物理地址转发表;
更新后地址数据判断子模块:判断所述更新后的物理地址转发表中是否包含物理地址数据;
接口信息采集子模块:如果所述更新后的物理地址转发表中包含物理地址数据,则从所述物理地址转发表对应交换机的SNMP管理信息库中,采集所述物理地址转发表对应交换机的端口索引映射关系表和接口配置信息表。
7.根据权利要求6所述的装置,其特征在于,所述接口关联判断模块包括:
第一接口关联判断子模块:用于判断所述各个交换机中的第一交换机的第一接口转发的物理地址中是否包含第二交换机的第二接口的物理地址;
第二接口关联判断子模块:用于如果所述各个交换机中的第一交换机的第一接口转发的物理地址中包含第二交换机的第二接口的物理地址,则判断所述第一交换机的第一接口转发的物理地址中与所述第二交换机的第二接口转发的物理地址中是否存在相同的物理地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611173831.4A CN108206792B (zh) | 2016-12-16 | 2016-12-16 | 交换机的拓扑结构发现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611173831.4A CN108206792B (zh) | 2016-12-16 | 2016-12-16 | 交换机的拓扑结构发现方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108206792A CN108206792A (zh) | 2018-06-26 |
CN108206792B true CN108206792B (zh) | 2020-10-23 |
Family
ID=62602651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611173831.4A Active CN108206792B (zh) | 2016-12-16 | 2016-12-16 | 交换机的拓扑结构发现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108206792B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110365635B (zh) * | 2019-05-23 | 2022-04-26 | 新华三技术有限公司 | 一种非法端点的接入控制方法和装置 |
JP7393264B2 (ja) * | 2020-03-24 | 2023-12-06 | アズビル株式会社 | ネットワーク装置およびネットワーク構成判別方法 |
CN112968837A (zh) * | 2021-02-04 | 2021-06-15 | 杭州和利时自动化有限公司 | 一种网络结构分析方法、装置、设备及存储介质 |
CN116155739A (zh) * | 2021-11-23 | 2023-05-23 | 华为技术有限公司 | 网络拓扑的还原方法及装置 |
CN114760206A (zh) * | 2022-03-18 | 2022-07-15 | 青岛海信宽带多媒体技术有限公司 | 一种优化拓扑结构方法、装置及家庭智能网关 |
CN116094990B (zh) * | 2023-01-19 | 2024-06-14 | 重庆长安汽车股份有限公司 | 基于mac地址转发表的软件优化方法、装置及电子设备 |
CN116827801B (zh) * | 2023-08-25 | 2023-12-15 | 武汉吧哒科技股份有限公司 | 网络拓扑构建方法、装置、计算机设备及可读存储介质 |
CN117376282B (zh) * | 2023-12-05 | 2024-03-26 | 深圳万物安全科技有限公司 | 交换机视图显示方法、设备及计算机可读存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102685005B (zh) * | 2012-04-28 | 2016-03-30 | 华为技术有限公司 | 路由方法和路由器 |
CN105592178B (zh) * | 2015-09-17 | 2018-12-25 | 新华三技术有限公司 | 一种数据节点位置的确定方法和装置 |
CN106161103B (zh) * | 2016-08-18 | 2019-07-16 | 上海帝联信息科技股份有限公司 | 交换机拓扑构建方法及装置 |
-
2016
- 2016-12-16 CN CN201611173831.4A patent/CN108206792B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108206792A (zh) | 2018-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108206792B (zh) | 交换机的拓扑结构发现方法及装置 | |
CN110661669B (zh) | 一种基于icmp、tcp、udp协议的网络设备的网络拓扑自动发现方法 | |
JP4008432B2 (ja) | ネットワーク機器のトポロジを探索する装置および方法 | |
CN102801567B (zh) | 分层网络拓扑自动发现的方法和分层网络拓扑组建的方法 | |
JP3996577B2 (ja) | 様々な発見技術の分割によるトポロジ発見 | |
US7742426B2 (en) | System, method, and computer-readable medium for determining a layer 2 path trace in a heterogeneous network system | |
JP4523444B2 (ja) | 通信ネットワークにおける障害の原因を特定する障害管理装置および方法 | |
US8675517B2 (en) | Filtering of map topology based on network discovery characteristics | |
US9391886B2 (en) | Identification of the paths taken through a network of interconnected devices | |
CN111865684B (zh) | 局域网网络拓扑自动发现方法 | |
JP6193473B2 (ja) | コンピュータ実施方法、コンピュータプログラム製品及びコンピュータ | |
CN107733713B (zh) | 混合网络中网络拓扑的获取方法、系统、设备及存储介质 | |
EP2451125B1 (en) | Method and system for realizing network topology discovery | |
CN102158348A (zh) | 网络拓扑发现方法、装置及网络设备 | |
CN113542015B (zh) | 一种自动绘制网络物理链路方法 | |
US8914503B2 (en) | Detected IP link and connectivity inference | |
CN112822053B (zh) | 一种基于snmp的链路层网络拓扑结构发现方法及系统 | |
CN104579978B (zh) | 一种动态网络链路层拓扑发现方法 | |
CN110932906A (zh) | 基于snmp技术的数据中心网络拓朴结构发现方法及其拓朴结构发现系统 | |
US20130042020A1 (en) | Quick Network Path Discovery | |
US20090207756A1 (en) | Network configuration management method | |
US20040215781A1 (en) | Techniques for determining device connectivity in a network using protocol-specific connectivity information | |
CN115314392A (zh) | 基于网络设备资源发现算法的自动生成网络拓扑系统及方法 | |
US7369513B1 (en) | Method and apparatus for determining a network topology based on Spanning-tree-Algorithm-designated ports | |
CN101404595B (zh) | 网络桥接器上行链路端口标识 |
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 | ||
CB02 | Change of applicant information |
Address after: Room 818, 8 / F, 34 Haidian Street, Haidian District, Beijing 100080 Applicant after: BEIJING ULTRAPOWER SOFTWARE Co.,Ltd. Address before: 100089 Beijing city Haidian District wanquanzhuang Road No. 28 Wanliu new building block A Room 601 Applicant before: BEIJING ULTRAPOWER SOFTWARE Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |