Shared bandwidth speed regulation method and system, electronic equipment, storage medium and program product

By recording the relationship between EIP and service shared bandwidth on the data plane of the virtual cloud network and allocating the speed limit value, the problem of long speed limit calculation time and inaccurate fluctuations in the prior art is solved, and a more accurate and stable speed limit configuration is achieved.

CN119743439APending Publication Date: 2025-04-01CHINA TELECOM CLOUD TECH CO LTD

Patent Information

Application Number
CN202411762826.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-03
Publication Date
2025-04-01

AI Technical Summary

Technical Problem

In virtual cloud networks, the speed limit calculation time for the prior art for service sharing bandwidth is long, and the speed limit fluctuations are inaccurate. Especially when the number of EIPs is large, the calculation time may take about 10 seconds, and the speed limit fluctuation time is relatively long.

Method used

By recording the relationship between eip and the service shared bandwidth on the data plane (net element device), the service core of the data plane records traffic statistics information, and then the speed regulation core of the data plane allocates the actual speed limit value of each eip according to the proportion based on the traffic statistics of eip under the service shared bandwidth. The data plane directly calculates traffic statistics for the service shared bandwidth. The control plane only needs to interact with the data plane to obtain statistical information on the service shared bandwidth, reducing the dependence on the number of eIPs and greatly reducing the calculation time.

Benefits of technology

It realizes the accuracy and stability of the speed limit configuration, reduces the speed limit fluctuation, and shortens the calculation time by 10 times. It is suitable for large-scale EIP configurations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119743439A_ABST
    Figure CN119743439A_ABST
Patent Text Reader

Abstract

The invention provides a shared bandwidth speed regulation method and system, electronic equipment, a storage medium and a program product, and relates to the technical field of data communication. The method comprises the following steps: recording the relationship between the eip and a service sharing bandwidth on a data plane (network element equipment), recording flow statistics by a service core (a speed-limiting service module) of the data plane, and then distributing an actual speed-limiting value of each eip in proportion by a speed-regulating core (a speed-regulating service module) of the data plane according to the flow statistics of the eip under the service sharing bandwidth. The data plane directly calculates the flow statistics of the service shared bandwidth, and then when the control plane (management platform) directly interacts with the data plane, the statistics of the service shared bandwidth is obtained, so that the calculation of the eip under the service shared bandwidth is not needed, and the reissuing of the configuration of the eip after the calculation is not needed. The calculation amount is changed into the calculation amount of the service shared bandwidth from the number of the eip, generally, one service shared bandwidth comprises dozens to hundreds of eip, the calculation time is greatly shortened, and the speed limiting fluctuation is smaller and more accurate.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present invention relate to the field of data communication technology, and in particular to a shared bandwidth speed regulation method, system, electronic device, storage medium and program product. Background Art

[0002] In a virtual cloud network, service sharing bandwidth can enable multiple eips to share a bandwidth speed limit. The usual practice is that the data plane performs traffic statistics for eips on each network element device, and then the control plane periodically obtains traffic statistics for all eips, and then calculates the traffic statistics ratio of all eips under this service sharing bandwidth to assign a speed limit value to each eip, and finally sends it to each network element on the data plane in the form of configuration. The problem with this method is that the control plane actually needs to calculate the corresponding number of speed limits according to the number of eips. The larger the number of configured eips, the longer the calculation time. Usually, the specifications of public cloud eips are relatively large. According to the specifications of 100,000 eips and 10,000 service sharing bandwidths, this time may take about 10s. In addition, the period for the control plane to obtain traffic statistics information for all eips is the adjustment time of traffic changes. If this period is longer, the speed limit fluctuation time will be longer, and the speed limit will be more inaccurate. Summary of the invention

[0003] Embodiments of the present invention provide a shared bandwidth speed regulation method, system, electronic device, storage medium and program product to at least partially solve the above problems.

[0004] A first aspect of an embodiment of the present invention provides a shared bandwidth speed adjustment method, the method comprising: Obtain traffic statistics in a service shared bandwidth instance; Traversing the eip linked list of the service shared bandwidth instance, and obtaining the eip instance of each of the multiple eips included in the service shared bandwidth; Get traffic statistics in each EIP instance; Based on the traffic statistics information in the service shared bandwidth instance and the traffic statistics information of each eip instance included in the service shared bandwidth, the speed adjustment information of each of the multiple eips included in the service shared bandwidth is determined.

[0005] Optionally, based on the traffic statistics information in the service shared bandwidth instance and the traffic statistics information of each eip instance included in the service shared bandwidth, determining the speed adjustment information of each of the multiple eips included in the service shared bandwidth includes: Determine the traffic percentage of each EIP in the service shared bandwidth according to the traffic statistics in the service shared bandwidth instance and the traffic statistics in each EIP instance; Based on the rate limit token bucket configuration information in the service shared bandwidth instance and the traffic percentage of each eip in the service shared bandwidth, the rate limit token bucket configuration information of each eip is determined.

[0006] Optionally, the method further comprises: Receive the service message and send it to the corresponding target eip; Update the traffic statistics information of the eip instance corresponding to the target eip based on the message length of the service message; The traffic statistics information of the service shared bandwidth instance corresponding to the target eip is updated based on the message length of the service message.

