A network topology visualization method and device, electronic equipment, chip and medium

By using the x-neighbors algorithm based on routing table entries and link state table entries, combined with the bubble sort mechanism, the problem of incomplete topology discovery in campus networks is solved, and complete visualization of network topology is achieved even in the presence of firewalls and other devices.

CN119011413BActive Publication Date: 2025-11-07CHINA MOBILE GROUP SICHUAN +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411282977.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-13
Publication Date
2025-11-07
Estimated Expiration
2044-09-13

AI Technical Summary

Technical Problem

In existing technologies, the topology discovery methods for campus networks cannot form a complete network topology structure in the presence of devices such as firewalls and intrusion detection systems. In particular, there are protocol barriers between different routing protocols, resulting in incomplete topology discovery.

Method used

A basic data table is formed based on routing table entries and link state table entries. The x-neighbors algorithm is used to calculate topology information, and an intermediate topology set is generated through a bubble sort mechanism. Finally, the topology information is graphically displayed in the graphics engine.

Benefits of technology

It enables complete topology information calculation and graphical display in non-continuous network structures, breaks down protocol barriers between different routing protocols, and provides complete network topology visualization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119011413B_ABST
    Figure CN119011413B_ABST
Patent Text Reader

Abstract

The present disclosure provides a network topology visualization method and device, electronic equipment, chip and medium, and relates to the technical field of network topology discovery. The method comprises: acquiring routing information of a network device and recording in a basic topology database; in response to a change in the routing information, coding and sorting the basic topology database to build a target topology database; and based on the target topology database, rendering and visualizing the network topology structure of the network device. Through the technical solution provided by the present disclosure, the problem that related technologies cannot display a complete network topology structure for dynamic links is solved, and the visualization of a complete network topology structure is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of network topology discovery technology, and in particular to a network topology visualization method, apparatus, electronic device, chip, and medium. Background Technology

[0002] Currently, the construction of relatively large campus networks often involves the collaboration of multiple routing protocols. Each protocol relies on its own database to form its own Link Status Database (LSDB) or routing table, ultimately resulting in a network topology running the same routing protocol. However, protocol barriers exist between different routing protocols, preventing a complete representation of the campus network topology.

[0003] In related technologies, network topology discovery methods do not utilize routing protocol state machines or link databases to form a unified topology; they can only discover nearby next-hop or directly connected neighbor nodes. If security devices such as firewalls, intrusion detection systems (IDS), or intrusion prevention systems (IPS) exist in the network, or if these devices do not enable discovery protocols, use proprietary protocols, or reject ICMP, the network topology discovery method will fail, preventing the formation of a complete network topology structure. Summary of the Invention

[0004] This disclosure aims to solve the aforementioned technical problems in the related art.

[0005] This disclosure provides a network topology visualization method, device, electronic device, chip, and medium to solve the problem of not being able to display the complete network topology structure for dynamic links. It utilizes a basic data table based on routing table entries and link state table entries, generates topology information data using the x-neighbors algorithm, efficiently calculates topology information in discontinuous network structures using a bubble sort mechanism, and then uses a graphics engine to perform numerical-graphical transformation to achieve graphical display of the topology information.

[0006] A first aspect of this disclosure provides a method for visualizing network topology, the method comprising:

[0007] Obtain routing information from network devices and record it in the basic topology database;

[0008] In response to changes in routing information, the basic topology database is encoded and sorted to construct the target topology database;

[0009] Based on the target topology database, render and visualize the network topology of network devices.

[0010] In an embodiment of the present disclosure, the encoding and sorting of the basic topology database, the construction of the target topology database, comprises:

[0011] Extracting the target key field from the basic topology database;

[0012] Encoding the target key field to generate a node encoding value of the node where the target key field is located;

[0013] Based on the node encoding value and the basic topology database, an intermediate topology set is generated through a bubble sorting mechanism;

[0014] Based on the intermediate topology set, the node encoding value is decoded to generate the target topology database.

[0015] In an embodiment of the present disclosure, the encoding of the target key field to generate a node encoding value of the node where the target key field is located, comprises:

[0016] Converting the target key field into a first key field of a first preset base;

[0017] Based on the first key field, concatenating according to the reverse byte order to form a first identification value;

[0018] Converting the first identification value into a second identification value of a second preset base, and taking the second identification value as the node encoding value, the second preset base being different from the first preset base.

[0019] In an embodiment of the present disclosure, based on the node encoding value and the basic topology database, an intermediate topology set is generated through a bubble sorting mechanism, comprising:

[0020] Based on the link state and the vector state of each node recorded in the basic topology database, the target key field is extracted as an element through primary key decomposition to generate a topology node set;

[0021] Iterating the topology node set, taking the node corresponding to the element with the most iteration times in the topology node set as a root node, determining the subordinate nodes of the root node according to the direction dimension of the adjacent nodes, determining the same level nodes of the subordinate nodes according to the distance dimension of the adjacent nodes, associating the nodes and the node encoding values corresponding to the elements of the topology node set, and saving to the intermediate topology set.

[0022] In an embodiment of the present disclosure, based on the intermediate topology set, the node encoding value is decoded to generate the target topology database, comprising:

[0023] Using a preset decoding rule to decode the node encoding value to obtain a second target key field;

[0024] Based on the intermediate topology set, it is checked whether the target key field and the second target key field are consistent. If consistent, the second target key field is saved to the target topology database.

[0025] In an embodiment of the present disclosure, the routing information of the network device is acquired and recorded in the basic topology database, including:

[0026] The target field of the routing information is saved as a local routing file by timing capture with a preset time length as a collection cycle. The routing information at least includes any one of link state, vector state, and routing table.

[0027] The content of the local routing file and / or the routing log file is read and recorded in the basic topology database.

[0028] The second aspect embodiment of the present disclosure provides a network topology visualization device, which comprises:

[0029] The acquisition module is configured to acquire the routing information of the network device and record the routing information in the basic topology database.

[0030] The construction module is configured to, in response to a change in the routing information, perform coding and sorting on the basic topology database to construct the target topology database.

