Ovn-based cloud-native bandwidth control method, system, device and medium

By listening to and transforming the annotation information of Kubernetes objects through the OVN control component and the OVS component to generate flow tables, the high technical requirements and poor usability caused by the dependence on BGP routing policies in the existing technology are solved, and easy-to-use and efficient bandwidth control is achieved.

CN117395149BActive Publication Date: 2026-05-12南京中孚信息技术有限公司
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
南京中孚信息技术有限公司
Filing Date
2023-11-20
Publication Date
2026-05-12

AI Technical Summary

Technical Problem

Existing cloud-native bandwidth control technologies rely on BGP routing strategies, which have high technical requirements, poor usability, and affect network performance stability.

Method used

By listening to the annotation information of Kubernetes objects through the OVN control component and converting it into flow tables of PODs, bandwidth control is implemented in combination with the OVN management component and the OVS component, simplifying the configuration and updating of bandwidth control policies.

Benefits of technology

It enables easy-to-use and efficient container network bandwidth control, meets the bandwidth allocation requirements in cloud-native environments, and improves network performance stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117395149B_ABST
    Figure CN117395149B_ABST
Patent Text Reader

Abstract

The application discloses an OV-based cloud native bandwidth control method, system, device and medium, mainly relates to the cloud native bandwidth control technical field, and is used for solving the problems that the existing native bandwidth control technology is more dependent on the BGP routing strategy, has strong technical requirements for network planning and BGP, and has poor usability. It includes: through the management platform, the configuration of the bandwidth control strategy is completed, the generation of the annotation information is completed, the binding of the bandwidth control strategy and the k8s object is completed, the annotation information is converted into virtual network configuration information through the OVN control component, and is issued to the OVN management component; through the OVN management component, the logical flow table is issued to the OVN controller component, and then the logical flow table is acquired, and the openflow flow table of the node is generated; so that the OVS component in the node where the POD is located carries out bandwidth control on the virtual network card corresponding to the POD.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of cloud-native bandwidth control technology, and in particular to a cloud-native bandwidth control method, system, device and medium based on OVN. Background Technology

[0002] Cloud native is a compound word. "Cloud" indicates that the application runs in a distributed cloud environment, and "native" indicates that the application was designed from the outset with the elasticity and distributed characteristics of the cloud platform in mind—it was designed for the cloud. Cloud native is an application architecture approach that fully leverages the advantages of cloud computing to design, implement, deploy, deliver, and operate applications.

[0003] With the development of cloud computing, cloud applications are becoming increasingly rich and diverse. In cloud-native environments, different applications may share the same physical infrastructure's network resources, including bandwidth. This can lead to bandwidth contention issues, where high network traffic from one application may impact the network performance of other applications. In some cases, it is necessary to limit bandwidth for specific cloud-native applications to ensure fair sharing and resource allocation.

[0004] The existing Kubernetes (k8s) bandwidth control, based on Calico, is implemented through BGP (Border Gateway Protocol) routing policies. Defining BGP routing policies requires significant technical expertise in network planning and BGP, resulting in poor usability. Furthermore, applying BGP routing policies necessitates route switching, which can impact network performance and lead to network instability. Summary of the Invention

[0005] To address the aforementioned shortcomings of existing technologies, this application provides a cloud-native bandwidth control system, method, and medium based on OVN, in order to solve the problems that existing native bandwidth control technologies rely heavily on BGP routing strategies, have high technical requirements for network planning and BGP, and are difficult to use.