[0007] Optionally, the method further comprises: Based on the IP information carried in the service message, the hash linked list is traversed to match the eip instance, and when the eip instance is matched, the target eip is determined; Based on the service shared bandwidth information recorded by the eip instance, a corresponding service shared bandwidth instance is determined.

[0008] Optionally, the method further comprises: When an eip instance is matched, determine whether a packet is lost based on the rate limit token bucket configuration information recorded by the eip instance; When packet loss is determined, the service message is discarded.

[0009] A second aspect of an embodiment of the present invention provides a shared bandwidth speed adjustment method, the method comprising: Obtain traffic statistics information of each service shared bandwidth, where the traffic statistics information represents the sum of traffic statistics information of all EIPs under the service shared bandwidth within a unit time; Based on the traffic statistics information of each service shared bandwidth, the rate limit token bucket configuration information of each service shared bandwidth is determined.

[0010] A third aspect of an embodiment of the present invention provides a service sharing bandwidth speed adjustment device, the device comprising: A first acquisition unit, configured to acquire traffic statistics information in a service shared bandwidth instance; A second acquisition unit is used to traverse the eip linked list of the service shared bandwidth instance to obtain the eip instance of each of the multiple eips included in the service shared bandwidth; The third acquisition unit is used to obtain traffic statistics information in each eip instance; The first determining unit is used to determine the speed adjustment information of each of the multiple EIPs included in the business shared bandwidth based on the traffic statistical information in the business shared bandwidth instance and the traffic statistical information of each of the EIP instances included in the business shared bandwidth.

[0011] Optionally, the first determining unit is specifically configured to: Determine the traffic percentage of each EIP in the service shared bandwidth according to the traffic statistics in the service shared bandwidth instance and the traffic statistics in each EIP instance; Based on the rate limit token bucket configuration information in the service shared bandwidth instance and the traffic percentage of each eip in the service shared bandwidth, the rate limit token bucket configuration information of each eip is determined.

[0012] Optionally, the device further comprises: A receiving unit, used to receive a service message and send the service message to a corresponding target eip; A first updating unit, configured to update the traffic statistics information of the eip instance corresponding to the target eip based on the message length of the service message; The second updating unit is used to update the traffic statistics information of the service shared bandwidth instance corresponding to the target eip based on the message length of the service message.

[0013] Optionally, the device further comprises: A matching unit, configured to traverse the hash linked list based on the IP information carried by the service message, match the eip instance, and determine the target eip when the eip instance is matched; The second determining unit is used to determine the corresponding service shared bandwidth instance based on the service shared bandwidth information recorded by the eip instance.

[0014] Optionally, the device further comprises: A third determination unit is used to determine whether a packet is lost based on the rate limit token bucket configuration information recorded by the eip instance when the eip instance is matched; The packet loss unit is used to discard the service message when packet loss is determined.

[0015] In an embodiment of the present invention, a fourth aspect provides a service sharing bandwidth speed adjustment device, the device comprising: An acquisition unit, used to acquire traffic statistics information of each service shared bandwidth, wherein the traffic statistics information represents the sum of traffic statistics information of all EIPs under the service shared bandwidth within a unit time; The determination unit is used to determine the rate limit token bucket configuration information of each service shared bandwidth based on the traffic statistics information of each service shared bandwidth.

[0016] A fifth aspect of an embodiment of the present invention provides a service sharing bandwidth speed regulation system, the system comprising: a network element device and a management platform, a rate limiting service module and a speed regulation service module configured on the network element device, the rate limiting service module of the network element device being used to: receive a service message, and send the service message to a corresponding target eip; update the flow statistics information of the eip instance corresponding to the target eip based on the message length of the service message; update the flow statistics information of the service sharing bandwidth instance corresponding to the target eip based on the message length of the service message; The speed regulation service module of the network element device is used to: obtain traffic statistics information in a service shared bandwidth instance; traverse the eip linked list of the service shared bandwidth instance to obtain the eip instances of each of the multiple eips included in the service shared bandwidth; obtain traffic statistics information in each eip instance; based on the traffic statistics information in the service shared bandwidth instance and the traffic statistics information of each eip instance included in the service shared bandwidth, determine the speed regulation information of each of the multiple eips included in the service shared bandwidth; The management platform is used to obtain traffic statistics information of each service shared bandwidth, where the traffic statistics information represents the sum of traffic statistics information of all EIPs under the service shared bandwidth within a unit time; Based on the traffic statistics information of each service shared bandwidth, the rate limit token bucket configuration information of each service shared bandwidth is determined.

[0017] A sixth aspect of an embodiment of the present invention provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes, the shared bandwidth speed regulation method as described in the first aspect or the second aspect of the present invention is implemented.

[0018] A seventh aspect of an embodiment of the present invention provides a computer-readable storage medium having a computer program stored thereon. When the program is executed by a processor, the shared bandwidth speed regulation method as described in the first aspect or the second aspect of the present invention is implemented.

[0019] An eighth aspect of an embodiment of the present invention provides a computer program product, including a computer program / instruction, which is used by a processor to implement the steps in the shared bandwidth speed regulation method described in the first aspect or the second aspect of the present invention.