[0031] The visualization module is configured to render and visualize the network topology structure of the network device based on the target topology database.

[0032] The third aspect embodiment of the present disclosure provides an electronic device, which comprises at least one processor and a memory connected with the at least one processor in communication. The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method of any one of the first aspect embodiments of the present disclosure.

[0033] The fourth aspect embodiment of the present disclosure provides a non-transitory computer readable storage medium storing computer instructions, and the computer instructions are used to enable a computer to perform the method of the first aspect embodiment of the present disclosure.

[0034] The fifth aspect embodiment of the present disclosure provides a computer program product, which comprises a computer program. When the computer program is executed by a processor, the method of any one of the first aspect embodiments of the present disclosure is implemented.

[0035] The sixth aspect embodiment of the present disclosure provides a chip, which comprises at least one processor and a communication interface. The communication interface is used to receive a signal input into the chip or output from the chip. The processor communicates with the communication interface and implements the method of any one of the first aspect embodiments of the present disclosure through a logic circuit or an execution code instruction.

[0036] In summary, according to the network topology visualization method proposed in the present disclosure, the routing information of network devices is acquired and recorded in the basic topology database, which breaks the protocol barrier between different routing protocols and provides original data for constructing network topology; in response to changes in routing information, the basic topology database is encoded and sorted to construct a target topology database, which obtains a database that can be used to display a complete network topology structure; based on the target topology database, the network topology structure of network devices is rendered and visualized, and the visualization of the complete network topology structure is realized.

[0037] It should be understood that the foregoing general description and the following detailed description are only exemplary and explanatory, and cannot limit the present disclosure. BRIEF DESCRIPTION OF DRAWINGS

[0038] The accompanying drawings incorporated in the specification and constituting a part of it illustrate embodiments consistent with the present disclosure and, together with the specification, serve to explain the principles of the present disclosure, and do not constitute an undue limitation on the present disclosure.

[0039] Figure 1 A flowchart of a network topology visualization method according to an embodiment of the present disclosure;

[0040] Figure 2 A flowchart of encoding and sorting a basic topology database to construct a target topology database according to an embodiment of the present disclosure;

[0041] Figure 3 A schematic diagram of the principle of an x-neighbors algorithm according to an embodiment of the present disclosure;

[0042] Figure 4 A flowchart of encoding a target key field to generate a node encoding value of a node where the target key field is located according to an embodiment of the present disclosure;

[0043] Figure 5 A flowchart of generating an intermediate topology set based on a node encoding value and a basic topology database through a bubble sort mechanism according to an embodiment of the present disclosure;

[0044] Figure 6 A flowchart of decoding a node encoding value to generate a target topology database based on an intermediate topology set according to an embodiment of the present disclosure;

[0045] Figure 7 A flowchart of acquiring routing information of network devices and recording in a basic topology database according to an embodiment of the present disclosure;

[0046] Figure 8 A flowchart of using an x-neighbors algorithm to form a complete topology according to an embodiment of the present disclosure;

[0047] Figure 9 A schematic diagram of an x-neighbors algorithm principle according to an embodiment of the present disclosure;

[0048] Figure 10 A structural schematic diagram of a network topology visualization device according to an embodiment of the present disclosure;

[0049] Figure 11 A block diagram of an electronic device for implementing a network topology visualization method according to an embodiment of the present disclosure;

[0050] Figure 12 A structural schematic diagram of a chip according to an embodiment of the present disclosure. DETAILED DESCRIPTION

[0051] Embodiments of the present disclosure are described in detail below with reference to the accompanying drawings. Examples of the embodiments are shown in the drawings, in which the same or similar notations identify the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the drawings are exemplary and are intended to explain the present disclosure, and are not to be understood as limiting the present disclosure.

[0052] In existing networks, for the construction of a relatively large park network, multiple routing protocols are often used to cooperate with each other. The formation of the network topology often depends on the database of the routing protocol itself to form a link state database or a routing table of the routing protocol, and finally to form a network device topology running the same routing protocol. There is actually a protocol barrier between different routing protocols, and the topology of the park network cannot be completely presented.

[0053] For the formation of a complete topology of a park network, manufacturers on the market have not formed a unified topology through the state machine of the routing protocol and the link database. Only traditional methods are used to obtain topology information, and statistics show that the following methods are mainly used:

[0054] Cisco Discovery Protocol (CDP) refers to a private Layer 2 network protocol proposed by Cisco, which can run on most Cisco devices. Through the running of the CDP protocol, Cisco devices can share information such as operating system software version, IP address, hardware platform, etc. between devices directly connected to them.

[0055] Link Layer Discovery Protocol (LLDP) refers to a link layer discovery protocol. Network devices can announce their own states to other devices in a local network by sending LLDPDUs (Link Layer Discovery Protocol Data Units). It is a protocol that enables devices in a network to discover each other and announce states and interact information.

[0056] Through the Internet Control Message Protocol (ICMP), commonly known as PING, and the Address Resolution Protocol (ARP), the request is initiated through ICMP, and the physical address is obtained according to the IP address. When a TCP / IP host sends ICMP, it will broadcast an ARP request containing the target IP address to all hosts on the local area network, and receive the return message to determine the physical address of the target. After receiving the return message, the IP address and physical address are stored in the local ARP cache and retained for a certain period of time. The next time the request is queried directly from the ARP cache.

[0057] The above-mentioned several traditional topology discovery methods can only discover the next hop or directly connected neighbor node. Once there are security devices such as firewalls, IPS, IDS, etc. in the network or the devices do not enable the discovery protocol, the protocol is private to the manufacturer, or ICMP is refused, these traditional discovery methods will fail and cannot form a complete network topology structure.

[0058] To solve the above problems, the present disclosure provides a network topology visualization method. The method forms a basic data table based on route table items and link state table items, forms topology information data based on adjacent nodes through an algorithm called x-neighbors, and performs unified calculation of key information on relatively separated traditional topology discovery methods. The x-neighbors algorithm overcomes the shortcomings of traditional methods that cannot continuously process topology information in separate domains, effectively completes topology information calculation in non-continuous network structures, and achieves the purpose of graphical display of topology information through numerical shape conversion with the help of a graphics engine.

