CN111464450B - 网络拓扑结构的生成方法及装置 - Google Patents
网络拓扑结构的生成方法及装置 Download PDFInfo
- Publication number
- CN111464450B CN111464450B CN202010230987.1A CN202010230987A CN111464450B CN 111464450 B CN111464450 B CN 111464450B CN 202010230987 A CN202010230987 A CN 202010230987A CN 111464450 B CN111464450 B CN 111464450B
- Authority
- CN
- China
- Prior art keywords
- designated
- devices
- port
- reachable
- equipment
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- 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
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/44—Star or tree networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/40—Wormhole routing
Abstract
本发明公开了一种网络拓扑结构的生成方法,确定网络中多个指定设备,其中,多个指定设备之间通过端口直接连接或者间接连接。在多个指定设备中,确定指定设备的端口对应的可达设备,其中,指定设备的端口对应的可达设备通过端口与指定设备直接连接或者间接连接。根据指定设备的端口对应的可达设备数量,确定多个指定设备中的根节点设备。根据指定设备的端口对应的可达设备,确定多个指定设备中直接连接的指定设备。根据多个指定设备中的根节点设备和直接连接的指定设备,生成网络中多个指定设备的拓扑结构。由此,实现了根据网络中多个指定设备的端口对应的可达设备,自动生成网络中多个指定设备的拓扑结构,简单高效,准确度高。
Description
【技术领域】
本发明涉及通信网络技术领域,尤其涉及一种网络拓扑结构的生成方法及装置。
【背景技术】
网络拓扑结构是指网络中的设备与传输媒介形成的结点与线的物理构成模式,反映了整个网络中各个设备的分布情况以及连接状态。
相关技术中,由网络运营维护人员人工确定网络的拓扑结构,并手动绘制出网络拓扑结构图,效率低下。
【发明内容】
有鉴于此,本发明实施例提供了一种网络拓扑结构的生成方法、装置、电子设备、计算机可读存储介质、计算机程序产品,能够自动生成网络中多个指定设备的拓扑结构,简单高效。
一方面,本发明实施例提供了一种网络拓扑结构的生成方法,包括:确定网络中多个指定设备;其中,所述多个指定设备之间通过端口直接连接或者间接连接;在所述多个指定设备中,确定所述指定设备的端口对应的可达设备;其中,所述指定设备的端口对应的可达设备通过所述端口与所述指定设备直接连接或者间接连接;根据所述指定设备的端口对应的可达设备数量,确定所述多个指定设备中的根节点设备;根据所述指定设备的端口对应的可达设备,确定所述多个指定设备中直接连接的指定设备;以及根据所述多个指定设备中的根节点设备和所述直接连接的指定设备,生成所述网络中多个指定设备的拓扑结构。
另外,本发明实施例的网络拓扑结构的生成方法,还具有如下附加的技术特征:
可选地,所述根据所述指定设备的端口对应的可达设备数量,确定所述多个指定设备中的根节点设备,包括:针对任一所述指定设备,计算所有与可达设备连接所用端口对应的可达设备数量的均方差的数值;根据所述指定设备对应的均方差的数值,确定所述多个指定设备中的根节点设备。
可选地,所述根据所述指定设备对应的均方差的数值,确定所述多个指定设备中的根节点设备,包括:在与可达设备连接所用端口数量不为1的指定设备中,将所述均方差的数值最小的指定设备,作为所述多个指定设备中的根节点设备;或者根据所述指定设备对应的所述均方差的数值和所述指定设备的端口带宽,确定所述多个指定设备中的根节点设备。
可选地,所述根据所述指定设备的端口对应的可达设备,确定所述多个指定设备中直接连接的指定设备,包括:根据所述多个指定设备中的根节点设备和所述指定设备的端口对应的可达设备,确定所述指定设备的端口的类型;其中,所述端口的类型包括上行端口和下行端口;根据所述指定设备的端口的类型和所述指定设备的端口对应的可达设备,确定所述多个指定设备中直接连接的指定设备。
可选地,所述根据所述指定设备的端口的类型和所述指定设备的端口对应的可达设备,确定所述多个指定设备中直接连接的指定设备,包括:确定每个所述上行端口对应的可达设备和每个下行端口对应的可达设备;针对所述多个指定设备中的任意两个设备,执行根据第一设备的上行端口对应的可达设备和第二设备的下行端口对应的可达设备,确定所述第一设备和所述第二设备为所述直接连接的指定设备的步骤,直至确定所述多个指定设备中所有直接连接的指定设备;其中,所述第一设备和所述第二设备为所述多个指定设备中的任意两个设备。
可选地,在所述第一设备的上行端口对应的可达设备中包括所述第二设备,所述第二设备的下行端口对应的可达设备中包括所述第一设备,并且所述第一设备的上行端口对应的可达设备和所述第二设备的下行端口对应的可达设备没有交集的情况下,确定所述第一设备和所述第二设备直接连接。
可选地,所述根据所述多个指定设备中的根节点设备和所述直接连接的指定设备,生成所述网络中多个指定设备的拓扑结构,包括:根据所述多个指定设备中的根节点设备和所述直接连接的指定设备,确定所述多个指定设备对应的层级;根据所述多个指定设备对应的层级,以及所述直接连接的指定设备,生成所述网络中多个指定设备的拓扑结构。
一方面,本发明实施例提供了一种根节点设备的确定方法,包括:确定网络中多个指定设备;其中,所述多个指定设备之间通过端口直接连接或者间接连接;在所述多个指定设备中,确定所述指定设备的端口对应的可达设备;其中,所述指定设备的端口对应的可达设备通过所述端口与所述指定设备直接连接或者间接连接;以及根据所述指定设备的端口对应的可达设备数量,确定所述多个指定设备中的根节点设备。
一方面,本发明实施例提供了一种网络拓扑结构的生成装置,包括:第一确定模块,用于确定网络中多个指定设备;其中,所述多个指定设备之间通过端口直接连接或者间接连接;第二确定模块,用于在所述多个指定设备中,确定所述指定设备的端口对应的可达设备;其中,所述指定设备的端口对应的可达设备通过所述端口与所述指定设备直接连接或者间接连接;第三确定模块,用于根据所述指定设备的端口对应的可达设备数量,确定所述多个指定设备中的根节点设备;第四确定模块,用于根据所述指定设备的端口对应的可达设备,确定所述多个指定设备中直接连接的指定设备;以及生成模块,用于根据所述多个指定设备中的根节点设备和所述直接连接的指定设备,生成所述网络中多个指定设备的拓扑结构。
另外,本发明实施例的网络拓扑结构的生成装置,还具有如下附加的技术特征:
可选地,所述第三确定模块,包括:计算子模块,用于针对任一所述指定设备,计算所有与可达设备连接所用端口对应的可达设备数量的均方差的数值;第一确定子模块,用于根据所述指定设备对应的均方差的数值,确定所述多个指定设备中的根节点设备。
可选地,所述第一确定子模块,具体用于在与可达设备连接所用端口数量不为1的指定设备中,将所述均方差的数值最小的指定设备,作为所述多个指定设备中的根节点设备;或者根据所述指定设备对应的所述均方差的数值和所述指定设备的端口带宽,确定所述多个指定设备中的根节点设备。
可选地,所述第四确定模块,包括:第二确定子模块,用于根据所述多个指定设备中的根节点设备和所述指定设备的端口对应的可达设备,确定所述指定设备的端口的类型;其中,所述端口的类型包括上行端口和下行端口;第三确定子模块,用于根据所述指定设备的端口的类型和所述指定设备的端口对应的可达设备,确定所述多个指定设备中直接连接的指定设备。
可选地,所述第三确定子模块,包括:确定单元,用于确定每个所述上行端口对应的可达设备和每个下行端口对应的可达设备;执行单元,用于针对所述多个指定设备中的任意两个设备,执行根据第一设备的上行端口对应的可达设备和第二设备的下行端口对应的可达设备,确定所述第一设备和所述第二设备为所述直接连接的指定设备的步骤,直至确定所述多个指定设备中所有直接连接的指定设备;其中,所述第一设备和所述第二设备为所述多个指定设备中的任意两个设备。
可选地,所述执行单元,具体用于在所述第一设备的上行端口对应的可达设备中包括所述第二设备,所述第二设备的下行端口对应的可达设备中包括所述第一设备,并且所述第一设备的上行端口对应的可达设备和所述第二设备的下行端口对应的可达设备没有交集的情况下,确定所述第一设备和所述第二设备直接连接。
可选地,所述生成模块,包括:第四确定子模块,用于根据所述多个指定设备中的根节点设备和所述直接连接的指定设备,确定所述多个指定设备对应的层级;生成子模块,用于根据所述多个指定设备对应的层级,以及所述直接连接的指定设备,生成所述网络中多个指定设备的拓扑结构。
一方面,本发明实施例提供了一种根节点设备的确定装置,包括:第五确定模块,用于确定网络中多个指定设备;其中,所述多个指定设备之间通过端口直接连接或者间接连接;第六确定模块,用于在所述多个指定设备中,确定所述指定设备的端口对应的可达设备;其中,所述指定设备的端口对应的可达设备通过所述端口与所述指定设备直接连接或者间接连接;以及第七确定模块,用于根据所述指定设备的端口对应的可达设备数量,确定所述多个指定设备中的根节点设备。
一方面,本发明实施例提供了一种电子设备,包括存储器和处理器;存储器上存储有可由处理器运行的计算机程序;当处理器运行计算机程序时,实现如前述的网络拓扑结构的生成方法。
一方面,本发明实施例提供了一种电子设备,包括存储器和处理器;存储器上存储有可由处理器运行的计算机程序;当处理器运行计算机程序时,实现如前述的根节点设备的确定方法。
一方面,本发明实施例提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述的网络拓扑结构的生成方法。
一方面,本发明实施例提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述的根节点设备的确定方法。
一方面,本发明实施例提供了一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时实现如前述的网络拓扑结构的生成方法。
一方面,本发明实施例提供了一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时实现如前述的根节点设备的确定方法。
和现有技术相比,本发明实施例根据网络中多个指定设备的端口对应的可达设备,自动生成网络中多个指定设备的拓扑结构,简单高效,准确度高。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为树型网络结构的一种示意图;
图2为本发明实施例所提供的一种网络拓扑结构的生成方法的流程示意图;
图3为指定设备的端口对应的可达设备信息的报文的示意图;
图4为树型网络结构的另一种示意图;
图5a为网络正常时网络拓扑结构图的示意图;
图5b为网络出问题时网络拓扑结构图的示意图;
图6为一种网络拓扑结构图的示意图;
图7为本发明实施例所提出的一种根节点设备的确定方法的流程示意图;
图8为本发明实施例所提出的一种网络拓扑结构的生成装置的结构示意图;以及
图9为本发明实施例所提出的一种根节点设备的确定装置的结构示意图。
【具体实施方式】
为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的相同的字段,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述预设范围等,但这些预设范围不应限于这些术语。这些术语仅用来将预设范围彼此区分开。例如,在不脱离本发明实施例范围的情况下,第一预设范围也可以被称为第二预设范围,类似地,第二预设范围也可以被称为第一预设范围。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
基于前述说明,可以知道,相关技术中,由网络运营维护人员人工确定网络的拓扑结构,并手动绘制出网络拓扑结构图,不仅效率低下,而且出错的可能性较高。
为了解决上述问题,本发明实施例提供了一种网络拓扑结构的生成方法。
为了便于说明本发明实施例所提供的网络拓扑结构的生成方法,首先对相关技术进行说明。
网络拓扑结构是指用传输介质互连各种设备的物理布局,通信网络中的计算机等设备要实现互联,就需要以一定的结构方式进行连接,这种连接方式就叫做“拓扑结构”,通俗地讲就是这些网络设备是如何连接在一起的。目前常见的网络拓扑结构主要有:总线型结构、环状结构、星型结构、树型结构和网状结构等。其中,总线型结构采用一条单根的通信线路(总线)作为公共的传输通道,所有的结点都通过相应的接口直接连接到总线上,并通过总线进行数据传输。环状结构中,各个设备的地位相同,相互顺序连接,构成一个封闭的环,数据在环中可以是单向或是双向传送。星型结构具有一个中心节点设备,其余每个节点设备都通过一条点对点链路与中心节点设备相连。树型结构具有一个根节点设备,网络中的其他节点设备通过直接连接或者间接连接的方式,与根节点设备进行连接。网状结构中,各个设备连成一个网状结构,没有主节点设备,也不区分层次。
其中,树型网络结构具有易于扩展,故障易隔离,可靠性高等优点。本发明实施例主要用于在树型网络结构中,在自动确定根节点之后,自动生成网络的拓扑结构图,直观地展示整个网络的拓扑结构,简单高效,准确度高。
图1为树型网络结构的一种示意图。当节点设备位于网络中时,可视作网络结构的一个节点,如图1所示,在树型网络结构中,包括一个根节点设备A,与根节点设备A直接连接的是第一级节点设备B和第一级节点设备C,第二级节点设备D和第二级节点设备E与第一级节点设备B直接连接,并通过第一级节点设备B与根节点设备A间接连接,第二级节点设备F和第二级节点设备G与第一级节点设备C直接连接,并通过第一级节点设备C与根节点设备A间接连接,即第一级节点设备B、第一级节点设备C、第二级节点设备D、第二级节点设备E、第二级节点设备F、第二级节点设备G与根节点设备A直接连接或者间接连接。
此外,对于节点设备来说,与上一级节点设备进行数据传输的端口为该节点设备的上行端口,与下一级节点设备进行数据传输的端口为该节点设备的下行端口。举例来说,根节点设备A与第一级节点设备B、第一级节点设备C进行数据传输的端口为根节点设备A的下行端口,第一级节点设备B与根节点设备A进行数据传输的端口为第一级节点设备B的上行端口。
基于前述对相关技术的说明,可以知道,要生成树型网络结构,需要先确定网络中的根节点设备,再结合网络中设备之间的连接关系,才能生成网络的拓扑结构。
图2为本发明实施例所提供的一种网络拓扑结构的生成方法的流程示意图。如图2所示,该方法包括:
步骤S101,确定网络中多个指定设备。
其中,多个指定设备之间通过端口直接连接或者间接连接。
需要说明的是,本发明实施例中的指定设备是指人为选定的设备,应当理解,在网络运营维护过程中,有时需要生成网络中全部设备的网络拓扑结构,有时则只需要生成网络中部分设备的网络拓扑结构。基于此,本发明实施例允许网络运营维护人员根据实际需要,选取全部设备或者部分设备作为指定设备,进而生成多个指定设备的网络拓扑结构。
步骤S102,在多个指定设备中,确定指定设备的端口对应的可达设备。
其中,指定设备的端口对应的可达设备通过端口与指定设备直接连接或者间接连接。
其中,本发明实施例中的指定设备的端口对应的可达设备属于多个指定设备之一。也就是说,对于端口对应的不属于指定设备的可达设备,与生成多个指定设备的网络拓扑结构无关。
基于前述说明,可以知道,网络中设备之间进行通信,需要通过设备的端口实现数据的传输。也就是说,设备之间的连接是基于设备的端口之间的连接实现的,因此指定设备的可达设备与指定设备的端口相对应。也就是说,本发明实施例将指定设备的全部可达设备与指定设备的每个端口相对应,从而将指定设备的可达设备按照端口的不同进行了分组。
需要说明的是,指定设备的端口对应的可达设备的信息存储在该指定设备中,并可以以可达设备列表的形式进行存储。
具体来说,图3为指定设备的端口对应的可达设备信息的报文的示意图。如图3所示,可以通过协议并发的方式获取每个指定设备的端口对应的可达设备信息,报文格式采用json格式。SwitchTopology中存储了指定设备的网络结构信息,id为指定设备的端口号,PortMacList中存储了该端口的可达设备列表,每个PortMac对应于一个可达设备,可达设备信息包括可达设备的mac地址和设备序列号。
步骤S103,根据指定设备的端口对应的可达设备数量,确定多个指定设备中的根节点设备。
基于前述说明,可以知道,在树型网络中,网络中的其他节点设备通过直接连接或者间接连接的方式,与根节点设备的端口进行连接。也就是说,根节点设备是整个树型网络的核心节点,其他节点设备以根节点设备为核心,向外延伸,因此需要先确定多个指定设备中的根节点设备。
需要说明的是,为了让本发明实施例生成的网络拓扑结构较为对称和美观,需要让生成的网络拓扑结构中的根节点设备位于网络的中心。
具体来说,本发明实施例通过指定设备的端口对应的可达设备数量来选取位于根节点设备,即步骤S103,根据指定设备的端口对应的可达设备数量,确定多个指定设备中的根节点设备,包括:针对任一指定设备,计算所有与可达设备连接所用端口对应的可达设备数量的均方差的数值,并根据指定设备对应的均方差的数值,确定多个指定设备中的根节点设备。
可以理解,均方差的数值大小能够反映出一个数据集的离散程度,因此一个指定设备的所有与可达设备连接所用端口对应的可达设备数量的均方差的数值越小,说明该指定设备的不同端口对应的可达设备数量越均衡。也就是说,该指定设备越接近网络的中心。
较优地,由于对于与可达设备连接所用端口的数量仅为1个的指定设备,一般而言无法作为根节点设备,也就没有必要计算对应的均方差,因此,可以针对所述多个指定设备中,与可达设备连接所用端口数量不为1的指定设备,计算指定设备对应的均方差,并根据计算得到的指定设备对应的均方差的数值,确定所述多个指定设备中的根节点设备。
基于此,本发明实施例提供了两种确定根节点设备的具体方法:
第一种可能的实现方式是,在与可达设备连接所用端口数量不为1的指定设备中,将均方差的数值最小的指定设备,作为多个指定设备中的根节点设备。一种实现方式中,由于均方差数值最小为零,可以是在对某个与可达设备连接所用端口数量不为1的指定设备计算得到均方差的数值为零的情况下,直接将均方差数值为零的指定设备确定为根节点设备,无需继续对其他指定设备进行后续计算;另一种实现方式中,可以是对与可达设备连接所用端口数量不为1的每个指定设备,计算对应的均方差的数值,并根据每个指定设备对应的均方差的数值,将均方差的数值最小的指定设备,作为多个指定设备中的根节点设备。
还是以图1所示的网络拓扑结构进行说明,在图1中,节点设备A包括两个与可达设备连接所用的端口,一个端口对应的可达设备数量为3,另一个端口对应的可达设备数量为3,对应的均方差的数值为0。类似的,节点设备B对应的均方差的数值为节点设备C对应的均方差的数值为节点设备D、节点设备E、节点设备F、节点设备G都只有一个端口,无法作为根节点设备,直接排除。因此,节点设备A为根节点设备。
第二种可能的实现方式是,考虑到在特殊情况下,例如,多个指定设备对应的均方差的数值都最小,即不存在唯一且最小的均方差。本发明实施例根据指定设备对应的均方差的数值和指定设备的端口带宽,确定多个指定设备中的根节点设备。例如,可以在多个需要计算均方差的指定设备中,先确定所对应的均方差与计算得到的最小均方差差值在预设范围内的部分指定设备,再根据端口带宽从该部分指定设备中确定根节点设备。一般来说,网络中层级越高的设备的端口带宽越大,因此,可以根据端口带宽从该部分指定设备中选取端口带宽最大的作为根节点设备。
较优地,本发明实施例可以在多个所含与可达设备连接所用端口数量不为1的指定设备对应的均方差的数值都最小时,从中选取端口带宽最大的指定设备作为根节点设备。
举例来说,图4为树型网络结构的另一种示意图。如图4所示,在图4的树型网络结构中,节点设备A的第一个端口对应的可达设备数量为5,第二个端口对应的可达设备数量为2,第三个端口对应的可达设备数量为2,对应的均方差的数值为节点设备B的第一个端口对应的可达设备数量为2,第二个端口对应的可达设备数量为2,第三个端口对应的可达设备数量为5,对应的均方差的数值为节点设备A和节点设备B对应的均方差的数值大小相同,而节点设备A的端口的带宽大于节点设备B的端口的带宽,因此确定节点设备A为根节点设备。
此外,本发明实施例的目的在于生成满足网络运营维护人员使用需求的网络拓扑结构,因此允许用户手动选择多个指定设备的根节点设备。步骤S104,根据指定设备的端口对应的可达设备,确定多个指定设备中直接连接的指定设备。
基于前述说明,可以知道,步骤S102,在多个指定设备中,确定指定设备的端口对应的可达设备,可达设备是指与指定设备直接连接或者间接连接的设备,但是无法对可达设备进行进一步地区分,确定哪些可达设备与指定设备直接连接,哪些可达设备与指定设备间接连接。对于生成网络拓扑结构来说,需要从指定设备的端口对应的全部可达设备中,确定出与指定设备的端口直接连接的其他指定设备,进而确定多个指定设备中直接连接的指定设备。
第一种可能的实现方式是,根据指定设备的端口对应的可达设备,确定多个指定设备中直接连接的指定设备。具体来说,针对多个指定设备中的任意两个设备,执行根据第一设备的第一端口对应的可达设备和第二设备的第二端口对应的可达设备,确定第一设备和第二设备为直接连接的指定设备的步骤,直至确定多个指定设备中所有直接连接的指定设备。其中,第一设备和第二设备为多个指定设备中的任意两个设备,第一端口为第一设备的任意一个端口,第二端口为第二设备的任意一个端口。
在第一设备的第一端口对应的可达设备中包括第二设备,第二设备的第二端口对应的可达设备中包括第一设备,并且第一设备的第一端口对应的可达设备和第二设备的第二端口对应的可达设备没有交集的情况下,确定第一设备和第二设备直接连接。
还是以图1所示的网络拓扑结构进行说明,在图1中,节点设备A的一个端口对应的可达设备包括节点设备B,节点设备D和节点设备E,节点设备B的一个端口对应的可达设备包括节点设备A,节点设备C,节点设备F和节点设备G。节点设备A的一个端口对应的可达设备中包括节点设备B,节点设备B的一个端口对应的可达设备中包括节点设备A,并且节点设备A的该端口对应的可达设备,和节点设备B的该端口对应的可达设备没有交集,从而确定节点设备A和节点设备B直接连接。
下面详细说明上述实现方式的原理,当第一设备的第一端口对应的可达设备中包括第二设备,第二设备的第二端口对应的可达设备中包括第一设备时,说明第一设备和第二设备直接连接或者间接连接。
假设第一设备的第一端口和第二设备的第二端口间接连接,并且第一设备和第二设备之间存在着第三设备,则第一设备的第一端口对应的可达设备中包括第三设备,第二设备的第二端口对应的可达设备中也应当包括第三设备,即第一设备的第一端口对应的可达设备和第二设备的第二端口对应的可达设备都具有第三设备。
换句话说,在第一设备的第一端口对应的可达设备中包括第二设备,第二设备的第二端口对应的可达设备中包括第一设备,并且第一设备的第一端口对应的可达设备和第二设备的第二端口对应的可达设备没有交集的情况下,确定第一设备和第二设备直接连接。
第二种可能的实现方式是,根据多个指定设备中的根节点设备和指定设备的端口对应的可达设备,确定指定设备的端口的类型。其中,端口的类型包括上行端口和下行端口。根据指定设备的端口的类型和指定设备的端口对应的可达设备,确定多个指定设备中直接连接的指定设备。
需要说明的是,在树型网络中,将端口的类型分为上行端口和下行端口,与上一级节点设备进行数据传输的端口为上行端口,与下一级节点设备进行数据传输的端口为下行端口。树型网络中每个设备都需要与根节点设备进行数据传输,因此在确定了根节点设备,以及获取了每个设备的端口的可达设备之后,可以将可达设备中包括根节点设备的端口作为上行端口,将可达设备中不包括根节点设备的端口作为下行端口,此外直接连接的两个设备的连接方式为一个设备的上行端口与另一个设备的下行端口相连接。
还是以图1所示的网络拓扑结构进行说明,在图1中,在确定了设备A为根节点设备后,可以确定节点设备B和节点设备C为第一级节点设备,节点设备D、节点设备E、节点设备F和节点设备G为第二级节点设备。对于第一级节点设备B来说,与根节点设备A进行数据传输的的端口为上行端口,与第二级节点设备D和第二级节点设备E进行数据传输的端口为下行端口,根节点设备A通过下行端口与节点设备B的上行端口直接连接。
因此,本发明实施例在确定了多个指定设备的根节点设备后,可以借助根节点设备确定指定设备的端口的类型,确定多个指定设备中直接连接的指定设备,以减少数据处理的工作量。
具体来说,根据指定设备的端口对应的可达设备中是否包括根节点设备来确定指定设备的端口的类型,将指定设备的端口分为上行端口和下行端口。
在完成了端口的类型的区分后,即可确定每个上行端口对应的可达设备和每个下行端口对应的可达设备。
针对多个指定设备中的任意两个设备,执行根据第一设备的上行端口对应的可达设备和第二设备的下行端口对应的可达设备,确定第一设备和第二设备为直接连接的指定设备的步骤,直至确定多个指定设备中所有直接连接的指定设备。其中,第一设备和第二设备为多个指定设备中的任意两个设备。
在第一设备的上行端口对应的可达设备中包括第二设备,第二设备的下行端口对应的可达设备中包括第一设备,并且第一设备的上行端口对应的可达设备和第二设备的下行端口对应的可达设备没有交集的情况下,确定第一设备和第二设备直接连接。
为了便于说明,还是以图1所示的网络拓扑结构进行说明,在图1中,节点设备A的下行端口对应的可达设备列表包括节点设备B,节点设备D和节点设备E,节点设备B的上行端口对应的可达设备列表包括节点设备A,节点设备C,节点设备F和节点设备G。节点设备A的下行端口对应的可达设备列表中包括节点设备B,节点设备B的上行端口对应的可达设备列表中包括节点设备A,并且节点设备A的下行端口对应的可达设备列表,和节点设备B的上行端口对应的可达设备列表没有交集,从而确定节点设备A和节点设备B直接连接。
和前述将第一设备的任意一个端口和第二设备的任意一个端口进行是否直接连接判断相比,先确定指定设备的端口类型,再将第一设备的上行端口和第二设备的下行端口进行是否直接连接判断,可极大减少判断的次数。
步骤S105,根据多个指定设备中的根节点设备和直接连接的指定设备,生成网络中多个指定设备的拓扑结构。
具体来说,根据指定设备中的根节点设备和直接连接的指定设备,确定多个指定设备对应的层级。根据多个指定设备对应的层级,以及直接连接的指定设备,生成网络中多个指定设备的拓扑结构。
可以理解,在确定了多个指定设备的根节点设备后,先确定与根节点设备直接连接的指定设备,作为第一级节点设备,再从剩余指定设备中确定与第一级节点设备直接连接的指定设备,作为第二级节点设备,依次类推,直到生成网络的拓扑结构。
综上所述,本发明实施例所提供的一种网络拓扑结构的生成方法,确定网络中多个指定设备,其中,多个指定设备之间通过端口直接连接或者间接连接。在多个指定设备中,确定指定设备的端口对应的可达设备,其中,指定设备的端口对应的可达设备通过端口与指定设备直接连接或者间接连接。根据指定设备的端口对应的可达设备数量,确定多个指定设备中的根节点设备。根据指定设备的端口对应的可达设备,确定多个指定设备中直接连接的指定设备。根据多个指定设备中的根节点设备和直接连接的指定设备,生成网络中多个指定设备的拓扑结构。由此,实现了根据网络中多个指定设备的端口对应的可达设备,自动生成网络中多个指定设备的拓扑结构,简单高效,准确度高。
此外,在生成了网络拓扑结构之后,为了便于网络运营维护人员直观地了解网络拓扑结构,可以进一步生成网络拓扑结构图。
为了更加清楚地说明本发明实施例所提出的网络拓扑结构图在实际使用中的作用,下面结合网络运营维护的例子进行说明。
图5a为网络正常时网络拓扑结构图的示意图。图5b为网络出问题时网络拓扑结构图的示意图。如图5a所示,网络正常时,网络运营维护人员能够通过终端上的客户端软件,自动生成网络的拓扑结构图。当网络出问题时,生成的网络拓扑结构的画面如图5b所示,网络运营维护人员能够通过比较图5a和图5b,确定第一级节点设备C出了问题,进而对第一级节点设备C进行处理。
具体来说,生成网络拓扑结构图的方法为,首先对网络中的节点设备进行层级划分,节点设备A的层级为1,节点设备B和C的层级为2,节点设备D、E、F和G的层级为3。相邻两个层级之间的高度差为H,相邻两个节点之间的距离为W。那么节点设备A的纵坐标为H,节点设备B和C的纵坐标为2H,节点D、E、F和G的纵坐标为3H。
大致来讲,先设置根节点设备的横坐标为0,根据根节点设备的子节点数量,计算根节点设备的横坐标的平移距离Xm,那么根节点设备的横坐标变为0+Xm,根节点设备的全部子节点设备中最右侧的子节点设备的横坐标为2Xm,相邻两个子节点设备之间的距离为W,从而确定根节点设备的两个子节点设备的横坐标为0和W。
类似地,对于相邻的第一层节点设备和第二层节点设备,第一层节点设备的层级比第二层节点设备的层级高。已知第一层节点设备的横坐标为X1,根据第一层节点设备的子节点设备的数量,计算第一层节点设备的横坐标的平移距离为X2, 那么第一层节点设备的横坐标变为X1+X2,同时,受该节点设备横坐标变化的影响,对于层级比第一层节点设备高的节点设备,横坐标都平移X2,对于第一层节点设备中位于该节点设备右侧的节点设备,横坐标平移2X2。
从上至下,遍历全部层级,生成网络拓扑结构图。
具体来说,对于节点设备A,先设置横坐标为0,纵坐标为H,由于节点设备A有两个子节点设备B和C,那么节点设备A的横坐标变为节点设备C的横坐标为W,纵坐标为2H,节点设备B的横坐标为0,纵坐标为2H。节点设备B有两个子节点设备D和E,那么节点设备B的横坐标变为节点设备E的横坐标变为W,纵坐标为3H,节点设备D的横坐标为0,纵坐标为3H,节点设备A作为节点设备B的父节点,横坐标变为W,节点设备C作为节点设备B的同级节点,横坐标变为2W。节点设备C有两个子节点设备F和G,节点设备G的横坐标为3W,纵坐标为3H,节点设备F的横坐标为2W,纵坐标为3H,节点C的横坐标变为节点A的横坐标变为从而,得到网络拓扑结构图。
图6为一种网络拓扑结构图的示意图。如图6所示,本发明实施例中的网络还可以包括摄像终端、收发器等各种设备。
此外,需要说明的是,为了便于使用,本发明实施例生成的网络拓扑结构图中的节点设备可以进行展开和收缩。
当网络拓扑结构图中的节点设备需要进行收缩时,本发明实施例将节点设备的全部子节点设备进行隐藏,并通过前述的坐标计算方式进行重新计算,隐藏的节点不参与坐标计算,生成收缩后的网络拓扑结构图。
当网络拓扑结构图中的节点设备需要进行展开时,本发明实施例将展开的节点纳入前述的坐标计算公式进行重新计算,生成展开后的网络拓扑结构图。
基于前述说明,可以知道,本发明实施例还提出了一种根节点设备的确定方法,图7为本发明实施例所提出的一种根节点设备的确定方法的流程示意图。如图7所示,该方法包括:
步骤S201,确定网络中多个指定设备。
其中,多个指定设备之间通过端口直接连接或者间接连接。
步骤S202,在多个指定设备中,确定指定设备的端口对应的可达设备。
其中,指定设备的端口对应的可达设备通过端口与指定设备直接连接或者间接连接。
步骤S203,根据指定设备的端口对应的可达设备数量,确定多个指定设备中的根节点设备。
步骤S201-S203的详细说明,可参考步骤S101-S103中的相关说明。
综上所述,本发明实施例所提供的一种根节点设备的确定方法,确定网络中多个指定设备,其中,多个指定设备之间通过端口直接连接或者间接连接。在多个指定设备中,确定指定设备的端口对应的可达设备,其中,指定设备的端口对应的可达设备通过端口与指定设备直接连接或者间接连接。根据指定设备的端口对应的可达设备数量,确定多个指定设备中的根节点设备。由此,实现了根据网络中多个指定设备的端口对应的可达设备数量,自动确定网络中多个指定设备的根节点设备,简单高效,准确度高。
为了实现上述实施例,本发明实施例还提出了一种网络拓扑结构的生成装置。图8为本发明实施例所提出的一种网络拓扑结构的生成装置的结构示意图,如图8所示,该装置包括:第一确定模块310,第二确定模块320,第三确定模块330,第四确定模块340,生成模块350。
第一确定模块310,用于确定网络中多个指定设备。
其中,多个指定设备之间通过端口直接连接或者间接连接。
第二确定模块320,用于在多个指定设备中,确定指定设备的端口对应的可达设备。
其中,指定设备的端口对应的可达设备通过端口与指定设备直接连接或者间接连接。
第三确定模块330,用于根据指定设备的端口对应的可达设备数量,确定多个指定设备中的根节点设备。
第四确定模块340,用于根据指定设备的端口对应的可达设备,确定多个指定设备中直接连接的指定设备。
生成模块350,用于根据多个指定设备中的根节点设备和直接连接的指定设备,生成网络中多个指定设备的拓扑结构。
进一步地,为了能够确定多个指定设备中的根节点设备,一种可能的实现方式是,第三确定模块330,包括:计算子模块331,用于针对任一指定设备,计算所有与可达设备连接所用端口对应的可达设备数量的均方差的数值。第一确定子模块332,用于根据指定设备对应的均方差的数值,确定多个指定设备中的根节点设备。
进一步地,为了能够确定多个指定设备中的根节点设备,一种可能的实现方式是,第一确定子模块332,具体用于在与可达设备连接所用端口数量不为1的指定设备中,将均方差的数值最小的指定设备,作为多个指定设备中的根节点设备。或者根据指定设备对应的均方差的数值和指定设备的端口带宽,确定多个指定设备中的根节点设备。
进一步地,为了确定多个指定设备中直接连接的指定设备,一种可能的实现方式是,第四确定模块340,包括:第二确定子模块341,用于根据多个指定设备中的根节点设备和指定设备的端口对应的可达设备,确定指定设备的端口的类型。其中,端口的类型包括上行端口和下行端口。第三确定子模块342,用于根据指定设备的端口的类型和指定设备的端口对应的可达设备,确定多个指定设备中直接连接的指定设备。
进一步地,为了确定多个指定设备中直接连接的指定设备,一种可能的实现方式是,第三确定子模块342,包括:确定单元342a,用于确定每个上行端口对应的可达设备和每个下行端口对应的可达设备。执行单元342b,用于针对多个指定设备中的任意两个设备,执行根据第一设备的上行端口对应的可达设备和第二设备的下行端口对应的可达设备,确定第一设备和第二设备为直接连接的指定设备的步骤,直至确定多个指定设备中所有直接连接的指定设备。其中,第一设备和第二设备为多个指定设备中的任意两个设备。
进一步地,为了确定第一设备和第二设备直接连接,一种可能的实现方式是,执行单元342b,具体用于在第一设备的上行端口对应的可达设备中包括第二设备,第二设备的下行端口对应的可达设备中包括第一设备,并且第一设备的上行端口对应的可达设备和第二设备的下行端口对应的可达设备没有交集的情况下,确定第一设备和第二设备直接连接。
进一步地,为了生存多个指定设备的拓扑结构,一种可能的实现方式是,生成模块350,包括:第四确定子模块351,用于根据指定设备中的根节点设备和直接连接的指定设备,确定多个指定设备对应的层级。生成子模块352,用于根据多个指定设备对应的层级,以及直接连接的指定设备,生成网络中多个指定设备的拓扑结构。
需要说明的是,前述对本发明实施例所提供的网络拓扑结构的生成方法的解释说明,也适用于本发明实施例所提供的网络拓扑结构的生成装置,此处不再赘述。
综上所述,本发明实施例所提供的一种网络拓扑结构的生成装置,在生成网络拓扑结构时,确定网络中多个指定设备,其中,多个指定设备之间通过端口直接连接或者间接连接。在多个指定设备中,确定指定设备的端口对应的可达设备,其中,指定设备的端口对应的可达设备通过端口与指定设备直接连接或者间接连接。根据指定设备的端口对应的可达设备数量,确定多个指定设备中的根节点设备。根据指定设备的端口对应的可达设备,确定多个指定设备中直接连接的指定设备。根据多个指定设备中的根节点设备和直接连接的指定设备,生成网络中多个指定设备的拓扑结构。由此,实现了根据网络中多个指定设备的端口对应的可达设备,自动生成网络中多个指定设备的拓扑结构,简单高效,准确度高。
为了实现上述实施例,本发明实施例还提出了一种根节点设备的确定装置,图9为本发明实施例所提出的一种根节点设备的确定装置的结构示意图。如图9所示,该装置包括:第五确定模块410,第六确定模块420,第七确定模块430。
第五确定模块410,用于确定网络中多个指定设备。
其中,多个指定设备之间通过端口直接连接或者间接连接。
第六确定模块420,用于在多个指定设备中,确定指定设备的端口对应的可达设备。
其中,指定设备的端口对应的可达设备通过端口与指定设备直接连接或者间接连接。
第七确定模块430,用于根据指定设备的端口对应的可达设备数量,确定多个指定设备中的根节点设备。
需要说明的是,前述对本发明实施例所提供的根节点设备的确定方法的解释说明,也适用于本发明实施例所提供的根节点设备的确定装置,此处不再赘述。
综上所述,本发明实施例所提供的一种根节点设备的确定装置,在确定根节点设备时,确定网络中多个指定设备,其中,多个指定设备之间通过端口直接连接或者间接连接。在多个指定设备中,确定指定设备的端口对应的可达设备,其中,指定设备的端口对应的可达设备通过端口与指定设备直接连接或者间接连接。根据指定设备的端口对应的可达设备数量,确定多个指定设备中的根节点设备。由此,实现了根据网络中多个指定设备的端口对应的可达设备数量,自动确定网络中多个指定设备的根节点设备,简单高效,准确度高。
为了实现上述实施例,本发明实施例还提出了一种电子设备,包括存储器和处理器;存储器上存储有可由处理器运行的计算机程序;当处理器运行计算机程序时,实现如前述的网络拓扑结构的生成方法。
为了实现上述实施例,本发明实施例还提出了一种电子设备,包括存储器和处理器;存储器上存储有可由处理器运行的计算机程序;当处理器运行计算机程序时,,实现如前述的根节点设备的确定方法。
为了实现上述实施例,本发明实施例还提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如前述的网络拓扑结构的生成方法。
为了实现上述实施例,本发明实施例还提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如前述的根节点设备的确定方法。
为了实现上述实施例,本发明实施例还提出了一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时实现如前述的网络拓扑结构的生成方法。
为了实现上述实施例,本发明实施例还提出了一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时实现如前述的根节点设备的确定方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置、电子设备、计算机可读存储介质和计算机程序产品的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置、电子设备、计算机可读存储介质、计算机程序产品和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(Processor)执行本发明各个实施例方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (11)
1.一种网络拓扑结构的生成方法,其特征在于,包括:
确定网络中多个指定设备;其中,所述多个指定设备之间通过端口直接连接或者间接连接;
从所述多个指定设备中,确定每个所述指定设备的端口对应的可达设备;其中,每个所述指定设备的端口对应的所述可达设备通过所述端口与所述指定设备直接连接或者间接连接;
根据至少一个所述指定设备的端口对应的所述可达设备的数量,确定所述多个指定设备中的根节点设备;
根据每个所述指定设备的端口对应的所述可达设备,确定每个所述指定设备直接连接的指定设备;以及
根据所述多个指定设备中的根节点设备和每个所述指定设备直接连接的指定设备,生成所述网络中多个指定设备的拓扑结构;
其中,根据至少一个所述指定设备的端口对应的所述可达设备的数量,确定所述多个指定设备中的根节点设备,包括:
针对任一所述指定设备,计算所有与所述可达设备连接所用端口分别对应的可达设备数量的均方差的数值;根据至少一个所述指定设备对应的均方差的数值,确定所述多个指定设备中的根节点设备;
所述根据所述多个指定设备中的根节点设备和每个所述指定设备直接连接的指定设备,生成所述网络中多个指定设备的拓扑结构,包括:
根据所述多个指定设备中的根节点设备和每个所述指定设备直接连接的指定设备,确定所述多个指定设备分别对应的层级;
根据所述多个指定设备分别对应的层级,以及每个所述指定设备直接连接的指定设备,生成所述网络中多个指定设备的拓扑结构。
2.如权利要求1所述的方法,其特征在于,所述根据至少一个所述指定设备对应的均方差的数值,确定所述多个指定设备中的根节点设备,包括:
在与所述可达设备连接所用端口数量不为1的指定设备中,将所述均方差的数值最小的指定设备,作为所述多个指定设备中的根节点设备;或者
根据所述指定设备对应的所述均方差的数值和所述指定设备的端口带宽,确定所述多个指定设备中的根节点设备。
3.如权利要求1所述的方法,其特征在于,所述根据每个所述指定设备的端口对应的所述可达设备,确定每个所述指定设备直接连接的指定设备,包括:
根据所述多个指定设备中的根节点设备和每个所述指定设备的端口对应的所述可达设备,确定每个所述指定设备的端口的类型;其中,所述端口的类型包括上行端口和下行端口;
根据每个所述指定设备的端口的类型和每个所述指定设备的端口对应的所述可达设备,确定每个所述指定设备直接连接的指定设备。
4.如权利要求3所述的方法,其特征在于,所述根据每个所述指定设备的端口的类型和每个所述指定设备的端口对应的所述可达设备,确定每个所述指定设备直接连接的指定设备,包括:
确定每个所述上行端口对应的所述可达设备和每个下行端口对应的所述可达设备;
针对所述多个指定设备中的任意两个设备,执行根据第一设备的上行端口对应的所述可达设备和第二设备的下行端口对应的所述可达设备,确定所述第一设备和所述第二设备为所述直接连接的指定设备的步骤,直至确定每个所述指定设备直接连接的指定设备;其中,所述第一设备和所述第二设备为所述多个指定设备中的任意两个设备。
5.如权利要求4所述的方法,其特征在于,在所述第一设备的上行端口对应的所述可达设备中包括所述第二设备,所述第二设备的下行端口对应的所述可达设备中包括所述第一设备,并且所述第一设备的上行端口对应的所述可达设备和所述第二设备的下行端口对应的所述可达设备没有交集的情况下,确定所述第一设备和所述第二设备直接连接。
6.一种根节点设备的确定方法,其特征在于,包括:
确定网络中多个指定设备;其中,所述多个指定设备之间通过端口直接连接或者间接连接;
从所述多个指定设备中,确定每个所述指定设备的端口对应的可达设备;其中,每个所述指定设备的端口对应的所述可达设备通过所述端口与所述指定设备直接连接或者间接连接;以及
针对任一所述指定设备,计算所有与所述可达设备连接所用端口分别对应的可达设备数量的均方差的数值,并根据至少一个所述指定设备对应的均方差的数值,确定所述多个指定设备中的根节点设备。
7.一种网络拓扑结构的生成装置,其特征在于,包括:
第一确定模块,用于确定网络中多个指定设备;其中,所述多个指定设备之间通过端口直接连接或者间接连接;
第二确定模块,用于从所述多个指定设备中,确定每个所述指定设备的端口对应的可达设备;其中,每个所述指定设备的端口对应的所述可达设备通过所述端口与所述指定设备直接连接或者间接连接;
第三确定模块,用于根据至少一个所述指定设备的端口对应的所述可达设备的数量,确定所述多个指定设备中的根节点设备;
第四确定模块,用于根据每个所述指定设备的端口对应的所述可达设备,确定每个所述指定设备直接连接的指定设备;以及
生成模块,用于根据所述多个指定设备中的根节点设备和每个所述指定设备直接连接的指定设备,生成所述网络中多个指定设备的拓扑结构;
其中,所述第三确定模块,包括:计算子模块,用于针对任一所述指定设备,计算所有与所述可达设备连接所用端口分别对应的所述可达设备数量的均方差的数值;第一确定子模块,用于根据至少一个所述指定设备对应的均方差的数值,确定所述多个指定设备中的根节点设备;
所述生成模块,包括:第四确定子模块,用于根据所述多个指定设备中的根节点设备和每个所述指定设备直接连接的指定设备,确定所述多个指定设备分别对应的层级;生成子模块,用于根据所述多个指定设备分别对应的层级,以及每个所述指定设备直接连接的指定设备,生成所述网络中多个指定设备的拓扑结构。
8.如权利要求7所述的装置,其特征在于,所述第一确定子模块,具体用于在与所述可达设备连接所用端口数量不为1的指定设备中,将所述均方差的数值最小的指定设备,作为所述多个指定设备中的根节点设备;或者
根据所述指定设备对应的所述均方差的数值和所述指定设备的端口带宽,确定所述多个指定设备中的根节点设备。
9.如权利要求7所述的装置,其特征在于,所述第四确定模块,包括:
第二确定子模块,用于根据所述多个指定设备中的根节点设备和每个所述指定设备的端口对应的所述可达设备,确定每个所述指定设备的端口的类型;其中,所述端口的类型包括上行端口和下行端口;
第三确定子模块,用于根据每个所述指定设备的端口的类型和每个所述指定设备的端口对应的所述可达设备,确定每个所述指定设备中直接连接的指定设备。
10.如权利要求9所述的装置,其特征在于,所述第三确定子模块,包括:
确定单元,用于确定每个所述上行端口对应的所述可达设备和每个下行端口对应的所述可达设备;
执行单元,用于针对所述多个指定设备中的任意两个设备,执行根据第一设备的上行端口对应的所述可达设备和第二设备的下行端口对应的所述可达设备,确定所述第一设备和所述第二设备为所述直接连接的指定设备的步骤,直至确定每个所述指定设备中所有直接连接的指定设备;其中,所述第一设备和所述第二设备为所述多个指定设备中的任意两个设备;在所述第一设备的上行端口对应的所述可达设备中包括所述第二设备,所述第二设备的下行端口对应的所述可达设备中包括所述第一设备,并且所述第一设备的上行端口对应的所述可达设备和所述第二设备的下行端口对应的所述可达设备没有交集的情况下,确定所述第一设备和所述第二设备直接连接。
11.一种根节点设备的确定装置,其特征在于,包括:
第五确定模块,用于确定网络中多个指定设备;其中,所述多个指定设备之间通过端口直接连接或者间接连接;
第六确定模块,用于从所述多个指定设备中,确定每个所述指定设备的端口对应的可达设备;其中,每个所述指定设备的端口对应的所述可达设备通过所述端口与所述指定设备直接连接或者间接连接;以及
第七确定模块,用于针对任一所述指定设备,计算所有与可达设备连接所用端口分别对应的可达设备数量的均方差的数值,并根据至少一个所述指定设备对应的均方差的数值,确定所述多个指定设备中的根节点设备。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010230987.1A CN111464450B (zh) | 2020-03-27 | 2020-03-27 | 网络拓扑结构的生成方法及装置 |
US17/914,987 US20230155892A1 (en) | 2020-03-27 | 2021-03-23 | Method and apparatus for generating network topology |
EP21776884.5A EP4131871A4 (en) | 2020-03-27 | 2021-03-23 | METHOD AND DEVICE FOR GENERATING A NETWORK TOPOLOGY |
PCT/CN2021/082402 WO2021190503A1 (zh) | 2020-03-27 | 2021-03-23 | 网络拓扑结构的生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010230987.1A CN111464450B (zh) | 2020-03-27 | 2020-03-27 | 网络拓扑结构的生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111464450A CN111464450A (zh) | 2020-07-28 |
CN111464450B true CN111464450B (zh) | 2022-03-25 |
Family
ID=71680217
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010230987.1A Active CN111464450B (zh) | 2020-03-27 | 2020-03-27 | 网络拓扑结构的生成方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230155892A1 (zh) |
EP (1) | EP4131871A4 (zh) |
CN (1) | CN111464450B (zh) |
WO (1) | WO2021190503A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111464450B (zh) * | 2020-03-27 | 2022-03-25 | 杭州海康威视数字技术股份有限公司 | 网络拓扑结构的生成方法及装置 |
CN113328890B (zh) * | 2021-06-07 | 2021-11-23 | 北京中电兴发科技有限公司 | 一种基于分布式系统的网络通信模型构建方法 |
CN113992498B (zh) * | 2021-12-24 | 2022-04-08 | 深圳市明源云科技有限公司 | 系统架构展示方法、装置、设备及计算机可读存储介质 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101534215A (zh) * | 2009-04-16 | 2009-09-16 | 杭州华三通信技术有限公司 | 一种网络拓扑发现方法和装置 |
CN103248512B (zh) * | 2012-02-14 | 2015-12-16 | 腾讯科技(深圳)有限公司 | 通信网络中应用层拓扑结构的生成方法和系统 |
US9608900B2 (en) * | 2012-08-08 | 2017-03-28 | Cisco Technology, Inc. | Techniques for flooding optimization for link state protocols in a network topology |
US9544220B2 (en) * | 2013-02-05 | 2017-01-10 | Cisco Technology, Inc. | Binary search-based approach in routing-metric agnostic topologies for node selection to enable effective learning machine mechanisms |
US20150091909A1 (en) * | 2013-09-30 | 2015-04-02 | Alcatel Lucent | Systems And Methods For Distance Approximation In Graphs |
EP3139539A1 (en) * | 2015-09-03 | 2017-03-08 | Alcatel Lucent | Method and device for configuring a network element |
CN105554888B (zh) * | 2015-12-10 | 2019-04-16 | 国网四川省电力公司电力科学研究院 | 基于链路多速率的多射频多信道无线Mesh网络信道分配算法 |
CN106452827A (zh) * | 2016-07-29 | 2017-02-22 | 杭州优云软件有限公司 | 一种混合cdp、lldp与fdb数据的网络拓扑计算方法 |
CN110545194B (zh) * | 2018-05-28 | 2021-06-01 | 华为技术有限公司 | 网络拓扑的生成方法及装置 |
CN109257225B (zh) * | 2018-10-12 | 2021-08-10 | 北京信研汇智信息技术有限公司 | 生成网络拓扑的方法、装置、存储介质和处理器 |
CN111464450B (zh) * | 2020-03-27 | 2022-03-25 | 杭州海康威视数字技术股份有限公司 | 网络拓扑结构的生成方法及装置 |
-
2020
- 2020-03-27 CN CN202010230987.1A patent/CN111464450B/zh active Active
-
2021
- 2021-03-23 EP EP21776884.5A patent/EP4131871A4/en active Pending
- 2021-03-23 WO PCT/CN2021/082402 patent/WO2021190503A1/zh unknown
- 2021-03-23 US US17/914,987 patent/US20230155892A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4131871A1 (en) | 2023-02-08 |
US20230155892A1 (en) | 2023-05-18 |
WO2021190503A1 (zh) | 2021-09-30 |
CN111464450A (zh) | 2020-07-28 |
EP4131871A4 (en) | 2023-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111464450B (zh) | 网络拓扑结构的生成方法及装置 | |
CN108712286B (zh) | 网络拓扑结构的确定方法、装置和存储介质 | |
CN111193605B (zh) | 一种故障定位方法、装置及存储介质 | |
EP4024765A1 (en) | Method and apparatus for extracting fault propagation condition, and storage medium | |
CN112311571A (zh) | 网络拓扑生成方法及装置、电子设备和非暂态存储介质 | |
CN113114491A (zh) | 一种网络拓扑的构建方法、装置和设备 | |
US8675523B2 (en) | Optimized spanning tree construction based on parameter selection | |
CN114202027A (zh) | 执行配置信息的生成方法、模型训练方法和装置 | |
US8112498B2 (en) | Mapping between objects representing different network systems | |
WO2016106590A1 (zh) | 云计算网络中设备负载状态展示方法与装置 | |
CN113312560B (zh) | 群组检测方法、装置及电子设备 | |
US20180019938A1 (en) | System and method for virtual link trunking | |
CN108574594A (zh) | 一种网络业务传输的方法及系统 | |
CN104283736A (zh) | 一种基于改良自动状态机的网络通信五元组快速匹配算法 | |
CN109446146B (zh) | 一种应用层通信协议的状态转换序列生成方法 | |
CN104954439B (zh) | 一种云服务器及其节点互联方法、云服务器系统 | |
CN111078483A (zh) | 通信协议状态转换序列生成方法 | |
CN114579311B (zh) | 执行分布式计算任务的方法、装置、设备以及存储介质 | |
WO2023011047A1 (zh) | 一种处理方法及装置 | |
Ling et al. | Node-to-set disjoint paths in biswapped networks | |
CN114448802B (zh) | 网关配置方法、装置、电子设备及存储介质 | |
CN114650222B (zh) | 参数配置方法、装置、电子设备和存储介质 | |
CN114666348B (zh) | 一种基于python语言快速构建分布式系统的方法 | |
US10320606B2 (en) | Server connection method and system of a network | |
JPH06103200A (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 |