通用的拓扑链接准确发现方法

文档序号:7988070阅读:634来源:国知局
通用的拓扑链接准确发现方法
【专利摘要】本发明提供了一种通用的拓扑链接准确发现方法,包括:1)用户录入链接发现所需的信息;2)发现设备,并将设备进行分类缓存;3)、通过STP协议将所有交换机设备构建成森林结构,并设置好森林中的交换机的上行端口和下行端口;4)、遍历森林中的每棵树进行二层交换机的链接分析,链接分析包括交换机到交换机、交换机到主机、交换机到路由器之间的链接;5)、计算三层交换机到主机之间的链接;6)、计算路由器到路由器之间的链接。不仅通用性强,而且准确性提高,尤其适合于二层及三层拓扑链接发现。
【专利说明】通用的拓扑链接准确发现方法
【技术领域】
[0001]本发明涉及IT运维领域,尤其涉及一种通用的拓扑链接准确发现方法。
【背景技术】
[0002]随着网络规模日益扩大,企业的网络环境也越来越复杂,网络设备也越来越多,对网络管理也就有了更高的要求。
[0003]网络拓扑发现的主要目的是获取和维护网络节点的存在信息和它们之间的链接关系信息,并在此基础上绘制出整个网络拓扑图。网络管理人员在拓扑图的基础上对故障节点进行快速定位。现有的拓扑链接发现方法准确度不够、通用性不强。

【发明内容】

[0004]本发明中提供了一种通用的拓扑链接准确发现方法,不仅通用性强,而且准确性提高,该方法主要是基于SNMP的网络拓扑发现方法,尤其适合于二层及三层拓扑链接发现。
[0005]本发明的目的通过如下方案实现:通用的拓扑链接准确发现方法,包括以下步骤:。
[0006]步骤1、配置需要发现的子网以及SNMP的相关配置信息;
配置子网的目的是确定要发现的网络范围,SNMP信息包括版本、团体字等。
[0007]步骤2、通过SNMP协议获取子网中所有的网络设备的信息,并将这些设备按类型进行分类缓存;
设备按路由器、交换机、防火墙、主机进行分类;网络设备的信息包括端口信息表(IfTable)、IP 地址表(IpAddrTable)、IpRouteTable (路由表)、ARP 缓存表(IpNetToMediaTable)、地址转发表(DotIdTpFdbTable)、端口对应表(BasePort)。
[0008]步骤3、将步骤2获取的各个交换机设备端口的MAC进行分类缓存;
由于交换机端口可以学习MAC地址并将其放在交换机内部地址中,所以交换机上面会有连接在该交换机上所有设备的MAC,因此在该方法中将每个交换机每个端口学习到的MAC分为三类:路由器MAC、交换机MAC、主机MAC,将每个端口上的所有MAC与步骤2得到的所有设备进行匹配,按匹配到的设备的类型来放在对应的列表中。
[0009]步骤4、通过STP协议将所有交换机设备构建成森林结构,并设置森林中的交换机的上行端口和下行端口;
O使用STP协议从所有交换机中找到若干个树根,树根即其中一个交换机,即根交换机;基于这些树根构建成为根交换机到根交换机的树,将这些树加入到森林中;
2)遍历其他交换机,非根交换机,针对交换机的每个端口,只要交换机MAC列表中有根交换机的MAC就是上行端口,否则就是下行端口 ;将这些设置好上行、下行端口的交换机构建成树并加入到森林 中;
3)从剩余的交换机中找到三层交换机来用相同的方式构建树;4)如果还有交换机不包含在已构建的任何树中,则取出剩余交换机中的第一个开始,依次按照相同的方法构建树,直到所有交换机都放在森林中。
[0010]步骤5、对步骤4中构建的森林中的每棵树进行二层交换机的链接分析;
链接分析包括交换机到交换机、交换机到主机、交换机到路由器之间的链接:
O交换机到交换机的链接分为两步:
a、是从每棵树的叶子节点开始,计算出每个叶子节点与其父节点之间的链接,计算完成后,就将该叶子节点从树中删除,并放到一个专门存放叶子节点的列表中;完成上一过程后,叶子节点的父节点将会成为新的叶子节点,使用递归依次计算出整棵树的链接情况;
b、遍历所有交换机列表,依次取出一个交换机,记为交换机A,从交换机A的STP端口表中依次取出MAC地址,只要能通过MAC地址从缓存中找到指定交换机B,则交换机A和B之间就存在链接,端口可以依据BasePort表获取;
2)交换机到主机的链接,从上一步中得到的所有叶子交换机中去发现;
从步骤3中得到的交换机端口 MAC地址分类中取出主机MAC列表,按MAC地址从步骤2中获取到的所有主机中只要能找到主机,则说明该交换机的该端口就与主机之间存在一条链接;按照该方法依次遍历完所有交换机的端口就能找到所有交换机到主机的连接;
3)交换机到路由器的链接与交换机到主机的链接发现方法类似,只是路由器可能有多个IP指向一个端口,故需要注意链接的重复。
[0011]步骤6、计算三层交换机到主机之间的链接;
从步骤2中取出所有的三层交换机,遍历每个三层交换机的地址转发表(DotldTpFdbTable),判断地址转发表中的MAC是否能从步骤2中缓存的主机列表找到主机,来判断该三层交换机与主机之间存在链接。
[0012]步骤7、计算路由器到路由器之间的链接;
每个路由器都有路由表(IpRouteTable),遍历路由表中的每一个下一跳,根据下一跳的IP查找路由器,只要能找到路由器,则可以根据IP地址表找到对应端口,从而确定这两个路由器之间存在链接;遍历步骤2中获取到的所有路由器,则可以完成所有路由器之间的链接。
[0013]步骤8、以上所有步骤发现的链接都需要进行缓存,并进行重复的链接过滤。
[0014]上述方法中的各个步骤不能交换,必须按照先后顺序进行。
[0015]应用上述方法,可以准确的发现整个网络中二层设备、三层设备之间的链接,其中步骤2需要去扫描整个网络中的设备,就需要进行很多次通信,所有会是最消耗性能和时间的步骤,可以采用多线程等方式降低资源利用。
[0016]综上所述,由于采用了上述技术方案,本发明的有益效果是:可以自动的发现网络中的拓扑链接,对于网络管理会变得更简单,从而节省大量的管理资源;又能更及时、准确的了解各类设备的运行状况,从而进行管理和维护,有效地保证了各类设备的正常运行,降低维护成本。
【专利附图】