[0020] In the embodiment of the present invention, the relationship between the eip and the service shared bandwidth is recorded on the data plane (network element device), the service core (speed limit service module) of the data plane records the traffic statistics, and then the speed regulation core (speed regulation service module) of the data plane allocates the actual speed limit value of each eip in proportion according to the traffic statistics of the eip under the service shared bandwidth. The data plane then directly calculates the traffic statistics of the service shared bandwidth, and then when the control plane (management platform) directly interacts with the data plane, it obtains the statistics of the service shared bandwidth, and there is no need to calculate the eip under the service shared bandwidth, nor is there a need to re-issue the configuration of the eip after calculation. The calculation amount is changed from the number of eips to the number of service shared bandwidths. Usually, a service shared bandwidth includes dozens to hundreds of eips, and the calculation time is greatly reduced, making the speed limit configuration more accurate and the network fluctuation smaller. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings required for use in the description of the embodiments of the present invention will be briefly introduced below. Obviously, the accompanying drawings in the following description are only some embodiments of the present invention. For ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without paying creative work.

[0022] Figure 1 is a flowchart of the steps of the shared bandwidth speed regulation method provided by an embodiment of the present invention; Figure 2 It is a schematic diagram of a process for determining speed regulation information in a shared bandwidth speed regulation method provided by an embodiment of the present invention; Figure 3 is a flowchart of another shared bandwidth speed adjustment method provided by an embodiment of the present invention; Figure 4 It is a design flow chart of a speed limit service module in a shared bandwidth speed regulation system provided by an embodiment of the present invention; Figure 5 It is a design flow chart of a speed regulation service module in a shared bandwidth speed regulation system provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0023] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.

[0024] The embodiment of the present invention provides an elastic IP shared bandwidth speed regulation method, which is completed by sinking the eip speed regulation of the shared bandwidth to the network element device on the data plane. The control plane (management platform) computing node actually only calculates the shared bandwidth, which greatly reduces the amount of calculation. Under the same specifications, the speed regulation cycle is shortened by 10 times. Compared with the traditional eip speed regulation method, it solves the problems of frequent traffic changes during the speed regulation cycle, resulting in inaccurate speed limit, large jitter of the speed limit waveform for a long time, and stability.

[0025] Specifically, Figure 1 As shown, it shows a flow chart of the steps of the shared bandwidth speed regulation method provided by an embodiment of the present invention, and the method includes the following steps: S101: Obtain traffic statistics information in a service shared bandwidth instance.

[0026] S102, traverse the eip linked list of the service shared bandwidth instance, and obtain the eip instance of each of the multiple eips included in the service shared bandwidth.

[0027] S103, obtaining traffic statistics information in each eip instance.

[0028] S104: Determine speed adjustment information of each of the multiple EIPs included in the service shared bandwidth based on the traffic statistics information in the service shared bandwidth instance and the traffic statistics information of each of the EIP instances included in the service shared bandwidth.

[0029] In an embodiment of the present invention, the above method is applied to network element devices in a virtual cloud network. In a virtual cloud network, network element devices refer to the basic units that constitute the network, such as routers, switches, etc. In a virtual cloud network, these devices are usually virtualized and can be dynamically configured and expanded. Network element devices are responsible for tasks such as forwarding, routing, and security control of data packets, and are the basis of network communication. Virtual network element devices can be quickly deployed and adjusted according to business needs to improve resource utilization and flexibility.

[0030] Business shared bandwidth means that multiple businesses or services share the same bandwidth resources. This sharing mechanism can improve bandwidth utilization and reduce costs, especially when business traffic fluctuates greatly, bandwidth resources can be allocated more flexibly. Through the management platform corresponding to the cloud platform, the use of shared bandwidth can be monitored and adjusted to ensure business performance.

[0031] In a virtual cloud network, elastic IP (eip) is an important network resource. After an elastic IP is allocated to a user, the user can hold it for a long time, simplifying DNS configuration and maintenance. In addition, the user can bind or unbind the elastic IP to different cloud resources (such as virtual machines, load balancers) at any time to achieve high availability and fault recovery. Through the user interface or API, the user can easily manage the allocation and binding status of the elastic IP.

[0032] Business shared bandwidth allows multiple elastic IPs to share one bandwidth, and centralized speed limits are applied to multiple elastic IPs. It provides regional-level bandwidth sharing and reuse capabilities, and all elastic cloud servers, elastic load balancing and other instances bound to elastic IPs in the same region share one bandwidth resource.

[0033] In the embodiment of the present invention, a speed-limiting service module and a speed-regulating service module can be configured on the network element device. Specifically, there can be multiple speed-limiting service modules, which can be implemented by a speed-limiting service core to receive and process service messages respectively. For a network element device, there can be only one speed-regulating service module, which can be implemented by a separate speed-regulating service core, which is used to perform traffic statistics on the service shared bandwidth corresponding to the network element device and the eip under the service shared bandwidth, and complete the speed regulation of the eip under the service shared bandwidth.

[0034] In the embodiment of the present invention, the eip instance table entry and the shared bandwidth instance table entry can be stored and maintained in the network element device.

[0035] Specifically, the eip instance table entry can be shown in the following table:

[0036] Specifically, the specific parameters of the eip instance table structure are described as follows: struct list_head node indicates that the eip instance adopts a linked list structure.