[0006] Firstly, this application provides a cloud-native bandwidth control method based on OVN. The method includes: obtaining bandwidth control policy formulation parameters through a management platform to complete the bandwidth control policy configuration and obtain annotation information corresponding to the bandwidth control policy; obtaining a Kubernetes object from the Kubernetes platform to complete the binding of the bandwidth control policy to the Kubernetes object, and simultaneously calling the Kubernetes platform's API interface to request updates to the annotation information corresponding to the bandwidth control policy of the Kubernetes object; when the Kubernetes platform receives an update request from the management platform for the annotation information corresponding to the bandwidth control policy of the Kubernetes object through the API interface, completing the update of the annotation information corresponding to the bandwidth control policy of the Kubernetes object, and automatically updating the bandwidth control policy in the POD corresponding to the Kubernetes object; obtaining the annotation information corresponding to the updated bandwidth control policy of the POD through the OVN control component; converting the annotation information into virtual network configuration information and sending it to the OVN management component through OVN commands; converting the virtual network configuration information into logical flow tables through the OVN management component and sending them to the OVN controller component in the node where the POD corresponding to the virtual network configuration information resides; and then using OVN... The controller component obtains the logical flow table and generates the OpenFlow flow table for the node where it resides. This enables the OVS component in the node where the POD resides to control the bandwidth of the virtual network interface card corresponding to the POD based on the OpenFlow flow table.

[0007] Furthermore, by using a preset data acquisition interface, the bandwidth control strategy formulation parameters are obtained, the corresponding annotation information of the bandwidth control strategy is generated, and the k8s object is obtained to complete the binding of the bandwidth control strategy with the k8s object.

[0008] Furthermore, before obtaining the parameters for configuring the bandwidth control policy through the management platform to complete the configuration of the bandwidth control policy, the method also includes: obtaining user login information through the management platform so that a preset data acquisition interface pops up after the user login information is successfully verified.

[0009] Furthermore, before obtaining the annotation information corresponding to the updated bandwidth control policy, the method also includes: monitoring the POD corresponding to the k8s object through the OVN control component, so as to obtain the annotation information corresponding to the updated bandwidth control policy when it is determined that the POD corresponding to the k8s object has an updated bandwidth control policy.

[0010] Secondly, this application provides a cloud-native bandwidth control system based on OVN. The system includes: a management platform, used to obtain parameters for configuring bandwidth control policies to complete the configuration of bandwidth control policies and obtain annotation information corresponding to the bandwidth control policies; obtain Kubernetes objects from the Kubernetes platform to complete the binding of bandwidth control policies with Kubernetes objects, and simultaneously call the API interface of the Kubernetes platform to request updates to the annotation information corresponding to the bandwidth control policies of Kubernetes objects; a Kubernetes platform, used to update the annotation information corresponding to the bandwidth control policies of Kubernetes objects when the Kubernetes platform receives a request from the management platform via the API interface for updating the annotation information corresponding to the bandwidth control policies of Kubernetes objects, and simultaneously automatically update the bandwidth control policies in the PODs corresponding to the Kubernetes objects; an OVN control component, used to obtain the annotation information corresponding to the updated bandwidth control policies of the PODs; convert the annotation information into virtual network configuration information and send it to the OVN management component via OVN commands; and an OVN management component, used to convert the virtual network configuration information into logical flow tables and send them to the OVN controller component in the node where the PODs corresponding to the virtual network configuration information reside. The controller component is used to obtain the logical flow table and generate the OpenFlow flow table of the node where it is located, so that the OVS component in the node where the POD is located can control the bandwidth of the virtual network card corresponding to the POD according to the OpenFlow flow table.

[0011] Furthermore, the management platform includes an interface unit, which is used to obtain the parameters for setting the bandwidth control strategy, generate the annotation information corresponding to the bandwidth control strategy, and obtain the k8s object through a preset data acquisition interface, so as to complete the binding between the bandwidth control strategy and the k8s object.

[0012] Furthermore, the management platform includes a login unit, which is used to obtain user login information through the management platform, so that a preset data acquisition interface pops up after the user login information is successfully verified.

[0013] Furthermore, the OVN control component includes a listening unit, which is used to listen to the POD corresponding to the k8s object through the OVN control component, so as to obtain the annotation information corresponding to the updated bandwidth control policy when it is determined that the POD corresponding to the k8s object has an updated bandwidth control policy.