[0059] The method proposed in the present disclosure is applied to network topology visualization tasks, and has rich application scenarios, especially in network management and monitoring, network security analysis, data center management, etc. The method forms topology information data based on a basic data table of route table items and link state table items, and uses the x-neighbors algorithm to overcome the limitations of traditional network topology discovery methods, and realizes effective topology information calculation and graphical display in non-continuous network structures.

[0060] The following are possible application fields of the present disclosure,

[0061] In the field of network management and monitoring, for real-time topology monitoring scenarios, network administrators can use this technology to monitor the status and connection relationship of network devices in real time, and timely discover and handle network faults. In the network optimization planning scenario, through the analysis of network topology, the administrator can optimize the network structure design and improve the performance and efficiency of the network. In the automation management scenario, this technology can realize the automation of network management, reduce manual intervention, and improve the efficiency and accuracy of network management.

[0062] In the field of network security analysis, in the security threat identification scenario, through the visualized network topology structure, security analysts can more easily identify potential security threats and abnormal connections. In the firewall and intrusion detection system configuration management scenario, this technology can help administrators better understand and manage the configuration and policy of security devices such as firewalls and intrusion detection systems. In the field of data center management, in the data center layout optimization scenario, the network topology of the data center can be optimized using this technology to improve the operation efficiency and reliability of the data center. In the server and storage management scenario, through the accurate network topology graph, data center administrators can more effectively manage the layout and connection of servers and storage devices.

[0063] In the field of enterprise network planning, for enterprise network design scenarios, enterprises can use this technology to plan and design the network architecture of the enterprise to ensure the stability and scalability of the network. In the branch network management scenario, for enterprises with multiple branch offices, this technology can help the headquarters effectively manage and monitor the network status of each branch office.

[0064] In the field of service provider network management, for service network optimization scenarios, Internet service providers can use this technology to optimize their service networks and improve service quality and customer satisfaction. In the fault detection and recovery scenario, this technology can help Internet service providers quickly locate network faults and take measures to restore services, reducing service interruption time.

[0065] In the field of cloud computing and virtualization environment, for cloud resource management scenarios, cloud service providers can use this technology to manage and optimize the allocation and network connection of cloud resources. In the virtualization environment, this technology can provide accurate virtual network topology graphs to help administrators understand and manage complex virtual network structures.

[0066] In the field of Internet of Things (IoT) deployment, for IoT device management scenarios, as the popularity of IoT devices, the technology can help administrators monitor and manage a large number of IoT devices and their network connections. In the construction of smart cities, the technology can be used to plan and manage the network connections of various smart devices and services.

[0067] In the field of research and education, as a network research tool, researchers can use the technology to conduct network topology-related research and promote the development of network technology. It can also be used as a teaching aid in computer network and information security education. The technology can be used as a teaching tool to help students better understand the concept and importance of network topology. In general, the network topology visualization method provided by the present disclosure has wide application prospects and can play an important role in multiple fields. The application scenarios in the embodiments of the present disclosure are not limited.

[0068] The network topology visualization method provided by the present disclosure will be described in detail below in conjunction with the accompanying drawings.

[0069] Figure 1 A flowchart of a network topology visualization method according to an embodiment of the present disclosure. As shown in the embodiment shown in the figure, the network topology visualization method includes: Figure 1

[0070] Step 101, obtaining routing information of network devices and recording in a basic topology database.

[0071] In this embodiment, the routing information refers to the information contained in the path between the network devices that can normally communicate, including common routing protocols, or link state and distance vector based on routing. The basic topology database refers to the database formed by storing the topology of the basic routing information. Whether it is a link state router or a distance vector router will generate a data about routing information under the protocol standard it follows. According to the routing information data, a preliminary basic topology information is generated and saved in the database to form a basic topology database.

[0072] Step 102, in response to changes in routing information, encoding and sorting the basic topology database to build a target topology database.

[0073] ​In this embodiment, the target topology database refers to a database for rendering a complete network topology. When the routing information changes due to the movement or change of network devices, the topology information recorded in the basic topology database is encoded, sorted, decoded, and the like, and is constructed as complete network topology information of the network device, and is saved in the target topology database. By encoding and sorting the basic topology database, the processing procedure for constructing the target topology database can be represented as an x-neighbors algorithm, which is a general representation context.

[0074] For example, when a user runs in an area where a public wireless network is deployed, such as a park, and gradually moves away from a previously connected wireless network router and approaches another wireless network router, the network link will be switched and the routing information will be changed. At this time, the process needs to be recorded completely to construct a complete network topology, rather than only two nodes, i.e., at least three nodes are formed by the wireless network router and the user's mobile phone, rather than the two nodes determined by the traditional method.

[0075] In step 103, the network topology of the network device is rendered and visualized based on the target topology database.

[0076] In this embodiment, after obtaining the target topology database that saves the network topology information of the network device, the network topology information is rendered by a graphics engine, and is drawn as a visual graph or image for static or dynamic display. Optionally, a two-dimensional topology graph is drawn, or a three-dimensional topology graph is generated, and the network topology structure is displayed by using nodes and connecting lines between the nodes. Optionally, the display method can be completed by using a display, an augmented reality (AR) device, a virtual reality (VR) device, a head-mounted device, or the like.

[0077] In summary, according to the network topology visualization method provided in the present disclosure, the routing information of the network device is obtained and recorded in the basic topology database, which breaks the protocol barrier between different routing protocols and provides original data for constructing the network topology. In response to the change of the routing information, the basic topology database is encoded and sorted to construct the target topology database, and a database that can be used to display a complete network topology structure is obtained. Based on the target topology database, the network topology of the network device is rendered and visualized, and the visualization of the complete network topology structure is realized.

[0078] Figure 2 A flowchart for encoding and sorting the basic topology database to construct the target topology database is provided in an embodiment of the present disclosure. Figure 2 is a further description of step 102 of Figure 1 based onFigure 2 The embodiment shown includes the following steps:

[0079] Step 201, extracting target key fields from the basic topology database.