[0037] uint32_t eip means: the key unique identifier of the business instance, which is also used for hashing in linked lists to solve fast search.

[0038] uint32_t group_id means: shared bandwidth id, which identifies which group_id this eip is associated with.

[0039] struct token token means: eip instance rate limit token bucket configuration.

[0040] struct work_flow_stat stat means: eip instance service flow statistics.

[0041] In the embodiment of the present invention, the eip (elastic IP) instance table entry is a record of an independent public IP address allocated to cloud resources in a virtual cloud network. The eip instance table entry involves the lifecycle management of the eip, including the creation, binding, unbinding, and release of the eip. Users can manage the eip through the management console or API, such as adding or removing the eip, and monitoring the usage of the eip.

[0042] In the embodiment of the present invention, the shared bandwidth instance table entry may be shown in the following table:

[0043] Specifically, the specific parameters of the shared bandwidth instance table entry structure are described as follows: struct list_head group_node indicates that the shared bandwidth instance adopts a linked list structure.

[0044] struct list_head eip_node represents: the linked list structure of eip under this shared bandwidth.

[0045] uint32_t group_id means: shared bandwidth id, the key unique identifier of the shared bandwidth instance, and is also used for linked lists as hashes to solve fast search.

[0046] struct token token means: the speed limit token bucket configuration of the shared bandwidth instance.

[0047] struct work_flow_stat stat means: business flow statistics of shared bandwidth instance.

[0048] In the embodiment of the present invention, the shared bandwidth instance table entry refers to a bandwidth resource pool created in the cloud network, allowing multiple EIPs to share a bandwidth resource. This sharing mechanism can improve bandwidth utilization and reduce costs, especially when the business traffic fluctuates greatly, and bandwidth resources can be allocated more flexibly.

[0049] Based on the shared bandwidth instance table, it is possible to implement speed limits for individual EIPs and provide bandwidth sharing and multiplexing capabilities at the regional level. In the embodiment of the present invention, the shared bandwidth instance table also involves quota limits for shared bandwidth, such as the maximum number of EIPs that can be added to a single shared bandwidth instance. Users can manage shared bandwidth instances through the management console or API, such as creating shared bandwidth, adding or removing EIPs, etc.

[0050] In the embodiment of the present invention, shared bandwidth provides regional bandwidth sharing and multiplexing functions. After creating a shared bandwidth instance, EIP can be added to the shared bandwidth instance. The public network entrance and exit can be uniformly managed through the shared bandwidth, and the bandwidth peak at the Gbps level can be used.

[0051] In the embodiment of the present invention, the speed regulation service module configured on the network element device can determine the service flow statistics corresponding to the shared bandwidth from the parameter of the service shared bandwidth instance: struct work_flow_stat stat. According to the parameter structlist_head eip_node, traverse the eip linked list of the shared bandwidth instance; obtain each eip instance in turn. Then obtain the flow statistics information of each eip from the parameter: struct work_flow_stat stat in each eip instance.

[0052] Finally, based on the traffic statistics in the service shared bandwidth instance and the traffic statistics of each eip instance, the speed adjustment information of each eip included in the service shared bandwidth is determined. In the embodiment of the present invention, the speed regulation service module can also traverse the shared bandwidth instance list to obtain multiple service shared bandwidth instances, and then obtain the eip instances corresponding to each service shared bandwidth.

[0053] In the embodiment of the present invention, the step S104 specifically includes the following sub-steps: S1041: Determine the traffic percentage of each eip in the service shared bandwidth according to the traffic statistics information in the service shared bandwidth instance and the traffic statistics information in each eip instance.

[0054] S1042: Based on the rate limit token bucket configuration information in the service shared bandwidth instance and the traffic percentage of each eip in the service shared bandwidth, determine the rate limit token bucket configuration information of each eip.

[0055] In the embodiment of the present invention, the traffic statistics information in each eip instance can be calculated according to the traffic statistics information stat of the shared bandwidth and the traffic statistics information stat of each eip to determine the traffic percentage percent of each eip in the service shared bandwidth.

[0056] In the embodiment of the present invention, the rate limit token bucket configuration token of each EIP may be further calculated based on the rate limit token bucket configuration information token of the shared bandwidth instance and the calculated percent.

[0057] Specifically, in the embodiment of the present invention, the process of determining the speed adjustment information is as follows: Figure 2As shown, by traversing the eip linked list of the A1 shared bandwidth instance, the eipB1 instance, eipB2 instance...eipBn instance under the A1 shared bandwidth instance can be obtained, and the traffic statistics information can be determined based on the stat of each eip instance.

[0058] Specifically, A1_stat indicates the traffic statistics of A1 shared bandwidth, which is also the sum of all eip traffic statistics of this shared bandwidth. B1_stat indicates the traffic statistics of eip_B1 under A1 shared bandwidth.

[0059] A1_token indicates the token bucket configuration of A1 shared bandwidth.

[0060] B1_token indicates the token bucket configuration of eip_B1 under A1 shared bandwidth.

[0061] Then, B1_token= B1_stat / A1_stat ×A1_token.

[0062] Bn_token=Bn_stat / A1_stat × A1_token.

[0063] Therefore, in the embodiment of the present invention, based on the service sharing bandwidth instance and the eip instance, the eip speed regulation can be transferred to the data on the network element device through the speed regulation service module.

