网络拓扑结构的自动生成方法和系统的制作方法

文档序号:10660666阅读:1053来源:国知局
网络拓扑结构的自动生成方法和系统的制作方法
【专利摘要】本发明公开了一种网络拓扑结构的自动生成方法和系统,其中方法包括以下步骤:S1、Nmap扫描网络中的ip是否存在开放的端口,若是则保存所述ip的路由路径至数据库,若否则执行步骤S2;S2、判断是否所有ip都已扫描完毕,若是则执行步骤S3,若否则执行步骤S1;S3、遍历所述数据库中的所述路由路径,保存所述路由路径上的每个节点至第一集合,去除所述第一集合中重复的节点;S4、遍历所述数据库中的所述路由路径,保存所述路由路径中的两个相邻的节点对至第二集合,去除所述第二集合中重复的节点对;S5、根据所有节点和所有节点对生成网络拓扑结构的顶点信息和路径信息。本发明能快捷、简易、效率高的自动生成网络拓扑结构。
【专利说明】
网络拓扑结构的自动生成方法和系统
技术领域
[0001]本发明涉及网络管理维护领域,特别涉及一种网络拓扑结构的自动生成方法和系统。
【背景技术】
[0002]随着互联网技术的不断发展,在线网站的规模越来越大,业务种类越来越丰富,各种业务越来越依赖高效、快速的网络做支持。然而网络中接入的网络设备时常变化,即全网的网络拓扑结构一直在变化,单靠人工往往难以维护日渐庞大的网络环境。尤其对于上千台设备的大型网络来说,维护工作就更为复杂了。当网络设备大量增加后,网络拓扑结构异常复杂,想要构建接入网络的设备的全网拓扑结构就变得复杂和费时,更严重的情况人工已经无法完成。尤其在发生网络故障时,需要快速的定位故障所在位置,及时获取当前接入网络的设备的全网的网络拓扑结构是排除故障的前提,所以如何快捷简易地识别出当前的网络拓扑结构尤为重要。

【发明内容】

