CN111130881B - 网络拓扑发现方法及装置 - Google Patents
网络拓扑发现方法及装置 Download PDFInfo
- Publication number
- CN111130881B CN111130881B CN201911359796.9A CN201911359796A CN111130881B CN 111130881 B CN111130881 B CN 111130881B CN 201911359796 A CN201911359796 A CN 201911359796A CN 111130881 B CN111130881 B CN 111130881B
- Authority
- CN
- China
- Prior art keywords
- information
- switch
- equipment
- link
- node
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请提供一种网络拓扑发现方法及装置,所述方法应用于网络拓扑发现系统中的探针设备,所述探针设备以旁路部署的方式挂载于目标网络的核心转发设备上,所述方法包括:向目标网络中的各交换机发送用于探测网络设备的设备发现报文,以使所述目标网络中的各交换机基于所述设备发现报文向所述探针设备返回第一信息报文和第二信息报文,所述第一信息报文携带交换机的设备信息,所述第二信息报文携带交换机的下连设备的设备信息和网络连接信息;依据接收到的第一信息报文和第二信息报文确定网络拓扑信息。应用该方法,可以简单快捷地实现网络拓扑的构建。
Description
技术领域
本申请涉及网络通信技术领域,尤其涉及一种网络拓扑发现方法及装置。
背景技术
目前,随着网络通信技术的不断发展,各种应用领域中的网络布局也愈益复杂化、规模化。以公安网为例,一个支队的网络下可以包含其下辖的多个大队子网,而一个大队子网下又包含其下辖的各种商场、银行、街道监控等子网。为了更好的维护、管理以及规划网络,网络拓扑信息必不可少。
相关技术中提供一类网络拓扑发现算法,该网络拓扑发现算法基于SNMP(简单网络管理协议,Simple Network Management Protocol)协议搜索网络设备上的路由表信息构造网络主拓扑,并基于ARP(Address Resolution Protocol,地址解析协议)协议或者ICMP(Internet Control Message Protocol,Internet控制报文协议)协议发现子网中的终端设备,实现网络子拓扑的构建。
由此可见,为了应用上述网络拓扑发现算法构建网络拓扑,网络设备需要开启SNMP协议并借助其他协议来辅助才能够获取到构建网络拓扑所需要的资源,因此,上述网络拓扑发现算法的实现较为复杂。
发明内容
有鉴于此,本申请提供一种网络拓扑发现方法及装置,以解决相关技术中提供的网络拓扑发现算法的实现较为复杂的问题。
具体地,本申请是通过如下技术方案实现的:
根据本申请实施例的第一方面,提供一种网络拓扑发现方法,所述方法应用于网络拓扑发现系统中的探针设备,所述探针设备以旁路部署的方式挂载于目标网络的核心转发设备上,所述方法包括:
向目标网络中的各交换机发送用于探测网络设备的设备发现报文,以使所述目标网络中的各交换机基于所述设备发现报文向所述探针设备返回第一信息报文和第二信息报文,所述第一信息报文携带交换机的设备信息,所述第二信息报文携带交换机的下连设备的设备信息和网络连接信息;
依据接收到的第一信息报文和第二信息报文确定网络拓扑信息。
根据本申请实施例的第二方面,提供一种网络拓扑发现装置,所述装置应用于网络拓扑发现系统中的探针设备,所述探针设备以旁路部署的方式挂载于目标网络的核心转发设备上,所述装置包括:
报文发送模块,用于向目标网络中的各交换机发送用于探测网络设备的设备发现报文,以使所述目标网络中的各交换机基于所述设备发现报文向所述探针设备返回第一信息报文和第二信息报文,所述第一信息报文携带交换机的设备信息,所述第二信息报文携带交换机的下连设备的设备信息和网络连接信息;
拓扑发现模块,用于依据接收到的第一信息报文和第二信息报文确定网络拓扑信息。
本实施例提供的网络拓扑发现方法,通过向目标网络中的各交换机发送用于探测网络设备的设备发现报文,以使目标网络中的各交换机基于设备发现报文向探针设备返回第一信息报文和第二信息报文,依据接收到的第一信息报文和第二信息报文确定网络拓扑信息,由于无需网络中的网络设备支持多种网络协议,因此可以简单快捷地实现网络拓扑的构建。
附图说明
图1为本申请提出的网络拓扑发现方法的应用场景示意图;
图2A,为设备发现报文的一种示例;
图2B为第一信息报文的一种示例;
图2C为第二信息报文的一种示例;
图2D为网络组网结构的示意图;
图3为本申请一示例性实施例提供的一种网络拓扑发现方法的实施例流程图;
图4为本申请一示例性实施例提供的一种步骤302的实现流程;
图5为本申请一示例性实施例提供的一种步骤302的实现流程;
图6为本申请网络拓扑发现装置所在探针设备的一种硬件结构图;
图7为本申请一示例性实施例提供的一种网络拓扑发现装置的实施例框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
请参见图1,为本申请提出的网络拓扑发现方法的应用场景示意图。如图1所示,网络100包括3个子网,分别为110、120、130,每一子网又包含其下辖的各种银行、商店、服务站、自助机等。以子网110为例,子网110还包括核心转发设备111、探针设备112、交换机113~11n,其中,探针设备112以旁路部署的方式挂载于核心转发设备111上,探针设备112则可以应用本申请提供的网络拓扑发现方法获取子网110的网络拓扑信息,并将获取到的网络拓扑信息上报至全息预警平台140,以供用户查看。
需要说明的是,图1所示应用场景中的组网架构仅仅作为示例,在应用中,网络100中还可以包括其他多种设备,并包含多种网络连接类型,本申请对此不做限制。
下面通过具体的实施例对本申请提出的网络拓扑发现方法进行详细说明:
为了便于理解,首先对本申请实施例中涉及到的一些名词进行说明:
(1)设备发现报文、第一信息报文、第二信息报文
在本申请实施例中,为了实现设备发现、设备相关信息的采集,涉及了三种报文,分别为设备发现报文、第一信息报文、第二信息报文。
其中,请参见图2A,为设备发现报文的一种示例。如图2A所示,设备发现报文可携带探针设备的一些基本信息,例如探针设备名称、探针设备型号、探针设备序列号、探针软件版本号等,该设备发现报文可用于探测网络设备。
请参见图2B,为第一信息报文的一种示例。如图2B所示,第一信息报文可携带交换机的设备信息,例如设备基本信息、设备运行信息、设备管理信息、设备端口信息等。
请参见图2C,为第二信息报文的一种示例。如图2C所示,第二信息报文可携带交换机的下连设备(包括但不现于交换机和AP设备)的设备信息(例如设备名称、设备型号、设备序列号、软件版本号等)和网络连接信息(设备MAC地址、设备IP地址、设备接口等)。
(2)交换机的下连设备
在本申请实施例中,当交换机发现有某一网络设备的报文经过自身转发时,则认为该网络设备为自身的下连设备。
举例来说,请参见图2D,为网络组网结构的示意图。在图2D中,假设AP设备210的报文经过交换机220进行转发,并假设AP设备230的报文也经过交换机220进行转发,由于AP设备230的报文在经过交换机220进行转发时也经过了交换机240,因此交换机220将AP设备210、AP设备230,以及交换机240都看做为自身的下连设备。基于此,在交换机向探针设备返回的第二信息报文中则可以携带AP设备210、AP设备230,以及交换机240的设备信息和网络连接信息。
下面通过具体的实施例对本申请提供的网络拓扑发现进行说明:
请参见图3,为本申请一示例性实施例提供的一种网络拓扑发现方法的实施例流程图,在一个例子中,该方法可应用于图1中所示例的任一探针设备,包括以下步骤:
步骤301:向目标网络中的各交换机发送用于探测网络设备的设备发现报文,以使目标网络中的各交换机基于设备发现报文向探针设备返回第一信息报文和第二信息报文。
在本申请实施例中,探针设备可向目标网络中的各交换机发送设备发现报文,例如,在图1所示例的应用场景中,网络110为目标网络,探针设备112可以向网络110中的交换机113~11n发送设备发现报文。
作为一个示例,探针设备可以以组播形式向目标网络中的各交换机发送设备发现报文。
作为一个示例,探针设备可以按照预设的发送频率,例如每隔三分钟向目标网络中的各交换机发送设备发现报文。
在本申请实施例中,目标网络中的各交换机在接收到设备发现报文后,可以从接收到的设备发现报文中解析出探针设备的IP地址,然后根据解析出的IP地址向探针设备返回第一信息报文和第二信息报文。
作为一个示例,目标网络中的各交换机在接收到设备发现报文后,可以按照预设的频率,例如每隔1分钟向探针设备返回第一信息报文和第二信息报文。
作为一个示例,目标网络中的各交换机在连续一段时间,例如9分钟未接收到设备发现报文后,则可以停止向探针设备返回第一信息报文和第二信息报文。
步骤302:依据接收到的第一信息报文和第二信息报文确定网络拓扑信息。
在本申请实施例中,探针设备可以依据接收到的第一信息报文得到目标网络中各交换机的设备信息,依据接收到的第二信息报文得到目标网络中各交换机的下连AP设备的设备信息和连接信息,以及目标网络中各交换机与其下连设备之间连接链路的链路信息。之后,探针设备依据各交换机的设备信息、各交换机的下连AP设备的设备信息和网络连接信息,以及各交换机与其下连设备之间连接链路的链路信息即可确定网络拓扑信息。
其中,作为一个示例,探针设备可以采用链表的形式维护目标网络中各交换机的设备信息,例如,维护一个第一设备信息链表,该第一设备信息链表中的每一个节点则记录一个交换机的设备信息。
作为一个示例,交换机的设备信息中至少包括交换机的设备序列号,本领域技术人员可以理解的是,设备序列号可以唯一地标识一个交换机。
举例来说,如下述表1所示,为交换机的设备信息的一种示例:
表1
在上述表1中,交换机的设备序列号包含在设备基本信息中。上述表1中的设备信息仅仅作为示例,在应用中,交换机的设备信息还可以包括除表1以外的其他信息,本申请对此不做限制。
至于探针设备是如何依据接收到的第一信息报文得到目标网络中各交换机的设备信息的,下面通过图4所示实施例进行说明,这里先不赘述。
类似的,作为一个示例,探针设备可以采用链表的形式维护目标网络中各交换机的下连AP设备的设备信息和连接信息,例如,维护一个第二设备信息链表,该第二设备信息链表中的每一个节点则记录一个交换机的下连AP设备的设备信息和连接信息。
作为一个示例,下连AP的设备信息中至少包括该下连AP设备所连接的交换机的设备序列号,下连AP设备的IP地址,本领域技术人员可以理解的是,IP地址可以在目标网络中唯一地标识一个AP设备。下连AP设备的连接信息可以包括该下连AP设备与其上连交换机之间的连接方式、连接端口等。
举例来说,如下述表2所示,为交换机的下连AP设备的设备信息和连接信息的一种示例:
表2
需要说明的是,上述表2中的设备信息和连接信息仅仅作为示例,在应用中,交换机的下联AP设备的设备信息、连接信息还可以包括除表2以外的其他信息,本申请对此不做限制。
至于探针设备是如何依据接收到的第二信息报文得到目标网络中各交换机的下连AP设备的设备信息和连接信息的,可以参考图4所示实施例所说明的探针设备依据接收到的第一信息报文得到目标网络中各交换机的设备信息的过程,本申请对此不再赘述。
再类似的,作为一个示例,探针设备可以采用链表的形式维护目标网络中各交换机与其下连设备之间连接链路的链路信息,例如,维护一个链路信息链表,该链路信息链表中的每一节点记录一个下连设备和交换机之间连接链路的链路信息。这里说的下连设备包括下连AP设备和下连交换机。
举例来说,如下述表3所示,为交换机与其下连设备之间连接链路的链路信息的一种示例:
表3
需要说明的是,上述表3中的链路信息仅仅作为示例,在应用中,交换机与其下联设备之间连接链路的链路信息还可以包括除表3以外的其他信息,本申请对此不做限制。
至于探针设备是如何依据接收到的第二信息报文得到目标网络中各交换机与其下连设备之间连接链路的链路信息的,下面通过图5所示实施例进行说明,这里先不赘述。
至此,完成图3所示流程的相关描述。
由上述实施例可见,通过向目标网络中的各交换机发送用于探测网络设备的设备发现报文,以使目标网络中的各交换机基于设备发现报文向探针设备返回第一信息报文和第二信息报文,依据接收到的第一信息报文和第二信息报文确定网络拓扑信息,由于无需网络中的网络设备支持多种网络协议,因此可以简单快捷地实现网络拓扑的构建。
下面通过图4所示实施例描述探针设备如何依据接收到的第一信息报文得到目标网络中各交换机的设备信息:
请参见图4,为本申请一示例性实施例提供的一种步骤302的实现流程,包括以下步骤:
步骤401:针对接收到的每一第一信息报文,解析该第一信息报文得到交换机的设备信息。
由上述描述可知,第一信息报文中携带交换机的设备信息。基于此,探针设备在接收到第一信息报文后,可以解析该第一信息报文得到交换机的设备信息。
步骤402:以解析得到的设备信息中的设备序列号为关键字查找设备信息链表,如果在设备信息链表中查找到包含关键字的目标节点,则执行步骤403;如果在设备信息链表中未查找到包含关键字的目标节点,则执行步骤404。
由上述描述可知,交换机的设备信息至少包括交换机的设备序列号。基于此,在本步骤402中,探针设备可以以解析得到的设备信息中的设备序列号为关键字查找上述第一设备信息链表。
如果在第一设备信息链表中查找到包含关键字的节点(以下简称第一节点),则可以认为之前已在第一设备信息链表中记录过该交换机的设备信息,但是,为了确保第一设备信息链表中记录的是目标网络中各交换机最新的设备信息,则可以执行步骤403。
如果在第一设备信息链表中未查找到包含关键字的目标节点,则可以执行步骤404。
步骤403:利用解析得到的设备信息更新该目标节点中记录的设备信息。
步骤404:将解析得到的设备信息作为一个节点记录在设备信息链表中。
至此,完成图4所示流程的相关描述。
通过图4所示实施例,最终实现了探针设备依据接收到的第一信息报文得到目标网络中各交换机的设备信息。
此外,在一实施例中,上述设备信息链表中的每一节点中还可以记录有状态标记和时间戳(表1中未示出),该状态标记用于指示节点对应的交换机的状态,其中,当状态标记为第一值时,表示交换机在线,当状态标记为第二值时,表示交换机离线,时间戳则用于指示节点上记录的设备信息的最近修改时间。
基于此,在该实施例中,探针设备可以针对设备信息链表中的每一节点,计算该节点上记录的时间戳与当前时间的时间差,之后比较计算出的时间差与设定阈值,如果时间差超过设定阈值,则可以认为长时间内未接收到来自该节点所对应的交换机的第一信息报文,该交换机已离线,因此,可以将该节点上记录的状态标记从第一值置为第二值;反之,如果时间差不超过设定阈值,则可以不做任何处理。
作为一个示例,探针设备可以按照预设的检查时间间隔执行上述过程。
下面通过图5所示实施例描述探针设备如何依据接收到的第二信息报文得到目标网络中各交换机与其下连设备之间连接链路的链路信息:
请参见图5,为本申请一示例性实施例提供的一种步骤302的实现流程,包括以下步骤:
步骤501:针对接收到的每一第二信息报文,解析该第二信息报文得到交换机的每一下连设备的设备信息、网络连接信息,以及每一类型的下连设备的数量。步骤502:针对每一下连设备,以解析得到的该下连设备的设备信息中的设备IP地址为关键字查找链路信息链表,如果在链路信息链表中未查找到包含关键字的目标节点,则执行步骤503;如果在链路信息链表中查找到包含关键字的目标节点,则执行步骤504。
步骤503:依据解析得到的该下连设备的设备信息和网络连接信息得到链路信息,并将得到的链路信息和该下连设备所属类型对应的下连设备的数量作为一个节点记录在链路信息链表中。
步骤504:比较目标节点中记录的数量和解析得到的该下连设备所属类型对应的数量,如果目标节点中记录的数量高于解析得到的该下连设备所属类型对应的数量,则执行步骤505;如果目标节点中记录的数量低于解析得到的该下连设备所属类型对应的数量,则结束流程。
步骤505:依据解析得到的该下连设备的设备信息和连接接口信息得到链路信息,并利用得到的链路信息更新目标节点中记录的链路信息。
下面对步骤501至步骤505进行统一说明:
由上述关于交换机下连设备的描述可知,当交换机发现有某一网络设备的报文经过自身转发时,则认为该网络设备为自身的下连设备,并且,交换机向探针设备返回的第二信息报文中携带所有下连设备的设备信息和网络连接信息。
但是,上述概念中的下连设备有可能并非是交换机真正的下连设备,例如,在图2D中,AP设备230并非是交换机220真正的下连设备,因此,在探针设备依据接收到的第二信息报文得到目标网络中各交换机与其下连设备之间连接链路的链路信息的过程中可以做一些处理,以“筛选出”交换机真正的下连设备。
具体的,在一实施例中,探针设备针对接收到的每一第二信息报文,解析该第二信息报文得到交换机的每一下连设备的设备信息、网络连接信息,以及每一类型的下连设备的数量。举例来说,基于图2D所示例的组网结构,交换机220发送的第二信息报文所指示的交换机220的下连AP设备的数量为2,下连交换机的数量为1。
之后,交换机针对解析得到的每一设备信息,以该设备信息中的设备IP地址为关键字查找链路信息链表,如果在链路信息链表中未查找到包含关键字的目标节点,则认为是首次接收到来自该交换机的第二信息报文,因此可以执行步骤503;如果在链路信息链表中查找到包含关键字的目标节点,则执行步骤504。
在步骤503中,探针设备依据解析得到的设备信息和连接接口信息得到链路信息,并将得到的链路信息和每一类型的下连设备的数量作为一个节点记录在链路信息链表中。以图2D所示例的组网结构举例来说,探针设备在接收到交换机220发送的第二信息报文后,通过解析该第二信息报文所得到的链路信息链表如下述表4所示:
表4
链路信息 | 数量 |
交换机220与交换机240之间的链路信息 | 2 |
交换机220与AP设备210之间的链路信息 | 2 |
交换机220与AP设备230之间的链路信息 | 2 |
在步骤504中,探针设备比较目标节点中记录的数量和解析得到的该下连设备所属类型对应的数量,如果目标节点中记录的数量高于解析得到的数量,则执行步骤505,即依据解析得到的该下连设备的设备信息和连接接口信息得到链路信息,并利用得到的链路信息更新目标节点中记录的链路信息;如果目标节点中记录的的数量低于解析得到的数量,则结束流程。
继续以图2D所示例的组网结构举例来说,假设探针设备在得到上述表4后,又接收到交换机240发送的第二信息报文,通过解析该第二信息报文得到交换机240与AP设备230之间的链路信息,并得到交换机240下连AP设备的数量为1,通过执行上述步骤504和步骤505,得到下述表5所示例的链路信息链表:
表5
链路信息 | 数量 |
交换机220与交换机240之间的链路信息 | 2 |
交换机220与AP设备210之间的链路信息 | 2 |
交换机240与AP设备230之间的链路信息 | 1 |
假设探针设备在得到上述表5后,又接收到交换机220发送的第二信息报文,此时通过执行步骤504可以得出目标节点中记录的的数量低于解析得到的数量,则不做任何处理。
通过图5所示实施例,最终实现了探针设备依据接收到的第二信息报文得到目标网络中各交换机与其下连设备之间连接链路的链路信息。
此外,为了快速对交换机出现的告警做出预警和通知,探针设备在收到日志报文后,可以在日志报文内容后添加探针设备的序列号信息,之后转发给全息预警平台进行处理。同时,在转发日志报文时可以采用websocket连接实现,通过该种处理,可以避免在日志报文数量较多的情况下重复建立连接,节省网络资源。
与前述网络拓扑发现方法的实施例相对应,本申请还提供了网络拓扑发现装置的实施例。
本申请网络拓扑发现装置的实施例可以应用在探针设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在探针设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图6所示,为本申请网络拓扑发现装置所在探针设备的一种硬件结构图,除了图6所示的处理器61、内存62、网络接口63、非易失性存储器64,以及内部总线65之外,实施例中网络拓扑发现装置所在的探针设备通常根据该探针设备的实际功能,还可以包括其他硬件,对此不再赘述。
请参见图7,为本申请一示例性实施例提供的一种网络拓扑发现装置的实施例框图,所述装置包括:报文发送模块71、拓扑发现模块72。
其中,报文发送模块71,用于向目标网络中的各交换机发送用于探测网络设备的设备发现报文,以使所述目标网络中的各交换机基于所述设备发现报文向所述探针设备返回第一信息报文和第二信息报文,所述第一信息报文携带交换机的设备信息,所述第二信息报文携带交换机的下连设备的设备信息和网络连接信息;
拓扑发现模块72,用于依据接收到的第一信息报文和第二信息报文确定网络拓扑信息。
在一实施例中,所述拓扑发现模块72包括(图7中未示出):
第一发现子模块,用于依据接收到的第一信息报文得到所述目标网络中各交换机的设备信息;
依据接收到的第二信息报文得到所述目标网络中各交换机的下连AP设备的设备信息和连接信息;
第二发现子模块,用于依据接收到的第二信息报文得到所述目标网络中各交换机与其下连设备之间连接链路的链路信息;
拓扑确定子模块,用于依据所述各交换机的设备信息、各交换机的下连AP设备的设备信息和网络连接信息,以及各交换机与其下连设备之间连接链路的链路信息确定网络拓扑信息。
在一实施例中,所述第一发现子模块包括(图7中未示出):
第一解析子模块,用于针对接收到的每一第一信息报文,解析该第一信息报文得到交换机的设备信息,所述设备信息至少包括设备序列号;
第一查找子模块,用于以解析得到的设备信息中的设备序列号为关键字查找第一设备信息链表,所述第一设备信息链表中的每一节点记录一个交换机的设备信息;
第一更新子模块,用于如果在所述第一设备信息链表中查找到包含所述关键字的目标节点,则利用解析得到的设备信息更新该目标节点中记录的设备信息;
第一添加子模块,用于如果在所述第一设备信息链表中未查找到包含所述关键字的目标节点,则将解析得到的设备信息作为一个节点记录在所述第一设备信息链表中。
在一实施例中,所述第一设备信息链表中的每一节点还记录有状态标记和时间戳,所述状态标记用于指示节点对应的交换机的状态,其中,当所述状态标记为第一值时,表示交换机在线,当所述状态标记为第二值时,表示交换机离线,所述时间戳用于指示节点上记录的设备信息的最近修改时间;
所述装置还包括(图7中未示出):
计算子模块,用于针对所述第一设备信息链表中的每一节点,计算该节点上记录的时间戳与当前时间的时间差;
第一比较子模块,用于比较所述时间差与设定阈值;
处理子模块,用于如果所述时间差超过所述设定阈值,则将该节点上记录的状态标记从所述第一值置为所述第二值;如果所述时间差不超过设定阈值,则结束流程。
在一实施例中,所述第二发现子模块包括(图7中未示出):
第二解析子模块,用于针对接收到的每一第二信息报文,解析该第二信息报文得到交换机的每一下连设备的设备信息、网络连接信息,以及每一类型的下连设备的数量,所述的设备信息至少包括IP地址;
第二查找子模块,用于针对所述交换机的每一下连设备,以解析得到的该下连设备的设备信息中的IP地址为关键字查找链路信息链表,所述链路信息链表中的每一节点记录一个下连设备和交换机之间连接链路的链路信息;
第二添加子模块,用于如果在所述链路信息链表中未查找到包含所述关键字的目标节点,则依据解析得到的该下连设备的设备信息和网络连接信息得到链路信息,并将得到的链路信息和该下连设备所属类型对应的的数量作为一个节点记录在所述链路信息链表中;
第二比较子模块,用于如果在所述链路信息链表中查找到包含所述关键字的目标节点,则比较所述目标节点中记录的数量和解析得到的该下连设备所属类型对应的数量;
第二更新子模块,用于如果所述目标节点中记录的数量高于所述解析得到的该下连设备所属类型对应数量,则依据解析得到的设备信息和网络连接信息得到链路信息,并利用得到的链路信息更新所述目标节点中记录的链路信息;如果所述目标节点中记录的数量低于所述解析得到的该下连设备所属类型对应的数量,则结束流程。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (8)
1.一种网络拓扑发现方法,其特征在于,所述方法应用于网络拓扑发现系统中的探针设备,所述探针设备以旁路部署的方式挂载于目标网络的核心转发设备上,所述方法包括:
向目标网络中的各交换机发送用于探测网络设备的设备发现报文,以使所述目标网络中的各交换机基于所述设备发现报文向所述探针设备返回第一信息报文和第二信息报文,所述第一信息报文携带交换机的设备信息,所述第二信息报文携带交换机的下连设备的设备信息和网络连接信息;依据接收到的第一信息报文和第二信息报文确定网络拓扑信息;
针对接收到的每一第一信息报文,解析该第一信息报文得到交换机的设备信息,所述设备信息至少包括设备序列号;
以解析得到的设备信息中的设备序列号为关键字查找第一设备信息链表,所述第一设备信息链表中的每一节点记录一个交换机的设备信息;
如果在所述第一设备信息链表中查找到包含所述关键字的目标节点,则利用解析得到的设备信息更新该目标节点中记录的设备信息;
如果在所述第一设备信息链表中未查找到包含所述关键字的目标节点,则将解析得到的设备信息作为一个节点记录在所述第一设备信息链表中。
2.根据权利要求1所述的方法,其特征在于,所述依据接收到的第一信息报文和第二信息报文确定网络拓扑信息,包括:
依据接收到的第一信息报文得到所述目标网络中各交换机的设备信息;
依据接收到的第二信息报文得到所述目标网络中各交换机的下连AP设备的设备信息和连接信息;
依据接收到的第二信息报文得到所述目标网络中各交换机与其下连设备之间连接链路的链路信息;
依据所述各交换机的设备信息、各交换机的下连AP设备的设备信息和网络连接信息,以及各交换机与其下连设备之间连接链路的链路信息确定网络拓扑信息。
3.根据权利要求1所述的方法,其特征在于,所述第一设备信息链表中的每一节点还记录有状态标记和时间戳,所述状态标记用于指示节点对应的交换机的状态,其中,当所述状态标记为第一值时,表示交换机在线,当所述状态标记为第二值时,表示交换机离线,所述时间戳用于指示节点上记录的设备信息的最近修改时间;
所述方法还包括:
针对所述第一设备信息链表中的每一节点,计算该节点上记录的时间戳与当前时间的时间差;
比较所述时间差与设定阈值;
如果所述时间差超过所述设定阈值,则将该节点上记录的状态标记从所述第一值置为所述第二值;
如果所述时间差不超过设定阈值,则结束流程。
4.根据权利要求2所述的方法,其特征在于,所述依据接收到的第二信息报文得到所述目标网络中各交换机与其下连设备之间连接链路的链路信息,包括:
针对接收到的每一第二信息报文,解析该第二信息报文得到交换机的每一下连设备的设备信息、网络连接信息,以及每一类型的下连设备的数量,所述的设备信息至少包括IP地址;
针对所述交换机的每一下连设备,以解析得到的该下连设备的设备信息中的IP地址为关键字查找链路信息链表,所述链路信息链表中的每一节点记录一个下连设备和交换机之间连接链路的链路信息;
如果在所述链路信息链表中未查找到包含所述关键字的目标节点,则依据解析得到的该下连设备的设备信息和网络连接信息得到链路信息,并将得到的链路信息和该下连设备所属类型对应的的数量作为一个节点记录在所述链路信息链表中;
如果在所述链路信息链表中查找到包含所述关键字的目标节点,则比较所述目标节点中记录的数量和解析得到的该下连设备所属类型对应的数量;
如果所述目标节点中记录的数量高于所述解析得到的该下连设备所属类型对应数量,则依据解析得到的设备信息和网络连接信息得到链路信息,并利用得到的链路信息更新所述目标节点中记录的链路信息;
如果所述目标节点中记录的数量低于所述解析得到的该下连设备所属类型对应的数量,则结束流程。
5.一种网络拓扑发现装置,其特征在于,所述装置应用于网络拓扑发现系统中的探针设备,所述探针设备以旁路部署的方式挂载于目标网络的核心转发设备上,所述装置包括:
报文发送模块,用于向目标网络中的各交换机发送用于探测网络设备的设备发现报文,以使所述目标网络中的各交换机基于所述设备发现报文向所述探针设备返回第一信息报文和第二信息报文,所述第一信息报文携带交换机的设备信息,所述第二信息报文携带交换机的下连设备的设备信息和网络连接信息;
拓扑发现模块,用于依据接收到的第一信息报文和第二信息报文确定网络拓扑信息;
所述拓扑发现模块包括:
第一解析子模块,用于针对接收到的每一第一信息报文,解析该第一信息报文得到交换机的设备信息,所述设备信息至少包括设备序列号;
第一查找子模块,用于以解析得到的设备信息中的设备序列号为关键字查找第一设备信息链表,所述第一设备信息链表中的每一节点记录一个交换机的设备信息;
第一更新子模块,用于如果在所述第一设备信息链表中查找到包含所述关键字的目标节点,则利用解析得到的设备信息更新该目标节点中记录的设备信息;
第一添加子模块,用于如果在所述第一设备信息链表中未查找到包含所述关键字的目标节点,则将解析得到的设备信息作为一个节点记录在所述第一设备信息链表中。
6.根据权利要求5所述的装置,其特征在于,所述拓扑发现模块包括:
第一发现子模块,用于依据接收到的第二信息报文得到所述目标网络中各交换机的下连AP设备的设备信息和连接信息;
第二发现子模块,用于依据接收到的第二信息报文得到所述目标网络中各交换机与其下连设备之间连接链路的链路信息;
拓扑确定子模块,用于依据所述各交换机的设备信息、各交换机的下连AP设备的设备信息和网络连接信息,以及各交换机与其下连设备之间连接链路的链路信息确定网络拓扑信息。
7.根据权利要求6所述的装置,其特征在于,所述第一设备信息链表中的每一节点还记录有状态标记和时间戳,所述状态标记用于指示节点对应的交换机的状态,其中,当所述状态标记为第一值时,表示交换机在线,当所述状态标记为第二值时,表示交换机离线,所述时间戳用于指示节点上记录的设备信息的最近修改时间;
所述装置还包括:
计算子模块,用于针对所述第一设备信息链表中的每一节点,计算该节点上记录的时间戳与当前时间的时间差;
第一比较子模块,用于比较所述时间差与设定阈值;
处理子模块,用于如果所述时间差超过所述设定阈值,则将该节点上记录的状态标记从所述第一值置为所述第二值;如果所述时间差不超过设定阈值,则结束流程。
8.根据权利要求7所述的装置,其特征在于,所述第二发现子模块包括:
第二解析子模块,用于针对接收到的每一第二信息报文,解析该第二信息报文得到交换机的每一下连设备的设备信息、网络连接信息,以及每一类型的下连设备的数量,所述的设备信息至少包括IP地址;
第二查找子模块,用于针对所述交换机的每一下连设备,以解析得到的该下连设备的设备信息中的IP地址为关键字查找链路信息链表,所述链路信息链表中的每一节点记录一个下连设备和交换机之间连接链路的链路信息;
第二添加子模块,用于如果在所述链路信息链表中未查找到包含所述关键字的目标节点,则依据解析得到的该下连设备的设备信息和网络连接信息得到链路信息,并将得到的链路信息和该下连设备所属类型对应的的数量作为一个节点记录在所述链路信息链表中;
第二比较子模块,用于如果在所述链路信息链表中查找到包含所述关键字的目标节点,则比较所述目标节点中记录的数量和解析得到的该下连设备所属类型对应的数量;
第二更新子模块,用于如果所述目标节点中记录的数量高于所述解析得到的该下连设备所属类型对应数量,则依据解析得到的设备信息和网络连接信息得到链路信息,并利用得到的链路信息更新所述目标节点中记录的链路信息;如果所述目标节点中记录的数量低于所述解析得到的该下连设备所属类型对应的数量,则结束流程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911359796.9A CN111130881B (zh) | 2019-12-25 | 2019-12-25 | 网络拓扑发现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911359796.9A CN111130881B (zh) | 2019-12-25 | 2019-12-25 | 网络拓扑发现方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111130881A CN111130881A (zh) | 2020-05-08 |
CN111130881B true CN111130881B (zh) | 2022-11-01 |
Family
ID=70502417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911359796.9A Active CN111130881B (zh) | 2019-12-25 | 2019-12-25 | 网络拓扑发现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111130881B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105991334A (zh) * | 2015-02-28 | 2016-10-05 | 中国移动通信集团广西有限公司 | 一种网络拓扑自发现方法及装置 |
CN107733713A (zh) * | 2017-10-18 | 2018-02-23 | 北京德塔精要信息技术有限公司 | 混合网络中网络拓扑的获取方法、系统、设备及存储介质 |
CN108173692A (zh) * | 2017-12-28 | 2018-06-15 | 山东华软金盾软件股份有限公司 | 一种基于主动和被动相结合的全网设备感知系统和感知方法 |
CN108429637A (zh) * | 2018-02-05 | 2018-08-21 | 国电南瑞科技股份有限公司 | 一种智能变电站过程层网络拓扑动态探测系统及方法 |
CN109840533A (zh) * | 2017-11-28 | 2019-06-04 | 中国移动通信集团浙江有限公司 | 一种应用拓扑图识别方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070245033A1 (en) * | 2006-04-14 | 2007-10-18 | Microsoft Corporation | Link layer discovery and diagnostics |
-
2019
- 2019-12-25 CN CN201911359796.9A patent/CN111130881B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105991334A (zh) * | 2015-02-28 | 2016-10-05 | 中国移动通信集团广西有限公司 | 一种网络拓扑自发现方法及装置 |
CN107733713A (zh) * | 2017-10-18 | 2018-02-23 | 北京德塔精要信息技术有限公司 | 混合网络中网络拓扑的获取方法、系统、设备及存储介质 |
CN109840533A (zh) * | 2017-11-28 | 2019-06-04 | 中国移动通信集团浙江有限公司 | 一种应用拓扑图识别方法及装置 |
CN108173692A (zh) * | 2017-12-28 | 2018-06-15 | 山东华软金盾软件股份有限公司 | 一种基于主动和被动相结合的全网设备感知系统和感知方法 |
CN108429637A (zh) * | 2018-02-05 | 2018-08-21 | 国电南瑞科技股份有限公司 | 一种智能变电站过程层网络拓扑动态探测系统及方法 |
Non-Patent Citations (2)
Title |
---|
The Internet Network Topology Probing Method Based on Classified Strategy;Yang Guozheng,Chen Huixian;《2012 Second International Conference on Instrumentation,Measurement,Computer,Communication and Control》;20130204;全文 * |
网络拓扑发现的研究与实现;杨凯;《中国优秀硕士学位论文数据库》;20080501;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111130881A (zh) | 2020-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110661669B (zh) | 一种基于icmp、tcp、udp协议的网络设备的网络拓扑自动发现方法 | |
CN112260861A (zh) | 一种基于流量感知的网络资产拓扑识别方法 | |
CN108306748B (zh) | 网络故障定位方法、装置及交互装置 | |
CN103442008B (zh) | 一种路由安全检测系统及检测方法 | |
CN108011746B (zh) | 基于Traceroute及SNMP协议的IP级全球互联网拓扑测绘方法 | |
JP7416919B2 (ja) | データ処理方法及び装置並びにコンピュータ記憶媒体 | |
CN110224883B (zh) | 一种应用于电信承载网的灰色故障诊断方法 | |
CN108616367B (zh) | 故障定位方法和网络设备 | |
CN110311866B (zh) | 一种快速转发报文的方法及装置 | |
US20130042020A1 (en) | Quick Network Path Discovery | |
CN107465621B (zh) | 一种路由器发现方法、sdn控制器、路由器和网络系统 | |
CN104579978A (zh) | 一种动态网络链路层拓扑发现方法 | |
EP3751791A1 (en) | Identification of traceroute nodes and associated devices | |
US20040158780A1 (en) | Method and system for presenting neighbors of a device in a network via a graphical user interface | |
CN107222359B (zh) | 一种is-is网络中的链路异常检测方法及系统 | |
CN110601924B (zh) | 一种报文发送方法及装置 | |
CN110838950B (zh) | 一种网络性能抖动值的确定方法及装置 | |
CN111130881B (zh) | 网络拓扑发现方法及装置 | |
CN110995606B (zh) | 一种拥塞分析方法及装置 | |
CN111010362B (zh) | 一种异常主机的监控方法及装置 | |
CN113271216A (zh) | 一种数据处理方法及相关设备 | |
CN110753364A (zh) | 网络监控方法、系统、电子设备和存储介质 | |
CN116248479A (zh) | 网络路径探测方法、装置、设备及存储介质 | |
CN115766252A (zh) | 一种流量异常检测方法、装置、电子设备及存储介质 | |
CN115277418A (zh) | 一种bgp网络运维系统 |
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 |