[0064] In the embodiment of the present invention, the speed regulation service module can periodically regulate the speed of the eip. In order to make the speed regulation information as close as possible to the actual traffic situation of each eip and avoid the situation where the token bucket configuration is inconsistent with the actual traffic situation, the speed regulation period can be shortened. In the embodiment of the present invention, the speed regulation period can be set to 1 second.

[0065] In an embodiment of the present invention, the method further comprises the following steps: S11, receiving a service message, and sending the service message to the corresponding target eip.

[0066] S12: Update the traffic statistics information of the eip instance corresponding to the target eip based on the message length of the service message.

[0067] S13: Update the traffic statistics information of the service shared bandwidth instance corresponding to the target eip based on the message length of the service message.

[0068] In the embodiment of the present invention, the above steps S11 to S13 may be executed by a rate limiting service module configured in the network element device.

[0069] In the embodiment of the present invention, the rate-limiting service module receives the service message, sends the service message to the corresponding target eip according to the target eip information carried by the service message, and updates the traffic statistics information stat of the eip instance corresponding to the target eip according to the message length. In addition, the traffic statistics information stat of the service shared bandwidth instance corresponding to the target eip is also updated.

[0070] In the embodiment of the present invention, considering that the speed regulation service module periodically regulates the speed of each EIP, the traffic statistical information based on the corresponding speed regulation service module is also periodically updated. Therefore, in the embodiment of the present invention, the traffic statistical information can be updated and counted periodically based on the speed regulation cycle.

[0071] For example, if the speed adjustment cycle is 10 seconds, then within 10 seconds, the speed limit service module accumulates and updates its traffic statistics according to the message lengths of multiple messages received and sent to eipB1. At the end of a cycle, the traffic statistics update of eipB1 is cleared, and the traffic statistics are accumulated and updated according to the message lengths of multiple messages received and sent to eipB1 in the new cycle.

[0072] Correspondingly, for the A1 shared bandwidth to which eipB1 belongs, its traffic statistics information can also be updated according to the speed adjustment cycle. For example, assuming that the A1 shared bandwidth has three eips, namely eipB1, eipB2 and eipB3, and in the first cycle, eipB1, eipB2 and eipB3 each receive a message, then the traffic statistics information of the assumed A1 shared bandwidth can be cumulatively updated according to the total length of the messages received by each of the three eips. At the end of the cycle, the traffic statistics information of the A1 shared bandwidth is updated and cleared, and its traffic statistics information is cumulatively updated according to the message lengths of multiple messages received and sent to eipB1, eipB2 and eipB3 in the new cycle.

[0073] In the embodiment of the present invention, before step S11, the method further includes the following steps: S21, based on the IP information carried by the service message, traverse the hash linked list to match the eip instance, and determine the target eip if the eip instance is matched; S22: Determine a corresponding service shared bandwidth instance based on the service shared bandwidth information recorded by the eip instance.

[0074] In the embodiment of the present invention, after receiving the service message, the rate limiting service module can perform hash calculation based on the IP in the service message as the key, and then traverse the hash linked list to match the eip instance. If it fails, the packet is lost and the module exits. If it succeeds, the eip instance is hit to determine the target eip.

[0075] After hitting the eip instance, you can find the shared bandwidth instance based on the group_id recorded on the eip instance.

[0076] For example, after performing hash calculation based on the IP information in the service message and traversing the hash linked list, the eipB1 instance is matched, and the A1 shared bandwidth instance corresponding to the eip instance is determined according to the uint32_t group_id parameter in the eipB1 instance.

[0077] In the embodiment of the present invention, when an eip instance is matched, it is necessary to further determine whether to send the service message to the target eip based on the rate-limiting token bucket of the eip instance. Specifically, in the embodiment of the present invention, the method further includes the following steps: S23: When an eip instance is matched, determine whether a packet is lost based on the rate limit token bucket configuration information recorded by the eip instance.

[0078] S24: When packet loss is determined, discard the service message.

[0079] In the embodiment of the present invention, the rate-limited token bucket configuration can be used to control the transmission rate of data packets, allowing data to be transmitted at a higher rate in a certain time interval and at a lower rate in other time intervals, thereby achieving traffic shaping and rate limiting. When there are enough tokens in the token bucket, burst traffic can be processed quickly without discarding data packets due to fixed rate limits.

[0080] In the embodiment of the present invention, the percentage of traffic occupied by each eip instance and the traffic statistics of the shared bandwidth can be calculated. This percentage can be used to dynamically adjust the speed limit token bucket configuration of each eip, thereby achieving more refined bandwidth allocation.

[0081] In the embodiment of the present invention, by configuring the rate-limiting token bucket, the utilization efficiency of network resources can be improved while ensuring network stability. For example, when the network load is light, more data packets can be allowed to pass, and when the network load is heavy, the transmission of data packets is limited to avoid network congestion.

[0082] In the embodiment of the present invention, in the scenario of sharing bandwidth, different eip instances may have different service quality requirements. Through the rate-limiting token bucket configuration, token buckets of different sizes can be allocated to different eip instances, thereby ensuring the service quality of high-priority services.

