CN111224802A - 基于snmp的数据链路层网络拓扑发现方法及装置 - Google Patents
基于snmp的数据链路层网络拓扑发现方法及装置 Download PDFInfo
- Publication number
- CN111224802A CN111224802A CN201811412783.9A CN201811412783A CN111224802A CN 111224802 A CN111224802 A CN 111224802A CN 201811412783 A CN201811412783 A CN 201811412783A CN 111224802 A CN111224802 A CN 111224802A
- Authority
- CN
- China
- Prior art keywords
- network equipment
- connection relation
- subnet
- network
- connection
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000004590 computer program Methods 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 abstract description 12
- 238000010586 diagram Methods 0.000 description 20
- 238000004422 calculation algorithm Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 101100059544 Arabidopsis thaliana CDC5 gene Proteins 0.000 description 1
- 101100244969 Arabidopsis thaliana PRL1 gene Proteins 0.000 description 1
- 102100039558 Galectin-3 Human genes 0.000 description 1
- 101100454448 Homo sapiens LGALS3 gene Proteins 0.000 description 1
- 101150115300 MAC1 gene Proteins 0.000 description 1
- 101150051246 MAC2 gene Proteins 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- 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
- 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
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/103—Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种基于SNMP的数据链路层网络拓扑发现方法及装置,该方法包括:获取子网中网络设备的地址解析表、接口表、地址转发表;根据子网中网络设备的地址解析表、接口表、地址转发表,获得网络设备的连接关系表,所述连接关系表包括至少一条网络设备之间的的连接关系,所述连接关系包括连接方向;重复执行如下步骤,直至获得子网中网络设备的所有直接连接关系:根据连接关系表,确定叶节点网络设备;获得叶节点网络设备的直接连接关系;删除目的网络设备为叶节点网络设备的连接关系;根据子网中网络设备的所有直接连接关系,生成子网的拓扑图。本发明可以降低计算复杂度,提高收敛速度。
Description
技术领域
本发明涉及计算机网络管理领域,尤其涉及一种数据链路层拓扑发现方法及装置。
背景技术
随着网络技术的不断发展与普及,网络的规模变得越来越大,网络的结构变得越来越复杂,对网络进行有效的管理和控制是保证网络处在正常高效运转的关键。但对网络进行有效的管理首先要获得网络的拓扑结构,而网络的结构复杂、节点数目繁多,靠人工统计往往是行不通的,而目前的网络拓扑发现技术又存在着一定的不足,所以研究更加有效的手段来得到网络的拓扑结构具有重大的意义。
网络拓扑算法多种多样,但通常分别依赖STP(Spanning Tree Protocol,生成树协议)、SNMP(Simple Network Management Protocol,简单网络管理协议)或ICMP(Internet Control Message Protocol,Internet控制报文协议)来实现,利用这三种协议来实现拓扑算法各有利弊,分别适合不同的网络结构和应用场景。
其中,SNMP是Internet体系结构委员会在网络管理标准框架基础上提出的相应的网络管理标准,其中网络管理标准框架(即开放系统互连管理框架)由国际标准化组织提出,该框架将网络管理划分成5大功能模块:配置管理、性能管理、故障管理、计费管理和安全管理。基于TCP/IP的SNMP由于其简单和易于实现的特性,已经成为网络管理领域事实上的协议标准,且目前主要的网络设备都提供对SNMP的支持,因此基于SNMP的拓扑发现技术被广泛采用。
目前基于SNMP的数据链路层拓扑发现步骤如下:
步骤1:从子网中已知交换机中确定与网关直接相连的根交换机,用树形图结构保存根交换机与网关间的连接关系;
步骤2:判断子网中所有已知交换机是否还有未确定位置的交换机,如果有,执行步骤3,如果没有执行步骤5;
步骤3:根据已确定拓扑位置的交换机的地址转发表获取该交换机的下行完全集S,然后计算该交换机的下行完全集中的每个交换机的下行完全集Sn,然后用所述完全集S减去所述每个交换机的下行完全集Sn,得到所有与所述已确定拓扑位置的交换机直接相连的交换机;
步骤4:将所确定的连接关系保存到树形图中;
步骤5:将所述树形图转换为树结构。
以上步骤表示的基于SNMP的数据链路层拓扑发现方法具有以下问题:
假设该树形结构的层数为n,自上而下每一层的设备数量为m1,m2,m3,……mn,算法自上而下逐层确定连接关系,且每一层链路的确定依赖于对下面所有节点的遍历结果,因此,该方法的遍历计算量S1,可表示为:S1=m1+2m2+3m3+…+imi+…+nmn,网络拓扑图在绝大多数情况下,是一棵上窄下宽的多叉树,也就是说绝大多数情况下m1<m2<m3<……<mi<……<mn,因此其计算量会随着多叉树的规模变大而越来越大,计算复杂度增加,收敛速度变慢。
发明内容
本发明实施例提供一种基于SNMP的数据链路层网络拓扑发现方法,以实现基于SNMP的数据链路层网络拓扑发现,并降低计算复杂度,提高收敛速度,该方法包括:
获取子网中网络设备的地址解析表、接口表、地址转发表;
根据子网中网络设备的地址解析表、接口表、地址转发表,获得网络设备的连接关系表,所述连接关系表包括至少一条网络设备之间的的连接关系,所述连接关系包括连接方向;
重复执行如下步骤,直至获得子网中网络设备的所有直接连接关系:根据连接关系表,确定叶节点网络设备;获得叶节点网络设备的直接连接关系;删除目的网络设备为叶节点网络设备的连接关系;
根据子网中网络设备的所有直接连接关系,生成子网的拓扑图。
本发明实施例提供一种基于SNMP的数据链路层网络拓扑发现装置,以实现基于SNMP的数据链路层网络拓扑发现,并降低计算复杂度,提高收敛速度,该装置包括:
数据获取模块,用于获取子网中网络设备的地址解析表、接口表、地址转发表;
连接关系表获得模块,用于根据子网中网络设备的地址解析表、接口表、地址转发表,获得网络设备的连接关系表,所述连接关系表包括至少一条网络设备之间的连接关系,所述连接关系包括连接方向;
直接连接关系获得模块,用于重复执行如下步骤,直至获得子网中网络设备的所有直接连接关系:根据连接关系表,确定叶节点网络设备;获得叶节点网络设备的直接连接关系;删除目的网络设备为叶节点网络设备的连接关系;
拓扑图生成模块,用于根据子网中网络设备的所有直接连接关系,生成子网的拓扑图。
本发明实施例还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于SNMP的数据链路层网络拓扑发现方法。
本发明实施例还提出了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述基于SNMP的数据链路层网络拓扑发现方法的计算机程序。
在本发明实施例中,获取子网中网络设备的地址解析表、接口表、地址转发表;
根据子网中网络设备的地址解析表、接口表、地址转发表,获得网络设备的连接关系表,所述连接关系表包括至少一条网络设备之间的的连接关系,所述连接关系包括连接方向;重复执行如下步骤,直至获得子网中网络设备的所有直接连接关系:根据连接关系表,确定叶节点网络设备;获得叶节点网络设备的直接连接关系,在该步骤中,从叶节点网络设备开始查找直接连接关系,属于一种自下而上的查找方式,计算复杂度低,收敛速度快;删除目的网络设备为叶节点网络设备的连接关系;根据子网中网络设备的所有直接连接关系,生成子网的拓扑图。本发明实施例由于采用自下而上的查找方式,降低了计算复杂度,提高了收敛速度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例中基于SNMP的数据链路层网络拓扑发现方法的流程图;
图2为本发明实施例的地址转发表的示意图;
图3为本发明实施例中连接关系表的示意图;
图4为本发明实施例中生成的子网的树结构的子网的拓扑图;
图5为本发明实施例中基于SNMP的数据链路层网络拓扑发现装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
图1为本发明实施例中基于SNMP的数据链路层网络拓扑发现方法的流程图,如图1所示,该方法包括:
步骤101,获取子网中网络设备的地址解析表、接口表、地址转发表;
步骤102,根据子网中网络设备的地址解析表、接口表、地址转发表,获得网络设备的连接关系表,所述连接关系表包括至少一条网络设备之间的的连接关系,所述连接关系包括连接方向;
步骤103,重复执行如下步骤,直至获得子网中网络设备的所有直接连接关系:根据连接关系表,确定叶节点网络设备;获得叶节点网络设备的直接连接关系;删除目的网络设备为叶节点网络设备的连接关系;
步骤104,根据子网中网络设备的所有直接连接关系,生成子网的拓扑图。
由图1所示的流程图可知,在本发明实施例中,获取子网中网络设备的地址解析表、接口表、地址转发表;
根据子网中网络设备的地址解析表、接口表、地址转发表,获得网络设备的连接关系表,所述连接关系表包括至少一条网络设备之间的的连接关系,所述连接关系包括连接方向;重复执行如下步骤,直至获得子网中网络设备的所有直接连接关系:根据连接关系表,确定叶节点网络设备;获得叶节点网络设备的直接连接关系,在该步骤中,从叶节点网络设备开始查找直接连接关系,属于一种自下而上的查找方式,计算复杂度低,收敛速度快;删除目的网络设备为叶节点网络设备的连接关系;根据子网中网络设备的所有直接连接关系,生成子网的拓扑图。本发明实施例由于采用自下而上的查找方式,降低了计算复杂度,提高了收敛速度。
具体实施时,首先需要获取子网中网络设备的地址解析表、接口表、地址转发表,所述子网中的网络设备包括交换机和路由器,其中地址解析表(Address ResolutionProtocol,ARP)用于存储网络设备的IP与MAC地址的映射关系,接口表(ifTable)用于存储网络设备的接口,地址转发表(Address Forwarding Table,AFT)用于存储网络设备的端口与目的网络设备的MAC地址。
在一实施例中,根据子网中网络设备的地址解析表、接口表、地址转发表,获得网络设备的连接关系表,可以包括:
获取子网中网络设备的IP;
根据子网中网络设备的IP和接口表,查找网络设备的接口;
根据子网中网络设备的接口和地址转发表,查找目的网络设备的MAC地址;
根据子网中目的网络设备的MAC地址和地址解析表,查找目的网络设备的IP;
确定网络设备与对应的目的网络设备之间的连接方向,连接方向包括上行连接和下行连接,上行连接为网络设备通过目的网络设备可连接到路由器的连接,下行连接为网络设备通过目的网络设备不能连接到路由器的连接;
根据子网中网络设备的IP、网络设备的接口、目的网络设备的IP、网络设备与对应的目的网络设备之间的连接方向,生成至少一条连接关系;
将至少一条连接关系汇总成连接关系表。
在一实施例中,重复执行如下步骤,直至获得子网中网络设备的所有直接连接关系:根据连接关系表,确定叶节点网络设备;获得叶节点网络设备的直接连接关系;删除叶节点网络设备的直接或间接连接关系。
在一实施例中,根据连接关系表,确定叶节点网络设备,可以包括:
根据连接关系表,将连接方向仅存在上行连接的网络设备确定为叶节点网络设备。
在一实施例中,获得叶节点网络设备的直接连接关系,可以包括:
根据连接关系表,获得至少一连接关系集合,每一连接关系集合包括同一网络设备的接口的连接关系;
对每一连接关系集合,若该连接关系集合中的目的网络设备为叶节点网络设备,确定该连接关系集合中的连接关系为直接连接关系。
具体实施时,对每一连接关系集合,若确定该连接关系集合中的连接关系为直接连接关系,则正常情况下,该集合中应该只有一条直接连接关系;当该连接关系集合中出现多个连接关系时,则表明该连接关系集合中的网络设备与目的网络设备之间存在着集线器(HUB)或未知交换机设备,因此本发明实施例提出的方法可以发现集线器(HUB)或遗漏的交换机。
在一实施例中,根据子网中网络设备的所有直接连接关系,生成子网的拓扑图,可以包括:
根据子网中网络设备的接口表,对每一直接连接关系,获得该直接连接关系中目的网络设备的接口;
根据子网中所有直接连接关系和所有目的网络设备的接口,生成子网的拓扑图。
具体实施时,子网的拓扑图可以用树结构表示,本发明实施例形成的拓扑图中,包括连接关系的连接方向,因此能够构造一个有方向的子网的拓扑图。
在现有技术的算法中,假设该树形结构的层数为n,自上而下每一层的设备数量为m1,m2,m3,……mn,算法自上而下逐层确定连接关系,且每一层链路的确定依赖于对下面所有节点的遍历结果,因此,该方法的遍历计算量S1,可表示为:S1=m1+2m2+3m3+…+imi+…+nmn。
本发明实施例中,假设该树形结构的层数为n,自上而下每一层的设备数量为m1,m2,m3,……mn,从叶节点网络设备开始查找直接连接关系,属于一种自下而上的查找方式,该方法的计算量S2,可表示为:S2=nm1+(n-1)m2+(n-2)m3+…+(n-i+1)mi+…+mn。
由于网络拓扑图在绝大多数情况下,是一棵上窄下宽的多叉树,也就是说绝大多数情况下m1<m2<m3<……<mi<……<mn,由于S1=m1+2m2+3m3+…+imi+…+nmn且S2=nm1+(n-1)m2+(n-2)m3+…+(n-i+1)mi+…+mn,可以看到现有技术的计算量S1>本发明实施例提出的方法的计算量S2,且网络规模越大,两者的差值越大。因此,本发明实施例提出的方法比现有技术的算法在绝大多数情况下计算量更低,具有更快的收敛速度,且在网络规模越大的情况下,优势越明显。
下面给出一具体实施例,说明本发明的基于SNMP的数据链路层网络拓扑发现方法的具体应用。
首先需要获取子网中网络设备的地址解析表、接口表、地址转发表,在此之前,已经发现所有网络设备,图2为本发明实施例的地址转发表的示意图,如图2所示,一个网络设备交换机可包括多个接口,如IF1,IF2,...,IFn,每个接口可对应多个目的网络设备的MAC地址,如交换机的接口IF1对应的目的网络设备的MAC地址为MAC1,MAC2,MAC3,MAC4,...。
然后,根据子网中网络设备的地址解析表、接口表、地址转发表,获得连接关系表,具体步骤包括:
获取子网中网络设备的IP;
根据子网中网络设备的IP和接口表,查找网络设备的接口;
根据子网中网络设备的接口和地址转发表,查找目的网络设备的MAC地址;
根据子网中目的网络设备的MAC地址和和地址解析表,查找目的网络设备的IP;
确定网络设备与对应的目的网络设备之间的连接方向,连接方向包括上行连接和下行连接,上行连接为网络设备通过目的网络设备可连接到路由器的连接,下行连接为网络设备通过目的网络设备不能连接到路由器的连接;
根据子网中网络设备的IP、网络设备的接口、目的网络设备的IP、网络设备与对应的目的网络设备之间的连接方向,生成至少一条连接关系;
将至少一条连接关系汇总成连接关系表,图3为本发明实施例中连接关系表的示意图,该连接关系表包括多条连接关系,每条连接关系包括网络设备的IP、网络设备的的接口、目的网络设备的IP和连接方向,连接方向包括上行连接和下行连接,每个网络设备的IP可对应多个网络设备的接口,每个网络设备的接口可对应多个目的网络设备的IP。
根据连接关系表,将连接方向仅存在上行连接的网络设备确定为叶节点网络设备,例如,在如图3所示的连接关系表中,网络设备的IP为IP5对应的连接关系仅存在上行连接,因此网络设备的IP为IP5的网络设备为叶节点网络设备。
根据叶节点网络设备,获得叶节点网络设备的直接连接关系,具体步骤包括:
根据连接关系表,获得至少一连接关系集合,每一连接关系集合包括同一网络设备的接口的连接关系;对每一连接关系集合,若该集合中的目的网络设备为叶节点网络设备,确定该集合中的连接关系为直接连接关系;
删除叶节点网络设备的直接或间接连接关系。
例如,如图3所示的连接关系表中,获取网络设备的IP为IP3的网络设备的同一接口IF2的连接关系的集合,该连接关系集合中包含一条网络连接关系,且目的网络设备IP为IP5,该目的网络设备为叶节点网络设备,因此该连接关系集合中的该网络连接关系为直接连接关系;然后,删除目的网络设备的IP为IP5的连接关系,如图3所示,包括两条连接关系,分别为网络设备的IP为IP3、网络设备的接口为IF2、目的网络设备的IP为IP5、连接方向为下行连接的连接关系,和网络设备网络设备的IP为IP2、网络设备的接口为IF2、目的网络设备的IP为IP5、连接方向为下行连接的连接关系。
删除完后,从连接关系表,将连接方向仅存在上行连接的网络设备确定为叶节点网络设备开始,重复执行以上步骤,直至获得所有的直接连接关系。
根据子网中网络设备的接口表,对每一直接连接关系,获得该直接连接关系中目的网络设备的接口;
根据子网中所有直接连接关系和所有目的网络设备的接口,生成子网的树结构的子网的拓扑图,图4为本发明实施例中生成的子网的树结构的子网的拓扑图,其中R代表该网络设备为路由器,图4中包括网络设备的IP为IP1的一个路由器,SW代表该网络设备为交换机,图4中包括网络设备的IP分别为IP2、IP3、IP4、IP5、IP6的5台交换机,每个网络设备可以有多个接口,如网络设备的IP为IP3的交换机包括IF1、IF2、IF3共3个接口,该子网的拓扑图包含方向,如网络设备的IP为IP3的交换机的接口IF3到网络设备的IP为IP6的交换机的接口IF1为下行连接。
在本发明实施例中,根据子网中网络设备的地址解析表、接口表、地址转发表,获得网络设备的连接关系表,所述连接关系表包括至少一条网络设备之间的的连接关系,所述连接关系包括连接方向;重复执行如下步骤,直至获得子网中网络设备的所有直接连接关系:根据连接关系表,确定叶节点网络设备;获得叶节点网络设备的直接连接关系,在该步骤中,从叶节点网络设备开始查找直接连接关系,属于一种自下而上的查找方式,计算复杂度低,收敛速度快;删除目的网络设备为叶节点网络设备的连接关系;根据子网中网络设备的所有直接连接关系,生成子网的拓扑图。本发明实施例由于采用自下而上的查找方式,降低了计算复杂度,提高了收敛速度。
另外,对每一连接关系集合,若确定该集合中的连接关系为直接连接关系,则正常情况下,该集合中应该只有一条直接连接关系,当该集合中出现多个连接关系时,则表明该集合中的网络设备与目的网络设备之间存在着集线器(HUB)或未知交换机设备,因此本发明实施例提出的方法可以发现集线器(HUB)或遗漏的交换机;本发明实施例提出的方法生成的子网的拓扑图包含方向。
基于同一发明构思,本发明实施例还提供了一种基于SNMP的数据链路层网络拓扑发现装置,如下面的实施所述。由于这些解决问题的原理与一种基于SNMP的数据链路层网络拓扑发现方法相似,因此装置的实施可以参见方法的实施,重复之处不在赘述。
图5为本发明实施例的基于SNMP的数据链路层网络拓扑发现装置的结构示意图,如图5所示,该装置包括:
数据获取模块501,用于获取子网中网络设备的地址解析表、接口表、地址转发表;
连接关系表获得模块502,用于根据子网中网络设备的地址解析表、接口表、地址转发表,获得网络设备的连接关系表,所述连接关系表包括至少一条网络设备之间的连接关系,所述连接关系包括连接方向;
直接连接关系获得模块503,用于重复执行如下步骤,直至获得子网中网络设备的所有直接连接关系:根据连接关系表,确定叶节点网络设备;获得叶节点网络设备的直接连接关系;删除目的网络设备为叶节点网络设备的连接关系;
拓扑图生成模块504,用于根据子网中网络设备的所有直接连接关系,生成子网的拓扑图。
在一实施例中,连接关系表获得模块502可以具体用于:
获取子网中网络设备的IP;
根据子网中网络设备的IP和接口表,查找网络设备的接口;
根据子网中网络设备的接口和地址转发表,查找目的网络设备的MAC地址;
根据子网中目的网络设备的MAC地址和地址解析表,查找目的网络设备的IP;
确定网络设备与对应的目的网络设备之间的连接方向;
根据子网中网络设备的IP、网络设备的接口、目的网络设备的IP、网络设备与对应的目的网络设备之间的连接方向,生成至少一条连接关系;
将至少一条连接关系汇总成连接关系表。
在一实施例中,直接连接关系获得模块503可以具体用于:
根据连接关系表,将连接方向仅存在上行连接的网络设备确定为叶节点网络设备。
在一实施例中,直接连接关系获得模块503可以进一步用于:
根据连接关系表,获得至少一连接关系集合,每一连接关系集合包括同一网络设备的接口;
对每一连接关系集合,若该集合中的目的网络设备均为叶节点网络设备,确定该集合中的连接关系为直接连接关系。
在一实施例中,拓扑图生成模块504可以具体用于:
根据子网中网络设备的接口表,对每一直接连接关系,获得该直接连接关系中目的网络设备的接口;
根据子网中所有直接连接关系和所有目的网络设备的接口,生成子网的拓扑图。
综上所述,在本发明实施例中,根据子网中网络设备的地址解析表、接口表、地址转发表,获得网络设备的连接关系表,所述连接关系表包括至少一条网络设备之间的的连接关系,所述连接关系包括连接方向;重复执行如下步骤,直至获得子网中网络设备的所有直接连接关系:根据连接关系表,确定叶节点网络设备;获得叶节点网络设备的直接连接关系,在该步骤中,从叶节点网络设备开始查找直接连接关系,属于一种自下而上的查找方式,计算复杂度低,收敛速度快;删除目的网络设备为叶节点网络设备的连接关系;根据子网中网络设备的所有直接连接关系,生成子网的拓扑图。本发明实施例由于采用自下而上的查找方式,降低了计算复杂度,提高了收敛速度。
另外,对每一连接关系集合,若确定该集合中的连接关系为直接连接关系,则正常情况下,该集合中应该只有一条直接连接关系,当该集合中出现多个连接关系时,则表明该集合中的网络设备与目的网络设备之间存在着集线器(HUB)或未知交换机设备,因此本发明实施例提出的方法可以发现集线器(HUB)或遗漏的交换机;本发明实施例提出的方法生成的子网的拓扑图包含方向。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于SNMP的数据链路层网络拓扑发现方法,其特征在于,包括:
获取子网中网络设备的地址解析表、接口表、地址转发表;
根据子网中网络设备的地址解析表、接口表、地址转发表,获得网络设备的连接关系表,所述连接关系表包括至少一条网络设备之间的的连接关系,所述连接关系包括连接方向;
重复执行如下步骤,直至获得子网中网络设备的所有直接连接关系:根据连接关系表,确定叶节点网络设备;获得叶节点网络设备的直接连接关系;删除目的网络设备为叶节点网络设备的连接关系;
根据子网中网络设备的所有直接连接关系,生成子网的拓扑图。
2.如权利要求1所述的基于SNMP的数据链路层网络拓扑发现方法,其特征在于,根据子网中网络设备的地址解析表、接口表、地址转发表,获得网络设备的连接关系表,包括:
获取子网中网络设备的IP;
根据子网中网络设备的IP和接口表,查找网络设备的接口;
根据子网中网络设备的接口和地址转发表,查找目的网络设备的MAC地址;
根据子网中目的网络设备的MAC地址和地址解析表,查找目的网络设备的IP;
确定网络设备与对应的目的网络设备之间的连接方向;
根据子网中网络设备的IP、网络设备的接口、目的网络设备的IP、网络设备与对应的目的网络设备之间的连接方向,生成至少一条连接关系;
将至少一条连接关系汇总成连接关系表。
3.如权利要求1所述的基于SNMP的数据链路层网络拓扑发现方法,其特征在于,根据连接关系表,确定叶节点网络设备,包括:
根据连接关系表,将连接方向仅存在上行连接的网络设备确定为叶节点网络设备。
4.如权利要求1所述的基于SNMP的数据链路层网络拓扑发现方法,其特征在于,获得叶节点网络设备的直接连接关系,包括:
根据连接关系表,获得至少一连接关系集合,每一连接关系集合包括同一网络设备的接口;
对每一连接关系集合,若该连接关系集合中的目的网络设备均为叶节点网络设备,确定该连接关系集合中的连接关系为直接连接关系。
5.如权利要求1所述的基于SNMP的数据链路层网络拓扑发现方法,其特征在于,根据子网中网络设备的所有直接连接关系,生成子网的拓扑图,包括:
根据子网中网络设备的接口表,对每一直接连接关系,获得该直接连接关系中目的网络设备的接口;
根据子网中所有直接连接关系和所有目的网络设备的接口,生成子网的拓扑图。
6.一种基于SNMP的数据链路层网络拓扑发现装置,其特征在于,包括:
数据获取模块,用于获取子网中网络设备的地址解析表、接口表、地址转发表;
连接关系表获得模块,用于根据子网中网络设备的地址解析表、接口表、地址转发表,获得网络设备的连接关系表,所述连接关系表包括至少一条网络设备之间的连接关系,所述连接关系包括连接方向;
直接连接关系获得模块,用于重复执行如下步骤,直至获得子网中网络设备的所有直接连接关系:根据连接关系表,确定叶节点网络设备;获得叶节点网络设备的直接连接关系;删除目的网络设备为叶节点网络设备的连接关系;
拓扑图生成模块,用于根据子网中网络设备的所有直接连接关系,生成子网的拓扑图。
7.如权利要求6所述的基于SNMP的数据链路层网络拓扑发现装置,其特征在于,连接关系表获得模块具体用于:
获取子网中网络设备的IP;
根据子网中网络设备的IP和接口表,查找网络设备的接口;
根据子网中网络设备的接口和地址转发表,查找目的网络设备的MAC地址;
根据子网中目的网络设备的MAC地址和地址解析表,查找目的网络设备的IP;
确定网络设备与对应的目的网络设备之间的连接方向;
根据子网中网络设备的IP、网络设备的接口、目的网络设备的IP、网络设备与对应的目的网络设备之间的连接方向,生成至少一条连接关系;
将至少一条连接关系汇总成连接关系表。
8.如权利要求6所述的基于SNMP的数据链路层网络拓扑发现装置,其特征在于,拓扑图生成模块具体用于:
根据子网中网络设备的接口表,对每一直接连接关系,获得该直接连接关系中目的网络设备的接口;
根据子网中所有直接连接关系和所有目的网络设备的接口,生成子网的拓扑图。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5任一所述方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至5任一所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811412783.9A CN111224802A (zh) | 2018-11-23 | 2018-11-23 | 基于snmp的数据链路层网络拓扑发现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811412783.9A CN111224802A (zh) | 2018-11-23 | 2018-11-23 | 基于snmp的数据链路层网络拓扑发现方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111224802A true CN111224802A (zh) | 2020-06-02 |
Family
ID=70831957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811412783.9A Pending CN111224802A (zh) | 2018-11-23 | 2018-11-23 | 基于snmp的数据链路层网络拓扑发现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111224802A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111934921A (zh) * | 2020-07-29 | 2020-11-13 | 深信服科技股份有限公司 | 一种网络拓扑发现方法及装置、设备、存储介质 |
WO2022042133A1 (zh) * | 2020-08-26 | 2022-03-03 | 华为技术有限公司 | 一种通信方法及相关装置 |
CN114285718A (zh) * | 2021-12-28 | 2022-04-05 | 北京航天数据股份有限公司 | 一种拓扑生成方法、装置、电子设备及存储介质 |
CN115514653A (zh) * | 2022-10-09 | 2022-12-23 | 科来网络技术股份有限公司 | 工控网络的拓扑图生成方法、装置、电子设备及存储介质 |
CN117176639A (zh) * | 2023-11-02 | 2023-12-05 | 北京邮电大学 | 一种基于多协议的网络拓扑自动发现方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090016355A1 (en) * | 2007-07-13 | 2009-01-15 | Moyes William A | Communication network initialization using graph isomorphism |
CN101610178A (zh) * | 2009-07-20 | 2009-12-23 | 南京联创科技股份有限公司 | 基于地址转发机制的物理层链路网络拓扑获得方法 |
CN101873229A (zh) * | 2010-06-24 | 2010-10-27 | 东软集团股份有限公司 | 基于snmp的网络拓扑发现方法及装置 |
CN101873230A (zh) * | 2010-07-05 | 2010-10-27 | 北京星网锐捷网络技术有限公司 | 物理网络拓扑的发现方法及装置 |
CN104579979A (zh) * | 2015-01-21 | 2015-04-29 | 武汉微创光电股份有限公司 | 一种基于mac信息的网络拓扑发现方法 |
-
2018
- 2018-11-23 CN CN201811412783.9A patent/CN111224802A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090016355A1 (en) * | 2007-07-13 | 2009-01-15 | Moyes William A | Communication network initialization using graph isomorphism |
CN101610178A (zh) * | 2009-07-20 | 2009-12-23 | 南京联创科技股份有限公司 | 基于地址转发机制的物理层链路网络拓扑获得方法 |
CN101873229A (zh) * | 2010-06-24 | 2010-10-27 | 东软集团股份有限公司 | 基于snmp的网络拓扑发现方法及装置 |
CN101873230A (zh) * | 2010-07-05 | 2010-10-27 | 北京星网锐捷网络技术有限公司 | 物理网络拓扑的发现方法及装置 |
CN104579979A (zh) * | 2015-01-21 | 2015-04-29 | 武汉微创光电股份有限公司 | 一种基于mac信息的网络拓扑发现方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111934921A (zh) * | 2020-07-29 | 2020-11-13 | 深信服科技股份有限公司 | 一种网络拓扑发现方法及装置、设备、存储介质 |
CN111934921B (zh) * | 2020-07-29 | 2023-11-07 | 深信服科技股份有限公司 | 一种网络拓扑发现方法及装置、设备、存储介质 |
WO2022042133A1 (zh) * | 2020-08-26 | 2022-03-03 | 华为技术有限公司 | 一种通信方法及相关装置 |
CN114285718A (zh) * | 2021-12-28 | 2022-04-05 | 北京航天数据股份有限公司 | 一种拓扑生成方法、装置、电子设备及存储介质 |
CN114285718B (zh) * | 2021-12-28 | 2024-02-09 | 北京航天数据股份有限公司 | 一种拓扑生成方法、装置、电子设备及存储介质 |
CN115514653A (zh) * | 2022-10-09 | 2022-12-23 | 科来网络技术股份有限公司 | 工控网络的拓扑图生成方法、装置、电子设备及存储介质 |
CN115514653B (zh) * | 2022-10-09 | 2024-07-26 | 科来网络技术股份有限公司 | 工控网络的拓扑图生成方法、装置、电子设备及存储介质 |
CN117176639A (zh) * | 2023-11-02 | 2023-12-05 | 北京邮电大学 | 一种基于多协议的网络拓扑自动发现方法和装置 |
CN117176639B (zh) * | 2023-11-02 | 2024-03-08 | 北京邮电大学 | 一种基于多协议的网络拓扑自动发现方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111224802A (zh) | 基于snmp的数据链路层网络拓扑发现方法及装置 | |
JP7108674B2 (ja) | 故障根本原因決定方法及び装置並びにコンピュータ記憶媒体 | |
US8848544B2 (en) | Event correlation using network data flow simulation over unmanaged network segments | |
CN102164091B (zh) | 一种mac地址表建立方法及运营商边缘设备 | |
US11252126B1 (en) | Domain name resolution in environment with interconnected virtual private clouds | |
CN107395532B (zh) | 一种基于sdn的多租户虚拟网络隔离方法 | |
US20100316056A1 (en) | Techniques for routing data between network areas | |
US6944130B1 (en) | Method and apparatus for determining a layer 2 path in a switched network | |
CN106254256B (zh) | 基于三层vxlan网关的数据报文转发方法和设备 | |
US8615015B1 (en) | Apparatus, systems and methods for aggregate routes within a communications network | |
JP7416919B2 (ja) | データ処理方法及び装置並びにコンピュータ記憶媒体 | |
US11695681B2 (en) | Routing domain identifier assignment in logical network environments | |
WO2013049989A1 (en) | Layer two interconnection between data centers | |
CN111988439B (zh) | 一种arp请求抑制系统、方法、设备及存储介质 | |
CN106302076B (zh) | 建立vxlan隧道的方法、系统及sdn控制器 | |
CN112242952B (zh) | 一种数据转发方法、柜顶式交换机和存储介质 | |
JP7032251B2 (ja) | 障害影響範囲の推論装置、障害原因の推論装置、障害影響範囲の推論方法、障害原因の推論方法、及びプログラム | |
CN109728959A (zh) | 一种网络拓扑结构自动分析方法、装置和设备 | |
CN114827015B (zh) | 一种数据转发方法和虚拟化云网络架构 | |
Chiueh et al. | Peregrine: An all-layer-2 container computer network | |
US20180217860A1 (en) | Integrated network data collection apparatus and method | |
Shpiner et al. | SAL: Scaling data centers using smart address learning | |
Andreev et al. | An algorithm for building an enterprise network topology using widespread data sources | |
CN111355599A (zh) | 混合网络拓扑发现方法及装置 | |
Zhangchao et al. | An algorithm and implementation of network topology discovery based on SNMP |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200602 |