【附图说明】
[0017]图1是链接发现的主要流程图;
图2是交换机之间的链接发现的流程图;图3是路由器之间的链接发现的流程图。
【具体实施方式】
[0018]本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,不可以以任何方式组合。本说明书(包括任何附加权利要求、摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
[0019]如图1所示,拓扑链接发现方法的整体步骤为:
1)用户录入链接发现所需 的信息;信息包括:SNMP的相关信息以及需要发现链接的子网信息;
2)发现设备,并将设备进行分类缓存,需要发现的设备包括路由器、交换机、主机等;
3)、通过STP协议将所有交换机设备构建成森林结构,并设置好森林中的交换机的上行端口和下行端口;
4)、遍历森林中的每棵树进行二层交换机的链接分析,链接分析包括交换机到交换机、交换机到主机、交换机到路由器之间的链接;
5)、计算三层交换机到主机之间的链接;
6)、计算路由器到路由器之间的链接。
[0020]关于本发明中,交换机到交换机的链接发现部分流程如图2所示,遍历缓存的所有交换机,依次取出一个交换机,记为交换机A。遍历交换机A的STP端口表,从端口表中依次取出MAC地址,判断能否通过MAC地址从缓存的交换机列表中找到指定的交换机B,只要交换机B存在,则从交换机B的BasePort表中得到连接的目的端口,同时也从交换机A中找到对应的源端口号,结束这两个设备之间的链接并保存。所有交换机遍历结束则完成交换机与交换机之间的链接。
[0021]关于本发明中,路由器到路由器的链接发现部分流程如图3所示,遍历缓存的路由器列表,依次得到一个路由器A,取出路由器A的路由表,遍历路由器的所有下一跳,如果能根据下一跳IP找到一个指定的路由器B,则得到路由器A和路由器B之间的链接关系。对于路由器B,也需要用递归的方式遍历其路由表,直到所有链接关系发现完毕。
[0022]本发明并不局限于前述的【具体实施方式】。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。
【权利要求】
1.通用的拓扑链接准确发现方法,其特征在于该方法包括以下步骤: 1)、配置需要发现的子网以及SNMP的相关配置信息; 2)、通过SNMP协议获取子网中所有的网络设备的信息,将这些设备按类型进行分类缓存; 3)将步骤2获取的所有交换机设备端口学习的MAC地址进行分类并放在各个分类的列表中; 4)、通过STP协议将所有交换机设备构建成森林结构,并设置好森林中的交换机的上行端口和下行端口; 5)、对步骤4中构建的森林中的每棵树进行二层交换机的链接分析;链接分析包括交换机到交换机、交换机到主机、交换机到路由器之间的链接; 6)、计算三层交换机到主机之间的链接; 7)、计算路由器到路由器之间的链接。
2.根据权利要求1所述的通用的拓扑链接准确发现方法,其特征在于:步骤2)发现设备是基于步骤I)所配置的SNMP信息以及需要发现链接的子网范围。
3.根据权利要求1所述的通用的拓扑链接准确发现方法,其特征在于:步骤4)是基于STP协议进行森林构建。
4.根据权利要求1所述的通用的拓扑链接准确发现方法,其特征在于:步骤6)中三层交换机到主机之间的链接发现 是基于地址转发表协议的。
5.根据权利要求1所述的通用的拓扑链接准确发现方法,其特征在于:步骤7)中路由器之间的链接发现是基于路由表协议的。
6.根据权利要求1所述的通用的拓扑链接准确发现方法,其特征在于:步骤2)采用多线程方式。
【文档编号】H04L12/757GK103905221SQ201210570904
【公开日】2014年7月2日 申请日期:2012年12月26日 优先权日:2012年12月26日
【发明者】代银玉 申请人:成都勤智数码科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1