[0080] In this embodiment, the target key field refers to the main field for constructing network topology information, including route number, network cell number, network protocol type, network number, route sequence, network connection duration, next hop, etc., preferably, refers to the Internet Protocol (IP) address. Extracting the target key field from the basic topology database provides raw data for the establishment of network topology.

[0081] Step 202, encoding the target key field to generate the node encoding value of the node where the target key field is located.

[0082] In this embodiment, the node encoding value refers to the encoding value of the node in the route information. Encoding the target key field generates the node encoding value of the node recording the target key field.

[0083] Step 203, generating an intermediate topology set based on the node encoding value and the basic topology database through the bubble sort mechanism.

[0084] In this embodiment, the intermediate topology set refers to the set formed by the nodes after the network topology structure is sorted. The intermediate topology set is generated based on the node encoding value and the basic topology database through the bubble sort mechanism.

[0085] Step 204, decoding the node encoding value based on the intermediate topology set to generate the target topology database.

[0086] In this embodiment, according to the node data provided by the intermediate topology set, the node encoding value corresponding to the node data is decoded and saved to the target topology database.

[0087] In one embodiment of the present embodiment,

[0088] Figure 3 This is a schematic diagram of the principle of an x-neighbors algorithm of the present embodiment. As shown, Figure 3 The x-neighbors algorithm includes three modules, encoding, sorting and decoding. In the encoding module, the route information is converted and combined in reverse. In the sorting module, the route nodes are sorted through the bubble sort mechanism to construct the topology structure relationship between the nodes. In the decoding module, the encoded route information is converted and combined in reverse. The result obtained by decoding can be used to verify the encoding result.

[0089] In the embodiment, the basic topology database is encoded and sorted, the target topology database is constructed, the routing information through the network is iteratively processed through the bubble sorting mechanism, the node information with the topology structure is obtained and saved in the target topology database. The topology structure can be used to show the complete network topology database.

[0090] Figure 4 The flowchart of encoding the target key field and generating the node encoding value of the node where the target key field is located is one of the embodiments of the present disclosure. Figure 4 The step 202 of Figure 2 is further illustrated, based on the embodiment shown in Figure 4 , including the following steps:

[0091] In step 401, the target key field is converted into a first key field of a first preset radix.

[0092] In the embodiment, the first preset radix refers to a preset number system basis, for example, hexadecimal, decimal, octal, binary, etc. Preferably, the first preset radix is hexadecimal. The first key field refers to the field corresponding to the target key field in the first preset radix, which is used to encode the target key field.

[0093] In step 402, based on the first key field, concatenation is performed according to the reverse byte order to form a first identification value.

[0094] In the embodiment, the first identification value refers to the field formed by combining the bytes of the first key field according to the reverse byte order, which is used to encode the target key. Based on the first key field, concatenation is performed according to the reverse byte order to form a first identification value. The first identification value is a value in the first preset radix.

[0095] In step 403, the first identification value is converted into a second identification value of a second preset radix, and the second identification value is used as a node encoding value. The second preset radix is different from the first preset radix.

[0096] In the embodiment, the second preset radix refers to a preset number system basis. The second preset radix is different from the first preset radix. Preferably, the second identification value is a decimal number. The first identification value of the first preset radix is converted into a second identification value of the second preset radix, and the second identification value is used as a node encoding value. Thus, the encoding of the target key field is completed.

[0097] In one example of the embodiment, each octet value is converted to its equivalent 1 byte hexadecimal value. The order of the hexadecimal bytes is reversed and concatenated to form a 4 byte hexadecimal value. The resulting 4 byte hexadecimal value is converted to its decimal equivalent. For example, if the destination network segment next hop IP address is 10.1.1.100, the address will be encoded as follows by the x-neighbors algorithm:

[0098] 10.1.1.100 = 0x0A.0x01.0x01.0x64;

[0099] 0x0A.0x01.0x01.0x64 is combined according to the reversed byte order to get 0x6401010A;

[0100] The hexadecimal 0x6401010A is equal to the decimal 1677787402. Then, 1677787402 can be used as the node encoding value for the IP (10.1.1.100).

[0101] Figure 5 A flow chart for generating an intermediate topology set based on the node encoding value and the base topology database according to an embodiment of the disclosure is shown. Figure 5 is a detailed description of step 203 of Figure 2 based on the embodiment shown in Figure 5 includes the following steps:

[0102] Step 501, based on the link state and vector state of each node recorded in the base topology database, the target key field is extracted as an element by primary key decomposition, and a topology node set is generated.

[0103] In the embodiment, the link state of a node refers to the state data in the link where the node is located. The vector state of a node refers to the vector formed between different nodes, which is used to represent the direction of the node derivation, such as deriving a subordinate A child node, or deriving a subordinate B child node. The topology node set refers to a set of nodes that save the link state of the node and the vector direction of the node. Based on the link state and vector state of each node recorded in the base topology database, the nodes that meet the link state and vector state requirements at the same time are added to the topology node set as the target key field.

[0104] Step 502, traversing the topology node set, the node corresponding to the element with the most iteration times in the topology node set is taken as the root node, and the adjacent nodes of each node in the topology node set are determined by the nearest neighbor algorithm.

[0105] In this embodiment, the root node refers to the starting point of deriving the network topology structure. The element corresponding to the node with the most iteration times in the topology node set is taken as the root node, and the starting node of the network topology structure can be obtained. The nearest neighbor algorithm is used to find the adjacent nodes of each node in the topology node set.

[0106] In step 503, the next-level node of the root node is determined according to the direction of the root node and the adjacent node of the root node, the same-level node of the next-level node is determined according to the distance of the root node and the adjacent node of the root node, the node corresponding to the element of the topology node set and the node coding value are associated, and saved to the intermediate topology set.

[0107] In this embodiment, the next-level node refers to the next node derived by the current node when traversing to a certain node. The same-level node refers to the node with the same distance from the upper node of the current node when traversing to a certain node. The next-level node of the root node is determined according to the direction of the root node and the adjacent node of the root node, for example, the root node can generate multiple next-level nodes branching in multiple directions. The same-level node of the next-level node can be determined according to the distance of the root node and the adjacent node of the root node, for example, there are multiple next-level nodes with the same distance value from the adjacent upper node, and the multiple next-level nodes are same-level nodes, wherein the upper node is closer to the root node than the next-level node.