[0083] In the embodiment of the present invention, by configuring a rate-limiting token bucket to limit the bandwidth usage of each eip instance, it is possible to prevent individual instances from abusing shared bandwidth resources, thereby ensuring fair usage of all instances.

[0084] In the embodiment of the present invention, it can be determined whether to limit the packet loss according to the token and message length of the eip instance and the token bucket algorithm. Before determining whether to limit the packet loss, the flow information can be updated according to the message length of the data packet, that is, step S24 is performed after step S13, so that even if the packet loss is determined, the message can still be counted in the flow statistics. So that the flow statistics information can better reflect the flow demand of the eip.

[0085] In the shared bandwidth speed regulation method provided by the embodiment of the present invention, the speed regulation of the eip under the shared bandwidth is sunk to the data plane and completed on the network element device. Accordingly, the computing node of the management platform of the control plane actually only needs to calculate the traffic statistics and speed regulation of the shared bandwidth, so the amount of calculation is greatly reduced, and the speed regulation based on the shared bandwidth can be completed within an adjustment period of 1 second. For example, the configuration specifications are calculated according to the specifications of 100,000 eips and 10,000 shared bandwidths. The traditional shared bandwidth speed regulation method has an adjustment period of about 10 seconds. Since the traffic changes irregularly, the proportion of different eip traffic under the same shared bandwidth changes at any time. If it is adjusted once every 10 seconds, the network speed waveform of each eip will fluctuate greatly. By adopting the technical solution provided by the embodiment of the present invention, the shared bandwidth speed regulation can be completed within 1 second, the impact on traffic fluctuations is small, and the waveform is basically stable.

[0086] Another shared bandwidth speed adjustment method is also provided in the embodiment of the present invention. Figure 3 As shown, it shows a flow chart of another shared bandwidth speed adjustment method provided by an embodiment of the present invention, the method comprising the following steps: S301, obtaining traffic statistics information of each service shared bandwidth, where the traffic statistics information represents the sum of traffic statistics information of all EIPs under the service shared bandwidth within a unit time.

[0087] S302: Determine rate limit token bucket configuration information of each service shared bandwidth based on traffic statistics information of each service shared bandwidth.

[0088] In the embodiment of the present invention, the above steps S301-S302 can be executed by the management platform corresponding to the virtual cloud network. For the management platform, only traffic statistics and speed adjustment of the shared bandwidth are needed, which greatly reduces the amount of calculation and can complete the speed adjustment based on the shared bandwidth within the adjustment period of 1 second.

[0089] Based on the same inventive concept, an embodiment of the present invention further provides a service sharing bandwidth speed regulation system, the system comprising: a network element device and a management platform, a rate limiting service module and a speed regulation service module are configured on the network element device, the rate limiting service module of the network element device is used to: receive a service message, and send the service message to a corresponding target eip; update the traffic statistics information of the eip instance corresponding to the target eip based on the message length of the service message; update the traffic statistics information of the service sharing bandwidth instance corresponding to the target eip based on the message length of the service message; The speed regulation service module of the network element device is used to: obtain traffic statistics information in a service shared bandwidth instance; traverse the eip linked list of the service shared bandwidth instance to obtain the eip instances of each of the multiple eips included in the service shared bandwidth; obtain traffic statistics information in each eip instance; based on the traffic statistics information in the service shared bandwidth instance and the traffic statistics information of each eip instance included in the service shared bandwidth, determine the speed regulation information of each of the multiple eips included in the service shared bandwidth; The management platform is used to obtain traffic statistics information of each service shared bandwidth, where the traffic statistics information represents the sum of traffic statistics information of all EIPs under the service shared bandwidth within a unit time; Based on the traffic statistics information of each service shared bandwidth, the rate limit token bucket configuration information of each service shared bandwidth is determined.

[0090] Specifically, the design flow chart of the speed limit service module is as follows: Figure 4 As shown, in the embodiment of the present invention, the speed limit service module (speed limit service core) receives a data packet, and uses the IP of the message in the data packet as a key to determine whether it can match the speed limit eip instance list. If matched, the shared bandwidth instance is found according to the group_id recorded on the eip instance, and the stat traffic statistics of the eip instance are updated according to the message length. The stat traffic statistics of the shared bandwidth instance are further updated according to the message length. Finally, according to the token of the eip instance and the message length, it is determined according to the token bucket algorithm whether to limit the packet loss. If it is determined that the packet loss is required, the packet loss is performed. If it is determined that the packet loss is not required, the data packet is sent to the corresponding eip.

[0091] In the embodiment of the present invention, there may be multiple rate-limiting service modules, which process multiple data packets sent to the virtual cloud network respectively.

[0092] In the embodiment of the present invention, after determining the eip instance matched by the data packet, the speed limit service module updates the traffic statistics information of the eip instance and the corresponding shared bandwidth instance according to the message length of the data packet. Whether the data packet is subsequently dropped or sent, it does not affect the traffic statistics of the data packet that should actually be sent to the eip. The recorded traffic statistics information can more realistically reflect the size of the traffic actually sent to the eip, so that when the speed regulation information is subsequently determined by the speed regulation service module, it can be more accurately close to the actual situation of the traffic sent to each eip.