[0014] Thirdly, this application provides a cloud-native bandwidth control device based on OVN, the device including: a processor; and a memory storing executable code thereon, which, when executed, causes the processor to execute a cloud-native bandwidth control method based on OVN as described above.

[0015] Fourthly, this application provides a non-volatile computer storage medium storing computer instructions thereon, which, when executed, implement a cloud-native bandwidth control method based on OVN as described above.

[0016] Those skilled in the art will understand that this application has at least the following beneficial effects:

[0017] This application utilizes OVN (Open Virtual Network) technology to monitor updated annotation information of Kubernetes objects and convert it into local flow tables of PODs (a concept unique to Kubernetes, which is the basic scheduling unit of Kubernetes objects). This allows administrators to easily and efficiently control the bandwidth of container networks through the management platform, meeting the needs of cloud-native bandwidth control. Attached Figure Description

[0018] The following description refers to some embodiments of this disclosure, in which:

[0019] Figure 1 This is a flowchart of a cloud-native bandwidth control method based on OVN provided in an embodiment of this application.

[0020] Figure 2 This is a schematic diagram of the internal structure of a cloud-native bandwidth control system based on OVN provided in an embodiment of this application.

[0021] Figure 3 This is a schematic diagram of the internal structure of a cloud-native bandwidth control device based on OVN provided in an embodiment of this application. Detailed Implementation

[0022] Those skilled in the art should understand that the embodiments described below are merely preferred embodiments of this disclosure and do not imply that this disclosure can only be implemented through these preferred embodiments. These preferred embodiments are merely used to explain the technical principles of this disclosure and are not intended to limit the scope of protection of this disclosure. Based on the preferred embodiments provided by this disclosure, all other embodiments obtained by those skilled in the art without creative effort should still fall within the scope of protection of this disclosure.

[0023] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0024] The technical solutions proposed in the embodiments of this application will be described in detail below with reference to the accompanying drawings.

[0025] This application provides a cloud-native bandwidth control method based on OVN, such as... Figure 1 As shown in the embodiments of this application, the method mainly includes the following steps:

[0026] Step 110: Obtain the parameters for setting the bandwidth control policy through the management platform to complete the configuration of the bandwidth control policy and obtain the annotation information corresponding to the bandwidth control policy; obtain the k8s object of the k8s platform to complete the binding of the bandwidth control policy with the k8s object, and call the API interface of the k8s platform to request the update of the annotation information corresponding to the bandwidth control policy of the k8s object.

[0027] It should be noted that the management platform can be any feasible device or apparatus capable of data acquisition and data binding. The specified parameter is the data to be uploaded.

[0028] As an example, the process of obtaining the above data can be specifically as follows: through a preset data acquisition interface, obtain the parameters for formulating the bandwidth control strategy, generate the annotation information corresponding to the bandwidth control strategy, and obtain the k8s object to complete the binding between the bandwidth control strategy and the k8s object.

[0029] It should be noted that the Kubernetes platform has several Kubernetes objects, and this application is able to select the Kubernetes object that is bound to the bandwidth control policy from among these Kubernetes objects.

[0030] In addition, to ensure the accuracy of uploaded data, this application can obtain the current user's login information so that data can be obtained after the login information is verified.

[0031] As an example, before obtaining the parameters for configuring the bandwidth control policy through the management platform to complete the configuration of the bandwidth control policy, the method may also include:

[0032] The system obtains user login information through the management platform, and pops up a preset data retrieval interface after the user login information is successfully verified.

[0033] It should be noted that the method for verifying user login information can be any existing feasible method.

[0034] Step 120: When the Kubernetes platform receives a request from the management platform via the API interface to update the annotation information corresponding to the bandwidth control policy of the Kubernetes object, it completes the update of the annotation information corresponding to the bandwidth control policy of the Kubernetes object and automatically updates the bandwidth control policy in the POD corresponding to the Kubernetes object.