[0108] In one embodiment of this embodiment, after generating the intermediate topology set based on the node coding value and the basic topology database through the bubble sorting mechanism, whether it is a static routing topology or a dynamic link state topology node, a corresponding coding calculated decimal number is generated, so as to obtain a node set A={x:P(x)}, P(x) is the node where the target key field is located, and x is the node coding value. Taking x as the key in the dictionary data type and P(x) as the value of the dictionary data type, x:P(x) forms a key-value pair. Wherein, 1024<A<2194711>511040. Finally, the elements in the set A are calculated by bubble sorting, and thus an ordered topology set of unique nodes is generated, which has complete topology information.

[0109] Figure 6 The flowchart of decoding the node coding value based on the intermediate topology set to generate the target topology database for the embodiment of the present disclosure. Figure 6 is a specific description of step 204 of Figure 2 based on the embodiment shown in Figure 6 includes the following steps:

[0110] In step 601, the node coding value is decoded to obtain the second target key field by using a preset decoding rule.

[0111] In this embodiment, the preset decoding rule refers to a pre-set formula used for decoding the node encoding value. Optionally, the preset decoding rule is the inverse process of encoding, which first performs the conversion of the radix, and then performs the reverse combination, so as to restore the target key field and obtain the second target key field. The second target key field refers to the result after decoding the node encoding value. According to the preset decoding rule, the node encoding value is decoded to obtain the second target key field. For the conversion of the radix in the decoding, the following method can be used for representation: for example, for the address (a.b.c.d), the conversion of the radix in the preset decoding rule is as follows: a+b*256+c*(256 2)+d*(256 3). For example, if the IP address of the target server is 10.1.1.100, the encoded address is derived as follows: a=10; b=1; c=1; d=100. That is, 10+1*256+1*(256 2)+100*(256 3)=1677787402.

[0112] In step 602, based on the intermediate topology set, it is checked whether the target key field and the second target key field are consistent. If consistent, the second target key field is saved to the target topology database.

[0113] In this embodiment, based on the intermediate topology set, it is checked whether the target key field and the second target key field are equal. If equal, it is indicated that the x-neighbors algorithm is correctly corresponding to the encoding and decoding of the target key field, and then the second target key field is saved to the target topology database. The final topology information is provided for rendering the network topology structure and visualization.

[0114] Figure 7 A flowchart of an embodiment of the present disclosure for acquiring the routing information of the network device and recording in the basic topology database. Figure 7 is a specific description of step 101 of Figure 1 , based on the embodiment shown in Figure 7 , comprising the following steps:

[0115] In step 701, a preset time length is taken as a collection period, and the target field of the routing information is saved as a local routing file by timing capture. The routing information at least includes any one of the link state, the vector state, and the routing table.

[0116] In the embodiment, the collection period refers to a period of collecting routing information from different networks. The target field refers to a preset field for representing link state data and routing data of a route. The local routing file refers to a file stored in a computer for saving routing states. The routing table refers to a database file recording network paths. The target field of the routing information is captured at a preset time length as the collection period, and is saved locally as the local routing file, wherein the routing information at least includes any one of link information, vector state, and a routing table.

[0117] In step 702, the content of the local routing file and / or the routing log file is read and recorded into the basic topology database.

[0118] In the embodiment, the content of the local routing file and / or the routing log file recorded in the computer network system is read and recorded into the basic topology database.

[0119] In an example of the embodiment, taking the two most commonly used routing protocols ospf and BGP as examples, the data table item (1 to n table items) key formula is as follows:

[0120] OSPF1 = CONCAT [ABS (route-id1), ABS (area-id), ABS (type), ABS (network-id1) ABS (advrouter), ABS (age), ABS (sequence), ABS (metric)];

[0121] OSPF2 = CONCAT [ABS (route-id2), ABS (area-id), ABS (type), ABS (network-id2) ABS (advrouter), ABS (age), ABS (sequence), ABS (metric)]

[0122] ... OSPFn

[0123] Bgp1 = CONCAT [ABS (route-id1), ABS (network-id1), ABS (nexthop), ABS (type), ABS (med), ABS (locprf), ABS (prefval), ABS (path / ogn)];

[0124] Bgp2 = CONCAT [ABS (route-id2), ABS (network-id2), ABS (nexthop), ABS (type), ABS (med), ABS (locprf), ABS (prefval), ABS (path / ogn) ]

[0125] ... BGPn

[0126] In this embodiment, the route information is captured and saved locally at a certain time, avoiding the barriers formed between different network protocols from causing obstacles to obtaining the basic topology data. Thus, a larger range of network structures can be discovered.

[0127] Figure 8 A flowchart of forming a complete topology using the x-neighbors algorithm according to an embodiment of the present disclosure. Figure 8 In this embodiment, the x-neighbors modeling component refers to a component that captures network topology information. For example, when a route update occurs, if there is a topology change, the modeling component will reconstruct the non-link state route information, convert it into dynamic link state route information, and add it to the basic topology information database. For example, the modeling conversion process can be completed as follows:

[0128] #! / bin / bash

[0129] folder = / etc / route_table

[0130] # get the past time value

[0131] date1 = `date --date='1hour ago'+%Y%m%d%H`

[0132] cat "$folder""$date1" | cut -d'"'-f 19,20,21,31,32,33,34,35,36,37,41,42,43,61,62,63,64 | cut -d'-'f 2,4,5,6,8,10 > route_table.txt

[0133] cd $folder

[0134] . / script.exp.

[0135] The code uses the `cat` command to read the contents of the `$folder` and `$date1` files, then uses the `cut` command to extract specific fields (columns 19, 20, 21, 31, 32, 33, 34, 35, 36, 37, 41, 42, 43, 61, 62, 63, and 64). Another `cut` command is then used to extract the 2nd, 4th, 5th, 6th, 8th, and 10th fields from these columns, and the results are output to the `route_table.txt` file, confirming that the target key fields have been extracted.