[0093] Specifically, the design flow chart of the speed regulation business module is as follows: Figure 5 As shown, in the embodiment of the present invention, the speed regulation service module can traverse the shared bandwidth instance list, obtain each service shared bandwidth instance, and then obtain the traffic statistics stat of the shared bandwidth, and then traverse the eip list of the shared bandwidth instance, obtain each eip instance in turn, and obtain the traffic statistics stat of the eip, and then calculate the traffic percentage percent according to the stat of the shared bandwidth and the stat of the eip, and finally calculate the speed limit token bucket configuration token on the eip according to the speed limit token bucket configuration token on the shared bandwidth instance and the calculated percent.

[0094] In the embodiment of the present invention, the management platform only needs to perform traffic statistics and speed regulation of the shared bandwidth, so the amount of calculation is greatly reduced, and the speed regulation based on the shared bandwidth can be completed within an adjustment period of 1 second.

[0095] Therefore, in the embodiment of the present invention, the relationship between the eip and the service shared bandwidth is recorded on the data plane (network element device), the service core (speed limit service module) of the data plane records the traffic statistics, and then the speed regulation core (speed regulation service module) of the data plane allocates the actual speed limit value of each eip in proportion according to the traffic statistics of the eip under the service shared bandwidth. The data plane then directly calculates the traffic statistics of the service shared bandwidth, and then when the control plane (management platform) directly interacts with the data plane, it gets the statistics of the service shared bandwidth, and there is no need to calculate the eip under the service shared bandwidth, nor is there a need to re-issue the configuration of the eip after calculation. The calculation amount is changed from the number of eips to the number of service shared bandwidths. Usually, a service shared bandwidth includes dozens to hundreds of eips, and the calculation time is greatly reduced, making the speed limit fluctuation smaller and more accurate.

[0096] Based on the same inventive concept, an embodiment of the present invention further provides a service sharing bandwidth speed adjustment device, the device comprising: A first acquisition unit, configured to acquire traffic statistics information in a service shared bandwidth instance; A second acquisition unit is used to traverse the eip linked list of the service shared bandwidth instance to obtain the eip instance of each of the multiple eips included in the service shared bandwidth; The third acquisition unit is used to obtain traffic statistics information in each eip instance; The first determining unit is used to determine the speed adjustment information of each of the multiple EIPs included in the business shared bandwidth based on the traffic statistical information in the business shared bandwidth instance and the traffic statistical information of each of the EIP instances included in the business shared bandwidth.

[0097] Optionally, the first determining unit is specifically configured to: Determine the traffic percentage of each EIP in the service shared bandwidth according to the traffic statistics in the service shared bandwidth instance and the traffic statistics in each EIP instance; Based on the rate limit token bucket configuration information in the service shared bandwidth instance and the traffic percentage of each eip in the service shared bandwidth, the rate limit token bucket configuration information of each eip is determined.

[0098] Optionally, the device further comprises: A receiving unit, used to receive a service message and send the service message to a corresponding target eip; A first updating unit, configured to update the traffic statistics information of the eip instance corresponding to the target eip based on the message length of the service message; The second updating unit is used to update the traffic statistics information of the service shared bandwidth instance corresponding to the target eip based on the message length of the service message.

[0099] Optionally, the device further comprises: A matching unit, configured to traverse the hash linked list based on the IP information carried by the service message, match the eip instance, and determine the target eip when the eip instance is matched; The second determining unit is used to determine the corresponding service shared bandwidth instance based on the service shared bandwidth information recorded by the eip instance.

[0100] Optionally, the device further comprises: A third determination unit is used to determine whether a packet is lost based on the rate limit token bucket configuration information recorded by the eip instance when the eip instance is matched; The packet loss unit is used to discard the service message when packet loss is determined.

[0101] Based on the same inventive concept, an embodiment of the present invention further provides a service sharing bandwidth speed adjustment device, the device comprising: An acquisition unit, used to acquire traffic statistics information of each service shared bandwidth, wherein the traffic statistics information represents the sum of traffic statistics information of all EIPs under the service shared bandwidth within a unit time; The determination unit is used to determine the rate limit token bucket configuration information of each service shared bandwidth based on the traffic statistics information of each service shared bandwidth.

[0102] Based on the same inventive concept, an embodiment of the present invention further provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes, the steps in the shared bandwidth speed regulation method described in any of the above embodiments are implemented.

[0103] Based on the same inventive concept, an embodiment of the present invention further provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the steps in the shared bandwidth speed regulation method described in any of the above embodiments are implemented.

[0104] Based on the same inventive concept, an embodiment of the present invention provides a computer program product, including a computer program / instruction, which implements the steps of the shared bandwidth speed regulation method described in any of the above embodiments when executed by a processor.

[0105] The various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the various embodiments can be referenced to each other.

[0106] Those skilled in the art will appreciate that the embodiments of the embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the embodiments of the present invention may take the form of complete hardware embodiments, complete software embodiments, or embodiments combining software and hardware. Moreover, the embodiments of the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.

[0107] The embodiments of the present invention are described with reference to the flowcharts and / or block diagrams of the methods, terminal devices (apparatus), and computer program products according to the embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable terminal device to generate a machine, so that the instructions executed by the processor of the computer or other programmable terminal device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0108] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable terminal device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a manufactured product including an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0109] These computer program instructions can also be loaded onto a computer or other programmable terminal device so that a series of operating steps are executed on the computer or other programmable terminal device to produce a computer-implemented process, thereby providing instructions for executing on the computer or other programmable terminal device to implement the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0110] Although the preferred embodiments of the present invention have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the embodiments of the present invention.