[0035] Step 130: Obtain the annotation information corresponding to the bandwidth control policy updated by POD through the OVN control component; convert the annotation information into virtual network configuration information, and send it to the OVN management component through OVN commands.

[0036] It should be noted that the OVN control component is an existing open-source component of OVN. Those skilled in the art can obtain components with functions such as "annotation information corresponding to updated bandwidth control policies; converting annotation information into virtual network configuration information and issuing it to the OVN management component via OVN commands" from the website according to actual needs.

[0037] In addition, before obtaining the annotation information corresponding to the updated bandwidth control policy, the method also includes:

[0038] The OVN control component monitors the POD corresponding to the Kubernetes object, and when it is determined that the bandwidth control policy of the POD corresponding to the Kubernetes object has been updated, it obtains the annotation information corresponding to the updated bandwidth control policy.

[0039] It should be noted that the specific method for monitoring the POD corresponding to the k8s object can be implemented using existing technologies, and this application does not limit the specific implementation process.

[0040] Step 140: Using the OVN management component, convert the virtual network configuration information into a logical flow table and send it to the OVN controller component in the node where the POD corresponding to the virtual network configuration information is located.

[0041] It should be noted that the OVN management component is an existing open-source component of OVN, which can convert virtual network configuration information into logical flow tables and distribute them to the OVN controller component in the node where the POD corresponding to the virtual network configuration information is located.

[0042] Additionally, the node where the POD resides can be a computer server. The OVN controller component is an existing open-source component of OVN.

[0043] Step 150: Obtain the logical flow table through the OVN controller component and generate the OpenFlow flow table for the node where the POD is located; so that the OVS component in the node where the POD is located can control the bandwidth of the virtual network card corresponding to the POD according to the OpenFlow flow table.

[0044] It should be noted that the OVS component (Open vSwitch) is an open-source virtual switch used to build network infrastructure in virtualization and cloud computing environments.

[0045] besides, Figure 2This application provides a cloud-native bandwidth control system based on OVN. For example... Figure 2 As shown in the embodiments of this application, the system mainly includes:

[0046] The management platform 210 is used to obtain the parameters for setting the bandwidth control policy, so as to complete the configuration of the bandwidth control policy and obtain the annotation information corresponding to the bandwidth control policy; it obtains the k8s object of the k8s platform 220 to complete the binding of the bandwidth control policy with the k8s object, and at the same time calls the API interface of the k8s platform 220 to request the update of the annotation information corresponding to the bandwidth control policy of the k8s object.

[0047] Specifically, the process of acquiring the above data can be as follows: the interface unit 211 in the management platform 210 acquires the formulation parameters of the bandwidth control strategy, obtains the annotation information corresponding to the bandwidth control strategy, and obtains the correspondence between the bandwidth control strategy and the k8s object through a preset data acquisition interface.

[0048] In addition, to ensure the accuracy of uploaded data, this application can obtain the current user's login information so that data can be obtained after the login information is verified.

[0049] As an example, the login unit 212 in the management platform 210 obtains user login information through the management platform 210, so as to enter the preset data acquisition interface after the user login information is successfully verified.

[0050] The k8s platform 220 is used to update the annotation information corresponding to the bandwidth control policy of the k8s object when the k8s platform 220 receives a request from the management platform through the API interface to update the annotation information corresponding to the bandwidth control policy of the k8s object, and at the same time automatically updates the bandwidth control policy in the POD corresponding to the k8s object.

[0051] It should be noted that the Kubernetes platform is any feasible container management platform.

[0052] OVN control component 230 is used to obtain annotation information corresponding to the updated bandwidth control policy; convert the annotation information into virtual network configuration information, and send it to OVN management component 240 through OVN commands.

[0053] In addition, before obtaining the annotation information corresponding to the updated bandwidth control policy, the listening unit 231 in the OVN control component 230 can listen to the POD corresponding to the k8s object through the OVN control component 230, so as to obtain the annotation information corresponding to the updated bandwidth control policy when it is determined that the POD corresponding to the k8s object has an updated bandwidth control policy.

