CN112751714B - Method, apparatus and computer storage medium for determining network topology - Google Patents
Method, apparatus and computer storage medium for determining network topology Download PDFInfo
- Publication number
- CN112751714B CN112751714B CN202011623310.0A CN202011623310A CN112751714B CN 112751714 B CN112751714 B CN 112751714B CN 202011623310 A CN202011623310 A CN 202011623310A CN 112751714 B CN112751714 B CN 112751714B
- Authority
- CN
- China
- Prior art keywords
- mac address
- data set
- routing
- equipment
- terminal
- 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
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000013507 mapping Methods 0.000 claims description 34
- 230000004927 fusion Effects 0.000 claims description 18
- 238000001914 filtration Methods 0.000 claims description 13
- 230000005540 biological transmission Effects 0.000 claims description 10
- 230000000694 effects Effects 0.000 abstract description 4
- 238000012423 maintenance Methods 0.000 description 38
- 238000007726 management method Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 15
- 238000012545 processing Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 10
- 238000012544 monitoring process Methods 0.000 description 10
- 230000002093 peripheral effect Effects 0.000 description 10
- 230000001133 acceleration Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 239000000463 material Substances 0.000 description 5
- 238000011144 upstream manufacturing Methods 0.000 description 5
- 238000013138 pruning Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 230000032683 aging Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 239000000919 ceramic Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000003745 diagnosis Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0677—Localisation of faults
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The embodiment of the application discloses a method and a device for determining network topology and a computer storage medium, and belongs to the technical field of internet. In the method, a network topology of a network including a plurality of terminal devices and a routing device at the same time can be constructed by fusing a data set and a MAC address data set. The network topology determined based on the embodiment of the application can achieve the following technical effects. If a certain security device fails, the security device can be quickly determined to be connected to which routing device and which port of which routing device based on the network topology determined by the embodiment of the application, thereby avoiding the need of determining the link connection relation of the security device by manual means such as a line tester and the like, and facilitating the quick determination of the reason of the failure of the security device. That is, by the method for determining the network topology provided by the embodiment of the application, the human resources required for subsequently determining the failure cause of the security equipment can be reduced, and the efficiency for determining the failure cause is improved.
Description
Technical Field
The embodiment of the application relates to the technical field of internet, in particular to a method and a device for determining network topology and a computer storage medium.
Background
In order to ensure the safety of people in a monitoring area such as a park, security equipment such as a monitoring camera and an access control device can be deployed at any position of the monitoring area, so that the monitoring area is monitored based on the security equipment. In addition, besides the deployment of the security equipment, routing equipment such as a router and a switch can be deployed in the monitoring area, so that the security equipment can communicate through the routing equipment. In such a scenario, if the network topology of the network formed by each security device and each routing device in the monitoring can be determined, then when a failure occurs in a device in the network, a failure diagnosis can be performed quickly based on the network topology.
In the related art, when a fault of a certain security device is detected, a line tester and other means are used to determine which routing device and which port of which routing device the security device is connected to, that is, to determine the network topology of the security device, so as to diagnose the cause of the fault based on the network topology of the security device in the following process. This method of determining the network topology is labor intensive and time consuming.
Disclosure of Invention
The embodiment of the application provides a method and a device for determining network topology and a computer storage medium, which can improve the efficiency of fault diagnosis. The technical scheme is as follows:
in one aspect, a method for determining a network topology is provided, the method comprising:
acquiring a fusion data set, wherein the fusion data set comprises local terminal equipment information of each terminal equipment in a plurality of terminal equipment and local terminal equipment information of each routing equipment in a plurality of routing equipment, and the local terminal equipment information comprises a Media Access Control (MAC) layer address of the equipment;
acquiring an MAC address data set, wherein the MAC address data set comprises MAC addresses corresponding to ports on each routing device in the routing devices, and the MAC address corresponding to each port comprises an MAC address of opposite-end equipment connected with the corresponding port;
determining a network topology based on the converged data set and the MAC address data set, the network topology indicating connection relationships between the plurality of end devices and the plurality of routing devices.
In another aspect, an apparatus for determining a network topology is provided, the apparatus comprising:
an obtaining module, configured to obtain a fused data set, where the fused data set includes local device information of each terminal device in multiple terminal devices and local device information of each routing device in multiple routing devices, and the local device information includes a MAC address of a media access control layer of a device;
the obtaining module is further configured to obtain an MAC address dataset, where the MAC address dataset includes an MAC address corresponding to each port on each of the plurality of routing devices, and the MAC address corresponding to each port includes an MAC address of an opposite device connected to the corresponding port;
a determining module, configured to determine a network topology based on the converged data set and the MAC address data set, where the network topology indicates a connection relationship between the plurality of terminal devices and the plurality of routing devices.
In a third aspect, an apparatus for determining a network topology is provided, the apparatus comprising:
a processor;
a memory for storing processor-executable instructions;
wherein the processor is configured to perform the steps of the method of the first aspect described above.
In a fourth aspect, there is provided a computer readable storage medium having stored thereon instructions which, when executed by a processor, carry out the steps of the method of any of the first aspects described above.
In a fifth aspect, there is provided a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method of the first aspect described above.
The beneficial effects that technical scheme that this application embodiment brought include at least:
in the embodiment of the present application, a network topology of a network including a plurality of terminal devices and a routing device at the same time can be constructed by fusing a data set and a MAC address data set. The network topology determined based on the embodiment of the application can achieve the following technical effects.
(1) Under the condition that the terminal equipment is the security equipment, if a certain security equipment fails, the security equipment can be quickly determined to be connected to which routing equipment and which port of which routing equipment based on the network topology determined by the embodiment of the application, so that the link connection relation of the security equipment is avoided being determined by manual means such as a line tester, and the reason that the security equipment fails is conveniently and quickly determined. That is, by the method for determining the network topology provided by the embodiment of the application, the human resources required for subsequently determining the failure cause of the security equipment can be reduced, and the efficiency for determining the failure cause is improved.
(2) Under the condition that the security equipment and the routing equipment are managed by a security operation and maintenance department and an IT operation and maintenance department respectively, the network topology determined based on the embodiment of the application can quickly determine the link connection relation of certain security equipment, the problems that operation and maintenance personnel are difficult to locate the fault reason caused by the splitting of the IT operation and maintenance department and the security operation and maintenance department, the topological lines are difficult to clean and a large amount of manpower and material resources are consumed are solved, and the efficiency and the usability of operation and maintenance of a garden network are greatly improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a flowchart of a method for determining a network topology according to an embodiment of the present application;
fig. 2 is a schematic diagram of a MAC address table provided in an embodiment of the present application;
fig. 3 is a schematic distribution diagram of a MAC data set provided in an embodiment of the present application;
fig. 4 is a schematic distribution diagram of another MAC data set provided in the embodiment of the present application;
fig. 5 is a schematic diagram of a format of an ARP table according to an embodiment of the present application;
fig. 6 is a schematic diagram illustrating a mapping relationship between a MAC address and a device port according to an embodiment of the present application;
fig. 7 is a schematic structural diagram of an apparatus for determining a network topology according to an embodiment of the present application;
fig. 8 is a schematic structural diagram of a terminal according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of a server according to an embodiment of the present application.
Detailed Description
To make the objects, technical solutions and advantages of the embodiments of the present application more clear, the embodiments of the present application will be further described in detail with reference to the accompanying drawings.
It should be understood that reference herein to "a plurality" means two or more. In the description of the present application, "/" indicates an OR meaning, for example, A/B may indicate A or B; "and/or" herein is merely an association describing an associated object, and means that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, in order to facilitate clear description of technical solutions of the embodiments of the present application, in the embodiments of the present application, terms such as "first" and "second" are used to distinguish the same items or similar items having substantially the same functions and actions. Those skilled in the art will appreciate that the terms "first," "second," etc. do not denote any order or quantity, nor do the terms "first," "second," etc. denote any order or importance.
For convenience of description later, an application scenario of the embodiment of the present application is explained first.
A traditional comprehensive security management platform is connected with a large number of security devices. These security protection equipment can include all kinds of cameras, digital video recorder, entrance guard's equipment, visual intercom, storage device etc.. At present, the security protection equipment is various in types, large in quantity, and wide in coverage function and application. For example, common functions of current security devices include video preview, video playback, access control, voice intercom, face recognition, vehicle snapshot, and the like. The above-mentioned characteristics of the security equipment make the operation and maintenance of the security equipment become extremely complicated.
In addition, in an actual application scenario, besides security equipment, various routing equipment exists in the network. Routing devices may include routers, switches, bridges, hubs, and the like. These routing devices build the infrastructure of the network. There is usually professional network management software to manage these routing devices, for example, network management software obtains network parameters of each routing device, where the network parameters may include traffic, bandwidth, packet loss, and the like.
However, for the current comprehensive security management platform and network management software, there is almost no case of completely fusing security equipment and routing equipment together for fine management. Most of the comprehensive security management platforms are only the accumulation of the types and the number of simple security equipment, all the security equipment almost has no relation, belongs to one-sided comprehensive management, and stays in the dimension of management points. Therefore, when a security device fails, the link connection relationship of the security device is often found by relying on manual searching and network management software, so that the failed device is conveniently located.
For example, in an operation and maintenance scene of an enterprise campus, at least two departments, an IT (internet technology) operation and maintenance department and a security operation and maintenance department, may exist at the same time to manage all devices in the campus. The IT operation and maintenance department is responsible for networking and operation and maintenance of network infrastructures such as routing equipment in the whole park, and the monitoring operation and maintenance department is responsible for operation and maintenance of various security and protection equipment such as a camera and a hard disk video recorder.
In this scenario, after a certain security device fails, since the IT operation and maintenance department and the security operation and maintenance department respectively manage the routing devices and the security devices, and the operation and maintenance personnel cannot quickly and clearly know which switch each security device is connected to and which switch port, when a problem actually occurs, IT is usually necessary to confirm through auxiliary means such as a line tester, that is, IT is completely manual to determine the analysis of the association relationship between the security device and the routing device and the location of a failure point, so that IT is very difficult and time-consuming to determine a specific failure point when the security device fails.
Furthermore, even if the IT operation and maintenance department has network management software, the network topology loaded on the network management software is only the topology between the routing devices. Therefore, the security operation and maintenance department is difficult to acquire the network topology of the failed security equipment, and the withering and tearing behavior often occurs among different departments due to different responsibilities, so that the efficiency of analyzing the failure reason is greatly reduced, unnecessary cost waste is caused, and even dangerous consequences can be caused.
And, as more and more routing devices are used in the network, the networking of the network becomes more and more complex. When a network fails, the requirement that operation and maintenance personnel quickly locate the cause of the failure according to the network topology is stronger and stronger. Therefore, it is very important for an operation and maintenance person to fully understand the network topology of a network for subsequent maintenance work.
The method for determining the network topology provided by the embodiment of the application is applied to the network with the security equipment and the routing equipment deployed at the same time. The method is capable of determining the network topology covering the connection relation between the security equipment and the routing equipment at the same time, and therefore operation and maintenance personnel can conveniently conduct subsequent operation and maintenance work.
It should be noted that the method provided in the embodiment of the present application may also be applied to other scenarios in which the terminal device and the network device are deployed at the same time. That is, the terminal device in the embodiment of the present application is not limited to the security device, and may also include other types of terminal devices, such as a host, a server, and the like.
The method for determining the network topology provided in the embodiments of the present application is explained in detail below. The method can be applied to any control end in the network, and the control end can be a network operation and maintenance platform or a terminal deployed by network management software.
Fig. 1 is a flowchart of a method for determining a network topology according to an embodiment of the present disclosure. As shown in fig. 1, the method includes the following steps.
Step 101: the control end obtains a fusion data set, the fusion data set comprises local end equipment information of each terminal equipment in the plurality of terminal equipment and local end equipment information of each routing equipment in the plurality of routing equipment, and the local end equipment information comprises the MAC address of the equipment.
In one possible implementation manner, the implementation manner of step 101 may be: the method comprises the steps of obtaining a first data set and a second data set, wherein the first data set comprises a plurality of pieces of terminal equipment data corresponding to a plurality of terminal equipment respectively, the second data set comprises a plurality of pieces of routing equipment data corresponding to a plurality of routing equipment respectively, each piece of terminal equipment data comprises a resource number, a device type and an MAC (media access control) Address of corresponding terminal equipment, and each piece of routing equipment data comprises a resource number, a device type and an MAC Address of corresponding terminal equipment. For any terminal device data in the plurality of pieces of terminal device data, a pair of key values is obtained by taking the resource number in any terminal device data as a key and taking other information in any terminal device data as a value, and for any routing device data in the plurality of pieces of routing device data, a pair of key values is obtained by taking the resource number in any routing device data as a key and taking other information in any routing device data as a value. And fusing the key value pairs obtained based on the first data set and the second data set to obtain a fused data set.
That is, in the embodiment of the present application, information of both the first data set and the second data may be integrated, so as to obtain a fused data set.
It is contemplated that the IP address and MAC address of any device may be multiple, but the resource number is unique, i.e., the resource number may uniquely identify a device. Therefore, when integrating both the first data set and the second data set, the resource number is used as a key (key) and the other information is used as a value (value) regardless of the terminal device or the router. So that the device data of a certain device can be quickly searched in the converged data set through the resource number subsequently.
It should be noted that the way of key-value pair (key-value) is only an alternative way to store data in the converged data set. In this application embodiment, the data in the fusion data set may also be stored in other manners, which is not limited in this application embodiment.
When the embodiment of the application is applied to a security scene, the first data set can be acquired from the comprehensive security management platform. That is, the terminal device data of the security device to be topology-managed is obtained from the integrated security management platform. The terminal device data comprises information such as device types, resource numbers, IP addresses and MAC addresses, and then the terminal device data of each security device is stored in a storage layer to obtain a first data set. The storage layer may be a cache or a database, etc.
When the terminal device data of each security device is stored, the condition that the same security device may have multiple IP addresses and MAC addresses is considered, so that the resource number can be used as the unique identifier of the corresponding security device in the first data set. That is, the terminal device data of a certain security device may be subsequently searched in the first data set by using the resource number as an index.
The above-mentioned obtaining of the first data set from the comprehensive security management platform may be in any manner, and this is not limited in this application embodiment.
When the embodiment of the application is applied to a security scene, the second data set can be acquired from network management software. That is, the routing device data of the routing device to be topology-managed is acquired from the network management software. The routing device data may include information such as a resource number, a device type, a port number, a group name, and the like, and then the routing device data of each routing device is stored in the storage layer to obtain a second data set. The storage layer may be a cache or a database, etc.
Similarly, when storing the routing device data of each routing device, the second data set may use the resource number as the unique identifier of the corresponding routing device, considering that the same routing device may have multiple IP addresses and MAC addresses. That is, the routing device data of a certain routing device may be subsequently searched in the second data set by using the resource number as an index.
The above-mentioned obtaining the second data set from the network management software may be in any way, and this is not limited in this embodiment of the application.
For example, label the fused data set as DT R The following code is a data format for fusing terminal device data or routing device data in a data set. The following code includes device data of both devices. The following description between each line of code is used to explain the aforementioned code. As shown in the following codes, the device data of any device may include information such as resource type, device number, MAC address, IP address, and the like. The resource type may also be referred to as a device type, and the resource type may characterize whether the device is a terminal device or a routing device.The device number is also the aforementioned resource code, and is used to uniquely identify the device.
Step 102: and acquiring an MAC address data set, wherein the MAC address data set comprises MAC addresses corresponding to ports on each routing device in a plurality of routing devices, and the MAC address corresponding to each port comprises the MAC address of opposite-end equipment connected with the corresponding port.
Currently, for routing devices such as switches, MAC address tables are stored locally in the routing devices. The MAC address table is also referred to as a MAC address learning table. The mapping relationship between the MAC addresses of the uplink port and the peer device is recorded in the MAC address table. In other words, when the routing device receives, through an uplink port, traffic sent by an opposite device indicated by a MAC address, the mapping relationship between the uplink port and the MAC address is added to the MAC address learning table.
Therefore, in one possible implementation manner, the implementation process of step 102 may be: sending an MAC address table acquisition request to each routing device in a plurality of routing devices through an SNMP (simple network management protocol), receiving an MAC address table acquisition result sent by each routing device in the plurality of routing devices, wherein the MAC address table acquisition result carries an MAC address table of the corresponding routing device, the MAC address table comprises MAC addresses corresponding to ports on the corresponding routing device, and an MAC address data set is determined based on the MAC address table sent by each routing device in the plurality of routing devices.
SNMP, among other things, is a standard protocol specifically designed for managing network nodes (which may include servers, workstations, routers, switches, and HUBS (HUBS), etc.) in an IP network. SNMP is an application layer protocol. SNMP enables a network administrator to manage network performance, discover and solve network problems, and plan network growth. The network management system receives the random message and the event report through the SNMP, so that the problem of the network is known.
Fig. 2 is a schematic diagram of a MAC address table according to an embodiment of the present application. As shown in fig. 2, assume that traffic is sent from device a and finally enters device C. Then, for the switch 1, the switch 1 can learn the mapping relationship between the uplink port 5 and the MAC address of the device a through the received message, and at this time, the mapping relationship between the uplink port 5 and the MAC address of the device a can be stored in the MAC address table in the format of (5,a).
For the switch 2, the switch 2 learns the mapping relationship between the upstream port 7 and the MAC address of the device a and the mapping relationship between the upstream port 7 and the MAC address of the switch 1 through the received message, and at this time, the mapping relationship between the upstream port 7 and the MAC address of the device a may be stored in the MAC address table in the format of (7, a), and the mapping relationship between the upstream port 7 and the MAC address of the switch 1 may be stored in the MAC address table in the format of (7, 1).
In addition, because the information stored in the MAC address learning table has the problem of aging due to expiration, in this embodiment of the application, before the MAC address table of each routing device is acquired, network signaling such as an ICMP (internet control message protocol) message is sent concurrently, so that the network signaling reaches all routing devices of the network. The network signaling instructs the routing device to refresh the local MAC address table so that the control end can conveniently perform topology calculation based on the latest and most complete MAC address table.
The ICMP is a subprotocol of a TCP (transmission control protocol)/IP protocol cluster. ICMP is used to pass control messages between IP hosts and routers. Control messages refer to messages of the network itself, such as network traffic down, whether a host is reachable, whether routing is available, etc. These control messages, although not transmitting user data, play an important role in the delivery of user data.
Therefore, in a possible implementation manner, before acquiring the MAC address data set, the control end may further send an ICMP packet to each of the plurality of routing devices and each of the plurality of terminal devices. That is, the ICMP message is sent to all devices in the whole network concurrently. The sending the ICMP message to all devices in the whole network concurrently specifically means: determining the MAC address of any equipment in the whole network, and then sending the ICMP message by taking the MAC address as the destination MAC address of the ICMP message, in other words, the destination MAC addresses of the ICMP messages sent to all the equipment in the whole network are different, thereby realizing the purpose that all the ICMP messages are sent to all the equipment in the whole network.
Before any ICMP message reaches the device indicated by the destination MAC address, the ICMP message may pass through a multi-hop routing device to reach the destination, so that on the path of ICMP message transmission, each routing device on the transmission path may update the MAC address learning table based on the last hop information of the received ICMP message and the receiving port. That is, any routing device on the ICMP packet transmission path may refresh the local MAC address table based on the received ICMP packet.
Step 103: and determining a network topology based on the fusion data set and the MAC address data set, wherein the network topology indicates the connection relation between the plurality of terminal devices and the plurality of routing devices.
Since the network topology indicates the connection relationships between the plurality of terminal devices and the plurality of routing devices, in step 103, in order to determine the network topology, two topological relationships, one is the topological relationship between the respective routing devices and the other is the topological relationship between the respective terminal devices and the routing devices.
The topological relation among various routing devices can be separated from the MAC address data set, and can also be determined through related neighbor protocols. Therefore, in the embodiment of the present application, step 103 may be specifically implemented by the following two possible implementations.
A first possible implementation: and determining the connection relation between each routing device and the connection relation between each terminal device and each routing device based on the fusion data set and the MAC address data set only, thereby determining the network topology.
Based on the implementation manner of the MAC address data set obtained in step 102, due to the learning mechanism of the MAC addresses of the routing devices such as the switch, the MAC address of the directly connected device and the MAC address of the indirectly connected device may appear in the MAC address learning table of the interconnected routing devices at the same time. Therefore, the MAC address of the indirectly connected device needs to be deleted by a certain rule and algorithm, and the MAC address of the actually directly connected device needs to be reserved, so as to obtain the connection relationship between the directly connected devices.
Therefore, the implementation process of the first possible implementation manner may specifically be: determining leaf node ports in the MAC address data set based on respective MAC addresses in a plurality of terminal devices in the MAC address data set and the converged data set, wherein the leaf node ports refer to ports of which the corresponding MAC addresses belong to the MAC addresses of the terminal devices, or ports of which the number of the corresponding MAC addresses is 1; and establishing a mapping relation between the leaf node port and the corresponding MAC address, wherein the mapping relation indicates that the leaf node port and the equipment indicated by the corresponding MAC address are directly connected. For the MAC address corresponding to any port on any routing device in the MAC address data set, deleting the MAC address belonging to the MAC address corresponding to the leaf node port to obtain an updated MAC address data set, returning to execute the respective MAC address in a plurality of terminal devices based on the MAC address data set and the fusion data set, and determining the operation of the leaf node port in the MAC address data set until the updated MAC address data set is empty; and constructing a network topology based on the established mapping relation between the leaf node ports and the corresponding MAC addresses.
The above-described manner of constructing a network topology may also be referred to as pruning. The implementation of the pruning method is explained in detail below. For the convenience of description, the MAC address data set is simply referred to as data set DT M 。
1. Based on MAC address data set DT M Classifying and summarizing MAC addresses in MAC address learning tables of all routing devices according to ports on the routing devices, so that any routing device can be obtainedAnd respectively corresponding MAC addresses of all ports on the equipment.
2. Based on the definition of the leaf node ports, traversing each port on any routing device, filtering out the leaf node ports according to the characteristics of the MAC address corresponding to each port, and sorting the MAC addresses corresponding to the obtained leaf node ports into an MAC address set.
Wherein, a MAC address belonging to the MAC address of the terminal device or the MAC address belonging to the routing device can be determined from the converged data set. Specifically, the device data of any device in the converged data set includes the MAC address of the device and the device type of the device, and it can be determined whether the device is a terminal device or a routing device according to the device type of the device, so as to obtain whether the MAC address in the device data is the MAC address of the terminal device or the MAC address of the routing device.
3. Traversing the MAC addresses corresponding to the ports on each routing device, obtaining an MAC address set according to the step 2, removing the MAC addresses belonging to the MAC address set in the MAC addresses corresponding to the ports, and once all the MAC addresses corresponding to a certain port of a certain routing device are removed, indicating that the port of the routing device is a device directly connected with the MAC addresses, so that the mapping relation between the port and the MAC address meeting the condition can be returned.
It should be noted that, since the MAC address corresponding to the leaf node port is obviously the MAC address of the directly connected peer device, the result of traversal in step 3 above is obviously the leaf node port. That is, for a leaf node port, a mapping relationship between the leaf node port and a corresponding MAC address may be directly established, where the mapping relationship indicates that the leaf node port and a device indicated by the corresponding MAC address are directly connected, and the purpose of establishing the mapping relationship is convenient for subsequently creating a network topology.
4. According to the mapping relationship returned in step 3, a connection relationship between the routing device and the terminal device, for example, a connection relationship between the switch and the host, can be constructed.
5. And 3, taking the MAC address data set with the MAC address removed in the step 3 as an updated MAC address data set, returning to execute the steps 2 and 3, and circularly executing the processes to obtain the connection relation among the routing devices. The MAC address data set from which the MAC address is removed corresponds to the screened MAC address of each routing device, and therefore, after the above processes are executed in a loop, the connection relationship between each routing device can be obtained.
Fig. 3 is a schematic diagram of distribution of a MAC data set according to an embodiment of the present application. As shown in fig. 3, for the switch S5, the MAC addresses corresponding to the ports 7 of the switch S5 include MAC addresses corresponding to the host H1, the host H2, the host H3, the host H4, and the host H5, and MAC addresses corresponding to the switch S1, the switch S2, the switch S3, and the switch S4. These MAC addresses are labeled (H1, H2, H3, H4, H5, S1, S2, S3, S4) in fig. 3.
For the switch S1, the MAC address corresponding to the port 2 of the switch S1 is the MAC address of the host H5. The MAC address corresponding to port 4 of switch S1 includes the MAC address of host H4, the MAC address of switch S3, and the MAC address of switch S4. The MAC address corresponding to port 4 is labeled (H4, S3, S4) in fig. 3. The MAC address corresponding to port 6 of switch S1 includes the MAC address of host H1, the MAC address of host H2, the MAC address of host H3, and the MAC address of switch S2. The MAC address corresponding to port 6 is labeled (H1, H2, H3, S2) in fig. 3.
For the switch S2, as shown in fig. 3, the MAC address corresponding to the port 1 of the switch S2 is the MAC address of the host H1, the MAC address corresponding to the port 2 of the switch S2 is the MAC address of the host H2, and the MAC address corresponding to the port 3 of the switch S2 is the MAC address of the host H3.
For the switch S3, as shown in fig. 3, the MAC address corresponding to the port 1 of the switch S3 is the MAC address of the switch S4, and the MAC address corresponding to the port 2 of the switch S3 is the MAC address of the host H4.
The MAC address set of the leaf node port obtained by the step 2 includes the MAC address of the host 1, the MAC address of the host 2, the MAC address of the host 3, the MAC address of the host 4, the MAC address of the host 5, and the MAC address of the switch 4. For convenience of explanation, the MAC address set is labeled as (H1, H2, H3, H4, H5, S4). The devices corresponding to these several MAC addresses are correspondingly leaf nodes in the subsequent network topology.
The MAC address data set shown in fig. 4, that is, the updated MAC address data set, can be obtained by removing the MAC addresses in the MAC address sets (H1, H2, H3, H4, H5, and S4) shown in fig. 3.
For the MAC address data set shown in fig. 4, the above process is repeatedly executed until the MAC address corresponding to any port of each node in the topology tree shown in fig. 3 is cut to a null value, that is, the MAC address data set updated last time is null. Therefore, the above process is also called pruning.
Although the pruning method only needs to rely on the MAC address data set, the connection relation among all the routing devices and the connection relation among all the terminal devices can be obtained. However, the amount of calculation in the clipping process is large, which results in long time for determining the network topology. In order to reduce the amount of computation required to determine the network topology, the network topology may be determined by the second possible implementation described below.
In a second possible implementation manner, a routing topology relation data set indicating the connection relation between the routing devices is obtained, then the MAC address data set is filtered based on the routing topology relation data set and the fusion data set to obtain the connection relation between each terminal device and the routing device, and then the network topology is determined based on the connection relation between the routing devices of the network topology and the connection relation between each terminal device and the routing device.
Currently, a switch in a network can determine information of other switches directly connected through related neighbor protocols. Therefore, the implementation process of the second possible implementation manner may be: and acquiring a routing topological relation data set, wherein the routing topological relation data set comprises connection relation data corresponding to each port on any one of a plurality of routing devices, and the connection relation data comprises a local port identifier, a port identifier of an opposite routing device and an MAC address of the opposite routing device. Filtering the MAC address data set based on the routing topological relation data set, wherein the MAC addresses corresponding to the ports on each routing device after filtering do not comprise the MAC addresses of other routing devices connected with the corresponding routing device; and constructing a network topology based on the routing topology relation data set and the MAC addresses corresponding to the ports of the filtered routes.
Therefore, when the MAC address dataset is filtered based on the routing topology relationship dataset, the MAC addresses corresponding to the ports on each routing device after filtering do not include the MAC addresses of other routing devices connected to the corresponding routing device, and then the MAC addresses corresponding to the ports on each routing device after filtering only include the MAC addresses of the terminal devices. Thus, the connection relationship between each terminal device and the routing device can be determined.
The implementation process can be specifically implemented through the following two steps. For ease of explanation, the MAC address dataset is referred to as DT M The routing topology relation data set is called DT L 。
1. Routing topology relation data set DT L The topological relation among all routing devices (such as switches) is included, namely the direct port connection relation between the switches and the switches is determined. Thus, the data set DT can be related according to the routing topology L An initial topology is determined. At this time, the topology obtained based on the routing topology relation data set may be labeled as a backbone topology NT _ trunk.
2. Data set DT based on routing topological relation L For MAC address data set DT M And performing filtering calculation, wherein the specific process of the filtering calculation is as follows: at MAC address data set DT M Traversing MAC addresses corresponding to other ports except the ports with determined topological relation of all the switches, and fusing the data sets DT R The MAC addresses of all the non-routing devices (namely terminal devices) are taken out, the non-routing devices with consistent MAC addresses are spliced to the port of the switch on the backbone topology NT _ trunk until the number is up toData set MAC address data set DT M With fused data sets DT R No consistent MAC address exists, and the calculation of the whole network topology is completed.
Currently, LLDP (link layer discovery protocol) is a common protocol in switches. The protocol is used for discovering link neighbors, and the topological relation between the switches can be obtained as long as the switches and other routing devices in the network start the LLDP function.
Assuming that two neighboring routing devices a, B in the network support LLDP, B will be recorded in the neighbor information of a, and a will be recorded in the neighbor information of B. The neighbor information of a certain routing device obtained through LLDP may include a MAC address of the neighbor routing device, a neighbor port identifier, a system description of the neighbor routing device, and the like. The system description of the neighbor routing device may include information such as device model, software version, company name, etc.
The neighbor information includes important information of the neighbor routing device. For example, the neighbor information is "93137491.23.1", and the content of the neighbor information indication is shown in table 1 below.
TABLE 1
93137491. | 23 | 1 |
Time stamp | Logical port number | Device index |
Based on the logical port numbers in table 1, the physical port number (also referred to as a panel port number), the port name, corresponding to the neighbor routing device can be obtained. The effect of the timestamp in table 1 cannot be ignored, because the LLDP entry has aging time, if the port device port connected to the device is replaced, there may exist two entries in table 1 under the same port at this time, and at this time, the entry with the large timestamp may be used to determine the neighbor information.
In addition, the local terminal information of the routing device can be acquired through the LLDP. The home terminal information of the routing device may include a home terminal MAC address of the routing device, a port name of the home terminal routing device, and system description of the home terminal routing device. The system description of the home routing device may include information such as a device model, a software version, a company name, and the like of the home routing device. That is, the home terminal information of the routing device records the information such as the home terminal mac address, the system description, and the port name. Wherein, different manufacturers record different differences of port names, some manufacturers only record uplink (link-up) ports, and some manufacturers record all ports).
Due to the above characteristics, in order to solve the problem of excessive data computation amount faced by determining the network topology based on the MAC address data set in the first possible implementation manner, the LLDP is introduced in the second possible implementation manner.
In this scenario, the implementation process of obtaining the routing topology relationship data set may be as follows: the control end sends a neighbor information acquisition request to each routing device in the plurality of routing devices through a Link Layer Discovery Protocol (LLDP), and then receives neighbor information acquisition results sent by each routing device in the plurality of routing devices, wherein the neighbor information acquisition results carry home end information of corresponding routing devices and opposite end information of connected opposite end routing devices. And the control end integrates the neighbor information acquisition result of each routing device in the plurality of routing devices to obtain a routing topological relation data set.
Since LLDP is a neighbor protocol commonly used in switches, this protocol is used to discover link neighbors. Therefore, as long as the routing devices such as switches in the network start the LLDP function, the topological relationship between the routing devices can be acquired. After the topology between the routing devices is directly obtained through LLDP, after the port and connection information of the switch is filtered out in the MAC address data set, the calculation amount for determining the network topology based on the remaining data set will be reduced by 80%.
It should also be noted that before sending the neighbor information acquisition request to each of the plurality of routing devices through the LLDP, the control end may also send an ICMP message to each of the plurality of routing devices and each of the plurality of terminal devices. That is, the ICMP message is sent to all devices in the whole network concurrently. Before any ICMP message reaches the device indicated by the destination MAC address, the ICMP message may pass through a multi-hop routing device to reach the destination, so that on the path of ICMP message transmission, each routing device on the transmission path may update the local neighbor information based on the last hop information of the received ICMP message and the receiving port. That is, any routing device on the ICMP packet transmission path may refresh local neighbor information based on the received ICMP packet. So that the neighbor information acquisition result acquired based on the LLDP can indicate the latest neighbor information.
How the control end integrates the neighbor information acquisition result of each routing device in the plurality of routing devices to obtain the routing topology relation data set is explained by taking two switches which are directly connected as an example.
Assume that the port "GigaEthernet1/0/1" of switch A is directly connected to the port "Ethernet1/0/1" of switch B, and the port "GigaEthernet1/0/23" of B is directly connected to the port "GigaEthernet2/0/1" of switch C.
In this way, after the control end sends the neighbor information acquisition requests to the switch a and the switch B, the neighbor information acquisition result returned by the switch a is as follows.
The neighbor information acquisition result returned by the switch A comprises the home terminal information and the opposite terminal information. The local terminal information included in the neighbor information acquisition result returned by the switch a is shown in table 2 below, and the opposite terminal information included in the neighbor information acquisition result returned by the switch a is shown in table 3 below.
TABLE 2[ Home information ]
Table 3[ opposite end information ]
The neighbor information acquisition result returned by the switch B comprises the home terminal information and the opposite terminal information. The local terminal information included in the neighbor information acquisition result returned by the switch B is shown in table 4 below, and the opposite terminal information included in the neighbor information acquisition result returned by the switch B is shown in table 5 below.
TABLE 4[ home information ]
Table 5[ opposite end information ]
The opposite end information in the table 3 is compared with the home end information in the table 4, and the home end information in the table 2 is compared with the opposite end information in the table 5, so that whether the exchange a and the switch B are in a neighbor relation or not is determined.
Specifically, the information in the above table 2 and table 3 is integrated first, and the obtaining of the home end information of the switch a includes the following steps:
MAC address: 60.0B.03.0C.79.40
Description of the system: DS-3E2528-H Software Version 5.20.99, release 1102Copyright (c) 2016Hikvision Digital Technology Co., ltd.
The information of the link between switch a and the opposite end is shown in table 6 below.
TABLE 6
Integrating the information in the above table 4 and table 5, the obtaining of the home terminal information of the switch B includes the following steps:
MAC address: 94.28.2E.69.ED.BA
Description of the system: DS-3E2326P-H Software Version 5.20.99, release 1103copy (c) 2017Hikvision Digital Technology Co., ltd.
The information of the link between switch B and the opposite end is shown in table 7 below.
TABLE 7
And confirming that the link information of the switch A and the link information of the switch B are matched from the information of the bold font of the two tables, wherein the switch is provided with a gigabit Ethernet1/0/1 directly connected with the Ethernet1/0/1 of the switch B. And the link between switch a and switch B may be characterized by the MAC address of switch a, the port identification of switch B, and the MAC address of switch B. The four-tuple data composed of the MAC address of the switch a, the port identifier of the switch B, and the MAC address of the switch B is a connection relationship data. In other words, one piece of connection relationship data indicates one connection relationship.
Analogizing in the mode of determining the connection relation between the switch A and the switch B, fusing the data set DT R Obtaining the number of routing devices with all resource types as the routing devicesThen, local/remote information of all the routing devices is obtained through the LLDP, and the topological relation among all the routing devices can be determined according to the method, that is, the routing topological relation data set is obtained. The routing topology relation data set can be labeled as data set DT L 。
In addition, in the embodiment of the present application, after the network topology is determined, the network topology may also be displayed. The displayed network topology can indicate the connection relationship between the respective routing devices, and the connection relationship between the terminal device and the routing device. That is, after the above topology calculation is completed, a final network topology map, which may be labeled NT, is output final 。
In order to facilitate querying a certain device from the network topology map, for any device in the real network topology, the MAC address and the IP address of the device may be displayed. Wherein, the MAC address and the IP address can be obtained from the converged data set.
Since the IP address of the device is not necessarily stored in the converged data set, in a possible implementation manner, the MAC address and the IP address of any device may be queried from the converged data set, and an Address Resolution Protocol (ARP) table acquisition request may be sent to any device when the IP address of any device is not queried in the converged data set, where the ARP table acquisition request is used to instruct any device to return to an ARP table, and the ARP table includes a mapping relationship between the IP address and the MAC address of any device.
That is, when the IP address of any node in the network topology is unknown, a scheme is needed to determine the IP address of the node. Since only the MAC address and the port information of the node can be obtained through the LLDP and the MAC address learning table, but the IP address of the node cannot be obtained, at this time, the mapping relationship between the MAC address and the IP address needs to be searched through the ARP table. To further obtain the IP address of the node.
Fig. 5 is a schematic format diagram of an ARP table according to an embodiment of the present application. As shown in fig. 5, the third column in the ARP table indicates the MAC address and the fourth column in the ARP table indicates the IP address.
Fig. 6 is a schematic diagram of a mapping relationship between a MAC address and a device port according to an embodiment of the present application. As shown in fig. 6, the second column in fig. 6 indicates the MAC address, the third column indicates the device port number, and the fourth column indicates the device port status.
The mapping relationship between the IP address and the port, and the mapping relationship between the IP address and the MAC address can be determined based on fig. 5 and 6. The relationship between the three can be shown in table 8 below.
TABLE 8
ip address | Port name | MAC address of opposite terminal equipment |
10.12.99.12 | GigabitEthernet1/0/24 | 54:EE:75:3E:8B:63 |
10.12.99.27 | GigabitEthernet1/0/1 | 94.28.2E.69.ED.BA |
10.12.99.254 | GigabitEthernet1/0/23 | 74.EA.CB.BD.F8.D8 |
10.12.99.19 | GigabitEthernet1/0/23 | XXXXXXX |
10.12.99.23 | GigabitEthernet1/0/23 | XXXXXXX |
Based on the above table 8, the final network topology NT is outputted final In time, not only the information such as the IP address, the port number, and the MAC address can be displayed. Can also fuse the data sets DT at the same time R Network information such as network flow, packet loss rate, bandwidth and the like of each device are taken out, and video streams, device parameters and the like of each security device are combined to be managed and displayed in a network topological graph, so that the purpose of unified management is achieved.
The network topology provided by the embodiment of the application can be applied in the following scenarios. It should be noted that the embodiments of the present application do not limit the specific application manner of the network topology. The principle of the relevant application mode can refer to standard documents, and the embodiment of the application is not described in detail.
Illustratively, bidirectional traffic information may be presented on top of the network topology map, including overall upstream traffic statistics, downstream traffic statistics of the switch nodes. And port-to-port bidirectional traffic statistics on each link, etc.
Illustratively, a threshold value of the traffic may also be set, and even a threshold level may be set, for example, when the real-time traffic exceeds a certain threshold level, the link will appear a corresponding set color.
Illustratively, there may be a deeper application scenario, such as in combination with a server and a component, through analysis and comparison of topological link and component traffic, it is possible to find out the hidden trouble that may exist in the link, or to assist in analysis and resolution of the generated problem.
Illustratively, the packet loss rate information may be topologically exhibited. When the packet loss rate is high, the topology link and the range which may be affected can be quickly discovered through the topology map. By the method, auxiliary problem analysis can be realized, the monitoring of network quality is improved, and a response scheme is made in time.
Illustratively, when a device goes offline or fails, an alarm state may be presented directly on top of the topology. The link and range which may be affected by the alarm state can be analyzed and deduced through topology, so that the problems caused by equipment failure and offline are solved.
The network topology convergence application scenarios provided by the embodiments of the present application are not listed one by one.
Therefore, the method for calculating the network topology in the accelerated link layer topology based on the converged data is provided, the topology analysis and calculation are comprehensively carried out based on SNMP, LLDP, an MAC address learning table and ARP mapping, a two-layer link relation network of an end and an end is found, IT operation and maintenance and security operation and maintenance are subjected to fusion treatment, physical links are subjected to fine management, and management of operation and maintenance on monitoring points is improved to the dimensions from point to line and from line to surface. The problem of the fortune dimension personnel because the fortune dimension fault point that the splitting of IT and security protection leads to is difficult to fix a position, and topological circuit is difficult to clear up and consumes a large amount of manpower and materials is solved, fortune dimension efficiency and usability are greatly improved. The automatic topology network is realized based on the technology, and the automatic topology network is combined with application scenes such as a logic topology network, geographic information positioning, flow and packet loss monitoring alarm, equipment detection and alarm and the like, so that greater value is provided for customers, and real 'everything interconnection, operation and maintenance everything' can be realized.
The method provided by the embodiment of the application can accurately and quickly calculate the connection relation among all the devices, and displays the connection relation in a full-network topology mode, so that a user can quickly locate the problem of a certain node and a certain link and repair the problem in time, the resource waste of manual line combing is reduced, and the purpose of improving operation and maintenance efficiency is achieved.
In addition, after the method provided by the embodiment of the application is used, the gap between every two departments is broken, the whole network is in one topology, efficient cooperation is achieved, the IT equipment and the security protection equipment are managed together, the physical link and the node relation are clearly displayed, when a certain node or a certain link goes wrong, operation and maintenance personnel can quickly confirm the connection relation of the node, for example, a certain equipment is specifically connected to a certain switch port or the connection relation between the switch ports, a large amount of manpower for searching the node position is saved, two departments can communicate with each other efficiently, the problem can be found and analyzed, and the material resources can be salvaged in time, so that the operation and maintenance efficiency is improved, the cost is greatly saved, and various unnecessary risks are reduced.
Furthermore, the method provided by the embodiment of the application not only solves the dilemma of cross-industry platform management, but also greatly reduces the calculated amount, can effectively filter data, reduces data transmission, saves the flow cost, reduces the network bandwidth impact, and further accelerates the topology calculation. Meanwhile, the accuracy of the topology is greatly enhanced because the calculation domain is a specified fusion data set.
All the above optional technical solutions can be combined arbitrarily to form an optional embodiment of the present application, and the present application embodiment is not described in detail again.
Fig. 7 is a schematic structural diagram of an apparatus for determining a network topology according to an embodiment of the present application, where the apparatus for determining a network topology may be implemented by software, hardware, or a combination of the two. As shown in fig. 7, the apparatus 700 for determining a network topology may include several modules as follows.
An obtaining module 701, configured to obtain a fused data set, where the fused data set includes local device information of each terminal device in a plurality of terminal devices and local device information of each routing device in a plurality of routing devices, and the local device information includes a MAC address of a media access control layer of a device;
the obtaining module 701 is further configured to obtain an MAC address data set, where the MAC address data set includes an MAC address corresponding to each port on each routing device in the multiple routing devices, and the MAC address corresponding to each port includes an MAC address of an opposite device connected to the corresponding port;
a determining module 702, configured to determine a network topology based on the converged data set and the MAC address data set, where the network topology indicates connection relationships between the plurality of terminal devices and the plurality of routing devices.
Optionally, the determining module is configured to:
acquiring a routing topological relation data set, wherein the routing topological relation data set comprises connection relation data corresponding to each port on any one of a plurality of routing devices, and the connection relation data comprises an MAC address of a local routing device, a local port identifier, a port identifier of an opposite routing device and an MAC address of an opposite routing device;
filtering the MAC address data set based on the routing topological relation data set, wherein the MAC addresses corresponding to the ports on each routing device after filtering do not comprise the MAC addresses of other routing devices connected with the corresponding routing device;
and constructing a network topology based on the routing topology relation data set and the filtered MAC addresses corresponding to the ports on each routing device.
Optionally, the determining module is configured to:
sending a neighbor information acquisition request to each routing device in a plurality of routing devices through a Link Layer Discovery Protocol (LLDP);
receiving a neighbor information acquisition result sent by each routing device in a plurality of routing devices, wherein the neighbor information acquisition result carries the home terminal information of the corresponding routing device and the opposite terminal information of the connected opposite terminal routing device;
and integrating the neighbor information acquisition result of each routing device in the plurality of routing devices to obtain a routing topology relation data set.
Optionally, the determining module is configured to:
determining leaf node ports in the MAC address data set based on respective MAC addresses in a plurality of terminal devices in the MAC address data set and the converged data set, wherein the leaf node ports refer to ports of which the corresponding MAC addresses belong to the MAC addresses of the terminal devices, or ports of which the number of the corresponding MAC addresses is 1;
establishing a mapping relation between a leaf node port and a corresponding MAC address, wherein the mapping relation indicates that the leaf node port and equipment indicated by the corresponding MAC address are directly connected;
for the MAC address corresponding to any port on any routing device in the MAC address data set, deleting the MAC address belonging to the MAC address corresponding to the leaf node port to obtain an updated MAC address data set, returning to execute the respective MAC address in a plurality of terminal devices based on the MAC address data set and the fusion data set, and determining the operation of the leaf node port in the MAC address data set until the updated MAC address data set is empty;
and constructing a network topology based on the established mapping relation between the leaf node ports and the corresponding MAC addresses.
Optionally, the obtaining module is configured to:
sending an MAC address table acquisition request to each routing device in a plurality of routing devices through a Simple Network Management Protocol (SNMP);
receiving an MAC address table acquisition result sent by each routing device in a plurality of routing devices, wherein the MAC address table acquisition result carries an MAC address table of the corresponding routing device, and the MAC address table comprises MAC addresses corresponding to ports on the corresponding routing device;
a MAC address data set is determined based on a MAC address table transmitted by each of a plurality of routing devices.
Optionally, the apparatus further comprises:
and the sending module is used for sending a network control message protocol ICMP message to each routing device in the routing devices and each terminal device in the terminal devices, and any routing device on the transmission path of the ICMP message refreshes a local MAC address table and/or neighbor information based on the received ICMP message.
Optionally, the obtaining module is configured to:
acquiring a first data set and a second data set, wherein the first data set comprises a plurality of pieces of terminal equipment data corresponding to a plurality of pieces of terminal equipment respectively, the second data set comprises a plurality of pieces of routing equipment data corresponding to a plurality of pieces of routing equipment respectively, each piece of terminal equipment data comprises a resource number, an equipment type and an MAC address of corresponding terminal equipment, and each piece of routing equipment data comprises a resource number, an equipment type and an MAC address of corresponding terminal equipment;
for any terminal device data in the plurality of pieces of terminal device data, a pair of key values is obtained by taking the resource number in any terminal device data as a key and taking other information in any terminal device data as a value, and for any routing device data in the plurality of pieces of routing device data, a pair of key values is obtained by taking the resource number in any routing device data as a key and taking other information in any routing device data as a value;
and fusing the key value pairs obtained based on the first data set and the second data set to obtain a fused data set.
Optionally, the apparatus further comprises a display module for:
displaying the network topology;
and for any device in the network topology, displaying the MAC address and the network protocol IP address of any device.
Optionally, the apparatus further comprises:
the query module is used for querying the MAC address and the IP address of any equipment from the fusion data set;
and the sending module is used for sending an Address Resolution Protocol (ARP) table acquisition request to any equipment under the condition that the IP address of any equipment is not inquired in the fusion data set, wherein the ARP table acquisition request is used for indicating any equipment to return to an ARP table, and the ARP table comprises the mapping relation between the IP address and the MAC address of any equipment.
In the embodiment of the present application, a network topology of a network including a plurality of terminal devices and a routing device at the same time can be constructed by fusing a data set and a MAC address data set. The network topology determined based on the embodiment of the application can achieve the following technical effects.
(1) Under the condition that the terminal equipment is the security equipment, if a certain security equipment fails, the security equipment can be quickly determined to be connected to which routing equipment and which port of which routing equipment based on the network topology determined by the embodiment of the application, so that the link connection relation of the security equipment is avoided being determined by manual means such as a line tester, and the reason that the security equipment fails is conveniently and quickly determined. That is, by the method for determining the network topology provided by the embodiment of the application, the human resources required for subsequently determining the failure cause of the security equipment can be reduced, and the efficiency for determining the failure cause is improved.
(2) Under the condition that the security equipment and the routing equipment are managed by a security operation and maintenance department and an IT operation and maintenance department respectively, the network topology determined based on the embodiment of the application can quickly determine the link connection relation of certain security equipment, the problems that operation and maintenance personnel are difficult to locate the fault reason caused by the splitting of the IT operation and maintenance department and the security operation and maintenance department, the topological lines are difficult to clean and a large amount of manpower and material resources are consumed are solved, and the efficiency and the usability of operation and maintenance of a garden network are greatly improved.
It should be noted that: in the apparatus for determining a network topology according to the foregoing embodiment, when determining a network topology, only the division of the functional modules is described as an example, and in practical applications, the functions may be distributed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the apparatus for determining a network topology and the method for determining a network topology provided in the foregoing embodiments belong to the same concept, and details of a specific implementation process thereof are shown in the method embodiments and will not be described herein again.
Fig. 8 is a schematic structural diagram of a terminal 800 according to an embodiment of the present application. The control terminal in the foregoing embodiments can be implemented by the terminal shown in fig. 8. The terminal 800 may be: a smart phone, a tablet computer, an MP3 player (Moving Picture Experts Group Audio Layer III, motion video Experts compression standard Audio Layer 3), an MP4 player (Moving Picture Experts Group Audio Layer IV, motion video Experts compression standard Audio Layer 4), a notebook computer, or a desktop computer. The terminal 800 may also be referred to by other names such as user equipment, portable terminal, laptop terminal, desktop terminal, etc.
In general, the terminal 800 includes: a processor 801 and a memory 802.
The processor 801 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and so forth. The processor 801 may be implemented in at least one hardware form of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), and a PLA (Programmable Logic Array). The processor 801 may also include a main processor and a coprocessor, where the main processor is a processor for Processing data in an awake state, and is also called a Central Processing Unit (CPU); a coprocessor is a low power processor for processing data in a standby state. In some embodiments, the processor 801 may be integrated with a GPU (Graphics Processing Unit) which is responsible for rendering and drawing the content required to be displayed by the display screen. In some embodiments, the processor 801 may further include an AI (Artificial Intelligence) processor for processing computing operations related to machine learning.
In some embodiments, the terminal 800 may further include: a peripheral interface 803 and at least one peripheral. The processor 801, memory 802, and peripheral interface 803 may be connected by buses or signal lines. Various peripheral devices may be connected to peripheral interface 803 by a bus, signal line, or circuit board. Specifically, the peripheral device includes: at least one of a radio frequency circuit 804, a display screen 805, a camera assembly 806, an audio circuit 807, a positioning assembly 808, and a power supply 809.
The peripheral interface 803 may be used to connect at least one peripheral device related to I/O (Input/Output) to the processor 801 and the memory 802. In some embodiments, the processor 801, memory 802, and peripheral interface 803 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 801, the memory 802, and the peripheral interface 803 may be implemented on separate chips or circuit boards, which are not limited by this embodiment.
The Radio Frequency circuit 804 is used for receiving and transmitting RF (Radio Frequency) signals, also called electromagnetic signals. The radio frequency circuitry 804 communicates with communication networks and other communication devices via electromagnetic signals. The rf circuit 804 converts an electrical signal into an electromagnetic signal to be transmitted, or converts a received electromagnetic signal into an electrical signal. Optionally, the radio frequency circuit 804 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a subscriber identity module card, and so forth. The radio frequency circuit 804 may communicate with other terminals via at least one wireless communication protocol. The wireless communication protocols include, but are not limited to: metropolitan area networks, various generation mobile communication networks (2G, 3G, 4G, and 5G), wireless local area networks, and/or WiFi (Wireless Fidelity) networks. In some embodiments, the radio frequency circuit 804 may further include NFC (Near Field Communication) related circuits, which are not limited in this application.
The display 805 is used to display a UI (User Interface). The UI may include graphics, text, icons, video, and any combination thereof. When the display 805 is a touch display, the display 805 also has the ability to capture touch signals on or above the surface of the display 805. The touch signal may be input to the processor 801 as a control signal for processing. At this point, the display 805 may also be used to provide virtual buttons and/or a virtual keyboard, also referred to as soft buttons and/or a soft keyboard. In some embodiments, the display 805 may be one, providing the front panel of the terminal 800; in other embodiments, the display 805 may be at least two, respectively disposed on different surfaces of the terminal 800 or in a folded design; in other embodiments, the display 805 may be a flexible display disposed on a curved surface or a folded surface of the terminal 800. Even further, the display 805 may be arranged in a non-rectangular irregular pattern, i.e., a shaped screen. The Display 805 can be made of LCD (Liquid Crystal Display), OLED (Organic Light-Emitting Diode), and other materials.
The camera assembly 806 is used to capture images or video. Optionally, camera assembly 806 includes a front camera and a rear camera. Generally, a front camera is disposed at a front panel of the terminal, and a rear camera is disposed at a rear surface of the terminal. In some embodiments, the number of the rear cameras is at least two, and each rear camera is any one of a main camera, a depth-of-field camera, a wide-angle camera and a telephoto camera, so that the main camera and the depth-of-field camera are fused to realize a background blurring function, and the main camera and the wide-angle camera are fused to realize panoramic shooting and VR (Virtual Reality) shooting functions or other fusion shooting functions. In some embodiments, camera assembly 806 may also include a flash. The flash lamp can be a single-color temperature flash lamp or a double-color temperature flash lamp. The double-color-temperature flash lamp is a combination of a warm-light flash lamp and a cold-light flash lamp, and can be used for light compensation at different color temperatures.
The audio circuit 807 may include a microphone and a speaker. The microphone is used for collecting sound waves of a user and the environment, converting the sound waves into electric signals, and inputting the electric signals to the processor 801 for processing or inputting the electric signals to the radio frequency circuit 804 to realize voice communication. For the purpose of stereo sound collection or noise reduction, a plurality of microphones may be provided at different portions of the terminal 800. The microphone may also be an array microphone or an omni-directional pick-up microphone. The speaker is used to convert electrical signals from the processor 801 or the radio frequency circuit 804 into sound waves. The loudspeaker can be a traditional film loudspeaker or a piezoelectric ceramic loudspeaker. When the speaker is a piezoelectric ceramic speaker, the speaker can be used for purposes such as converting an electric signal into a sound wave audible to a human being, or converting an electric signal into a sound wave inaudible to a human being to measure a distance. In some embodiments, the audio circuitry 807 may also include a headphone jack.
The positioning component 808 is used to locate the current geographic position of the terminal 800 for navigation or LBS (Location Based Service). The Positioning component 808 may be a Positioning component based on the GPS (Global Positioning System) in the united states, the beidou System in china, the graves System in russia, or the galileo System in the european union.
A power supply 809 is used to supply power to the various components in the terminal 800. The power supply 809 can be ac, dc, disposable or rechargeable. When the power source 809 comprises a rechargeable battery, the rechargeable battery may support wired or wireless charging. The rechargeable battery may also be used to support fast charge technology.
In some embodiments, terminal 800 also includes one or more sensors 810. The one or more sensors 810 include, but are not limited to: acceleration sensor 811, gyro sensor 812, pressure sensor 813, fingerprint sensor 814, optical sensor 815 and proximity sensor 816.
The acceleration sensor 811 may detect the magnitude of acceleration in three coordinate axes of the coordinate system established with the terminal 800. For example, the acceleration sensor 811 may be used to detect the components of the gravitational acceleration in three coordinate axes. The processor 801 may control the display 805 to display the user interface in a landscape view or a portrait view according to the gravitational acceleration signal collected by the acceleration sensor 811. The acceleration sensor 811 may also be used for acquisition of motion data of a game or a user.
The gyro sensor 812 may detect a body direction and a rotation angle of the terminal 800, and the gyro sensor 812 may cooperate with the acceleration sensor 811 to acquire a 3D motion of the user with respect to the terminal 800. From the data collected by the gyro sensor 812, the processor 801 may implement the following functions: motion sensing (such as changing the UI according to a user's tilting operation), image stabilization at the time of photographing, game control, and inertial navigation.
Pressure sensors 813 may be disposed on the side frames of terminal 800 and/or underneath display 805. When the pressure sensor 813 is disposed on the side frame of the terminal 800, the holding signal of the user to the terminal 800 can be detected, and the processor 801 performs left-right hand recognition or shortcut operation according to the holding signal collected by the pressure sensor 813. When the pressure sensor 813 is disposed at a lower layer of the display screen 805, the processor 801 controls the operability control on the UI interface according to the pressure operation of the user on the display screen 805. The operability control comprises at least one of a button control, a scroll bar control, an icon control and a menu control.
The fingerprint sensor 814 is used for collecting a fingerprint of the user, and the processor 801 identifies the identity of the user according to the fingerprint collected by the fingerprint sensor 814, or the fingerprint sensor 814 identifies the identity of the user according to the collected fingerprint. Upon identifying that the user's identity is a trusted identity, the processor 801 authorizes the user to perform relevant sensitive operations including unlocking a screen, viewing encrypted information, downloading software, paying for and changing settings, etc. Fingerprint sensor 814 may be disposed on the front, back, or side of terminal 800. When a physical button or a vendor Logo is provided on the terminal 800, the fingerprint sensor 814 may be integrated with the physical button or the vendor Logo.
The optical sensor 815 is used to collect ambient light intensity. In one embodiment, processor 801 may control the display brightness of display 805 based on the ambient light intensity collected by optical sensor 815. Specifically, when the ambient light intensity is high, the display brightness of the display screen 805 is increased; when the ambient light intensity is low, the display brightness of the display 805 is adjusted down. In another embodiment, the processor 801 may also dynamically adjust the shooting parameters of the camera assembly 806 according to the ambient light intensity collected by the optical sensor 815.
A proximity sensor 816, also known as a distance sensor, is typically provided on the front panel of the terminal 800. The proximity sensor 816 is used to collect the distance between the user and the front surface of the terminal 800. In one embodiment, when the proximity sensor 816 detects that the distance between the user and the front surface of the terminal 800 gradually decreases, the processor 801 controls the display 805 to switch from the bright screen state to the dark screen state; when the proximity sensor 816 detects that the distance between the user and the front surface of the terminal 800 becomes gradually larger, the display 805 is controlled by the processor 801 to switch from the breath-screen state to the bright-screen state.
Those skilled in the art will appreciate that the configuration shown in fig. 8 is not intended to be limiting of terminal 800 and may include more or fewer components than those shown, or some components may be combined, or a different arrangement of components may be used.
Embodiments of the present application further provide a non-transitory computer-readable storage medium, and when instructions in the storage medium are executed by a processor of a terminal, the terminal is enabled to perform the method for determining a network topology provided in the above embodiments.
Embodiments of the present application further provide a computer program product containing instructions, which when run on a terminal, cause the terminal to perform the method for determining a network topology provided in the foregoing embodiments.
Fig. 9 is a schematic structural diagram of a server according to an embodiment of the present application. The control end in the foregoing embodiments may be implemented by the server shown in fig. 9. The server may be a server in a cluster of background servers. Specifically, the method comprises the following steps:
the server 900 includes a Central Processing Unit (CPU) 901, a system memory 904 including a Random Access Memory (RAM) 902 and a Read Only Memory (ROM) 903, and a system bus 905 connecting the system memory 904 and the central processing unit 901. The server 900 also includes a basic input/output system (I/O system) 906, which facilitates the transfer of information between devices within the computer, and a mass storage device 907 for storing an operating system 913, application programs 914, and other program modules 915.
The basic input/output system 906 includes a display 908 for displaying information and an input device 909 such as a mouse, keyboard, etc. for a user to input information. Wherein a display 908 and an input device 909 are connected to the central processing unit 901 through an input-output controller 910 connected to the system bus 905. The basic input/output system 906 may also include an input/output controller 910 for receiving and processing input from a number of other devices, such as a keyboard, mouse, or electronic stylus. Similarly, input-output controller 910 also provides output to a display screen, a printer, or other type of output device.
The mass storage device 907 is connected to the central processing unit 901 through a mass storage controller (not shown) connected to the system bus 905. The mass storage device 907 and its associated computer-readable media provide non-volatile storage for the server 900. That is, mass storage device 907 may include a computer-readable medium (not shown) such as a hard disk or CD-ROM drive.
Without loss of generality, computer readable media may comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROM, DVD, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices. Of course, those skilled in the art will appreciate that computer storage media is not limited to the foregoing. The system memory 904 and mass storage device 907 described above may be collectively referred to as memory.
The server 900 may also operate as a remote computer connected to a network via a network, such as the internet, in accordance with various embodiments of the present application. That is, the server 900 may be connected to the network 912 through the network interface unit 911 connected to the system bus 905, or the network interface unit 911 may be used to connect to other types of networks or remote computer systems (not shown).
The memory further includes one or more programs, and the one or more programs are stored in the memory and configured to be executed by the CPU. The one or more programs include instructions for performing the method of determining network topology provided by the embodiments of the present application as described below.
Embodiments of the present application further provide a non-transitory computer-readable storage medium, and when instructions in the storage medium are executed by a processor of a server, the server is enabled to execute the method for determining a network topology provided in the foregoing embodiments.
Embodiments of the present application further provide a computer program product containing instructions, which when run on a server, cause the server to perform the method for determining a network topology provided in the foregoing embodiments.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only a preferred embodiment of the present application, and should not be taken as limiting the present application, and any modifications, equivalents, improvements and the like that are made within the spirit and principle of the present application should be included in the protection scope of the present application.
Claims (10)
1. A method of determining a network topology, the method comprising:
acquiring a fusion data set, wherein the fusion data set comprises local terminal equipment information of each terminal equipment in a plurality of terminal equipment and local terminal equipment information of each routing equipment in a plurality of routing equipment, and the local terminal equipment information comprises a Media Access Control (MAC) layer address of the equipment;
acquiring an MAC address data set, wherein the MAC address data set comprises MAC addresses corresponding to ports on each routing device in the routing devices, the MAC address corresponding to each port comprises an MAC address of opposite-end equipment connected with the corresponding port, and the opposite-end equipment comprises directly-connected equipment and indirectly-connected equipment;
determining a network topology based on the converged data set and the MAC address data set, the network topology indicating connection relationships between the plurality of end devices and the plurality of routing devices;
determining a network topology based on the converged data set and the MAC address data set, comprising:
acquiring a routing topology relation data set, wherein the routing topology relation data set comprises connection relation data corresponding to each port on any one of the plurality of routing devices, and the connection relation data comprises an MAC address of a local routing device, a local port identifier, a port identifier of an opposite routing device and an MAC address of the opposite routing device; filtering the MAC address data set based on the routing topological relation data set, wherein the MAC addresses corresponding to the ports on each routing device after filtering do not include the MAC addresses of other routing devices connected with the corresponding routing device; constructing the network topology based on the routing topology relation data set and the filtered MAC addresses corresponding to the ports on each routing device;
or,
determining leaf node ports in the MAC address dataset based on respective MAC addresses in the plurality of terminal devices in the MAC address dataset and the converged dataset, wherein the leaf node ports refer to ports of which the corresponding MAC addresses all belong to the MAC addresses of the terminal devices, or ports of which the number of the corresponding MAC addresses is 1; establishing a mapping relation between the leaf node port and the corresponding MAC address, wherein the mapping relation indicates that the leaf node port and the equipment indicated by the corresponding MAC address are directly connected; for the MAC address corresponding to any port on any routing device in the MAC address data set, deleting the MAC address belonging to the MAC address corresponding to the leaf node port to obtain an updated MAC address data set, returning to execute the respective MAC address in the plurality of terminal devices in the converged data set based on the MAC address data set, and determining the operation of the leaf node port in the MAC address data set until the updated MAC address data set is empty; and constructing the network topology based on the established mapping relation between the leaf node ports and the corresponding MAC addresses.
2. The method of claim 1, wherein said obtaining a routing topology relationship data set comprises:
sending a neighbor information acquisition request to each routing device in the plurality of routing devices through a Link Layer Discovery Protocol (LLDP);
receiving a neighbor information acquisition result sent by each routing device in the plurality of routing devices, wherein the neighbor information acquisition result carries the home terminal information of the corresponding routing device and the opposite terminal information of the connected opposite terminal routing device;
and integrating the neighbor information acquisition result of each routing device in the plurality of routing devices to obtain the routing topology relation data set.
3. The method of claim 1, wherein the obtaining the MAC address dataset comprises:
sending an MAC address table acquisition request to each routing device in the plurality of routing devices through a Simple Network Management Protocol (SNMP);
receiving an MAC address table acquisition result sent by each routing device in the plurality of routing devices, wherein the MAC address table acquisition result carries an MAC address table of the corresponding routing device, and the MAC address table comprises MAC addresses corresponding to ports on the corresponding routing device;
determining the MAC address dataset based on the MAC address table sent by each of the plurality of routing devices.
4. The method of claim 1, wherein prior to said obtaining the MAC address data set, the method further comprises:
and sending a network control message protocol (ICMP) message to each routing device in the plurality of routing devices and each terminal device in the plurality of terminal devices, wherein any routing device on the transmission path of the ICMP message refreshes a local MAC address table and/or neighbor information based on the received ICMP message.
5. The method of claim 1, wherein the obtaining a fused dataset comprises:
acquiring a first data set and a second data set, wherein the first data set comprises a plurality of pieces of terminal equipment data corresponding to the plurality of terminal equipment respectively, the second data set comprises a plurality of pieces of routing equipment data corresponding to the plurality of routing equipment respectively, each piece of terminal equipment data comprises a resource number, an equipment type and an MAC address of corresponding terminal equipment, and each piece of routing equipment data comprises a resource number, an equipment type and an MAC address of corresponding terminal equipment;
for any terminal device data in the plurality of pieces of terminal device data, a pair of key values is obtained by taking the resource number in any terminal device data as a key and taking other information in any terminal device data as a value, and for any routing device data in the plurality of pieces of routing device data, a pair of key values is obtained by taking the resource number in any routing device data as a key and taking other information in any routing device data as a value;
and fusing key value pairs obtained based on the first data set and the second data set to obtain the fused data set.
6. The method of any of claims 1 to 5, wherein after determining a network topology based on the converged data set and the MAC address data set, the method further comprises:
displaying the network topology;
and displaying the MAC address and the IP address of any equipment in the network topology.
7. The method of claim 6, wherein prior to said displaying the MAC address and the network protocol IP address of the any device, the method further comprises:
querying the MAC address and the IP address of any one device from the converged data set;
and under the condition that the IP address of any equipment is not inquired in the fusion data set, sending an ARP table acquisition request to the any equipment, wherein the ARP table acquisition request is used for indicating the any equipment to return an ARP table, and the ARP table comprises the mapping relation between the IP address and the MAC address of the any equipment.
8. An apparatus for determining a network topology, the apparatus comprising:
an obtaining module, configured to obtain a fused data set, where the fused data set includes home terminal device information of each terminal device in a plurality of terminal devices and home terminal device information of each routing device in a plurality of routing devices, and the home terminal device information includes a Media Access Control (MAC) layer address of a device;
the obtaining module is further configured to obtain an MAC address dataset, where the MAC address dataset includes an MAC address corresponding to each port on each of the plurality of routing devices, the MAC address corresponding to each port includes an MAC address of an opposite-end device connected to the corresponding port, and the opposite-end device includes a device directly connected and a device indirectly connected;
a determining module, configured to determine a network topology based on the converged data set and the MAC address data set, where the network topology indicates connection relationships between the plurality of terminal devices and the plurality of routing devices;
the determining module is specifically configured to:
acquiring a routing topology relation data set, wherein the routing topology relation data set comprises connection relation data corresponding to each port on any one of the plurality of routing devices, and the connection relation data comprises an MAC address of a local routing device, a local port identifier, a port identifier of an opposite routing device and an MAC address of the opposite routing device; filtering the MAC address data set based on the routing topological relation data set, wherein the MAC addresses corresponding to the ports on each routing device after filtering do not include the MAC addresses of other routing devices connected with the corresponding routing device; constructing the network topology based on the routing topology relation data set and the filtered MAC addresses corresponding to the ports on each routing device;
or,
determining leaf node ports in the MAC address data set based on respective MAC addresses in the plurality of terminal devices in the MAC address data set and the converged data set, wherein the leaf node ports refer to ports of which the corresponding MAC addresses all belong to the MAC addresses of the terminal devices, or ports of which the number of the corresponding MAC addresses is 1; establishing a mapping relation between the leaf node port and the corresponding MAC address, wherein the mapping relation indicates that the leaf node port and the equipment indicated by the corresponding MAC address are directly connected; for the MAC address corresponding to any port on any routing device in the MAC address data set, deleting the MAC address belonging to the MAC address corresponding to the leaf node port to obtain an updated MAC address data set, returning to execute the respective MAC address in the plurality of terminal devices in the converged data set based on the MAC address data set, and determining the operation of the leaf node port in the MAC address data set until the updated MAC address data set is empty; and constructing the network topology based on the established mapping relation between the leaf node ports and the corresponding MAC addresses.
9. An apparatus for determining a network topology, the apparatus comprising:
a processor;
a memory for storing processor-executable instructions;
wherein the processor is configured to perform the steps of the method of any of the above claims 1 to 7.
10. A computer-readable storage medium having stored thereon instructions which, when executed by a processor, carry out the steps of the method of any of claims 1 to 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011623310.0A CN112751714B (en) | 2020-12-31 | 2020-12-31 | Method, apparatus and computer storage medium for determining network topology |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011623310.0A CN112751714B (en) | 2020-12-31 | 2020-12-31 | Method, apparatus and computer storage medium for determining network topology |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112751714A CN112751714A (en) | 2021-05-04 |
CN112751714B true CN112751714B (en) | 2023-03-24 |
Family
ID=75650387
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011623310.0A Active CN112751714B (en) | 2020-12-31 | 2020-12-31 | Method, apparatus and computer storage medium for determining network topology |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112751714B (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114221882A (en) * | 2021-12-23 | 2022-03-22 | 锐捷网络股份有限公司 | Method, device, equipment and storage medium for detecting fault link |
CN114338414B (en) * | 2022-01-30 | 2024-01-16 | 阿里巴巴(中国)有限公司 | Backbone network topology discovery method, device and control equipment |
CN115695206B (en) * | 2022-11-01 | 2024-08-23 | 北京惠而特科技有限公司 | Method and device for determining network topology, computer equipment and storage medium |
CN117176588B (en) * | 2023-11-03 | 2024-02-06 | 烽台科技(北京)有限公司 | Method and device for constructing network topology, electronic equipment and storage medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101330405A (en) * | 2008-07-02 | 2008-12-24 | 北京亿阳信通软件研究院有限公司 | Method for discovering network topology and related equipment |
CN102045190A (en) * | 2009-10-21 | 2011-05-04 | 杭州华三通信技术有限公司 | Network topology discovery method and device |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102326370B (en) * | 2011-08-05 | 2014-04-30 | 华为技术有限公司 | Message processing method, apparatus and system |
CN103731288B (en) * | 2012-10-16 | 2017-04-12 | 杭州华三通信技术有限公司 | Message forwarding method and device |
CN104579979A (en) * | 2015-01-21 | 2015-04-29 | 武汉微创光电股份有限公司 | Network topology discovery method based on MAC information |
CN112019367B (en) * | 2019-05-31 | 2023-08-18 | 浙江宇视科技有限公司 | Network topology generation method, device, equipment and storage medium |
CN111327668B (en) * | 2019-09-25 | 2022-10-21 | 杭州海康威视系统技术有限公司 | Network management method, device, equipment and storage medium |
-
2020
- 2020-12-31 CN CN202011623310.0A patent/CN112751714B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101330405A (en) * | 2008-07-02 | 2008-12-24 | 北京亿阳信通软件研究院有限公司 | Method for discovering network topology and related equipment |
CN102045190A (en) * | 2009-10-21 | 2011-05-04 | 杭州华三通信技术有限公司 | Network topology discovery method and device |
Also Published As
Publication number | Publication date |
---|---|
CN112751714A (en) | 2021-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112751714B (en) | Method, apparatus and computer storage medium for determining network topology | |
US10484265B2 (en) | Dynamic update of virtual network topology | |
CN111090687B (en) | Data processing method, device and system and computer readable storage medium | |
CN111953541A (en) | Alarm information processing method and device, computer equipment and storage medium | |
CN110868459A (en) | Data transmission method, device, terminal and storage medium | |
CN112328318B (en) | Method, device and storage medium for automatic planning of proprietary cloud platform | |
CN112822053B (en) | SNMP-based link layer network topology structure discovery method and system | |
US20130042020A1 (en) | Quick Network Path Discovery | |
CN110289991B (en) | Fault gateway detection method, device, storage medium and terminal | |
CN110704324A (en) | Application debugging method and device and storage medium | |
CN115617278B (en) | Path device selection method and device, electronic device and readable storage medium | |
CN110636144A (en) | Data downloading method and device | |
CN111241115A (en) | Data synchronization method, device, equipment and storage medium | |
CN114127814A (en) | Scene detection method and device, electronic equipment and computer storage medium | |
CN113742366A (en) | Data processing method and device, computer equipment and storage medium | |
CN109921960B (en) | IDC machine room network anomaly testing method and device | |
CN112003978A (en) | Conference management interface display method and device, storage medium and terminal equipment | |
CN110969072A (en) | Model optimization method and device and image analysis system | |
US11323692B2 (en) | Asset management system and asset management method | |
CN110597840A (en) | Partner relationship establishing method, device, equipment and storage medium based on block chain | |
CN114126083A (en) | Cross-network-segment wireless screen projection method and device, electronic equipment and storage medium | |
CN113890753A (en) | Digital identity management method, device, system, computer equipment and storage medium | |
CN110798444B (en) | Data synchronization method and device based on Internet of things | |
CN111193600B (en) | Method, device and system for taking over service | |
CN108804926B (en) | Universal Web application vulnerability detection and repair method and device |
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 |