[0136] The X-neighbors algorithm in this diagram is an algorithm based on encoding and sorting technology. It extracts the required key field parameter values ​​from the basic topology information database, and generates a unique node value originating from the current node by encoding the extracted keywords. After multiple rounds of sorting calculations, a unified topology database is finally generated.

[0137] Figure 9 This is a schematic diagram illustrating the principle of an x-neighbors algorithm according to an embodiment of this disclosure. Figure 9 As shown, combined with Figure 8 The principle of the x-neighbors algorithm is implemented. First, basic topological information is identified, modeled, and generated. Second, the x-neighbors algorithm is introduced to complete the reconstruction calculation of the basic topological information. Finally, the topological data is transformed into a graphical representation.

[0138] Identifying, modeling, and generating basic topology information: For a network to communicate properly, there must be a path to its destination; this path is called a route. Common routing protocols are either link-state based or distance-vector based. Whether a router operates on link-state or distance-vector, it will generate routing information data according to the protocol standards it follows. Identification and modeling involves generating preliminary basic topology information based on this routing information data. This modeling component is a programming language program that uses an SSH login tool to periodically retrieve entries from network device routing tables, LSDBs (Link-State Databases), etc., and uses SQL statements to generate the basic routing information data (DB).

[0139] CREATE DATABASEroute_Db;

[0140] USEroute_Db;

[0141] CREATE TABLEroute_Db<

[0142] LOAD DATA LOCAL,INFILE"route_table.txt"INTO TABLEroute_Db;

[0143] As shown in the above code, after the route database is created, the data in the local file route_table.txt is loaded into the route_Db route database. The basic topology information is obtained from different network protocols, providing a data source for obtaining complete network topology information.

[0144] Corresponding to the method provided by the above several embodiments, the disclosure also provides a network topology visualization device. Since the device provided by the embodiments of the disclosure corresponds to the method provided by the above several embodiments, the implementation of the method is also applicable to the device provided by the embodiments. In this embodiment, it will not be described in detail.

[0145] Figure 10 A structural schematic diagram of a network topology visualization device 1000 according to an embodiment of the disclosure. As shown in the figure, the network topology visualization device includes: Figure 10 An acquisition module 1010, configured to acquire route information of a network device and record in a basic topology database;

[0146] A construction module 1020, configured to respond to a change in the route information, encode and sort the basic topology database, and construct a target topology database;

[0147] A visualization module 1030, configured to render and visualize the network topology structure of the network device based on the target topology database.

[0148] In some embodiments, the construction module 1020 is configured to:

[0149] extract a target key field from the basic topology database;

[0150] encode the target key field to generate a node encoding value of a node where the target key field is located;

[0151] generate an intermediate topology set based on the node encoding value and the basic topology database through a bubble sort mechanism;

[0152] decode the node encoding value based on the intermediate topology set to generate the target topology database.

[0153] In some embodiments, the construction module 1020 encodes the target key field in the following manner to generate the node encoding value of the node where the target key field is located:

[0154] convert the target key field into a first key field of a first preset base;

[0155] concatenate the first key field according to a reverse byte order to form a first identification value;

[0156]

[0157] ​The first identification value is converted into a second identification value of a second preset base different from the first preset base, and the second identification value is taken as the node encoding value.

[0158] In some embodiments, the construction module 1020 generates the intermediate topology set based on the node encoding value and the base topology database by a bubble sort mechanism in the following manner:

[0159] Based on the link state and vector state of each node recorded in the base topology database, the target key field is extracted as an element by primary key decomposition, and the topology node set is generated;

[0160] The topology node set is traversed, the node corresponding to the element with the most iteration times in the topology node set is taken as the root node, and the adjacent nodes of each node in the topology node set are determined by a nearest neighbor algorithm;

[0161] The subordinate nodes of the root node are determined according to the direction of the root node and the adjacent nodes of the root node, the same-level nodes of the subordinate nodes are determined according to the distance of the root node and the adjacent nodes of the root node, the nodes corresponding to the elements of the topology node set and the node encoding values are associated, and saved to the intermediate topology set.

[0162] In some embodiments, the construction module 1020 decodes the node encoding value based on the intermediate topology set to generate the target topology database in the following manner:

[0163] The node encoding value is decoded to obtain a second target key field by using a preset decoding rule;

[0164] Based on the intermediate topology set, it is checked whether the target key field and the second target key field are consistent, and if so, the second target key field is saved to the target topology database.

[0165] In some embodiments, the acquisition module 1010 is configured to:

[0166] The target field of the routing information is saved as a local routing file by regularly capturing the routing information with a preset time length as a collection period, and the routing information at least includes any one of a link state, a vector state, and a routing table;

[0167] The content of the local routing file and / or the routing log file is read and recorded in the base topology database.

[0168] In summary, the network topology visualization device acquires the routing information of the network device and records it in the base topology database; in response to a change in the routing information, the base topology database is encoded and sorted to construct the target topology database.

[0169] Based on the target topology database, the network topology structure of the network device is rendered and visualized. The device solves the problem that related technologies cannot display the complete network topology structure for dynamic links, and realizes the visualization of the complete network topology structure.

[0170] In the embodiments of the present disclosure, the method and device provided by the embodiments of the present disclosure are introduced. In order to realize the functions of the method provided by the embodiments of the present disclosure, the electronic device can include a hardware structure, a software module, and the functions are realized in the form of hardware structure, software module, or hardware structure plus software module. Some of the above functions can be executed in the form of hardware structure, software module, or hardware structure plus software module.

[0171] Figure 11 is a block diagram of an electronic device 1100 for implementing the network topology visualization method according to an exemplary embodiment.

[0172] For example, the electronic device 1100 can be a mobile phone, a computer, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, etc.

[0173] Referring to Figure 11 , the electronic device 1100 can include one or more of the following components: a processing component 1102, a memory 1104, a power supply component 1106, a multimedia component 1108, an audio component 1110, an input / output (I / O) interface 1112, a sensor component 1114, and a communication component 1116.