[0054] OVN management component 240 is used to convert virtual network configuration information into logical flow tables and distribute them to the OVN controller component 250 in the node where the POD corresponding to the virtual network configuration information is located.

[0055] The OVN controller component 250 is used to obtain the logical flow table and generate the OpenFlow flow table of the node where it is located, so that the OVS component in the node where the POD is located can control the bandwidth of the virtual network card corresponding to the POD according to the OpenFlow flow table.

[0056] The above are method embodiments of this application. Based on the same inventive concept, this application also provides a cloud-native bandwidth control device based on OVN. Figure 3 As shown, the device includes: a processor; and a memory storing executable code thereon, which, when executed, causes the processor to perform a cloud-native bandwidth control method based on OVN as described in the above embodiments.

[0057] Specifically, the server obtains the parameters for configuring the bandwidth control policy through the management platform to complete the configuration and obtain the corresponding annotation information. It then obtains the Kubernetes object from the Kubernetes platform to bind the bandwidth control policy to the Kubernetes object, and simultaneously calls the Kubernetes platform's API to request updates to the annotation information corresponding to the bandwidth control policy of the Kubernetes object. When the Kubernetes platform receives the request from the management platform via the API to update the annotation information corresponding to the bandwidth control policy of the Kubernetes object, it updates the annotation information and automatically updates the bandwidth control policy in the POD corresponding to the Kubernetes object. Through the OVN control component, it obtains the annotation information corresponding to the updated bandwidth control policy of the POD. This annotation information is converted into virtual network configuration information and sent to the OVN management component via OVN commands. The OVN management component converts the virtual network configuration information into logical flow tables and sends them to the OVN controller component in the node where the POD corresponding to the virtual network configuration information resides. Finally, through OVN... The controller component obtains the logical flow table and generates the OpenFlow flow table for the node where it resides. This enables the OVS component in the node where the POD resides to control the bandwidth of the virtual network interface card corresponding to the POD based on the OpenFlow flow table.

[0058] In addition, this application embodiment also provides a non-volatile computer storage medium storing executable instructions, which, when executed, implement the cloud-native bandwidth control method based on OVN as described above.

[0059] The technical solutions of this disclosure have been described in conjunction with the preceding embodiments. However, it will be readily understood by those skilled in the art that the scope of protection of this disclosure is not limited to these specific embodiments. Without departing from the technical principles of this disclosure, those skilled in the art can disassemble and combine the technical solutions in the above embodiments, and can also make equivalent changes or substitutions to the relevant technical features. Any changes, equivalent substitutions, improvements, etc., made within the technical concept and / or technical principles of this disclosure will fall within the scope of protection of this disclosure.

Claims

1. A cloud-native bandwidth control method based on OVN, characterized in that, The method includes: The management platform obtains the parameters for setting the bandwidth control policy to complete the configuration of the bandwidth control policy and obtains the annotation information corresponding to the bandwidth control policy; it also obtains the k8s object of the k8s platform to complete the binding between the bandwidth control policy and the k8s object, and calls the API interface of the k8s platform to request the update of the annotation information corresponding to the bandwidth control policy of the k8s object. When the Kubernetes platform receives a request from the management platform via the API interface to update the annotation information corresponding to the bandwidth control policy of the Kubernetes object, it completes the update of the annotation information corresponding to the bandwidth control policy of the Kubernetes object and automatically updates the bandwidth control policy in the POD corresponding to the Kubernetes object. The OVN control component obtains the annotation information corresponding to the bandwidth control policy updated by the POD; the annotation information is converted into virtual network configuration information and sent to the OVN management component via OVN commands. The OVN management component converts virtual network configuration information into logical flow tables and distributes them to the OVN controller component in the node where the POD corresponding to the virtual network configuration information is located. The OVN controller component obtains the logical flow table and generates the OpenFlow flow table for the node where the POD is located. This enables the OVS component in the node where the POD is located to control the bandwidth of the virtual network interface card corresponding to the POD based on the OpenFlow flow table.

