CN113542015A - 一种自动绘制网络物理链路方法 - Google Patents

一种自动绘制网络物理链路方法 Download PDF

Info

Publication number
CN113542015A
CN113542015A CN202110731309.8A CN202110731309A CN113542015A CN 113542015 A CN113542015 A CN 113542015A CN 202110731309 A CN202110731309 A CN 202110731309A CN 113542015 A CN113542015 A CN 113542015A
Authority
CN
China
Prior art keywords
equipment
link
network
information
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.)
Granted
Application number
CN202110731309.8A
Other languages
English (en)
Other versions
CN113542015B (zh
Inventor
裴德豪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Abt Networks Co ltd
Original Assignee
Wuhan Sipuling Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan Sipuling Technology Co Ltd filed Critical Wuhan Sipuling Technology Co Ltd
Priority to CN202110731309.8A priority Critical patent/CN113542015B/zh
Publication of CN113542015A publication Critical patent/CN113542015A/zh
Application granted granted Critical
Publication of CN113542015B publication Critical patent/CN113542015B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种自动绘制网络物理链路方法,该方法包括:采集网络设备的设备信息;根据所述设备信息,针对不同的设备部署层级,进行不同的链路计算,并进行链路优先级排序,确定最终链路数据;根据所述设备信息和所述最终链路数据,确定图结构数据,并基于所述图结构数据,绘制物理链路拓扑图。本发明采集设备和链路有关的信息,解析成相应的链路模型,自动绘制完整的物理链路拓扑图,可以有效的帮助网络管理员以可视的手段了解全网设备物理连接情况,作为高效的辅助排查手段,定位并解决网络问题,便于大规模网络设备的管理。

Description

一种自动绘制网络物理链路方法
技术领域
本发明涉及计算机安全技术领域,尤其涉及一种自动绘制网络物理链路方法。
背景技术
目前的网络管理中存在两种类型链路绘制,一是逻辑链路拓扑,对应OSI七层参考模型中的网络层,它描述的是路由器之间、子网之间的连接关系;二是物理链路拓扑,即链路层的网络拓扑,它描述的是网络中各设备之间的连接关系,包括路由器、防火墙、交换机、网络终端等之间的连接关系。
企业网络规模大,安全要求高;安全设备及交换设备非常多,设备规模庞大从几百上千甚至万台设备,设备实际物理连接关系错综复杂;逻辑网络拓扑不能反映这些关系,要想完成网络中各种设备的有效管理,必须借助于链路层的网络拓扑。因此,研究一种可靠、快捷的网络物理链路绘制方法是当前需要解决的问题。
发明内容
有鉴于此,有必要提供一种自动绘制网络物理链路方法,用以解决现有技术中网络物理链路绘制复杂困难的问题。
本发明提供一种自动绘制网络物理链路方法,包括:
采集网络设备的设备信息;
根据所述设备信息,针对不同的设备部署层级,进行不同的链路计算,并进行链路优先级排序,确定最终链路数据;
根据所述设备信息和所述最终链路数据,确定图结构数据,并基于所述图结构数据,绘制物理链路拓扑图。
进一步地,所述设备信息包括设备系统信息,所述采集网络设备的设备信息包括:
输入待扫描的所述网络设备的设备IP;
基于输入的所述设备IP,使用PING协议,判断网络是否连通,若连通,则采集所述设备系统信息;
根据所述设备系统信息,对所述网络设备进行自动分组,确定所述网络设备所属组织架构或者管理区域;
根据所述设备系统信息,对所述网络设备进行自动分类,确定所述网络设备所属设备厂商及设备类型;
根据所述设备系统信息,对所述网络设备进行设备分层,确定所述网络设备所属的设备层级。
进一步地,所述设备系统信息包括设备IP及设备名称,所述根据分组规则,对所述网络设备进行自动分组包括:
获取所述网络设备的所述设备IP及所述设备名称;
将所述设备IP与预设的多个分组的IP范围进行循环遍历的匹配,若其中一个分组的IP范围包含所述设备IP,则确定对应的分组,并终止循环;
若所有分组的IP范围都不包含所述设备IP,则根据所述设备名称的关键字与预设的多个分组的设备名称前缀进行循环遍历的匹配,若匹配,则确定对应的分组,并终止循环。
进一步地,所述设备系统信息包括设备IP及设备名称,所述根据分类规则,对所述网络设备进行自动分类包括:
获取所述网络设备的所述设备IP及所述设备名称;
使用所述网络设备的库节点匹配预设的多个规则授权标识符,并根据匹配到的规则授权标识符确定对应的设备厂商及设备类型;
若未匹配到所述规则授权标识符,则根据所述设备名称匹配预设的多个规则表达式,并根据匹配到的规则表达式确定对应的设备厂商及设备类型。
进一步地,所述设备系统信息包括设备名称,所述根据分层规则,对所述网络设备进行设备分层,确定所述网络设备所属的设备层级包括:
获取所述网络设备的所述设备名称;
基于所述设备名称,与预设的多个正则表达式进行循环遍历的匹配;
若匹配,则根据匹配的正则表达式确定对应的设备层级;
若不匹配,则对应的设备层级为默认层级。
进一步地,所述设备信息还包括设备表信息,所述设备表信息包括端口表、ARP表、MAC转发表、路由表、LLDP表、CDP缓存表,所述自动发现设备,并采集设备信息还包括:
基于预设协议,解析所述网络设备的所述端口表、所述ARP表、所述MAC转发表、所述路由表、所述LLDP表、所述CDP缓存表;
其中,所述预设协议包括SNMP协议、API方式、SSH协议中的至少一种。
进一步地,所述针对不同的设备部署层级,进行不同的链路计算包括:
对于支持LLDP协议或CDP协议的所述网络设备,解析对应的LLDP数据或CDP数据,确定对应的物理链路信息;
对于不支持LLDP协议或CDP协议的所述网络设备,根据设备部署层级,确定对应的层级链路算法计算链路,确定对应的物理链路信息。
进一步地,所述物理链路信息包括二层链路数据和三层链路数据,所述根据所述设备层级,确定对应的层级链路算法计算链路,确定对应的物理链路信息包括:
当所述设备部署层级属于二层部署设备,则使用二层链路算法计算链路;
当所述设备部署层级属于三层部署设备,则使用三层链路算法计算链路;
其中,所述二层链路算法包括:
在所述MAC转发表中,根据本端端口在本端设备端口表中找到对应的本端端口,并通过对端端口mac地址全量搜索匹配所有设备端口mac地址确定对端端口;
根据所述本端端口和所述对端端口的映射关系,转化为设备端口之间的所述二层链路数据;
根据两端设备的所述设备部署层级及所述设备层级加入链路标签,数据库存储备用;
其中,所述三层链路算法包括:
在所述路由表中,根据本端端口在本端设备端口表中找到对应的本端端口,并通过对端端口ip地址全量搜索匹配所有设备端口ip地址确定对端端口;
根据所述本端端口和所述对端端口的映射关系,转化为设备端口之间的所述三层链路数据;
根据两端设备的所述设备部署层级及所述设备层级加入链路标签,数据库存储备用。
进一步地,所述进行链路优先级排序,确定最终链路数据包括:
根据所述链路标签中的设备层级确定两待连接网络设备的层级之差,若所述层级之差大于预设值,则过滤排除,以禁止连接;
根据系统部署网络环境,则根据新增的排序过滤规则再次处理所述二层链路数据和所述三层链路数据,确定并存储所述最终链路数据。
进一步地,所述根据所述设备信息和所述最终链路数据,确定图结构数据,并基于所述图结构数据,绘制物理链路拓扑图包括:
将分组内的所有已明确所述设备厂商及所述设备类型的所述网络设备作为绘制节点;
根据所述最终链路数据,计算所述绘制节点之间的相互连接关系;
基于图数据结构存储数据,将所述绘制节点和所述相互连接关系,存储为对应的邻接表或二维矩阵;
基于所述邻接表或所述二维矩阵进行数据图层渲染,自动绘制所述物理链路拓扑图。
与现有技术相比,本发明的有益效果包括:首先,对范围内的网络设备进行自动采集对应的设备信息,可以反映网络设备的厂商信息、ip信息等多种有效信息,以便后续根据相关设备信息进行链路计算;然后,基于多种设备信息,分情况采用不同的算法进行链路计算,确定其中的链路连接方式,同时进行链路优先级排序,过滤其中的无效数据,更为准确地确定最终链路数据;最后,结合设备信息(设备厂商信息等)和最终链路数据,以图结构数据的形式进行渲染,确定最终的物理链路拓扑图。综上,本发明采集设备和链路有关的信息,解析成相应的链路模型,自动绘制完整的物理链路拓扑图,可以有效的帮助网络管理员以可视的手段了解全网设备物理连接情况,作为高效的辅助排查手段,定位并解决网络问题,便于大规模网络设备的管理。
附图说明
图1为本发明提供的自动绘制网络物理链路方法一实施例的流程示意图;
图2为本发明提供的图1中步骤S1一实施例的流程示意图;
图3为本发明提供的图2中步骤S13一实施例的流程示意图;
图4为本发明提供的图2中步骤S14一实施例的流程示意图;
图5为本发明提供的图2中步骤S15一实施例的流程示意图;
图6为本发明提供的图1中步骤S2一实施例的流程示意图一;
图7为本发明提供的图6中步骤S22一实施例的流程示意图;
图8为本发明提供的图1中步骤S2一实施例的流程示意图二;
图9为本发明提供的图1中步骤S3一实施例的流程示意图。
具体实施方式
下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理,并非用于限定本发明的范围。
在本发明的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。此外,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明的描述中,提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,所描述的实施例可以与其它实施例相结合。
本发明实施例提供了一种自动绘制网络物理链路方法,结合图1来看,图1为本发明提供的自动绘制网络物理链路方法一实施例的流程示意图,包括步骤S1至步骤S3,其中:
在步骤S1中,自动发现网络设备,并采集设备信息;其中,设备信息包括设备系统信息和设备表信息,设备系统信息包括设备名称sysName,设备描述sysDescr,设备私有MIB库标识sysObjectID,设备服务层级sysServices,可利用sysName、sysObjectID及IP地址;设备表信息包括端口表、ARP表、MAC转发表、路由表、LLDP表、CDP缓存表;
在步骤S2中,根据所述设备信息,针对不同的设备部署层级,进行不同的链路计算,并进行链路优先级排序,确定最终链路数据;
在步骤S3中,根据所述设备信息和所述最终链路数据,确定图结构数据,并基于所述图结构数据,绘制物理链路拓扑图。
上述方法通过终端的服务器实现,终端的服务器采集多种网络设备的设备信息,基于上述方法,生成物理链路拓扑图,并通过终端可视化,方便用户的查看,使用户对网络设备的管理效率大大提高。
在本发明实施例中,首先,对范围内的网络设备进行自动采集对应的设备信息,可以反映网络设备的厂商信息、ip信息等多种有效信息,以便后续根据相关设备信息进行链路计算;然后,基于多种设备信息,分情况采用不同的算法进行链路计算,确定其中的链路连接方式,同时进行链路优先级排序,过滤其中的无效数据,更为准确地确定最终链路数据;最后,结合设备信息(设备厂商信息等)和最终链路数据,以图结构数据的形式进行渲染,确定最终的物理链路拓扑图。
需要说明的是,设备部署层级包括二层部署设备、三层部署设备,其中,二层部署设备和三层部署设备按照逻辑拓扑结构进行的分类,其网络结构存在不同,二层网络中只有核心层和接入层,三层网络中有核心层,汇聚层和接入层。一般而言,二层网络的组网能力非常有限,一般只是小局域网;三层网络则可以组大型的网络。
作为优选的实施例,结合图2来看,图2为本发明提供的图1中步骤S1一实施例的流程示意图,步骤S1包括步骤S11至步骤S15,其中:
在步骤S11中,输入待扫描的所述网络设备的设备IP;
在步骤S12中,基于输入的所述设备IP,使用PING协议,判断网络是否连通,若连通,则采集所述设备系统信息;
在步骤S13中,根据所述设备系统信息,对所述网络设备进行自动分组,确定所述网络设备所属组织架构或者管理区域;
在步骤S14中,根据所述设备系统信息,对所述网络设备进行自动分类,确定所述网络设备所属设备厂商及设备类型;
在步骤S15中,根据所述设备系统信息,对所述网络设备进行设备分层,确定所述网络设备所属的设备层级。
作为具体实施例,本发明实施例首先对多种网络设备判断连通性,进而根据其设备系统信息,进行分组、分类和分层,以此获取多方面的设备信息。
在本发明一个具体的实施例中,步骤S11中,通过以下三种方式获取待扫描的IP:
第一,输入IP发现范围:可以是一个IP,或者子网,或者是IP范围;
示例:192.168.215.2/32或192.168.215.2/16或192.168.215.1-192.168.215.55;
第二,第三方平台输入IP集合;
示例:[192.168.215.1,192.168.215.33,192.168.215.35,192.168.215.41];
第二,输入种子IP;
示例:192.168.215.1;
其中,针对第一种和第二种两种输入方式,可直接解析得到具体的IP地址集合,依次循环遍历采集设备信息;
其中,针对第三中输入方式,扫描种子IP对应设备信息后,将该设备采集到的ARP缓存表中非本设备的IP地址放入待发现IP集合中,将本设备IP放入已扫描IP集合;
从待发现IP集合中取出一个IP地址,发现并采集设备信息;先将此IP地址放入已扫描IP集合中;接下来若能采集到具体信息,取出设备的ARP缓存表所有IP地址,遍历这部分IP地址集合,判断已扫描IP集合若不包含此IP地址,将此IP地址放入待发现IP集合中,若包含,则丢弃;重复此步骤,直到待发现IP集合为空时,停止发现。
作为优选的实施例,结合图3来看,图3为本发明提供的图2中步骤S13一实施例的流程示意图,包括步骤S131至步骤S133,其中:
在步骤S131中,获取所述网络设备的所述设备IP及所述设备名称;
在步骤S132中,将所述设备IP与预设的多个分组的IP范围进行循环遍历的匹配,若其中一个分组的IP范围包含所述设备IP,则确定对应的分组,并终止循环;
在步骤S133中,若所有分组的IP范围都不包含所述设备IP,则根据所述设备名称的关键字与预设的多个分组的设备名称前缀进行循环遍历的匹配,若匹配,则确定对应的分组,并终止循环。
作为具体实施例,本发明实施例依据设备IP和设备名称,进行有效的分组,确定所述网络设备所属组织架构或者管理区域。
在本发明一个具体的实施例中,对网络设备进行分组,用于自动判断设备所属组织架构或者管理区域,便于设备管理。分组的定义在于:确定分组名称及与其他分组间的上下级关系;确定分组包含的IP范围,包含的设备名称前缀,包含的设备名称关键字。涉及的匹配逻辑顺序为:对于一个确定IP及名称的设备,循环遍历所有分组,先匹配所有分组IP范围是否包含设备IP,若包含,则确定该设备分组,终止循环;若不包含,重新循环遍历所有分组,使用设备名称匹配所有分组包含的设备名称前缀,若匹配,则确定该设备分组,终止循环;若不匹配,重新循环遍历所有分组,使用设备名称匹配所有分组包含的设备名称关键字,若匹配,则确定该设备分组,终止循环;若上述都未匹配上,设备未分组。
作为优选的实施例,结合图4来看,图4为本发明提供的图2中步骤S14一实施例的流程示意图,包括步骤S141至步骤S143,其中:
在步骤S141中,获取所述网络设备的所述设备IP及所述设备名称;
在步骤S142中,使用所述网络设备的库节点匹配预设的多个规则授权标识符,并根据匹配到的规则授权标识符确定对应的设备厂商及设备类型;
在步骤S143中,若未匹配到所述规则授权标识符,则根据所述设备名称匹配预设的多个规则表达式,并根据匹配到的规则表达式确定对应的设备厂商及设备类型。
作为具体实施例,本发明实施例依据设备IP和设备名称,进行有效的分类,确定所述网络设备所属设备厂商及设备类型。
在本发明一个具体的实施例中,分类规则用于自动判断设备厂商及设备类型,设备类型包括:防火墙、路由器、交换机、负载均衡。对应的定义为确定规则名称,授权标识符,规则表达式;匹配规则后对应的设备厂商和类型。涉及的匹配逻辑为对于一个确定IP及名称的设备,循环遍历所有规则,先使用设备sysObjectID(SNMP MIB库节点)匹配规则授权标识符,若匹配,则确定该设备厂商及类型;若不匹配,再使用设备名称匹配规则表达式,若匹配,则确定该设备厂商及类型;若未匹配,继续匹配下一规则;若所有规则均未匹配,设备为未知类型。
作为优选的实施例,结合图5来看,图5为本发明提供的图2中步骤S15一实施例的流程示意图,包括步骤S151至步骤S154,其中:
在步骤S151中,获取所述网络设备的所述设备名称;
在步骤S152中,基于所述设备名称,与预设的多个正则表达式进行循环遍历的匹配;
在步骤S153中,若匹配,则根据匹配的正则表达式确定对应的设备层级;
在步骤S154中,若不匹配,则对应的设备层级为默认层级。
作为具体实施例,本发明实施例依据设备名称,进行有效的设备层级分层,确定所述网络设备所属的设备层级。
在本发明一个具体的实施例中,设备层级用于在绘制物理链路时,设备可自动层次分明的布局到拓扑图层上。对应的定义为确定不同设备层级对应的设备名称正则表达式,涉及的匹配逻辑顺序为:对于一个确定名称的设备,循环遍历所有正则表达式,匹配设备名称,若匹配,则确定该设备层级,终止循环;若均未匹配,则设备为默认层级。
作为优选的实施例,所述设备信息还包括设备表信息,所述设备表信息包括端口表、ARP表、MAC转发表、路由表、LLDP表、CDP缓存表,所述自动发现设备,并采集设备信息还包括:
基于预设协议,解析所述网络设备的所述端口表、所述ARP表、所述MAC转发表、所述路由表、所述LLDP表、所述CDP缓存表;
其中,所述预设协议包括SNMP协议、API方式、SSH协议中的至少一种。
作为具体实施例,本发明实施例采用多种设备表信息,便于基于采集设备的多方面信息,进行后续的网络拓扑绘制,保证信息的广泛性,从而确保绘制的准确性。
在本发明一个具体的实施例中,针对上述输入的IP地址,先使用PING协议,确认设备网络是否连通;若连通,则先利用SNMP协议,采集MIB库system信息,得到设备系统信息;包含:设备名称sysName,设备描述sysDescr,设备私有MIB库标识sysObjectID,设备服务层级sysServices,可利用sysName、sysObjectID及IP地址,对设备进行分组、分类、设备层级判别;
其中,进一步通过以下三种方式采集设备6项表信息,包括端口表、ARP表、MAC转发表、路由表、LLDP表、CDP缓存表信息;
第一种方式,利用SNMP协议,解析MIB库信息。首先,设备需打开对SNMP的支持,并设置读写团体字等基础设置,是系统可通过SNMP协议连接设备;一般情况下使用MIB-2公有节点采集表信息,如下所示:
端口表:采集IF-MIB中IfTable信息,解析成对应的端口数据模型
ARP表:采集RFC1213-MIB中ipNetToMediaTable信息,解析成对应的ARP数据模型
MAC转发表:采集BRIDGE-MIB中dot1dTpFdbTable信息,解析成对应的MAC转发数据模型
路由表:采集RFC1213-MIB中ipRouteTable信息,解析成对应的路由数据模型
以上4种表项支持使用各设备厂商私有MIB库配置,对应的MIB-OID为各设备厂商私有定义节点;
以下两种表项不属于MIB-2公有节点
LLDP表:采集LLDP-MIB中lldpRemTable信息,解析成对应的LLDP数据模型
CDP缓存表:CDP为思科私有协议,仅对厂商为思科的设备进行采集,采集CISCO-CDP-MIB中cdpCacheTable解析成对应的CDP数据模型;
第二种方式,API方式,对接第三方平台采集。第三方平台6种表项数据均能提供时,才可选择此方式采集设备信息;
第三种方式,利用SSH协议,命令行读取配置后解析。选择此方式采集设备,根据具体的SSH参数配置连接设备,不同厂商使用不同的命令行获取表项文本信息,再解析成对应的数据模型。
需要说明的是,本发明优先使用第一种方式采集数据,第二种方式和第三种方式两种方式是在系统部署环境网络内设备对SNMP-MIB支持情况不良好的情况下,提供的采集数据能力补充;设备信息采集时仅能选择上述三种方式其中一种。
作为优选的实施例,结合图6来看,图6为本发明提供的图1中步骤S2一实施例的流程示意图一,包括步骤S21至步骤S22,其中:
在步骤S21中,对于支持LLDP协议或CDP协议的所述网络设备,解析对应的LLDP数据或CDP数据,确定对应的物理链路信息;
在步骤S22中,对于不支持LLDP协议或CDP协议的所述网络设备,根据设备部署层级,确定对应的层级链路算法计算链路,确定对应的物理链路信息。
作为具体实施例,本发明实施例对不同情况下的网络设备,采取不同的物理链路信息的提取方法,保证对链路信息的准确获取。
在本发明一个具体的实施例中,针对上述所有可ping通网络可达的设备,进行链路计算:
对于支持LLDP或CDP的设备,解析LLDP数据或CDP数据得到物理链路信息;LLDP数据及CDP数据中,均包含本端设备端口与对端设备端口的直接映射关系;直接转化为设备端口对设备端口的链路数据存储即可;
对于不支持的设备,二层部署设备使用二层链路算法(MAC-T)计算链路,三层部署设备使用三层链路算法(Route-T)计算链路。
作为优选的实施例,结合图7来看,图7为本发明提供的图6中步骤S22一实施例的流程示意图,包括步骤S221至步骤S222,其中:
在步骤S221中,当所述设备部署层级属于二层部署设备,则使用二层链路算法计算链路;
在步骤S222中,当所述设备部署层级属于三层部署设备,则使用三层链路算法计算链路。
作为具体实施例,本发明实施例通过对不同部署层级的网络设备进行不同算法的计算,保证对链路信息的准确获取。
作为优选的实施例,所述二层链路算法包括:
在所述MAC转发表中,根据本端端口ifIndex在本端设备端口表中找到对应的本端端口,并通过对端端口mac地址全量搜索匹配所有设备端口mac地址确定对端端口;
根据所述本端端口和所述对端端口的映射关系,转化为设备端口之间的所述二层链路数据;
根据两端设备的所述设备部署层级及所述设备层级加入链路标签,数据库存储备用。
作为具体实施例,本发明实施例采用二层链路算法,利用本端端口ifIndex、对端端口mac地址全量搜索,进行本端端口和对端端口的映射确定,转化为设备端口之间的二层链路数据,保证对二层部署的网络设备的链路信息的有效的获取。
作为优选的实施例,所述三层链路算法包括:
在所述路由表中,根据本端端口ifIndex在本端设备端口表中找到对应的本端端口,并通过对端端口ip地址全量搜索匹配所有设备端口ip地址确定对端端口;
根据所述本端端口和所述对端端口的映射关系,转化为设备端口之间的所述三层链路数据;
根据两端设备的所述设备部署层级及所述设备层级加入链路标签,数据库存储备用。
作为具体实施例,本发明实施例采用三层链路算法,利用本端端口ifIndex、对端端口ip地址全量搜索,进行本端端口和对端端口的映射确定,转化为设备端口之间的三层链路数据,保证对三层部署的网络设备的链路信息的有效的获取。
在本发明一个具体的实施例中,二层部署/三层部署自动判别的规则包括:不存在路由表,或路由表数据条目<=1,确认为二层部署;其余默认为三层部署;二三层混合部署特例暂不讨论。其中,二层部署/三层部署仅影响后续二层/三层链路算法计算得到的数据标签属性,进而影响后续对这部分数据的过滤排序结果。
在本发明一个具体的实施例中,二层链路算法(MAC-T)逻辑如下:基于上述MAC转发表数据,每条数据均是本端端口ifIndex与对端端口mac地址的映射;通过本端端口ifIndex在本端设备端口表中找到对应的本端端口,通过对端端口mac地址全量搜索匹配所有设备端口mac地址得到对端端口,这样就得到本端设备端口与对端设备端口的映射关系,转化为设备端口对设备端口的二层链路数据,并根据两端设备的部署层级及设备层级加入链路标签,数据库存储备用。
在本发明一个具体的实施例中,三层链路算法(Route-T)逻辑如下:基于上述路由表数据,每条数据均是本端端口ifIndex与对端端口ip地址的映射;通过本端端口ifIndex在本端设备端口表中找到对应的本端端口,通过对端端口ip地址全量搜索匹配所有设备端口ip地址得到对端端口,这样就得到本端设备端口与对端设备端口的映射关系,转化为设备端口对设备端口的三层链路数据,并根据两端设备的部署层级及设备层级加入链路标签,数据库存储备用。
在本发明一个具体的实施例中,若通过API方式或利用SSH协议方式采集的设备信息,MAC转发表及路由表不包含本端端口ifIndex,(ifIndex为MIB库独有信息),使用本端端口名称在本端设备端口表中找到对应的本端端口;上述链路标签包含以下两个:
部署层级标签:本端设备部署层级与对端设备部署层级的对应关系;
设备层级标签:本端设备层级与对端设备层级的对应关系。
作为优选的实施例,结合图8来看,图8为本发明提供的图1中步骤S2一实施例的流程示意图二,还包括步骤S23至步骤S24,其中:
在步骤S23中,根据所述链路标签中的设备层级确定两待连接网络设备的层级之差,若所述层级之差大于预设值,则过滤排除,以禁止连接;
在步骤S24中,根据系统部署网络环境,则根据新增的排序过滤规则再次处理所述二层链路数据和所述三层链路数据,确定并存储所述最终链路数据。
作为具体实施例,本发明实施例对上述物理链路信息进行进一步的排序过滤,保证数据的准确性。
在本发明一个具体的实施例中,依赖层级关系链路优先级排序包括:不允许跨设备层级连接:链路设备层级标签中,两设备层级之差>1或者<-1,均需过滤排除掉;允许根据系统部署网络环境,增加新的排序过滤规则进一步处理二三层链路数据;经上述排序过滤后,链路数据存储到最终的链路库中;
其中,还包括手工链路补充的过程,对于上述两种自动计算方式得到的链路数据,可能存在缺失的情况,提供手工方式补充链路数据;添加手工链路:选择两设备具体的端口进行添加,即为本端设备端口与对端设备端口的映射关系,转化为手工链路,数据库存储备用。
作为优选的实施例,结合图9来看,图9为本发明提供的图1中步骤S3一实施例的流程示意图,还包括步骤S31至步骤S34,其中:
在步骤S31中,将分组内的所有已明确所述设备厂商及所述设备类型的所述网络设备作为绘制节点;
在步骤S32中,根据所述最终链路数据,计算所述绘制节点之间的相互连接关系;
在步骤S33中,基于图数据结构存储数据,将所述绘制节点和所述相互连接关系,存储为对应的邻接表或二维矩阵;
在步骤S34中,基于所述邻接表或所述二维矩阵进行数据图层渲染,自动绘制所述物理链路拓扑图。
作为具体实施例,本发明实施例利用上述的设备信息和最终链路数据,确定节点和相互连接关系,以此高效绘制出物理链路拓扑图。
在本发明一个具体的实施例中,基于上述三种方式获取的链路数据,组织拓扑绘制数据,一般情况下,选取某一分组进行拓扑绘制,包括:
第一步,搜索所有设备信息获取此分组内所有已明确厂商及类型的设备,作为绘制节点;
第二步,基于上述存储的三类链路数据,计算出所有节点相互连接关系;
第三步,利用图(Graph)数据结构存储数据,将得到的设备节点(顶点)和节点连接关系(边),组织成邻接表或二维矩阵存储;
第四步,基于邻接表或二维矩阵渲染图层,自动绘制网络物理链路图。
本发明实施例还提供一种自动绘制网络物理链路系统,包括:
获取单元,用于自动发现网络设备,并采集设备信息;其中,设备信息包括设备系统信息和设备表信息,设备系统信息包括设备名称sysName,设备描述sysDescr,设备私有MIB库标识sysObjectID,设备服务层级sysServices,可利用sysName、sysObjectID及IP地址;设备表信息包括端口表、ARP表、MAC转发表、路由表、LLDP表、CDP缓存表;
处理单元,用于根据所述设备信息,采用不同的算法进行链路计算,并进行链路优先级排序,确定最终链路数据;
绘制单元,根据所述设备信息和所述最终链路数据,确定图结构数据,并基于所述图结构数据,绘制物理链路拓扑图;
可视化单元,用于可视化所述物理链路拓扑图。
本发明实施例还提供一种自动绘制网络物理链路设备,包括多种网络设备和如上所述的自动绘制网络物理链路系统,其中,如上所述的自动绘制网络物理链路系统用于实现如上所述的自动绘制网络物理链路方法。
本发明公开了一种自动绘制网络物理链路方法,首先,对范围内的网络设备进行自动采集对应的设备信息,可以反映网络设备的厂商信息、ip信息等多种有效信息,以便后续根据相关设备信息进行链路计算;然后,基于多种设备信息,分情况采用不同的算法进行链路计算,确定其中的链路连接方式,同时进行链路优先级排序,过滤其中的无效数据,更为准确地确定最终链路数据;最后,结合设备信息(设备厂商信息等)和最终链路数据,以图结构数据的形式进行渲染,确定最终的物理链路拓扑图。
本发明技术方案,采集设备和链路有关的信息,解析成相应的链路模型,自动绘制完整的物理链路拓扑图,可以有效的帮助网络管理员以可视的手段了解全网设备物理连接情况,作为高效的辅助排查手段,定位并解决网络问题,便于大规模网络设备的管理。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

Claims (10)

1.一种自动绘制网络物理链路方法,其特征在于,包括:
采集网络设备的设备信息;
根据所述设备信息,针对不同的设备部署层级,进行不同的链路计算,并进行链路优先级排序,确定最终链路数据;
根据所述设备信息和所述最终链路数据,确定图结构数据,并基于所述图结构数据,绘制物理链路拓扑图。
2.根据权利要求1所述的自动绘制网络物理链路方法,其特征在于,所述设备信息包括设备系统信息,所述采集网络设备的设备信息包括:
输入待扫描的所述网络设备的设备IP;
基于输入的所述设备IP,判断网络是否连通,若连通,则采集所述设备系统信息;
根据所述设备系统信息,对所述网络设备进行自动分组,确定所述网络设备所属组织架构或者管理区域;
根据所述设备系统信息,对所述网络设备进行自动分类,确定所述网络设备所属设备厂商及设备类型;
根据所述设备系统信息,对所述网络设备进行设备分层,确定所述网络设备所属的设备层级。
3.根据权利要求2所述的自动绘制网络物理链路方法,其特征在于,所述设备系统信息包括设备IP及设备名称,所述根据分组规则,对所述网络设备进行自动分组包括:
获取所述网络设备的所述设备IP及所述设备名称;
将所述设备IP与预设的多个分组的IP范围进行循环遍历的匹配,若其中一个分组的IP范围包含所述设备IP,则确定对应的分组,并终止循环;
若所有分组的IP范围都不包含所述设备IP,则根据所述设备名称的关键字与预设的多个分组的设备名称前缀进行循环遍历的匹配,若匹配,则确定对应的分组,并终止循环。
4.根据权利要求2所述的自动绘制网络物理链路方法,其特征在于,所述设备系统信息包括设备IP及设备名称,所述根据分类规则,对所述网络设备进行自动分类包括:
获取所述网络设备的所述设备IP及所述设备名称;
使用所述网络设备的库节点匹配预设的多个规则授权标识符,并根据匹配到的规则授权标识符确定对应的设备厂商及设备类型;
若未匹配到所述规则授权标识符,则根据所述设备名称匹配预设的多个规则表达式,并根据匹配到的规则表达式确定对应的设备厂商及设备类型。
5.根据权利要求2所述的自动绘制网络物理链路方法,其特征在于,所述设备系统信息包括设备名称,所述根据分层规则,对所述网络设备进行设备分层,确定所述网络设备所属的设备层级包括:
获取所述网络设备的所述设备名称;
基于所述设备名称,与预设的多个正则表达式进行循环遍历的匹配;
若匹配,则根据匹配的正则表达式确定对应的设备层级;
若不匹配,则对应的设备层级为默认层级。
6.根据权利要求2所述的自动绘制网络物理链路方法,其特征在于,所述设备信息还包括设备表信息,所述设备表信息包括端口表、ARP表、MAC转发表、路由表、LLDP表、CDP缓存表,所述自动发现设备,并采集设备信息还包括:
基于预设协议,解析所述网络设备的所述端口表、所述ARP表、所述MAC转发表、所述路由表、所述LLDP表、所述CDP缓存表;
其中,所述预设协议包括SNMP协议、API方式、SSH协议中的至少一种。
7.根据权利要求6所述的自动绘制网络物理链路方法,其特征在于,所述针对不同的设备部署层级,进行不同的链路计算包括:
对于支持LLDP协议或CDP协议的所述网络设备,解析对应的LLDP数据或CDP数据,确定对应的物理链路信息;
对于不支持LLDP协议或CDP协议的所述网络设备,根据设备部署层级,确定对应的层级链路算法计算链路,确定对应的物理链路信息。
8.根据权利要求7所述的自动绘制网络物理链路方法,其特征在于,所述物理链路信息包括二层链路数据和三层链路数据,所述根据所述设备层级,确定对应的层级链路算法计算链路,确定对应的物理链路信息包括:
当所述设备部署层级属于二层部署设备,则使用二层链路算法计算链路;
当所述设备部署层级属于三层部署设备,则使用三层链路算法计算链路;
其中,所述二层链路算法包括:
在所述MAC转发表中,根据本端端口在本端设备端口表中找到对应的本端端口,并通过对端端口mac地址全量搜索匹配所有设备端口mac地址确定对端端口;
根据所述本端端口和所述对端端口的映射关系,转化为设备端口之间的所述二层链路数据;
根据两端设备的所述设备部署层级及所述设备层级加入链路标签,数据库存储备用;
其中,所述三层链路算法包括:
在所述路由表中,根据本端端口在本端设备端口表中找到对应的本端端口,并通过对端端口ip地址全量搜索匹配所有设备端口ip地址确定对端端口;
根据所述本端端口和所述对端端口的映射关系,转化为设备端口之间的所述三层链路数据;
根据两端设备的所述设备部署层级及所述设备层级加入链路标签,数据库存储备用。
9.根据权利要求8所述的自动绘制网络物理链路方法,其特征在于,所述进行链路优先级排序,确定最终链路数据包括:
根据所述链路标签中的设备层级确定两待连接网络设备的层级之差,若所述层级之差大于预设值,则过滤排除,以禁止连接;
根据系统部署网络环境,则根据新增的排序过滤规则再次处理所述二层链路数据和所述三层链路数据,确定并存储所述最终链路数据。
10.根据权利要求9所述的自动绘制网络物理链路方法,其特征在于,所述根据所述设备信息和所述最终链路数据,确定图结构数据,并基于所述图结构数据,绘制物理链路拓扑图包括:
将分组内的所有已明确所述设备厂商及所述设备类型的所述网络设备作为绘制节点;
根据所述最终链路数据,计算所述绘制节点之间的相互连接关系;
基于图数据结构存储数据,将所述绘制节点和所述相互连接关系,存储为对应的邻接表或二维矩阵;
基于所述邻接表或所述二维矩阵进行数据图层渲染,自动绘制所述物理链路拓扑图。
CN202110731309.8A 2021-06-29 2021-06-29 一种自动绘制网络物理链路方法 Active CN113542015B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110731309.8A CN113542015B (zh) 2021-06-29 2021-06-29 一种自动绘制网络物理链路方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110731309.8A CN113542015B (zh) 2021-06-29 2021-06-29 一种自动绘制网络物理链路方法

Publications (2)

Publication Number Publication Date
CN113542015A true CN113542015A (zh) 2021-10-22
CN113542015B CN113542015B (zh) 2022-09-27

Family

ID=78097255

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110731309.8A Active CN113542015B (zh) 2021-06-29 2021-06-29 一种自动绘制网络物理链路方法

Country Status (1)

Country Link
CN (1) CN113542015B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114257537A (zh) * 2021-12-06 2022-03-29 上海新炬网络信息技术股份有限公司 基于多维度优先的网络拓扑自发现方法
CN115277533A (zh) * 2022-07-20 2022-11-01 内蒙古电力(集团)有限责任公司内蒙古电力科学研究院 变电站静态物理链路拓扑自动绘制方法
CN116137594A (zh) * 2021-11-18 2023-05-19 中国移动通信集团重庆有限公司 一种网络拓扑的生成方法、装置、设备及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050120030A1 (en) * 2003-10-14 2005-06-02 Medicel Oy Visualization of large information networks
US20070115967A1 (en) * 2005-10-31 2007-05-24 Hewlett-Packard Development Company, L.P. Dynamic discovery of ISO layer-2 topology
CN103905314A (zh) * 2012-12-28 2014-07-02 上海斐讯数据通信技术有限公司 综合型网络拓扑发现方法
CN105812168A (zh) * 2014-12-31 2016-07-27 北京神州泰岳软件股份有限公司 一种绘制网络拓扑图的方法和装置
CN107104824A (zh) * 2017-03-31 2017-08-29 紫光华山信息技术有限公司 一种网络拓扑确定方法和装置
US20170359222A1 (en) * 2016-06-09 2017-12-14 Honeywell International Inc. Automation network topology determination for c&i systems
CN110661669A (zh) * 2019-10-11 2020-01-07 云南电网有限责任公司德宏供电局 一种基于icmp、tcp、udp协议的网络设备的网络拓扑自动发现方法
CN111371184A (zh) * 2020-04-14 2020-07-03 北京迈驰电气技术有限公司 一种基于线缆标识的电力设备拓扑结构及其自动识别方法
CN111865684A (zh) * 2020-07-17 2020-10-30 国网湖南省电力有限公司 局域网网络拓扑自动发现方法
CN112737853A (zh) * 2020-12-30 2021-04-30 北京安博通科技股份有限公司 一种网络拓扑图绘制方法、设备及存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050120030A1 (en) * 2003-10-14 2005-06-02 Medicel Oy Visualization of large information networks
US20070115967A1 (en) * 2005-10-31 2007-05-24 Hewlett-Packard Development Company, L.P. Dynamic discovery of ISO layer-2 topology
CN103905314A (zh) * 2012-12-28 2014-07-02 上海斐讯数据通信技术有限公司 综合型网络拓扑发现方法
CN105812168A (zh) * 2014-12-31 2016-07-27 北京神州泰岳软件股份有限公司 一种绘制网络拓扑图的方法和装置
US20170359222A1 (en) * 2016-06-09 2017-12-14 Honeywell International Inc. Automation network topology determination for c&i systems
CN107104824A (zh) * 2017-03-31 2017-08-29 紫光华山信息技术有限公司 一种网络拓扑确定方法和装置
CN110661669A (zh) * 2019-10-11 2020-01-07 云南电网有限责任公司德宏供电局 一种基于icmp、tcp、udp协议的网络设备的网络拓扑自动发现方法
CN111371184A (zh) * 2020-04-14 2020-07-03 北京迈驰电气技术有限公司 一种基于线缆标识的电力设备拓扑结构及其自动识别方法
CN111865684A (zh) * 2020-07-17 2020-10-30 国网湖南省电力有限公司 局域网网络拓扑自动发现方法
CN112737853A (zh) * 2020-12-30 2021-04-30 北京安博通科技股份有限公司 一种网络拓扑图绘制方法、设备及存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116137594A (zh) * 2021-11-18 2023-05-19 中国移动通信集团重庆有限公司 一种网络拓扑的生成方法、装置、设备及存储介质
CN114257537A (zh) * 2021-12-06 2022-03-29 上海新炬网络信息技术股份有限公司 基于多维度优先的网络拓扑自发现方法
CN115277533A (zh) * 2022-07-20 2022-11-01 内蒙古电力(集团)有限责任公司内蒙古电力科学研究院 变电站静态物理链路拓扑自动绘制方法
CN115277533B (zh) * 2022-07-20 2023-11-03 内蒙古电力(集团)有限责任公司内蒙古电力科学研究院分公司 变电站静态物理链路拓扑自动绘制方法

Also Published As

Publication number Publication date
CN113542015B (zh) 2022-09-27

Similar Documents

Publication Publication Date Title
CN113542015B (zh) 一种自动绘制网络物理链路方法
CN102801567B (zh) 分层网络拓扑自动发现的方法和分层网络拓扑组建的方法
EP1560379B1 (en) Methods and systems for unnumbered network link discovery
CN111934921B (zh) 一种网络拓扑发现方法及装置、设备、存储介质
CN108206792B (zh) 交换机的拓扑结构发现方法及装置
CN110661669A (zh) 一种基于icmp、tcp、udp协议的网络设备的网络拓扑自动发现方法
CA2669435A1 (en) Method and system for network topology discovery
CN107733713B (zh) 混合网络中网络拓扑的获取方法、系统、设备及存储介质
CN113452561B (zh) 一种拓扑生成方法、装置、设备及可读存储介质
CN105847023A (zh) 业务系统网络拓扑关系获取方法及装置
JP2016519911A (ja) コンピュータ実施方法、コンピュータプログラム製品及びコンピュータ
CN110932906A (zh) 基于snmp技术的数据中心网络拓朴结构发现方法及其拓朴结构发现系统
US7870246B1 (en) System, method, and computer program product for platform-independent port discovery
CN113612646B (zh) 一种基于邻居发现的园区网络拓扑可视化方法
CN104579978A (zh) 一种动态网络链路层拓扑发现方法
CN116545861A (zh) 网络拓扑图生成方法、装置和设备
US7733800B2 (en) Method and mechanism for identifying an unmanaged switch in a network
US20130246603A1 (en) System, method, and computer program product for automatic router discovery
CN110730093B (zh) 城域网网络拓扑测绘方法及装置
CN112134720A (zh) 一种网络拓扑发现方法
CN114257537B (zh) 基于多维度优先的网络拓扑自发现方法
CN113300880B (zh) 一种基于Tarjan算法的以太网交换机拓扑生成及绘制方法
CN115314392A (zh) 基于网络设备资源发现算法的自动生成网络拓扑系统及方法
Andreev et al. An algorithm for building an enterprise network topology using widespread data sources
CN113746950A (zh) Ip地址冲突预检测方法、系统、计算机设备及存储介质

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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20230510

Address after: 100120 room c0310, building 6, No.3, Dongbinhe Road, Deshengmen, Xicheng District, Beijing

Patentee after: BEIJING ABT NETWORKS CO.,LTD.

Address before: 430070 room 01, 3rd floor, building 11, phase I, Guanggu power energy saving and environmental protection technology business incubator (accelerator), No. 308, Guanggu Avenue, Donghu New Technology Development Zone, Wuhan City, Hubei Province

Patentee before: WUHAN SIPULING TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right