[0174] The processing component 1102 generally controls the overall operation of the electronic device 1100, such as operations associated with displaying, making phone calls, data communications, camera operations, and recording operations. The processing component 1102 can include one or more processors 1120 to execute instructions to complete all or part of the steps of the above methods. In addition, the processing component 1102 can include one or more modules to facilitate interaction between the processing component 1102 and other components. For example, the processing component 1102 can include a multimedia module to facilitate interaction between the multimedia component 1108 and the processing component 1102.

[0175] The memory 1104 is configured to store various types of data to support the operation of the electronic device 1100. Examples of such data include instructions for any application or method operating on the electronic device 1100, contact data, phonebook data, messages, pictures, videos, and the like. The memory 1104 can be implemented by any type of volatile or nonvolatile memory, or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disc, or optical disc.

[0176] The power component 1106 supplies power for various components of the electronic device 1100. The power component 1106 can include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the electronic device 1100.

[0177] The multimedia component 1108 includes a screen providing an output interface between the electronic device 1100 and a user. In some embodiments, the screen can include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes the touch panel, the screen can be implemented as a touch screen to receive an input signal from a user. The touch panel includes one or more touch sensors to sense a touch, a slide, and a gesture on the touch panel. The touch sensor can not only sense a boundary of a touching or a sliding action, but also detect duration and pressure related to the touching or sliding action. In some embodiments, the multimedia component 1108 includes a front camera and / or a rear camera. The front camera and / or the rear camera can receive external multimedia data when the electronic device 1100 is in an operation mode, such as a photographing mode or a video mode. Each of the front camera and the rear camera can be a fixed optical lens system or have a focal length and optical zoom capability.

[0178] The audio component 1110 is configured to output and / or input an audio signal. For example, the audio component 1110 includes a microphone (MIC) configured to receive an external audio signal when the electronic device 1100 is in an operation mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signal can be further stored in the memory 1104 or transmitted via the communication component 1116. In some embodiments, the audio component 1110 also includes a speaker for outputting an audio signal.

[0179] The I / O interface 1112 provides an interface between the processing component 1102 and peripheral interface modules, which can be a keypad, a click wheel, buttons, and the like. The buttons can include, but are not limited to, a home button, a volume button, a start button, and a lock button.

[0180] The sensor component 1114 includes one or more sensors for providing various state assessments for the electronic device 1100. For example, the sensor component 1114 can detect an open / closed state of the electronic device 1100, relative positioning of components, such as a display and a keypad of the electronic device 1100, a change in position of the electronic device 1100 or a component of the electronic device 1100, presence or absence of user contact with the electronic device 1100, orientation or acceleration / deceleration / g-force and a temperature change of the electronic device 1100. The sensor component 1114 can include a proximity sensor configured to detect presence of a nearby object without any physical touch. The sensor component 1114 can further include a light sensor such as a CMOS or CCD image sensor for use in an imaging application. In some embodiments, the sensor component 1114 can further include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.

[0181] The communication component 1116 is configured to facilitate wired or wireless communication between the electronic device 1100 and another device. The electronic device 1100 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, 4G LTE, 5G NR (New Radio), or a combination thereof. In an example embodiment, the communication component 1116 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In an example embodiment, the communication component 1116 further includes a Near Field Communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on Radio Frequency Identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technology.

[0182] In an example embodiment, the electronic device 1100 can be implemented with one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, micro-controllers, microprocessors, or other electronic elements to perform the above-described methods.

[0183] In an example embodiment, a non-transitory computer-readable storage medium including instructions, such as the memory 1104 including instructions, is also provided, which can be executed by the processor 1120 of the electronic device 1100 to complete the above-described methods. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disc, and an optical data storage device, etc.

[0184] Embodiments of the present disclosure further provide a non-transitory computer readable storage medium storing computer instructions, wherein the computer instructions are used to cause a computer to execute the network topology visualization method described in the above embodiments of the present disclosure.

[0185] Embodiments of the present disclosure further provide a computer program product comprising a computer program, wherein the computer program is used to cause a processor to execute the network topology visualization method described in the above embodiments of the present disclosure.

[0186] Figure 12 FIG. 12 is a structural schematic diagram of a chip 1200 for implementing the network topology visualization method described above according to an exemplary embodiment.

[0187] Referring to Figure 12 The chip 1200 comprises at least one communication interface 1201 and a processor 1202; the communication interface 1201 is used to receive a signal input into the chip 1200 or output a signal from the chip 1200, and the processor 1202 communicates with the communication interface 1201 and implements the network topology visualization method described in the above embodiments through logic circuit or execution of code instructions.

[0188] It should be noted that the terms "first", "second", and the like in the description, claims, and above drawings of the present disclosure are used to distinguish similar objects, and do not necessarily indicate a specific order or sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments of the present disclosure described herein can be implemented in an order other than that illustrated or described herein. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the present disclosure as detailed in the appended claims.

[0189] In the description of the present disclosure, the description referring to the terms "one embodiment", "some embodiments", "exemplary embodiment", "example", "specific example", or "some examples" means that the specific features, structures, materials, or characteristics described in connection with the embodiment or example are included in at least one embodiment or example of the present disclosure. In the present specification, the exemplary description of the above terms does not necessarily mean the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described can be combined in any one or more embodiments or examples in a suitable manner.

[0190] Any processes or methods described in the flowcharts or otherwise described herein can be understood as representing code modules, segments, or portions of code which include one or more executable instructions for implementing specific logic functions (or steps) of the processes. The various embodiments of the present disclosure can include additional or fewer steps or processes, and the order of the steps or processes can be altered, as will be appreciated by those skilled in the art, as the described embodiments of the present disclosure can be implemented in a variety of ways.

[0191] The logic and / or steps represented in the flowcharts or otherwise described herein, for example, can be embodied in non-transitory computer-readable media, which can be executed by a processing module, or other device, to perform the functions or steps represented therein. The logic and / or steps represented in the flowcharts or otherwise described herein, for example, can be considered as a list of instructions to implement the logic functions represented therein, and the scope of the present disclosure encompasses additional implementations in which the functions are performed in a different order, or in substantially simultaneous fashion, or in reverse order, as will be appreciated by those skilled in the art, as the described embodiments of the present disclosure can be implemented in a variety of ways.

