CN110932889B - 构建维护网络逻辑拓扑的方法及装置 - Google Patents
构建维护网络逻辑拓扑的方法及装置 Download PDFInfo
- Publication number
- CN110932889B CN110932889B CN201911125099.7A CN201911125099A CN110932889B CN 110932889 B CN110932889 B CN 110932889B CN 201911125099 A CN201911125099 A CN 201911125099A CN 110932889 B CN110932889 B CN 110932889B
- Authority
- CN
- China
- Prior art keywords
- topology
- logic topology
- logic
- items
- arp table
- 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
- 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
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/622—Layer-2 addresses, e.g. medium access control [MAC] addresses
-
- 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]
Abstract
本发明提供一种构建维护网络逻辑拓扑的方法及装置,其中,该方法包括:获取所有设备的全局配置数据、arp表、mac表;对arp表条目进行分类;对于相同接口名称的条目数量为二的一类条目,生成一个第一逻辑拓扑;第一逻辑拓扑为三层设备的逻辑拓扑;对于相同接口名称的条目数量大于二的一类条目,根据arp表和全局配置数据,对arp表条目进行分组,对于每一组arp表条目,构建一个第二逻辑拓扑;第二逻辑拓扑为三层设备的逻辑拓扑或三层设备下挂若干二层设备的逻辑拓扑;根据mac表,对第一、第二逻辑拓扑融合,得到维护网络逻辑拓扑。上述技术方案实现了快速准确地构建维护网络逻辑拓扑,从而提升了运维效率、减少了运维成本。
Description
技术领域
本发明涉及网络处理技术领域,特别涉及一种构建维护网络逻辑拓扑的方法及装置。
背景技术
在网络设备运维过程中,因项目中无拓扑资料,无网管或是网管拓扑管理过于简单,再或者网络拓扑不准的情况,或者临时运维需要时,无法快速准确地完成设备管理逻辑拓扑的构建。现有构建维护网络逻辑拓扑通过运维人员花费大量的时间手动实现,一般过程是:首先是获取所有设备的配置和arp(Address Resolution Protocol,地址解析协议),表信息、mac(Media Access Control Address,媒体存取控制位址,也称为局域网地址)表信息,以其中一台设备为起点,通过arp表动态学习的条目找出此设备所有的邻居设备,如果是纯粹的三层设备互联,依次查看上层设备的arp表就可确定上层和下层设备的互联关系,构建出完整的逻辑拓扑,难度在于mac地址本身的可读性差,加之每层的设备数量可能比较多,比对难度大。再有,如果某个三层设备开始出现可管理的二层设备网络,比如拓扑:城域网bras(网关地址1.1.1.1和8.8.8.1)连接一级交换机(管理地址:8.8.8.8)连接二级交换机(管理地址:1.1.1.2)连接三级交换机(管理地址:1.1.1.4)连接四级olt连接五级其他二层设备,可能存在某些交换机对于其他交换机来说是三层透明的,比如对于bras的arp表而言二级交换机1.1.1.2貌似和他是直连的,实际上有一个一级交换机在中间,这种情况使用arp构建连接逻辑拓扑不够准确,需要借助这个三层设备的全局配置以及相关二层设备的mac地址表,进行校正,难度进一步加大。因此单靠手动去构建可管理设备的网络逻辑拓扑所用时间过长,效率低且存在准确性问题,另外网络设备存在设备调整导致局部结构发生变化,逻辑拓扑需要重构。
针对上述问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种构建维护网络逻辑拓扑的方法,用以提高构建维护网络逻辑拓扑的效率和准确率,该方法包括:
获取所有设备的全局配置数据、arp表以及mac表;
根据arp表中每个条目的接口名称,对arp表条目进行分类,确定每一类arp表条目的数量;对于相同接口名称的条目数量为二的一类条目,生成一个第一逻辑拓扑;所述第一逻辑拓扑为三层设备的逻辑拓扑;对于相同接口名称的条目数量大于二的一类条目,根据相应设备的arp表和全局配置数据,对arp表条目进行分组,对于每一组arp表条目,构建一个第二逻辑拓扑;所述第二逻辑拓扑为三层设备的逻辑拓扑或三层设备下挂若干二层设备的逻辑拓扑;
根据mac表,对所述第一逻辑拓扑和第二逻辑拓扑进行融合,得到所述维护网络逻辑拓扑。
本发明实施例还提供了一种构建维护网络逻辑拓扑的装置,用以提高构建维护网络逻辑拓扑的效率和准确率,该装置包括:
获取单元,用于获取所有设备的全局配置数据、arp表以及mac表;
逻辑拓扑构建单元,用于根据arp表中每个条目的接口名称,对arp表条目进行分类,确定每一类arp表条目的数量;对于相同接口名称的条目数量为二的一类条目,生成一个第一逻辑拓扑;所述第一逻辑拓扑为三层设备的逻辑拓扑;对于相同接口名称的条目数量大于二的一类条目,根据相应设备的arp表和全局配置数据,对arp表条目进行分组,对于每一组arp表条目,构建一个第二逻辑拓扑;所述第二逻辑拓扑为三层设备的逻辑拓扑或三层设备下挂若干二层设备的逻辑拓扑;
融合单元,用于根据mac表,对所述第一逻辑拓扑和第二逻辑拓扑进行融合,得到所述维护网络逻辑拓扑。
本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述构建维护网络逻辑拓扑的方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述构建维护网络逻辑拓扑的方法的计算机程序。
本发明实施例提高的技术方案通过:获取所有设备的全局配置数据、arp表以及mac表;根据arp表中每个条目的接口名称,对arp表条目进行分类,确定每一类arp表条目的数量;对于相同接口名称的条目数量为二的一类条目,生成一个第一逻辑拓扑;所述第一逻辑拓扑为三层设备的逻辑拓扑;对于相同接口名称的条目数量大于二的一类条目,根据相应设备的arp表和全局配置数据,对arp表条目进行分组,对于每一组arp表条目,构建一个第二逻辑拓扑;所述第二逻辑拓扑为三层设备的逻辑拓扑或三层设备下挂若干二层设备的逻辑拓扑;根据mac表,对所述第一逻辑拓扑和第二逻辑拓扑进行融合,得到所述维护网络逻辑拓扑,实现了快速准确地完成设备管理逻辑拓扑的构建,提高了构建逻辑拓扑的准确率和效率,提升了运维效率、减少了运维成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中构建维护网络逻辑拓扑的方法的流程示意图;
图2是本发明实施例中设备的实际逻辑拓扑示意图;
图3a至图3c是本发明实施例中构建的多个第一逻辑拓扑示意图;
图4是本发明实施例中合并后的第一逻辑拓扑示意图;
图5a至图5b是本发明实施例中第二逻辑拓扑中三层设备下挂若干二层设备的逻辑拓扑示意图;
图6是本发明实施例中融合后的维护网络逻辑拓扑示意图;
图7是本发明实施例中在调整所述融合后的维护网络逻辑拓扑的过程中,得到的第一个调整维护网络逻辑拓扑示意图;
图8是本发明实施例中在调整所述融合后的维护网络逻辑拓扑的过程中,在图7中第一个调整维护网络逻辑拓的基础上,再次调整后的维护网络逻辑拓扑示意图;
图9是本发明另一实施例中构建维护网络逻辑拓扑的方法的流程示意图;
图10是本发明实施例中构建维护网络逻辑拓扑的装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
发明人考虑到了技术问题:想克服帮助工程师在网络设备运维过程中,构建可管理设备(可理解为存在arp表或者mac表的网络设备,拓扑构建需要这些表信息)网路逻辑拓扑效率低下及准确性差的问题。因此,提出了一种构建维护网络逻辑拓扑的方案,该方案将构建可管理设备网络逻辑拓扑由手动构建转变为自动生成方式,实现快速准确完成设备管理逻辑拓扑的构建、提高构建逻辑拓扑的准确率,提升运维效率、减少人工成本等。具体地,该方案主要包括:
在采集所有需要构建管理逻辑拓扑设备的全局配置以及arp信息表(每一行包含的条目:ip、mac、接口)、mac信息表(每一行包含的条目:mac、接口)基础上,利用计算机强大快速的处理能力,结合有效的逻辑算法,快速构建一个可管理设备的网络逻辑拓扑,首先要确定一个起点设备(一般为局域网出口设备或者城域网出口设备)假设为A,之后查看A的arp表,逐行按照每个条目的接口名称对arp表项进行分类,相同接口名称的条目属于一类,如果相同接口的条目数量为2(说明只有一个邻居)直接生成逻辑拓扑,构建一层从A开始的到A1的逻辑拓扑之后,以A1为起点继续构建,方法同上,依次进行如果条目数量都等于2,说明全网都是三层设备,直到叶子设备后整个逻辑拓扑构建完毕。但如果从某个三层设备开始(假设为A2),ARP表中相同接口的条目数量出现大于2的情况,说明从A2开始出现二层设备区域,具体处理方法是:需要根据A2的arp表和全局配置将这部分arp表内容进行分组,一个网段属于一组,每个分组通过arp表可以构建一个逻辑拓扑,最后再根据相关设备的mac地址表融合这些逻辑拓扑,形成一个真实的网络逻辑拓扑;此方案中网络逻辑拓扑的构建最多只需要几分钟,可以帮助网络工程师快速构建网络管理逻辑拓扑,提高构建网络逻辑拓扑的准确性和工程师的运维效率。
图1是本发明实施例中构建维护网络逻辑拓扑的方法的流程示意图,如图1所示,该方法包括如下步骤:
步骤101:获取所有设备的全局配置数据、arp表以及mac表;
步骤102:根据arp表中每个条目的接口名称,对arp表条目进行分类,确定每一类arp表条目的数量;对于相同接口名称的条目数量为二的一类条目,生成一个第一逻辑拓扑;所述第一逻辑拓扑为三层设备的逻辑拓扑;对于相同接口名称的条目数量大于二的一类条目,根据相应设备的arp表和全局配置数据,对arp表条目进行分组,对于每一组arp表条目,构建一个第二逻辑拓扑;所述第二逻辑拓扑为三层设备的逻辑拓扑或三层设备下挂若干二层设备的逻辑拓扑;
步骤103:根据mac表,对所述第一逻辑拓扑和第二逻辑拓扑进行融合,得到所述维护网络逻辑拓扑。
本发明实施例提供的技术方案实现了快速准确地完成设备管理逻辑拓扑的构建,提高了构建逻辑拓扑的准确率和效率,提升了运维效率、减少了运维成本。
下面对本发明实施例提供的各个步骤进行详细介绍如下。
一、首先,介绍上述步骤101。
具体实施时,采集所有需要构建管理逻辑拓扑设备的全局配置(城域网或者局域网所有设备的全局配置)以及arp信息表(arp表)、mac信息表(mac表,mac地址表),其中,arp信息表的每一行包含的条目:ip、mac、接口;mac表的每一行包含的条目:mac、接口。
二、接着,介绍上述步骤102。
在一个实施例中,所述第一逻辑拓扑的数目可以为多个;
所述构建维护网络逻辑拓扑的方法还可以包括:在生成多个第一逻辑拓扑之后,根据设备的mac地址,确定多个第一逻辑拓扑中重复的设备,根据确定结果,对多个第一逻辑拓扑进行合并,得到合并后的第一逻辑拓扑。
具体实施时,对多个第一逻辑拓扑进行合并的实施方式,提高了逻辑拓扑构建的准确率。
在一个实施例中,根据相应设备的arp表和全局配置数据,对arp表条目进行分组,可以包括:
根据arp表中包含预设标记的ip地址,到全局配置数据中查找与所述ip地址对应的子网掩码;
使用所述子网掩码与arp条目中不包含所述预设标记的ip数据做与操作,根据与操作结果,对arp表条目进行分组;其中,同一网段分成一组。
具体实施时,对arp表条目进行分组的实施方式,提高了逻辑拓扑构建的效率。
具体实施时,在分类时,按照接口名称来分,接口相同的数量是2即为一对,其中一个是自身的arp信息,一个是通过学习学到的arp信息(这里学习到的arp指设备本身存在一种学习arp的机制,主要通过广播泛红的方式,获取其他设备的IP地址和mac的对应关系,便于封装和传递数据包,具体可以百度搜索:ARP的工作过程,可参考:https://blog.51cto.com/gdutcxh/1950191),此两信息可确定一对邻居关系,但邻居关系不一定是最后的逻辑拓扑,如果A和A1之间存在多条三层负载链路,可能会很多对类似的邻居关系,所以如果arp条目中的mac地址一样,邻居关系需要去重,之后再重构有效的网络逻辑拓扑,如果到叶子设备之前都是上述的情况,说明全网都是三层网络设备(接口可以直接配置IP地址,此类设备一般是路由器),重复执行上述方法步骤可以构建一颗有效的可管理设备的逻辑拓扑;但如果从某台三层设备开始(假设是A2),出现了二层网络设备(二层设备,接口上无法直接配置IP地址,只能是关联逻辑接口配置ip,此类设备一般是交换机),具体处理方法是:需要根据A2全局接口配置找出A2 arp表中这部分ip的子网掩码,通过网段进行分组,一个网段属于一组,每个分组可通过相关设备的arp表构建一个逻辑拓扑,以一个分组说明构建逻辑拓扑的方法:查看所有相关设备的arp信息,其中以A2的mac为参考点,如果某设备从某接口仅学习到了A2的mac,那么此设备就是A2的直连下级设备A3,同理,如果某设备通过某接口仅学习到了A2、A3的arp信息,说明此设备就是A4,以此类推,直到叶子设备为止,至此一个网络逻辑拓扑被构建完毕,同理完成其他逻辑拓扑的构建。
三、接着,介绍上述步骤103。
在一个实施例中,根据mac表,对所述第一逻辑拓扑和第二逻辑拓扑进行融合,得到所述维护网络逻辑拓扑,可以包括:
根据mac地址,确定第一逻辑拓扑和第二逻辑拓扑中重复的设备,根据确定结果,对第一逻辑拓扑和第二逻辑拓扑进行合并,得到融合后的维护网络逻辑拓扑。
具体实施时,上述对第一逻辑拓扑和第二逻辑拓扑进行融合的实施方式,提高了逻辑拓扑构建的准确率和效率。
四、接着,介绍上述步骤103之后进一调整逻辑拓扑的方案。
在一个实施例中,上述构建维护网络逻辑拓扑的方法,还可以包括:
根据设备的mac表,确定融合后的维护网络逻辑拓扑中每一设备的类型;所述设备的类型包括:预设级别的汇聚设备和叶子设备;
根据类型确定结果,调整所述融合后的维护网络逻辑拓扑,得到调整后的维护网络逻辑拓扑。
具体实施时,上述调整所述融合后的维护网络逻辑拓扑的实施方式,进一步提高了逻辑拓扑构建的准确率。
在一个实施例中,上述构建维护网络逻辑拓扑的方法,还可以包括:根据设备的mac表,修改调整后的维护网络逻辑拓扑中叶子设备的挂载点。
具体实施时,上述修改叶子设备的挂载点的实施方式,进一步提高了逻辑拓扑构建的准确率。
具体实施时,在对构建的多个逻辑拓扑进行融合后,涉及汇聚设备的层级关系,以及叶子设备的归属问题。首先是定位层级关系,找出所有逻辑拓扑中距离A2设备最近的那些汇聚点,之后查看这些满足条件的汇聚点mac地址表,仅通过某接口学习到A2设备mac的但不包括满足条件的其他汇聚设备的为最上层的汇聚点A3,将该汇聚点A3代表的树接到A2上,形成逻辑拓扑;之后继续查看其它汇聚设备的mac,某接口仅学习到A2和A3的MAC此接口不包括其他汇聚设备的mac,那么此设备就是A3的下级汇聚设备,将A4汇聚点代表的树接到A3上,依次类推,之后将所有mac地址相同的设备进行合并,调整逻辑拓扑;最后修正所有叶子设备的挂载位置,方法是:汇聚点的某接口与叶子mac是1:1关系,并照此对叶子的挂设备进行修正。至此整个管理逻辑拓扑树构建完毕。
下面结合图2至图9,以构建城域网BRAS(Broadband Remote Access Server,宽带远程接入服务器)及以下设备管理逻辑拓扑为例,更加详细地对网络设备管理逻辑拓扑构建过程进行说明(图2为实际的逻辑拓扑):
步骤S201:采集所有需要构建网络管理逻辑拓扑的设备全局配置、arp表(包括ip地址、mac地址、接口),mac表(包括mac地址、接口),找出bras设备的mac地址存储变量st_mac中,之后按照设备名称建立文件夹分别存储各自采集的三个数据文件。
Bras设备的ARP表:
1)自己直连接口地址的arp表项:
2)学习到邻居的arp表项:
Bras设备的全局配置(此处只摘取相关的接口配置):
interface GigabitEthernet0/0/0
ip address 2.2.2.1 255.255.255.252
#
interface GigabitEthernet0/0/1
#
interface GigabitEthernet0/0/1.1
dot1q termination vid 1
dot1q termination vid 200
ip address 8.8.8.1 255.255.255.0
ip address 1.1.1.1 255.255.255.0sub
#
interface GigabitEthernet0/0/1.2
dot1q termination vid 300
#
interface GigabitEthernet0/0/2
#
interface GigabitEthernet0/0/2.1
dot1q termination vid 300
ip address 7.7.7.1 255.255.255.0
#
interface GigabitEthernet0/0/3
#
interface GigabitEthernet0/0/3.1
dot1q termination vid 300
ip address 13.1.1.1 255.255.255.0。
步骤S202:将S201中从邻居学习到的arp表项(带D或者DF的)和自身arp(带I-标记的)按照接口进行配对,其中直接成对的可以直接构建逻辑拓扑,结果如下:
第一类(可直接构建三层设备的逻辑拓扑):
第二类(不可直接构建三层设备的逻辑拓扑):
第三类(可直接构建三层设备的逻辑拓扑):
第四类(可直接构建三层设备的逻辑拓扑):
针对上述第一类条目,构建逻辑拓扑如图3a所示,针对上述第三类条目,构建逻辑拓扑如图3b所示,针对上述第四类条目,构建逻辑拓扑如图3c所示。
步骤S203:针对图3a、图3b和图3c所示的逻辑拓扑(多个第一逻辑拓扑),合并一次逻辑拓扑中重复的设备,方法:比较所有设备的mac地址,发现mac相同,说明是同一台设备,修改逻辑拓扑结构(合并后的第一逻辑拓扑)如图4所示。
步骤S204:继续获取并处理S203中不是成对的部分,即第二类,如下:
按照网段进行分类,此例一共分成两类并添加成员,具体方法:根据arp表包含‘I-’(预设标记)的某一行的ip地址(此处为8.8.8.1和1.1.1.1)去bras全局配置进行定位,找出该ip对应的子网掩码,之后使用子网掩码与本步骤S204的所有arp表项不带‘I-’的行IP数据做与操作,同一网段的分成一组,其中成对的直接定为逻辑拓扑叶子设备,分类(组)如下:
以上第一组,以下第二组;
S205:存在成对的则构建逻辑拓扑,并合并一次相同mac的设备,即对于成对的一组,构建一个三层设备的逻辑拓扑,此例中不存在。
步骤S206:继续获取并处理S205中非成对的部分,如下:
以上第一组,以下第二组;
上面数据被分成了几组,就说明存在几个逻辑拓扑,先一组一组的构建逻辑拓扑,比如1.1.1.1这一组,成员为1.1.1.3、1.1.1.4,查看对应的原arp表:
1.1.1.4(arp):
1.1.1.3(arp):
首先判断是不是全是逻辑拓扑的叶子设备,方法:学习到arp信息是不是一个接口,是就是叶子,直接构建逻辑拓扑即可,否则至少有一个距离这个三层设备(bras)近的设备为一级汇聚,以此类推为二级汇聚,一直到叶子设备,所有组都按照此方法可各构建一个逻辑拓扑,针对上述第一组,构建的第二逻辑拓扑如图5a所示,针对上述第二组,构建的第二逻辑拓扑如图5b所示。图5a和5b所示均是三层设备下挂若干二层设备的逻辑拓扑。
为了便于理解步骤S206如何实施,下面举两个例子。
例子1:首先可以确定的是1.1.1.1通过一个子接口下挂的1.1.1.3和1.1.1.4,那么查看了1.1.1.3和1.1.1.4各自的arp表,比如1.1.1.3的arp表,如果发现学习到1.1.1.1和1.1.1.4的是一个接口,说明是这样的关系1.1.1.3连接1.1.1.1或者1.1.1.4,而1.1.1.1和1.1.1.4是直连关系,1.1.1.1和1.1.1.3是直连关系,所以只有一种可能就是1.1.1.1在中间,即逻辑拓扑是:1.1.1.3---1.1.1.1--1.1.1.4,反推也满足表项结构,图5a就是基于这个原理构建的。
例子2:如果说通过不同的接口学习到,比如1.1.1.3的arp表项,假设改为:
1.1.1.3(arp):
那么因为已知1.1.1.1通过一个接口下挂1.1.1.3和1.1.1.4,而1.1.1.3的arp表项显示学习1.1.1.1和1.1.1.4的不是一个接口,基本可以确定互联关系为1.1.1.1---1.1.1.3--1.1.1.4,图5b就是基于这个原理构建的。
具体实施时,从S206开始处理他们的层级关系,是直连的还是存在串联的关系。确定方法是:从一个接口学习到很多条目,说明是存在串联,从一个接口只学习到一个条目的说明是直连关系。另外,确定层级的方法是从下往上,因为上层设备是确认好的,只要确定下级设备从某一个接口只学习到了已经确定的层级设备,说明这个设备就是直挂的下级设备,依此类推,直到最后的层级即叶子节点。
S207:融合逻辑拓扑,方法:合并逻辑拓扑中mac地址相同的设备,得到的逻辑拓扑如图6所示。
S208:查看融合后的逻辑拓扑成员mac地址表,找到最靠近三层设备(bras)的设备,方法是:mac地址中通过某个接口只学习到三层设备(bras)的mac地址的设备而没有学习到其他成员mac地址的设备,此例中只有2.2.2.2/13.1.1.2、8.8.8.8和7.7.7.7满足,再排除叶子设备,方法是:mac地址表只通过一个接口学习其他mac,排除掉2.2.2.2/13.1.1.2和7.7.7.7,仅剩下8.8.8.8,可以确定8.8.8.8就是三层设备(bras)下的一级汇聚设备。
S209:如图9所示,寻找二级汇聚设备,方法:除了已经确定的逻辑拓扑叶子和一级汇聚设备外,其他哪个设备从某接口只学习到了三层设备(bras)mac以及一级汇聚设备的mac,那个就是二级汇聚和设备。此例中为1.1.1.3和1.1.1.4,逻辑拓扑变为如图7所示。
S210:如图9所示,寻找三级汇聚设备,方法:除了叶子、一级汇聚、二级汇聚之外,哪个设备从某个接口仅学习到了三层设备(bras)mac、一/二级汇聚的mac,而没学习到其他对比成员的mac,说明此设备是三级汇聚(比如A-B-C-D的关系,假设已经确定了A-B的互联关系,那么对应C和D,查看相应的表项,如果C从某个接口只学习到了A和B,从另外接口学习到了D,而D从这个接口学习到了A/B/C,说明只能是这么连接的A-B-C-D,用此方法即可确认层级关系),如果还存在未确定设备,按照此步骤方法可确认到5级汇聚、6级汇聚等,此例逻辑拓扑变为如图8所示。
S211:所有汇聚设备层级确认完毕之后,查看所有逻辑拓扑的相关设备,排除所有汇聚设备后,剩下的都为叶子设备,查看所有的汇聚设备的某个接口如果满足接口和某叶子设备的mac是1:1关系,说明该汇聚设备直挂该叶子设备,按照此方法,确认完所有叶子设备的挂载点,此例中无调整。至此完成了所有汇聚设备以及叶子设备互联关系的确认,即可构架一个可管理设备的逻辑拓扑图如图8所示,实验证明,利用本发明实施例提供构建维护网络逻辑拓扑的方案构建的如图8所示的逻辑拓扑与图2的实际拓扑图一致。
基于同一发明构思,本发明实施例中还提供了一种构建维护网络逻辑拓扑的装置,如下面的实施例所述。由于构建维护网络逻辑拓扑的装置解决问题的原理与构建维护网络逻辑拓扑的方法相似,因此构建维护网络逻辑拓扑的装置的实施可以参见构建维护网络逻辑拓扑的方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图10是本发明实施例中构建维护网络逻辑拓扑的装置的结构示意图,如图10所示,该装置包括:
获取单元01,用于获取所有设备的全局配置数据、arp表以及mac表;
逻辑拓扑构建单元02,用于根据arp表中每个条目的接口名称,对arp表条目进行分类,确定每一类arp表条目的数量;对于相同接口名称的条目数量为二的一类条目,生成一个第一逻辑拓扑;所述第一逻辑拓扑为三层设备的逻辑拓扑;对于相同接口名称的条目数量大于二的一类条目,根据相应设备的arp表和全局配置数据,对arp表条目进行分组,对于每一组arp表条目,构建一个第二逻辑拓扑;所述第二逻辑拓扑为三层设备的逻辑拓扑或三层设备下挂若干二层设备的逻辑拓扑;
融合单元03,用于根据mac表,对所述第一逻辑拓扑和第二逻辑拓扑进行融合,得到所述维护网络逻辑拓扑。
在一个实施例中,所述第一逻辑拓扑的数目可以为多个;
上述构建维护网络逻辑拓扑的装置还可以包括:合并处理单元,用于在生成多个第一逻辑拓扑之后,根据设备的mac地址,确定多个第一逻辑拓扑中重复的设备,根据确定结果,对多个第一逻辑拓扑进行合并,得到合并后的第一逻辑拓扑。
在一个实施例中,上述逻辑拓扑构建单元可以包括分组模块,所述分组模块用于根据相应设备的arp表和全局配置数据,对arp表条目进行分组,所述分组模块具体可以用于:
根据arp表中包含预设标记的ip地址,到全局配置数据中查找与所述ip地址对应的子网掩码;
使用所述子网掩码与arp条目中不包含所述预设标记的ip数据做与操作,根据与操作结果,对arp表条目进行分组;其中,同一网段分成一组。
在一个实施例中,所述融合单元具体可以用于:
根据mac地址,确定第一逻辑拓扑和第二逻辑拓扑中重复的设备,根据确定结果,对第一逻辑拓扑和第二逻辑拓扑进行合并,得到融合后的维护网络逻辑拓扑。
在一个实施例中,上述构建维护网络逻辑拓扑的装置还可以包括调整单元,具体可以用于:
根据设备的mac表,确定融合后的维护网络逻辑拓扑中每一设备的类型;所述设备的类型包括:预设级别的汇聚设备和叶子设备;
根据类型确定结果,调整所述融合后的维护网络逻辑拓扑,得到调整后的维护网络逻辑拓扑。
在一个实施例中,上述构建维护网络逻辑拓扑的装置还可以包括挂载点处理单元,用于根据设备的mac地址表,修改调整后的维护网络逻辑拓扑中叶子设备的挂载点。
本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述构建维护网络逻辑拓扑的方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述构建维护网络逻辑拓扑的方法的计算机程序。
本发明实施例的有益技术效果为:本发明实施例提供的技术方案实现了快速准确地完成设备管理逻辑拓扑的构建,提高了构建逻辑拓扑的准确率和效率,从而提升了运维效率、减少了运维成本。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种构建维护网络逻辑拓扑的方法,其特征在于,包括:
获取所有设备的全局配置数据、arp表以及mac表;
根据arp表中每个条目的接口名称,对arp表条目进行分类,确定每一类arp表条目的数量;对于相同接口名称的条目数量为二的一类条目,生成一个第一逻辑拓扑;所述第一逻辑拓扑为三层设备的逻辑拓扑;对于相同接口名称的条目数量大于二的一类条目,根据相应设备的arp表和全局配置数据,对arp表条目进行分组,对于每一组arp表条目,构建一个第二逻辑拓扑;所述第二逻辑拓扑为三层设备的逻辑拓扑或三层设备下挂若干二层设备的逻辑拓扑;
根据mac表,对所述第一逻辑拓扑和第二逻辑拓扑进行融合,得到所述维护网络逻辑拓扑。
2.如权利要求1所述的构建维护网络逻辑拓扑的方法,其特征在于,所述第一逻辑拓扑的数目为多个;
所述构建维护网络逻辑拓扑的方法还包括:在生成多个第一逻辑拓扑之后,根据设备的mac地址,确定多个第一逻辑拓扑中重复的设备,根据确定结果,对多个第一逻辑拓扑进行合并,得到合并后的第一逻辑拓扑。
3.如权利要求1所述的构建维护网络逻辑拓扑的方法,其特征在于,根据相应设备的arp表和全局配置数据,对arp表条目进行分组,包括:
根据arp表中包含预设标记的ip地址,到全局配置数据中查找与所述ip地址对应的子网掩码;
使用所述子网掩码与arp条目中不包含所述预设标记的ip数据做与操作,根据与操作结果,对arp表条目进行分组;其中,同一网段分成一组。
4.如权利要求1所述的构建维护网络逻辑拓扑的方法,其特征在于,根据mac表,对所述第一逻辑拓扑和第二逻辑拓扑进行融合,得到所述维护网络逻辑拓扑,包括:
根据mac地址,确定第一逻辑拓扑和第二逻辑拓扑中重复的设备,根据确定结果,对第一逻辑拓扑和第二逻辑拓扑进行合并,得到融合后的维护网络逻辑拓扑。
5.如权利要求4所述的构建维护网络逻辑拓扑的方法,其特征在于,还包括:
根据设备的mac表,确定融合后的维护网络逻辑拓扑中每一设备的类型;所述设备的类型包括:预设级别的汇聚设备和叶子设备;
根据类型确定结果,调整所述融合后的维护网络逻辑拓扑,得到调整后的维护网络逻辑拓扑。
6.如权利要求5所述的构建维护网络逻辑拓扑的方法,其特征在于,还包括:根据设备的mac表,修改调整后的维护网络逻辑拓扑中叶子设备的挂载点。
7.一种构建维护网络逻辑拓扑的装置,其特征在于,包括:
获取单元,用于获取所有设备的全局配置数据、arp表以及mac表;
逻辑拓扑构建单元,用于根据arp表中每个条目的接口名称,对arp表条目进行分类,确定每一类arp表条目的数量;对于相同接口名称的条目数量为二的一类条目,生成一个第一逻辑拓扑;所述第一逻辑拓扑为三层设备的逻辑拓扑;对于相同接口名称的条目数量大于二的一类条目,根据相应设备的arp表和全局配置数据,对arp表条目进行分组,对于每一组arp表条目,构建一个第二逻辑拓扑;所述第二逻辑拓扑为三层设备的逻辑拓扑或三层设备下挂若干二层设备的逻辑拓扑;
融合单元,用于根据mac表,对所述第一逻辑拓扑和第二逻辑拓扑进行融合,得到所述维护网络逻辑拓扑。
8.如权利要求7所述的构建维护网络逻辑拓扑的装置,其特征在于,所述融合单元具体用于:
根据mac地址,确定第一逻辑拓扑和第二逻辑拓扑中重复的设备,根据确定结果,对第一逻辑拓扑和第二逻辑拓扑进行合并,得到融合后的维护网络逻辑拓扑。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6任一所述方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至6任一所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911125099.7A CN110932889B (zh) | 2019-11-18 | 2019-11-18 | 构建维护网络逻辑拓扑的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911125099.7A CN110932889B (zh) | 2019-11-18 | 2019-11-18 | 构建维护网络逻辑拓扑的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110932889A CN110932889A (zh) | 2020-03-27 |
CN110932889B true CN110932889B (zh) | 2022-03-15 |
Family
ID=69853248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911125099.7A Active CN110932889B (zh) | 2019-11-18 | 2019-11-18 | 构建维护网络逻辑拓扑的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110932889B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115801589B (zh) * | 2022-11-15 | 2023-07-18 | 北京优特捷信息技术有限公司 | 一种事件拓扑关系确定方法、装置、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1878114A (zh) * | 2005-06-09 | 2006-12-13 | 华为技术有限公司 | 弹性分组环地址绑定方法 |
CN105827623A (zh) * | 2016-04-26 | 2016-08-03 | 山石网科通信技术有限公司 | 数据中心系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9985837B2 (en) * | 2015-07-23 | 2018-05-29 | Cisco Technology, Inc. | Refresh of the binding tables between data-link-layer and network-layer addresses on mobility in a data center environment |
-
2019
- 2019-11-18 CN CN201911125099.7A patent/CN110932889B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1878114A (zh) * | 2005-06-09 | 2006-12-13 | 华为技术有限公司 | 弹性分组环地址绑定方法 |
CN105827623A (zh) * | 2016-04-26 | 2016-08-03 | 山石网科通信技术有限公司 | 数据中心系统 |
Non-Patent Citations (1)
Title |
---|
基于路由器的实时测控系统的设计与实现;胥琳;《计算机工程与应用》;20020531(第5期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110932889A (zh) | 2020-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106489255B (zh) | 用于在高性能计算(hpc)环境中支持高效负载均衡的系统和方法 | |
US7543045B1 (en) | System and method for estimating the geographical location and proximity of network devices and their directly connected neighbors | |
US9331910B2 (en) | Methods and systems for automatic generation of routing configuration files | |
CN102143007A (zh) | 基于分布式的多级网络拓扑发现方法 | |
WO2015139533A1 (zh) | 一种网管对混合组网业务的反算方法 | |
CN107733795B (zh) | 以太网虚拟私有网络evpn与公网互通方法及其装置 | |
WO2017215378A1 (zh) | 软件定义网络、节点、路径计算方法、装置及存储介质 | |
CN109818858B (zh) | 用于实现域间拓扑关系自动拼接的方法、装置和系统 | |
CN104521192A (zh) | 用于网络拓扑结构中的链路状态协议的洪泛优化的技术 | |
EP1428349A2 (en) | Method and apparatus for determining and resolving missing topology features of a network for improved topology accuracy | |
US20160057629A1 (en) | Automatic Division of Internet Protocol Radio Access Networks to Interior Gateway Protocol Areas | |
CN106302172A (zh) | 同时支持哈希查找和路由查找的存储、查找方法和装置 | |
CA1323447C (en) | Interconnection networks | |
US20230142573A1 (en) | Method, apparatus, and system for constructing knowledge graph, and computer storage medium | |
CN110932889B (zh) | 构建维护网络逻辑拓扑的方法及装置 | |
CN109361596A (zh) | 路由计算方法、装置及电子设备 | |
CN109905413A (zh) | 一种ip地址的匹配方法及装置 | |
CN105553855B (zh) | 动态调整底层网络生成树拓扑结构的方法及系统 | |
CN104780101A (zh) | 内容中心网络转发平面fib表结构及其检索方法 | |
US20180183676A1 (en) | Dynamically mapping network addresses | |
CN1469587A (zh) | 基于开放式最短路径优先路由协议的路由计算方法 | |
TWI636679B (zh) | 虛擬區域網路配置系統與方法及其電腦程式產品 | |
CN111614760A (zh) | 一种将物联网设备均衡分配接入的方法及装置 | |
CN103259720B (zh) | 一种基于mtr的数据传输方法和设备 | |
JP6323194B2 (ja) | ネットワーク管理装置及び方法 |
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 | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: Room 702-2, No. 4811, Cao'an Highway, Jiading District, Shanghai Patentee after: CHINA UNITECHS Address before: 100872 5th floor, Renmin culture building, 59 Zhongguancun Street, Haidian District, Beijing Patentee before: CHINA UNITECHS |