[0003]本发明要解决的技术问题是为了克服现有技术中由人工识别网络拓扑结构工作量大且效率低的缺陷,提供一种快捷、简易、效率高的网络拓扑结构的自动生成方法和系统。
[0004]本发明是通过下述技术方案来解决上述技术问题:
[0005]一种网络拓扑结构的自动生成方法,其特点在于,包括以下步骤:S 1、N m a P(Network Mapper,是一个网络连接端扫描软件)扫描网络中的ip(Internet Protocol,网络协议地址)是否存在开放的端口,若是则保存所述ip的路由路径至数据库,若否则执行步骤S2;S2、判断是否所有ip都已扫描完毕,若是则执行步骤S3,若否则执行步骤S1;S3、遍历所述数据库中的所述路由路径,保存所述路由路径上的每个节点至第一集合,去除所述第一集合中重复的节点;S4、遍历所述数据库中的所述路由路径,保存所述路由路径中的两个相邻的节点对至第二集合,去除所述第二集合中重复的节点对;&、根据所述第一集合中的所有节点和所述第二集合中的所有节点对生成网络拓扑结构的顶点信息和路径信息。
[0006]本方案中,采用Nmap扫描器自动发现网络中存在的所有工作的节点和代表网络路径单位的节点对,去除重复的节点和节点对,最后自动生成网络拓扑结构的顶点信息和路径信息,以机器运算代替反复的手工操作,降低了网络拓扑结构生成的难度,且降低了人为操作出错的可能性,简化了网络运维的工作,提高了网络故障的定位效率。
[0007]较佳地,步骤S3中对所述第一集合中的节点做集合交运算,以去除所述第一集合中重复的节点。
[0008]较佳地,步骤S4中对所述第二集合中的所述节点对做集合交运算,以去除所述第二集合中重复的节点对。
[0009]较佳地,步骤Si中采用多个Nmap进行扫描。
[0010]较佳地,步骤Si之前还包括以下步骤:初始化所述多个Nmap,以为每个Nmap分配所述网络中待扫描的地址块。
[0011]本方案中,采用分布式的扫描架构,利用多个Nmap扫描器对网络环境进行扫描,自动发现网络的节点,提高了网络数据收集的效率。
[0012]较佳地,步骤S5中采用图论和集合运算生成所述顶点信息和所述路径信息。
[0013]较佳地,步骤S5之后还包括以下步骤:根据所述顶点信息和所述路径信息在web(互联网)页面中绘制网络拓扑结构图。
[0014]本方案中,在web页面中绘制网络拓扑结构图用以展示当前网络环境的拓扑结构,还可以提供网络拓扑结构图的查询和伸缩功能。
[0015]本发明还提供一种网络拓扑结构的自动生成系统,其特点在于,所述网络拓扑结构的自动生成系统包括:扫描模块,用于通过Nmap扫描网络中的ip是否存在开放的端口,若是则保存所述ip的路由路径至数据库,若否则调用判断模块;判断模块,用于判断是否所有ip都已扫描完毕,若是则调用节点集合生成模块,若否则调用所述扫描模块;节点集合生成模块,用于遍历所述数据库中的所述路由路径,保存所述路由路径上的每个节点至第一集合,去除所述第一集合中重复的节点;节点对集合生成模块,用于遍历所述数据库中的所述路由路径,保存所述路由路径中的两个相邻的节点对至第二集合,去除所述第二集合中重复的节点对;顶点和路径生成模块,用于根据所述第一集合中的所有节点和所述第二集合中的所有节点对生成网络拓扑结构的顶点信息和路径信息。
[0016]较佳地,所述扫描模块通过多个Nmap进行扫描,所述的网络拓扑结构的自动生成系统还包括初始化模块,所述初始化模块用于初始化所述多个Nmap,以为每个Nmap分配所述网络中待扫描的地址块。
[0017]较佳地,所述顶点和路径生成模块采用图论和集合运算生成所述顶点信息和所述路径信息,所述的网络拓扑结构的自动生成系统还包括绘图模块,所述绘图模块用于根据所述顶点信息和所述路径信息在web页面中绘制网络拓扑结构图。
[0018]本发明的积极进步效果在于:本发明提供的网络拓扑结构的自动生成方法和系统利用Nmap扫描器对当前网络环境进行扫描,自动发现网络节点,提高了网络数据收集的效率。利用扫描的路由路径信息,采用遍历和集合“交”运算,以机器运算代替繁琐的手工运算获取当前网络环境的所有节点和节点对,降低了网络拓扑结构构建的难度,并且降低了人为操作出错的可能性。自动快速的生成网络拓扑结构,有利于简化网络环境的运维工作量,提高网络环境运维的效率。
【附图说明】
[0019]图1为本发明实施例1的网络拓扑结构的自动生成方法的流程图。
[0020]图2为本发明实施例2的网络拓扑结构的自动生成系统的示意图。
【具体实施方式】
[0021]下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
[0022]实施例1
[0023]如图1所示,一种网络拓扑结构的自动生成方法,包括以下步骤:
[0024]101、根据网络的规模,初始化多个Nmap扫描器,为每个Nmap扫描器分配当前网络中待扫描的地址块。
[0025]102、使用Nmap扫描网络中的ip是否存在开放的端口,如果当前扫描的ip存在开放的端口则执行步骤103,如果不存在开放的端口则直接执行步骤104。本步骤中每个Nmap扫描器中预先封装Nmap扫描进程。
[0026]103、保存步骤102中扫描到的存在开放端口的ip的路由路径至数据库的表格中,然后执行步骤104。
[0027]104、判断所有Nmap扫描器是否对当前网络中所有ip都已扫描完毕,若是则执行步骤105,若否则返回执行步骤102。
[0028]105、遍历数据库中保存的ip的路由路径,保存路由路径上的每个节点至第一集入口 ο
[0029]106、对第一集合中的节点做数学中的集合交运算,即将单个节点的路由路径上的节点的集合与第一集合中的全部节点做集合交运算,以去除第一集合中重复的节点。
[0030]107、遍历数据库中的路由路径,保存路由路径中的两个相邻的节点对至第二集入口 ο
[0031]108、对第二集合中的的节点对做集合交运算,将路由路径中的两个相邻的节点构造成节点对集合,并与第二集合中的全部节点对做集合交运算,以去除第二集合中重复的节点对。
[0032]109、根据第一集合中的所有节点和第二集合中的所有节点对采用图论和集合运算生成网络拓扑结构的顶点信息和路径信息。
[0033]110、根据步骤109中生成的顶点信息和路径信息在web页面中绘制网络拓扑结构图。
[0034]本实施例提供的网络拓扑结构的自动生成方法,采用多个Nmap扫描器分地址块进行扫描的分布式的扫描架构,实现了高效的数据收集。利用Nmap扫描工具,能够自动发现网络中存在的所有工作的节点,保证了网络拓扑结构的自动完成。根据扫描后获取的路由路径的信息,利用集合“交”运算,准确获取工作的节点和节点对,以机器运算代替繁琐的手工操作,降低了网络拓扑结构构建的难度。通过本方法能够快速准确构建详尽且全面的网络拓扑结构,有利于进一步简化网络运维的工作量,提高了网络故障的定位效率。
[0035]实施例2
[0036]如图2所示,一种网络拓扑结构的自动生成系统,该系统包括初始化模块1、扫描模块2、判断模块3、节点集合生成模块4、节点对集合生成模块5、顶点和路径生成模块6以及绘图模块7。其中,初始化模块I用于初始化多个Nmap,以为每个Nmap分配当前网络中待扫描的地址块。扫描模块2用于通过Nmap扫描网络中的ip是否存在开放的端口,若是则保存该ip的路由路径至数据库,若否则调用判断模块3。判断模块3用于判断是否所有ip都已扫描完毕,若是则调用节点集合生成模块,若否则再次循环调用扫描模块2。节点集合生成模块4用于遍历数据库中的路由路径,保存路由路径上的每个节点至第一集合,去除第一集合中重复的节点。节点对集合生成模块5用于遍历数据库中的路由路径,保存路由路径中的两个相邻的节点对至第二集合,去除第二集合中重复的节点对。顶点和路径生成模块6用于根据第一集合中的所有节点和第二集合中的所有节点对采用图论和集合运算生成网络拓扑结构的顶点信息和路径信息。绘图模块7用于根据顶点信息和路径信息在web页面中绘制网络拓扑结构图。
[0037]本实施例中,初始化模块1、扫描模块2、判断模块3、节点集合生成模块4和节点对集合生成模块5构成网络环境数据收集模块,其利用Nmap工具做全网扫描,对Nmap扫描工具根据需要进行二次开发封装,并且完成Nmap工具扫描结果的解析操作,采用分布式的扫描方式,使用多台扫描器,高效快捷的发现网络环境中的节点信息和节点间的路由路径信息。
[0038]本实施例中,顶点和路径生成模块6利用扫描得到的网络环境数据信息,根据图论的定义以及集合运算,设计网络拓扑的计算方法,生成网络拓扑结构的顶点信息和路径信息。
[0039]本实施例中,绘图模块7用于实现网络拓扑结构的展示,将网络拓扑信息以拓扑图的形式展示,并可以提供网络拓扑结构图相应的查询和伸缩功能。
[0040]虽然以上描述了本发明的【具体实施方式】,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
【主权项】
1.一种网络拓扑结构的自动生成方法,其特征在于,包括以下步骤: S^Nmap扫描网络中的ip是否存在开放的端口,若是则保存所述ip的路由路径至数据库,若否则执行步骤S2; &、判断是否所有ip都已扫描完毕,若是则执行步骤&,若否则执行步骤S1; &、遍历所述数据库中的所述路由路径,保存所述路由路径上的每个节点至第一集合,去除所述第一集合中重复的节点; S4、遍历所述数据库中的所述路由路径,保存所述路由路径中的两个相邻的节点对至第二集合,去除所述第二集合中重复的节点对; &、根据所述第一集合中的所有节点和所述第二集合中的所有节点对生成网络拓扑结构的顶点信息和路径信息。2.如权利要求1所述的网络拓扑结构的自动生成方法,其特征在于,步骤S3中对所述第一集合中的节点做集合交运算,以去除所述第一集合中重复的节点。3.如权利要求1所述的网络拓扑结构的自动生成方法,其特征在于,步骤S4中对所述第二集合中的所述节点对做集合交运算,以去除所述第二集合中重复的节点对。4.如权利要求1所述的网络拓扑结构的自动生成方法,其特征在于,步骤S1中采用多个Nmap进行扫描。5.如权利要求4所述的网络拓扑结构的自动生成方法,其特征在于,步骤S1之前还包括以下步骤:初始化所述多个Nmap,以为每个Nmap分配所述网络中待扫描的地址块。6.如权利要求1所述的网络拓扑结构的自动生成方法,其特征在于,步骤S5中采用图论和集合运算生成所述顶点信息和所述路径信息。7.如权利要求1所述的网络拓扑结构的自动生成方法,其特征在于,步骤S5之后还包括以下步骤:根据所述顶点信息和所述路径信息在web页面中绘制网络拓扑结构图。8.—种网络拓扑结构的自动生成系统,其特征在于,所述网络拓扑结构的自动生成系统包括: 扫描模块,用于通过Nmap扫描网络中的ip是否存在开放的端口,若是则保存所述ip的路由路径至数据库,若否则调用判断模块; 判断模块,用于判断是否所有ip都已扫描完毕,若是则调用节点集合生成模块,若否则调用所述扫描模块; 节点集合生成模块,用于遍历所述数据库中的所述路由路径,保存所述路由路径上的每个节点至第一集合,去除所述第一集合中重复的节点; 节点对集合生成模块,用于遍历所述数据库中的所述路由路径,保存所述路由路径中的两个相邻的节点对至第二集合,去除所述第二集合中重复的节点对; 顶点和路径生成模块,用于根据所述第一集合中的所有节点和所述第二集合中的所有节点对生成网络拓扑结构的顶点信息和路径信息。9.如权利要求8所述的网络拓扑结构的自动生成系统,其特征在于,所述扫描模块通过多个Nmap进行扫描,所述的网络拓扑结构的自动生成系统还包括初始化模块,所述初始化模块用于初始化所述多个Nmap,以为每个Nmap分配所述网络中待扫描的地址块。10.如权利要求8所述的网络拓扑结构的自动生成系统,其特征在于,所述顶点和路径生成模块采用图论和集合运算生成所述顶点信息和所述路径信息,所述的网络拓扑结构的自动生成系统还包括绘图模块,所述绘图模块用于根据所述顶点信息和所述路径信息在web页面中绘制网络拓扑结构图。
【文档编号】H04L12/24GK106027321SQ201610595096
【公开日】2016年10月12日
【申请日】2016年7月26日
【发明人】吴善鹏, 雷兵
【申请人】上海携程商务有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1