2. The cloud-native bandwidth control method based on OVN according to claim 1, characterized in that, The system obtains the parameters for setting the bandwidth control strategy through a preset data acquisition interface, generates the annotation information corresponding to the bandwidth control strategy, and obtains the k8s object to complete the binding between the bandwidth control strategy and the k8s object.

3. The cloud-native bandwidth control method based on OVN according to claim 2, characterized in that, Before obtaining the parameters for configuring the bandwidth control policy through the management platform to complete the configuration of the bandwidth control policy, the method further includes: The system obtains user login information through the management platform, and pops up a preset data retrieval interface after the user login information is successfully verified.

4. The cloud-native bandwidth control method based on OVN according to claim 1, characterized in that, Before obtaining the annotation information corresponding to the updated bandwidth control policy, the method further includes: The OVN control component monitors the POD corresponding to the Kubernetes object, and when it is determined that the bandwidth control policy of the POD corresponding to the Kubernetes object has been updated, it obtains the annotation information corresponding to the updated bandwidth control policy.

5. A cloud-native bandwidth control system based on OVN, characterized in that, The system includes: The management platform is used to obtain the parameters for setting bandwidth control policies, so as to complete the configuration of bandwidth control policies and obtain the annotation information corresponding to the bandwidth control policies; it obtains the Kubernetes objects of the Kubernetes platform to complete the binding of bandwidth control policies with Kubernetes objects, and at the same time calls the API interface of the Kubernetes platform to request updates to the annotation information corresponding to the bandwidth control policies of Kubernetes objects. The Kubernetes platform is used to update the annotation information corresponding to the bandwidth control policy of the Kubernetes object when it receives a request from the management platform via the API interface to update the annotation information corresponding to the bandwidth control policy of the Kubernetes object. At the same time, it automatically updates the bandwidth control policy in the POD corresponding to the Kubernetes object. The OVN control component is used to obtain the annotation information corresponding to the bandwidth control policy updated by the POD; convert the annotation information into virtual network configuration information, and send it to the OVN management component through OVN commands; The OVN management component is used to convert virtual network configuration information into logical flow tables and distribute them to the OVN controller component in the node where the POD corresponding to the virtual network configuration information is located. The OVN controller component is used to obtain the logical flow table and generate the OpenFlow flow table of the node where it is located, so that the OVS component in the node where the POD is located can control the bandwidth of the virtual network interface card corresponding to the POD according to the OpenFlow flow table.

6. The cloud-native bandwidth control system based on OVN according to claim 5, characterized in that, The management platform includes interface units. This is used to obtain the parameters for setting the bandwidth control strategy, generate the annotation information corresponding to the bandwidth control strategy, and obtain the k8s object through a preset data acquisition interface, so as to complete the binding between the bandwidth control strategy and the k8s object.

7. The cloud-native bandwidth control system based on OVN according to claim 6, characterized in that, The management platform includes a login unit. This is used to obtain user login information through the management platform, so that a preset data acquisition interface will pop up after the user login information is successfully verified.

8. The cloud-native bandwidth control system based on OVN according to claim 5, characterized in that, The OVN control components include a listening unit. Used to monitor the POD corresponding to a Kubernetes object through the OVN control component, so as to obtain the annotation information corresponding to the updated bandwidth control policy when it is determined that the POD corresponding to the Kubernetes object has an updated bandwidth control policy.

9. A cloud-native bandwidth control device based on OVN, characterized in that, The device includes: processor; And a memory having executable code stored thereon, which, when executed, causes the processor to perform a cloud-native bandwidth control method based on OVN as described in any one of claims 1-4.

10. A non-volatile computer storage medium, characterized in that, It stores computer instructions, which, when executed, implement a cloud-native bandwidth control method based on OVN as described in any one of claims 1-4.