[0111] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or terminal device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or terminal device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or terminal device including the elements.

[0112] The above is a detailed introduction to a shared bandwidth speed regulation method provided by the present invention. This article uses specific examples to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core idea. At the same time, for those skilled in the art, according to the idea of ​​the present invention, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as limiting the present invention.

Claims

1. A shared bandwidth speed regulation method, characterized in that: The method comprises: Obtain traffic statistics in a service shared bandwidth instance; Traversing the eip linked list of the service shared bandwidth instance, and obtaining the eip instance of each of the multiple eips included in the service shared bandwidth; Get traffic statistics in each EIP instance; Based on the traffic statistics information in the service shared bandwidth instance and the traffic statistics information of each eip instance included in the service shared bandwidth, the speed adjustment information of each of the multiple eips included in the service shared bandwidth is determined.

2. The shared bandwidth speed regulation method according to claim 1, characterized in that: Determining speed adjustment information of each of the multiple EIPs included in the service shared bandwidth based on traffic statistics information in the service shared bandwidth instance and traffic statistics information of each of the EIP instances included in the service shared bandwidth includes: Determine the traffic percentage of each EIP in the service shared bandwidth according to the traffic statistics in the service shared bandwidth instance and the traffic statistics in each EIP instance; Based on the rate limit token bucket configuration information in the service shared bandwidth instance and the traffic percentage of each eip in the service shared bandwidth, the rate limit token bucket configuration information of each eip is determined.

3. The shared bandwidth speed regulation method according to claim 1, characterized in that: The method further comprises: Receive the service message and send it to the corresponding target eip; Update the traffic statistics information of the eip instance corresponding to the target eip based on the message length of the service message; The traffic statistics information of the service shared bandwidth instance corresponding to the target eip is updated based on the message length of the service message.

4. The shared bandwidth speed regulation method according to claim 3, characterized in that: The method further comprises: Based on the IP information carried in the service message, the hash linked list is traversed to match the eip instance, and when the eip instance is matched, the target eip is determined; Based on the service shared bandwidth information recorded by the eip instance, a corresponding service shared bandwidth instance is determined.

5. The shared bandwidth speed regulation method according to claim 4, characterized in that: The method further comprises: When an eip instance is matched, determine whether a packet is lost based on the rate limit token bucket configuration information recorded by the eip instance; When packet loss is determined, the service message is discarded.

6. A shared bandwidth speed regulation method, characterized in that: The method comprises: Obtain traffic statistics information of each service shared bandwidth, where the traffic statistics information represents the sum of traffic statistics information of all EIPs under the service shared bandwidth within a unit time; Based on the traffic statistics information of each service shared bandwidth, the rate limit token bucket configuration information of each service shared bandwidth is determined.

7. A service sharing bandwidth speed regulation system, characterized in that: The system includes: a network element device and a management platform, wherein a rate-limiting service module and a rate-adjusting service module are configured on the network element device, and the rate-limiting service module of the network element device is used to: receive a service message, and send the service message to a corresponding target eip; update the flow statistics information of the eip instance corresponding to the target eip based on the message length of the service message; update the flow statistics information of the service shared bandwidth instance corresponding to the target eip based on the message length of the service message; The speed regulation service module of the network element device is used to: obtain traffic statistics information in a service shared bandwidth instance; traverse the eip linked list of the service shared bandwidth instance to obtain the eip instances of each of the multiple eips included in the service shared bandwidth; obtain traffic statistics information in each eip instance; based on the traffic statistics information in the service shared bandwidth instance and the traffic statistics information of each eip instance included in the service shared bandwidth, determine the speed regulation information of each of the multiple eips included in the service shared bandwidth; The management platform is used to obtain traffic statistics information of each service shared bandwidth, where the traffic statistics information represents the sum of traffic statistics information of all EIPs under the service shared bandwidth within a unit time; Based on the traffic statistics information of each service shared bandwidth, the rate limit token bucket configuration information of each service shared bandwidth is determined.

8. 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, the shared bandwidth speed regulation method according to any one of claims 1 to 5 or the shared bandwidth speed regulation method according to claim 6 is implemented.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the shared bandwidth speed regulation method described in any one of claims 1 to 5 or the shared bandwidth speed regulation method described in claim 6 is implemented.

10. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instruction is executed by a processor, the steps in the shared bandwidth speed regulation method described in any one of claims 1 to 5 or the shared bandwidth speed regulation method described in claim 6 are implemented.

Citation Information

Patent Citations

  • Method for segmentally counting the internal and external flow of elastic public network IP in shared bandwidth

    CN112671597A

  • Bandwidth management and configuration method of cloud service and related device

    CN116614378A

  • Method for realizing lock-free speed limit through multi-core dynamic rate adjustment

    CN117880208A

  • Network traffic rate limiting method and device, central control equipment and gateways

    WO2021083269A1

Cited By

  • Bandwidth elastic scaling method and system, electronic equipment and storage medium

    CN120528798A