Virtual networks, virtual network quality monitoring methods and electronic equipment
By creating virtual nodes and software switches in cloud nodes, combined with programmable switches, the quality of virtual networks can be monitored, solving the problem of existing technologies being unable to identify user-defined communication protocols and achieving efficient quality monitoring of virtual networks.
Patent Information
- Application Number
- CN202411498510.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-25
- Publication Date
- 2025-10-31
- Estimated Expiration
- 2044-10-25
AI Technical Summary
Existing cloud network quality monitoring methods cannot identify user-defined communication protocols and information encapsulation formats, resulting in an inability to effectively monitor the network quality of large-scale virtual networks.
By creating virtual nodes and software switches in cloud nodes, combined with programmable switches, the system receives user-configured data packet processing logic and quality monitoring programs, monitors the quality of the virtual network, embeds or adds quality monitoring results to the data packets, and uploads the monitoring results at the last hop.
It enables dynamic quality monitoring of virtual networks, improving the accuracy and efficiency of monitoring, and is applicable to cloud-based virtual networks.
Smart Images

Figure CN119583415B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of network technology, and in particular to a virtual network, a virtual network quality monitoring method, and an electronic device. Background Technology
[0002] Verifying network topology connections using real network devices (such as switches and routers) is technically feasible and best approximates real network quality, reflecting network status most accurately. However, the entire implementation process is complex, costly, and cannot be dynamically adjusted. Therefore, using cloud resources to construct virtual network nodes has become a current research hotspot, namely, scheduling and orchestrating network cloud nodes as virtual devices to connect and form large-scale virtual networks.
[0003] Currently, cloud network quality monitoring methods essentially rely on sidecar components or visualization tools like cAdvisor to acquire container network quality data, thereby achieving network quality monitoring. However, network quality data is protocol-dependent. In virtual networks, cloud network quality monitoring methods cannot identify user-defined communication protocols and information encapsulation formats, rendering existing methods unsuitable for large-scale virtual networks built on cloud networks. Therefore, developing a network quality monitoring method for large-scale virtual networks built on cloud networks is a pressing technical challenge. Summary of the Invention
[0004] This invention provides a virtual network, a virtual network quality monitoring method, and an electronic device to solve the aforementioned technical problems existing in the prior art.
[0005] This invention provides a virtual network built on a cloud network, comprising cloud nodes and programmable switches, wherein the cloud nodes are connected to the programmable switches.
[0006] The cloud node is used to create virtual nodes and corresponding software switches based on received user requests. The user requests include the number of virtual nodes required by the virtual network and network connection topology information.
[0007] The software switch and the programmable switch are used to receive user-configured data packet processing logic related to the virtual node and a quality monitoring program related to the data packet processing logic, and to monitor the virtual network quality based on the quality monitoring program to obtain quality monitoring results.
[0008] According to a virtual network provided by the present invention, the cloud node is further configured to convert the user-configured data packet processing logic related to the virtual node into a first flow table, convert the quality monitoring program into a second flow table, and distribute the first flow table and the second flow table to the software switch and the programmable switch.
[0009] According to a virtual network provided by the present invention, the software switch and the programmable switch are used to add the monitored quality monitoring results to the data packets when forwarding data packets between the virtual nodes.
[0010] According to a virtual network provided by the present invention, the software switch and the programmable switch are configured to, upon receiving the data packet, parse and process the data packet based on the data packet processing logic; if the data packet does not have a quality monitoring header, add a quality monitoring header and a quality monitoring result to the processed data packet; if the data packet has a quality monitoring header, insert the quality monitoring result after the quality monitoring header.
[0011] According to a virtual network provided by the present invention, the software switch and the programmable switch are further configured to upload the quality monitoring results in the data packet when the routing policy determines that it is the last hop.
[0012] The present invention also provides a virtual network quality monitoring method for monitoring the network quality of the virtual network described in any of the above claims. The method is applied to the programmable switch and the software switch, and includes the following steps.
[0013] Receive the quality monitoring program configured by the user and related to the data packet processing logic.
[0014] The quality of the virtual network is monitored based on the aforementioned quality monitoring program, and the quality monitoring results are obtained.
[0015] According to the present invention, a virtual network quality monitoring method monitors the quality of a virtual network based on the quality monitoring program and obtains quality monitoring results, including the following steps.
[0016] Receive data packets sent by virtual nodes within the cloud node.
[0017] The data packet is parsed and processed based on the data packet processing logic.
[0018] The quality monitoring results obtained based on the quality monitoring program are added to the data message.
[0019] According to a virtual network quality monitoring method provided by the present invention, the quality monitoring results monitored based on the quality monitoring program are added to the data packet, including the following steps.
[0020] If the data packet does not have a quality monitoring header, a quality monitoring header and quality monitoring result are added to the processed data packet.
[0021] If the data packet contains a quality monitoring header, the quality monitoring result is inserted after the quality monitoring header.
[0022] According to a virtual network quality monitoring method provided by the present invention, the method further includes: when the routing policy determines that the last hop is the last hop, collecting and uploading all quality monitoring results in the data packet.
[0023] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the virtual network quality monitoring method as described above.
[0024] The present invention provides a virtual network, a virtual network quality monitoring method, and an electronic device. The virtual network is based on a cloud network, creating virtual nodes and corresponding software switches within cloud nodes. The software switches and programmable switches receive user-configured data packet processing logic related to the virtual nodes and a quality monitoring program related to the data packet processing logic. During the operation of the virtual network, the software switches and programmable switches perform quality monitoring on the virtual network according to the quality monitoring program, obtaining quality monitoring results, thereby achieving quality monitoring of the virtual network. Attached Figure Description
[0025] To more clearly illustrate the technical solutions in this invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0026] Figure 1 This is a schematic diagram of the virtual network architecture provided by the present invention.
[0027] Figure 2 This is one of the flowcharts of the virtual network quality monitoring method provided by the present invention.
[0028] Figure 3 This is the second flowchart of the virtual network quality monitoring method provided by the present invention.
[0029] Figure 4 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation
[0030] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.
[0031] The virtual network of this invention embodiment, such as Figure 1 As shown, this virtual network is built on a cloud network and includes: cloud nodes and programmable switches (hardware switches), wherein the cloud nodes are connected to the programmable switches. Specifically, the cloud node is a server node in the cloud network, such as... Figure 1 As shown, in a cloud network, cloud nodes are divided into Master cloud nodes and ordinary cloud nodes (e.g., Node1 to NodeN). In addition to the functions of ordinary cloud nodes, Master cloud nodes also run the cloud management platform for the entire cloud network, such as Kubernetes (K8s) cluster management plane components. Within each cloud node, a Pod is the smallest scheduling unit in the cloud management platform (Kubernetes), possessing independent runtime space and resources. Pods run on both Master cloud nodes and ordinary cloud nodes, and a single Pod contains multiple container instances.
[0032] Cloud nodes are used to create virtual nodes and corresponding software switches based on received user requests. These user requests include the number of virtual nodes required for the virtual network and network connection topology information. Specifically, taking the Kubernetes cloud management platform as an example: the Kubernetes platform parses the user request, obtains the number of virtual nodes, and calls the platform's resource management module to create virtual nodes, i.e., Pod nodes, in the cloud node. Pod nodes act as data packet transceivers in the virtual network. The platform's network management module then monitors changes in Pod resources and creates corresponding software switches (P4-OVS) to connect the virtual Pod nodes. Each cloud node contains one P4-OVS, ultimately achieving the virtual network topology.
[0033] The software switch and the programmable switch are used to receive user-configured data packet processing logic related to the virtual node and a quality monitoring program related to the data packet processing logic, and to monitor the virtual network quality based on the quality monitoring program to obtain quality monitoring results.
[0034] like Figure 1As shown, the controller can receive user-configured data packet processing logic related to the virtual node and a quality monitoring program related to the data packet processing logic sent by the user terminal. The controller then distributes the user-configured data packet processing logic related to the virtual node to the software switch and the programmable switch, and similarly distributes the user-configured quality monitoring program related to the data packet processing logic to the software switch and the programmable switch. Specifically, the controller can be deployed on a cloud node (e.g., a Master cloud node) or on a separate server. For the virtual network to ultimately complete data packet processing and forwarding, the controller needs to distribute the user-configured data packet processing logic to the software switch and the programmable switch. The software switch and the programmable switch configure themselves according to the data packet processing logic to achieve data packet processing and forwarding between virtual nodes in the virtual network. To monitor the network quality of the virtual network, the controller needs to distribute the user-configured quality monitoring program related to the data packet processing logic to the software switch and the programmable switch.
[0035] During the operation of the virtual network, software switches and programmable switches perform quality monitoring on the virtual network according to the quality monitoring program. The quality monitoring program can be set according to the user's monitoring needs, so that when the quality monitoring program is executed, the corresponding indicators of the virtual network quality can be monitored, such as: packet count, timestamp, data ingress and egress ports, queue ID, queue length and packet length, etc.
[0036] Software switches and programmable switches can send the quality monitoring results obtained by each to the user terminal.
[0037] It should be noted that, in terms of hardware architecture, the virtual network in this embodiment may only include cloud nodes and programmable switches. The controller and user terminals mentioned above can both be deployed on cloud nodes (e.g., Master cloud nodes). Figure 1 The quality monitoring server is used to acquire, parse, display, and store quality monitoring results. For example, Prometheus can be deployed on the quality monitoring server to collect and process the monitored network metrics, InfluDB can be deployed to store the quality monitoring results, and Grafana can be deployed to visualize the quality monitoring results. If the quality monitoring server is set up independently, the controller and user terminal mentioned above can also be deployed on this quality monitoring server. Of course, this quality monitoring server can also be any cloud node.
[0038] The virtual network in this embodiment is based on a cloud network. Virtual nodes and corresponding software switches are created in cloud nodes. The software switches and programmable switches receive data packet processing logic and quality monitoring programs related to the virtual nodes configured by the user. Thus, during the operation of the virtual network, the software switches and programmable switches perform quality monitoring on the virtual network according to the quality monitoring programs and obtain quality monitoring results, thereby realizing the quality monitoring of the virtual network.
[0039] In some embodiments, the cloud node is further configured to convert user-configured data packet processing logic related to the virtual node into a first flow table, convert the quality monitoring program into a second flow table, and distribute the first and second flow tables to the software switch and the programmable switch. Specifically, the virtual node acts as a data packet transceiver terminal in the virtual network. The user terminal configures data packet processing logic related to the virtual node. After receiving the data packet processing logic, the cloud node converts it into a flow table suitable for execution by the switch, i.e., the first flow table. Similarly, the cloud node also converts the quality monitoring program into the second flow table. The software switch and the programmable switch execute the actions of the first and second flow tables to complete the forwarding of data packets and the monitoring of the virtual network quality. In practical applications, the first and second flow tables can be used to forward data packets and monitor the quality of the virtual network. Figure 1 The controller is deployed on the cloud node. The user terminal converts the data packet processing logic and quality monitoring program configured between various virtual nodes into various application APP instances and sends them to the controller through the northbound interface. The controller parses these various application APP instances, converts them into flow tables, and sends them to the software switch (P4-OVS) and programmable switch in the cloud node through the southbound interface.
[0040] In some embodiments, the software switch and the programmable switch are used to add the monitored quality monitoring results to the data packets when forwarding data packets between the virtual nodes. By embedding the quality monitoring results of the virtual network into the data packets, the entire communication link of the data packets can be monitored, thereby improving the accuracy of network quality monitoring.
[0041] In some embodiments, the software switch and the programmable switch are configured to, upon receiving the data packet, parse and process the data packet based on the data packet processing logic; if the data packet does not have a quality monitoring header, add a quality monitoring header and a quality monitoring result to the processed data packet; if the data packet has a quality monitoring header, insert the quality monitoring result after the quality monitoring header.
[0042] Specifically, such as Figure 1As shown, data packets sent by the source virtual node Pod in the cloud node first pass through the P4-OVS software switch in the cloud node where the source virtual node Pod resides. Since this is the first switch the data packet passes through, the data packet cannot contain a quality monitoring header. After parsing and processing the data packet, the first switch adds a quality monitoring header to the processed data packet, and then adds its own quality monitoring results as metadata after the header. It then repackages the data packet according to the data packet processing logic and forwards it to the next switch. The next switch receives the data packet, parses and processes it accordingly. Since a header has already been added, it inserts its own quality monitoring results after the header of the processed data packet. It then repackages the data packet according to the data packet processing logic and forwards it to the next switch, and so on, until the data packet is forwarded to the target virtual node Pod. During data packet forwarding, only one quality monitoring header is added, eliminating the need for each switch to add its own quality monitoring header. This avoids excessively large data packet sizes during forwarding, which could reduce transmission efficiency. Furthermore, no additional header is required during subsequent processing of the data packets by the switches, thus improving processing speed to some extent.
[0043] In some embodiments, the software switch and the programmable switch are further configured to upload the quality monitoring results in the data packet when the routing policy determines it to be the last hop. That is, the software switch at the last hop uploads the quality monitoring results for the entire transmission link to the user terminal or the quality monitoring server. In this embodiment, uploading the entire link's quality monitoring results at the last hop avoids the problem of each switch separately uploading its own quality monitoring results, which would consume excessive virtual network link resources and affect data packet transmission efficiency.
[0044] This invention also provides a virtual network quality monitoring method for monitoring the network quality of the virtual network described in the above embodiments. The method is applied to the programmable switch and software switch, such as... Figure 2 As shown, it includes the following steps.
[0045] Step S210: Receive the quality monitoring program configured by the user that is related to the data packet processing logic.
[0046] Step S220: Monitor the quality of the virtual network based on the quality monitoring program to obtain the quality monitoring results.
[0047] In the virtual network quality monitoring method of this embodiment, the software switch and the programmable switch receive the data packet processing logic related to the virtual node configured by the user and the quality monitoring program related to the data packet processing logic. Thus, during the operation of the virtual network, the software switch and the programmable switch perform quality monitoring on the virtual network according to the quality monitoring program and obtain the quality monitoring results, thereby realizing the quality monitoring of the virtual network.
[0048] In some embodiments, step S220 specifically includes the following steps.
[0049] Receive data packets sent by virtual nodes within the cloud node.
[0050] The data packet is parsed and processed based on the data packet processing logic.
[0051] The quality monitoring results obtained based on the quality monitoring program are added to the data message.
[0052] In this embodiment, by embedding the quality monitoring results of the virtual network within the data packet, the entire communication link of the data packet can be monitored, thereby improving the accuracy of network quality monitoring.
[0053] In some embodiments, adding the quality monitoring results monitored by the quality monitoring program to the data packet includes: adding a quality monitoring header and quality monitoring results to the processed data packet when the data packet does not have a quality monitoring header; and inserting the quality monitoring results after the quality monitoring header when the data packet has a quality monitoring header.
[0054] In some embodiments, the virtual network quality monitoring method further includes: when the routing policy determines that the last hop is being used, collecting and uploading all quality monitoring results in the data packet.
[0055] like Figure 3 As shown, combined with Figure 1 The virtual network architecture of this embodiment is described in detail below, as well as the virtual network quality monitoring method.
[0056] Step S310: The process in the Pod space of the virtual node in the source cloud node calls the protocol stack to send a data packet with a custom protocol format.
[0057] Step S320: In the source cloud node, the software switch P4-OVS parses the data packets, performs flow table matching and corresponding processing actions, adds a quality monitoring header and fills in the quality monitoring results.
[0058] Step S330: If the destination address is another virtual node Pod in the same cloud node, the software switch P4-OVS in the source cloud node will send the data packet to the process in the other Pod whose destination is the same cloud node.
[0059] Step S340: If the destination address is not another virtual node Pod in the same cloud node, the programmable network interface card in the source cloud node processes and forwards the data packet, that is, forwards it to the programmable switch.
[0060] Step S350: The programmable switch parses the data packet, performs flow table matching and corresponding processing actions, inserts the quality monitoring result after the header, and forwards the processed data packet to the programmable network interface card (NIC) in the destination cloud node. It should be noted that in this step, the data packet may be forwarded between multiple programmable switches before reaching the programmable NIC in the destination cloud node.
[0061] Step S360: The programmable network interface card in the destination cloud node processes and forwards the data packets, that is, forwards them to the software switch P4-OVS in the destination cloud node.
[0062] Step S370: The P4-OVS in the destination cloud node parses the data packet, performs flow table matching and corresponding processing actions, and inserts the quality monitoring result after the header. In this step, since the P4-OVS in the destination cloud node is the last hop on the forwarding path, it also collects the quality monitoring result from the data packet and sends it to the user terminal or quality monitoring server.
[0063] Step S380: P4-OVS in the destination cloud node sends the data packet to the virtual node Pod in the destination cloud node.
[0064] Figure 4 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 4 As shown, the electronic device may include a processor 410, a communications interface 420, a memory 430, and a communication bus 440. The processor 410, communications interface 420, and memory 430 communicate with each other via the communication bus 440. The processor 410 can call logical instructions stored in the memory 430 to execute a virtual network quality monitoring method. This method is used to monitor the network quality of the virtual network in the above embodiment. The method is applied to the programmable switch and the software switch and includes the following steps.
[0065] Receive the quality monitoring program configured by the user and related to the data packet processing logic.
[0066] The quality of the virtual network is monitored based on the aforementioned quality monitoring program, and the quality monitoring results are obtained.
[0067] Furthermore, the logical instructions in the aforementioned memory 430 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0068] On the other hand, the present invention also provides a computer program product, the computer program product including a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer is able to execute the virtual network quality monitoring method provided by the above methods. The method is used to monitor the network quality of the virtual network in the above embodiments. The method is applied to the programmable switch and the software switch and includes the following steps.
[0069] Receive the quality monitoring program configured by the user and related to the data packet processing logic.
[0070] The quality of the virtual network is monitored based on the aforementioned quality monitoring program, and the quality monitoring results are obtained.
[0071] In another aspect, the present invention also provides a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, is implemented to perform the virtual network quality monitoring method provided by the methods described above. The method is used to monitor the network quality of the virtual network in the above embodiments, and the method is applied to the programmable switch and the software switch, and includes the following steps.
[0072] Receive the quality monitoring program configured by the user and related to the data packet processing logic.
[0073] The quality of the virtual network is monitored based on the aforementioned quality monitoring program, and the quality monitoring results are obtained.
[0074] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.
[0075] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.
[0076] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A virtual network, characterized in that, The virtual network is built on a cloud network and includes: cloud nodes and programmable switches, with the cloud nodes connected to the programmable switches. The cloud node is used to create virtual nodes and corresponding software switches based on received user requests. The user requests include the number of virtual nodes required by the virtual network and network connection topology information. The software switch and the programmable switch are used to receive user-configured data packet processing logic related to the virtual node and a quality monitoring program related to the data packet processing logic, and to monitor the virtual network quality based on the quality monitoring program to obtain quality monitoring results.
2. The virtual network according to claim 1, characterized in that, The cloud node is also used to convert the user-configured data packet processing logic related to the virtual node into a first flow table, convert the quality monitoring program into a second flow table, and send the first flow table and the second flow table to the software switch and the programmable switch.
3. The virtual network according to claim 1 or 2, characterized in that, The software switch and the programmable switch are used to add the monitored quality monitoring results to the data packets when forwarding data packets between the virtual nodes.
4. The virtual network according to claim 3, characterized in that, The software switch and the programmable switch are used to parse and process the data packet based on the data packet processing logic after receiving the data packet. If the data packet does not have a quality monitoring header, a quality monitoring header and a quality monitoring result are added to the processed data packet. If the data packet has a quality monitoring header, the quality monitoring result is inserted after the quality monitoring header.
5. The virtual network according to claim 3, characterized in that, The software switch and the programmable switch are also used to upload the quality monitoring results in the data packet when the routing policy determines that it is the last hop.
6. A method for monitoring the quality of a virtual network, characterized in that, For monitoring the network quality of the virtual network according to any one of claims 1 to 5, the method is applied to the programmable switch and the software switch, comprising: Receive a quality monitoring program configured by the user that is related to the data packet processing logic; The quality of the virtual network is monitored based on the aforementioned quality monitoring program, and the quality monitoring results are obtained.
7. The virtual network quality monitoring method according to claim 6, characterized in that, The quality of the virtual network is monitored based on the aforementioned quality monitoring program, and the quality monitoring results are obtained, including: Receive data packets sent by virtual nodes within the cloud node; The data packet is parsed and processed based on the data packet processing logic; The quality monitoring results obtained based on the quality monitoring program are added to the data message.
8. The virtual network quality monitoring method according to claim 7, characterized in that, Adding the quality monitoring results detected based on the quality monitoring program to the data message includes: If the data packet does not have a quality monitoring header, add a quality monitoring header and quality monitoring result to the processed data packet; If the data packet contains a quality monitoring header, the quality monitoring result is inserted after the quality monitoring header.
9. The virtual network quality monitoring method according to claim 7, characterized in that, Also includes: If the routing policy determines that the data packet is the last hop, collect and upload all quality monitoring results from the data packet.
10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the virtual network quality monitoring method as described in any one of claims 6 to 9.
Citation Information
Patent Citations
Virtual machine network quality monitoring method and system in cloud environment
CN112367212A
An agile network protocol for secure communications with assured system availability
WO2000027086A2