[0192] It is to be understood that the various parts of the embodiments of the present disclosure can be implemented in hardware, software, firmware or a combination thereof. In the above embodiments, the various steps or methods can be implemented in software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented in hardware, and in another embodiment, the hardware can be implemented with any or a combination of the following technologies, which are all well known in the art: a discrete logic circuit having logic gates for implementing logic functions upon an application of data signals; an application specific integrated circuit having appropriate combinational logic gates; a programmable gate array (PGA), a field programmable gate array (FPGA), etc.

[0193] Those skilled in the art of the present technology can understand that all or part of the steps carried out by the above-mentioned embodiment method can be completed by a program instructing the relevant hardware, and the program can be stored in a computer readable storage medium. When the program is executed, it includes one of the steps of the method embodiment or a combination thereof.

[0194] In addition, each functional unit in various embodiments of the present disclosure can be integrated into one processing module, or each unit can exist physically independently, or two or more units can be integrated into one module. The integrated module can be realized in the form of hardware or in the form of a software functional module. If the integrated module is realized in the form of a software functional module and sold or used as an independent product, it can also be stored in a computer readable storage medium. The storage medium mentioned above can be a read-only memory, a magnetic disk or an optical disk, etc.

[0195] Although the embodiments of the present disclosure have been shown and described above, it should be understood that the above-mentioned embodiments are exemplary and should not be construed as limiting the present disclosure, and those skilled in the art can make changes, modifications, replacements and variations to the above-mentioned embodiments within the scope of the present disclosure.

Claims

1. A method for network topology visualization, characterized in that, The method comprises: obtaining routing information of network devices and recording in a basic topology database; in response to a change in the routing information, coding and sorting the basic topology database to build a target topology database; based on the target topology database, rendering and visualizing the network topology structure of the network devices; the coding and sorting of the basic topology database to build a target topology database comprises: extracting a target key field from the basic topology database; encoding the target key field to generate a node encoding value of the node where the target key field is located; based on the node encoding value and the basic topology database, generating an intermediate topology set through a bubble sort mechanism; based on the intermediate topology set, decoding the node encoding value to generate the target topology database; based on the node encoding value and the basic topology database, generating an intermediate topology set through a bubble sort mechanism comprises: based on the link state and vector state of each node recorded in the basic topology database, extracting the target key field as an element through primary key decomposition to generate a topology node set; traversing the topology node set, taking the node corresponding to the element with the most iteration times in the topology node set as the root node, and determining the adjacent nodes of each node in the topology node set through a nearest neighbor algorithm; determining the subordinate nodes of the root node according to the direction of the root node and the adjacent nodes of the root node, determining the same-level nodes of the subordinate nodes according to the distance of the root node and the adjacent nodes of the root node, associating the nodes corresponding to the elements of the topology node set and the node encoding value, and saving to the intermediate topology set.

2. The method of claim 1, wherein, the encoding of the target key field to generate the node encoding value of the node where the target key field is located comprises: converting the target key field into a first key field of a first preset base; based on the first key field, concatenating according to reverse byte order to form a first identification value; convert the first identification value into a second identification value of a second preset base, and take it as the node encoding value, the second preset base is different from the first preset base.

3. The method of claim 1, wherein, based on the intermediate topology set, decoding the node encoding value to generate the target topology database comprises: using a preset decoding rule to decode the node encoding value to obtain a second target key field; based on the intermediate topology set, checking whether the target key field and the second target key field are consistent, if consistent, saving the second target key field to the target topology database.

4. The method of claim 1, wherein, the obtaining of the routing information of the network devices and the recording in the basic topology database comprises: taking a preset time length as a collection period, and saving the target field of the routing information as a local routing file at regular intervals, the routing information at least including any one of link state, vector state and routing table; reading the content of the local routing file and / or routing log file and recording in the basic topology database.

5. A network topology visualization apparatus, characterized by the device comprises: An acquisition module is configured to acquire routing information of a network device and record in a basic topology database; A construction module is configured to, in response to a change in the routing information, perform coding and sorting on the basic topology database, and construct a target topology database; The coding and sorting on the basic topology database and the construction of the target topology database include: extracting a target key field from the basic topology database; coding the target key field to generate a node coding value of a node where the target key field is located; generating an intermediate topology set based on the node coding value and the basic topology database through a bubble sort mechanism; decoding the node coding value based on the intermediate topology set to generate the target topology database; The generating of the intermediate topology set based on the node coding value and the basic topology database through the bubble sort mechanism includes: based on link states and vector states of each node recorded in the basic topology database, extracting the target key field as an element through primary key decomposition to generate a topology node set; iterating through the topology node set, taking a node corresponding to an element with the most iteration times in the topology node set as a root node, and determining adjacent nodes of each node in the topology node set through a nearest neighbor algorithm; determining a subordinate node of the root node according to a direction of the root node and the adjacent nodes of the root node, determining a peer node of the subordinate node according to a distance of the root node and the adjacent nodes of the root node, associating a node corresponding to an element of the topology node set with the node coding value, and saving to the intermediate topology set; A visualization module is configured to render and visualize a network topology structure of the network device based on the target topology database.

6. An electronic device, comprising: It includes: at least one processor; and a memory in communication connection with the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-4.

7. A non-transitory computer-readable storage medium having stored thereon computer instructions, wherein, The computer instructions are used to enable the computer to perform the method of any one of claims 1-4.

8. A computer program product, characterised in that, It includes a computer program, which, when executed by a processor, implements the method of any one of claims 1-4.

9. A chip, characterized by It includes at least one processor and a communication interface; the communication interface is used to receive signals input into the chip or signals output from the chip, the processor is in communication with the communication interface and implements the method of any one of claims 1-4 through a logic circuit or execution of code instructions.

Citation Information

Patent Citations

  • Method and device for positioning key nodes and links in IGP (Interior Gateway Protocol) topology of large-scale IP network

    CN104518893A

  • Branch circuit management device, method and equipment

    CN110852726A