A Multi-Link Flow Control Method Based on Leaky Bucket Reuse
By using a multi-link flow control method based on leaky bucket reuse, and utilizing flow identification information and flow distribution information, the fixed binding between interfaces and links is removed. This enables the expansion of the number of logical links supported by the flow control device without increasing the number of physical leaky buckets, while maintaining the consistency of flow control results.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HAOHAN DATA
- Filing Date
- 2026-04-30
- Publication Date
- 2026-07-31
AI Technical Summary
In existing flow control devices, the static binding of interfaces, links, and leaky bucket spaces limits the number of logical links, making it difficult to expand the number of supported logical links without increasing the number of physical leaky buckets, and to keep the link flow control results consistent with the target total flow control rate.
By using a multi-link flow control method based on leaky bucket reuse, logical link identifiers are determined using traffic identification information, target leaky bucket addressing information is obtained, and traffic is directed to the corresponding leaky bucket in the first leaky bucket space or the second leaky bucket space. Flow control is executed jointly, and the target total flow control rate is split based on traffic distribution information and configured to the corresponding leaky bucket in the dual leaky bucket space.
Without increasing the number of physical leaky buckets, the number of logical links that the flow control device can support is expanded, and the joint flow control results are kept consistent with the target total flow control rate, thus improving the adaptability and scalability of the flow control device.
Smart Images

Figure CN122120208B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a multi-link flow control method based on leaky bucket multiplexing, belonging to the field of network flow control technology. Background Technology
[0002] In network flow control devices, link flow control is a crucial function for ensuring reasonable allocation of network bandwidth and avoiding congestion. Its core implementation mechanism typically employs the leaky bucket algorithm. Hardware flow control devices based on the leaky bucket algorithm are widely used in various network flow control scenarios due to their high processing performance and low processing latency.
[0003] Existing flow control devices generally employ a static binding method between interfaces, links, and leaky bucket spaces. For example, the device sets up a first leaky bucket space and a second leaky bucket space. Traffic entering from the first interface group undergoes flow control in the first leaky bucket space, and traffic entering from the second interface group undergoes flow control in the second leaky bucket space. The first interface group is mapped to the first link, and the second interface group is mapped to the second link. Therefore, the number of independent links that the device can support for flow control is directly limited by the number of physical leaky bucket spaces.
[0004] With the application of technologies such as Virtual Private Networks (VPNs) and Software-Defined Networking (SDN), the number of logical links that a single device needs to handle is constantly increasing. Existing static binding methods are difficult to adapt to multi-link scenarios without changing the existing physical leaky bucket resources. This usually requires adding hardware resources or replacing equipment, resulting in poor adaptability and high expansion costs. Therefore, how to expand the number of logical links that flow control devices can support without increasing the number of physical leaky buckets, and keep the link flow control results consistent with the target total flow control rate, has become a technical problem that needs to be solved in this field. Summary of the Invention
[0005] The purpose of this invention is to provide a multi-link flow control method based on leaky bucket reuse, so as to solve the problem that the number of supported logical links is limited due to the static binding of interfaces, links and leaky bucket space in existing flow control devices.
[0006] To solve the above-mentioned technical problems, the present invention is implemented using the following technical solution.
[0007] On one hand, this invention provides a multi-link flow control method based on leaky bucket multiplexing, applied to a flow control device. The flow control device includes a first leaky bucket space, a second leaky bucket space, and multiple interface groups for receiving traffic, including: For traffic entering the flow control device, the logical link identifier corresponding to the traffic is determined based on the traffic identifier information carried by the traffic. Based on the logical link identifier, obtain the target leaky bucket addressing information corresponding to the logical link identifier; Based on the interface group into which the traffic enters, the traffic is directed to the corresponding leaky bucket indicated by the target leaky bucket addressing information in the first leaky bucket space or the second leaky bucket space, so that the first leaky bucket space and the second leaky bucket space jointly perform the flow control of the logical link; Obtain the traffic distribution information of the logical link in the first leaky bucket space and the second leaky bucket space; Based on the traffic distribution information, the target total flow control rate is divided into a first flow control rate and a second flow control rate, and respectively configured into corresponding leak buckets in the first leak bucket space and the second leak bucket space, wherein the sum of the first flow control rate and the second flow control rate is equal to the target total flow control rate.
[0008] Furthermore, the traffic identification information is a VLAN number, and a mapping relationship between the VLAN number, the link number, and the traffic direction is established through the link identification module.
[0009] Furthermore, the target leaky bucket addressing information is obtained by the traffic matching module by searching in the TCAM based on the link number.
[0010] Furthermore, traffic from different interface groups but belonging to the same logical link enters the corresponding leaky buckets with the same address in the first leaky bucket space and the second leaky bucket space, respectively.
[0011] Furthermore, the traffic distribution information includes the arrival traffic of the logical link in the first leaky bucket space and the arrival traffic in the second leaky bucket space, and the first flow control rate and the second flow control rate are allocated according to the proportion of the arrival traffic in the first leaky bucket space and the second leaky bucket space.
[0012] Furthermore, the traffic identification information is a traffic feature key, and the logical link identifier is a dynamic link instance number determined based on the traffic feature key; The dynamic link instance number is created, maintained, or released as a candidate based on the active status of the traffic feature key using the dynamic link instance table.
[0013] Furthermore, the target leaky bucket addressing information is a shared address pair. The shared address pair is determined through an address pair status management mechanism, and the address pairs that simultaneously meet the reusability condition in the first leaky bucket space and the second leaky bucket space are allocated.
[0014] Furthermore, the mapping relationship between the dynamic link instance number and the shared address pair is established through a dual-version mapping zone, and is switched on and takes effect after the shared address pair is prepared.
[0015] Furthermore, the address pair state management mechanism includes at least an idle state, a bound state, a drained state, and an isolated observation state, and the shared address pair goes through a drained stage and an isolated observation stage in sequence before re-entering the allocatable state.
[0016] Furthermore, the flow distribution information includes smoothed flow distribution information and deviation compensation information. The first flow control rate and the second flow control rate are determined by the smoothed flow distribution information and the deviation compensation information. Amplitude limiting control is performed on the adjustment range of the first flow control rate and the second flow control rate. When at least one leaky bucket space is in a continuously active state, a minimum retention rate is set for at least one of the first flow control rate and the second flow control rate.
[0017] Compared with the prior art, the beneficial effects achieved by the present invention are as follows: 1. By determining the logical link identifier through traffic identification information, and obtaining the target leaky bucket addressing information based on the logical link identifier, the link identification is no longer dependent on the physical interface location, thereby breaking the fixed binding relationship between the interface and the link, and expanding the number of logical links that the flow control device can support without increasing the number of physical leaky buckets. 2. By directing traffic from different interface groups that belong to the same logical link to the corresponding leaky buckets in the first leaky bucket space and the second leaky bucket space respectively, the first leaky bucket space and the second leaky bucket space jointly execute the flow control of the same logical link; combining the traffic distribution information of the logical link in the two leaky bucket spaces, the target total flow control rate is split and configured to the corresponding leaky buckets in the dual leaky bucket spaces respectively, so that the overall result after joint flow control is consistent with the target total flow control rate. Attached Figure Description
[0018] Figure 1 The diagram shown is a schematic representation of the overall flow control method of the present invention. Figure 2 The diagram shown is a schematic of the flow control device of the present invention; Figure 3 The diagram shows the mapping relationship between traffic identification information, link number, and corresponding traffic direction; Figure 4 The diagram shown is a schematic representation of the process described in Embodiment 1 of the present invention; Figure 5 The diagram shown is a schematic representation of the process described in Embodiment 2 of the present invention. Detailed Implementation
[0019] This invention can be modified in many ways and has many embodiments, with specific embodiments shown in the accompanying drawings for detailed description. However, this does not mean that the invention is limited to a specific implementation; it should be understood that all modifications, equivalents, and even substitutions falling within the concept and technical scope of this invention are included in this invention. Similar reference numerals are used for similar constituent elements in the description of the drawings.
[0020] The terms “first,” “second,” “A,” “B,” etc., are used to describe a wide variety of constituent elements, but these constituent elements are not limited by these terms. These terms are used to distinguish one constituent element from others. For example, without departing from the scope of the invention, a first constituent element may be named a second constituent element, and similarly, a second constituent element may be named a first constituent element. The term “and / or” includes a combination of multiple associated descriptions, or one of multiple associated descriptions.
[0021] When it is mentioned that a certain constituent element is "connected" or "linked" to other constituent elements, it can mean not only that the element is directly connected or linked to the other constituent element, but also that there are other constituent elements in between. Conversely, when it is mentioned that a certain constituent element is "directly connected" or "directly linked" to other constituent elements, there are no other constituent elements in between.
[0022] The terminology used in this application is for illustrative purposes only and is not intended to limit the scope of the invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. Terms such as "comprising" or "having" as used herein do not preclude the possibility of the presence or addition of features, numbers, stages, actions, constituent elements, components, or combinations thereof described in the specification.
[0023] Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains.
[0024] Terms defined in common dictionaries should be interpreted as having the same meaning as in the context of the relevant technology, and should not be interpreted as having an ideal or overly formal meaning unless explicitly defined in this application.
[0025] Example 1 refer to Figures 1 to 4As shown in this embodiment, a multi-link flow control method based on leaky bucket multiplexing is introduced, applied to a flow control device. The flow control device includes a first leaky bucket space, a second leaky bucket space, and multiple interface groups for receiving traffic. The flow control device includes, but is not limited to, four interfaces. For example, interface 0 and interface 1 constitute the first interface group, and interface 2 and interface 3 constitute the second interface group. Traffic entering through the first interface group undergoes flow control in the first leaky bucket space, and traffic entering through the second interface group undergoes flow control in the second leaky bucket space. The flow control device includes a first leaky bucket space, a second leaky bucket space, and multiple interface groups.
[0026] The method includes: For traffic entering the flow control device, the logical link identifier corresponding to the traffic is determined based on the traffic identifier information carried by the traffic. Based on the logical link identifier, obtain the target leaky bucket addressing information corresponding to the logical link identifier; Based on the interface group into which the traffic enters, the traffic is directed to the corresponding leaky bucket indicated by the target leaky bucket addressing information in the first leaky bucket space or the second leaky bucket space, so that the first leaky bucket space and the second leaky bucket space jointly perform the flow control of the logical link; Obtain the traffic distribution information of the logical link in the first leaky bucket space and the second leaky bucket space; Based on the traffic distribution information, the target total flow control rate is divided into a first flow control rate and a second flow control rate, and respectively configured into corresponding leak buckets in the first leak bucket space and the second leak bucket space, wherein the sum of the first flow control rate and the second flow control rate is equal to the target total flow control rate.
[0027] During device initialization, a link identification module is pre-configured, storing the mapping relationship between VLAN numbers, link numbers, and traffic directions. The software establishes this mapping relationship based on the user-planned link configuration and writes it into the link identification module. In this embodiment, the traffic identification information specifically uses the VLAN number, and the logical link identification specifically uses the link number. For example, VLAN number 10 can be mapped to uplink traffic on link 0, VLAN number 20 to downlink traffic on link 1, and VLAN number 30 to uplink traffic on link 2. This allows links to be identified not by their physical interface location, but by the VLAN number carried by the traffic.
[0028] The flow control device also includes a flow matching module. This module uses a TCAM (Telematics Management Computer) to store the mapping between link numbers and target leaky bucket addressing information, where the target leaky bucket address is the leaky bucket address. After the device starts up, the user sends a link flow control configuration. When traffic enters the flow control device, the link identification module parses the VLAN number in the traffic, outputs the corresponding link number and traffic direction based on the VLAN number, requests an idle TCAM entry and an idle leaky bucket address according to the link flow control configuration, and establishes a mapping between the link number and the leaky bucket address. The selected mapping is then written into the TCAM of the flow matching module. This allows the flow matching module to find the corresponding leaky bucket address in the TCAM after the traffic obtains a link number from the link identification module.
[0029] After obtaining the target leaky bucket addressing information, the traffic is directed to the corresponding leaky bucket indicated by the target leaky bucket addressing information in the first leaky bucket space or the second leaky bucket space, based on the interface group into which the traffic enters. Specifically, if the current traffic enters from the first interface group, it is sent to the leaky bucket at the corresponding address in the first leaky bucket space; if the current traffic enters from the second interface group, it is sent to the leaky bucket at the corresponding address in the second leaky bucket space. In this embodiment, traffic from different interface groups but belonging to the same logical link enters the corresponding leaky bucket at the same address in the first and second leaky bucket spaces, respectively. Thus, the same logical link is no longer subject to flow control independently by a single leaky bucket space, but rather to flow control jointly performed by the first and second leaky bucket spaces.
[0030] After the dual-space joint flow control is established, the target total flow control rate of the logical link needs to be split into two spaces. The user issues the target total flow control rate R for the logical link. The software scheduling module periodically obtains the arriving traffic T0 in the first leaky bucket space and the arriving traffic T1 in the second leaky bucket space. T0 and T1 together constitute the traffic distribution information of the logical link in both leaky bucket spaces. The first and second flow control rates are allocated according to the proportion of arriving traffic in the first and second leaky bucket spaces. The allocation method is as follows:
[0031]
[0032]
[0033]
[0034] in, This represents the arrival traffic of this logical link in the first leaky bucket space during the current scheduling period. This indicates the arrival traffic of this logical link in the second leaky bucket space during the current scheduling period. and This is used to represent the relative occupancy of the first and second leaky bucket spaces by the logical link in the current cycle. and These represent the flow control rates that the first and second leaky bucket spaces should bear in the current cycle, respectively.
[0035]
[0036] This indicates that the two leaky bucket spaces share the total flow control rate of the same logical link, rather than being two independent rate-limiting targets. After allocating the first and second flow control rates, the software scheduling module will respectively... and Write the corresponding leak bucket in the dual space so that the overall flow control rate after the first leak bucket space and the second leak bucket space are combined is equal to the target total flow control rate R.
[0037] Implement software scheduling module according to and The proportion of the total arriving flow is used to determine the first flow control rate and the second flow control rate, and the determined first flow control rate and the second flow control rate are written into the corresponding leak buckets in the dual space, so that the overall flow control rate after the first leak bucket space and the second leak bucket space are combined is consistent with the target total flow control rate R.
[0038] Example 2 refer to Figure 1 , Figure 2 and Figure 5 As shown, based on the same inventive concept as Embodiment 1, the difference is that in this embodiment, the traffic identification information is a traffic feature key, the logical link identifier is a dynamic link instance number determined according to the traffic feature key, and the flow control device is set to a dynamic link instance table to store the correspondence between the traffic feature key and the dynamic link instance number, and to record the active status of the corresponding dynamic link instance number. The dynamic link instance number is created, maintained, or released as a candidate based on the active status of the traffic feature key using the dynamic link instance table.
[0039] Specifically, the traffic feature key preferably includes at least a VLAN identifier, a traffic direction identifier, and an interface group identifier. When traffic enters the flow control device, the traffic feature key is first parsed, and the logical link identifier is determined based on the traffic feature key. Unlike the fixed link number in Embodiment 1, the logical link identifier in this embodiment adopts a dynamic link instance number.
[0040] When the traffic feature key first enters the active state, the control software allocates a new dynamic link instance number from the instance number pool and establishes a correspondence between the traffic feature key and the dynamic link instance number. When the traffic feature key remains active, the original dynamic link instance number remains unchanged; When the traffic feature key is in a low traffic or no traffic state for multiple consecutive scheduling cycles, the corresponding dynamic link instance number will be marked as a candidate for release.
[0041] The target leaky bucket addressing information is a shared address pair. The shared address pair is determined through the address pair status management mechanism, and the address pair that simultaneously meets the reusability condition in the first leaky bucket space and the second leaky bucket space is allocated. The mapping relationship between the dynamic link instance number and the shared address pair is established through a dual-version mapping area and is switched on after the shared address pair is prepared.
[0042] Specifically, after determining the dynamic link instance number, the flow control device allocates target leaky bucket addressing information based on the shared address pair and uses the device maintenance address pair status management mechanism to pair and manage the corresponding addresses in the first leaky bucket space and the second leaky bucket space.
[0043] The control software only allocates address pairs that simultaneously meet the reusability condition in both the first and second leaky bucket spaces. When a shared address pair meets the matching condition, the control software assigns it to the current dynamic link instance number, thereby establishing the association between the traffic feature key, the dynamic link instance number, and the shared address pair. To ensure smooth switching of the mapping relationship between the dynamic link instance number and the shared address pair during operation, a dual-version mapping area is further set up. When a new shared address pair mapping relationship needs to be established for a dynamic link instance number, the correspondence between the dynamic link instance number and the shared address pair is written into the inactive version mapping area. After confirming that the shared address pair is ready, the activation status of the version mapping area is switched to make the new mapping relationship effective. In this way, traffic running online always hits the shared address pair corresponding to the currently effective version, thereby reducing the risk of inconsistency caused by directly rewriting the existing mapping relationship.
[0044] In the address pair state management mechanism, the states of an address pair include at least the idle state, the bound state, the empty state, and the isolated observation state. The idle state indicates that the shared address pair is available for allocation to a new dynamic link instance number; the bound state indicates that the shared address pair has been allocated to a dynamic link instance number and is in normal service; the empty state indicates that the shared address pair has withdrawn from new service allocation and is only used to empty residual states related to the old dynamic link instance number; the isolated observation state indicates that the shared address pair has been emptyed but is still in the isolated observation state and will not immediately participate in allocation during this stage. Correspondingly, when a dynamic link instance number is in the candidate release state for multiple consecutive scheduling cycles, its corresponding shared address pair is not immediately set to the idle state, but its state is first changed to the empty state; after emptying is completed, it is then changed to the isolated observation state; only after the isolated observation is completed will it re-enter the idle state.
[0045] After completing the identification of dynamic link instances, allocation of shared address pairs, and establishment of mapping relationships, the traffic is directed to the corresponding leaky bucket indicated by the shared address pair in the first leaky bucket space or the second leaky bucket space according to the interface group into which the traffic enters. The traffic distribution information of the logical link in the dual leaky bucket space is obtained. Finally, according to the target total flow control rate, the total flow control rate is split into the first flow control rate and the second flow control rate, and configured into the corresponding leaky buckets in the dual leaky bucket space respectively.
[0046] Furthermore, the flow distribution information includes smoothed flow distribution information and deviation compensation information. The first flow control rate and the second flow control rate are determined by the smoothed flow distribution information and the deviation compensation information. Amplitude limiting control is performed on the adjustment range of the first flow control rate and the second flow control rate. When at least one leaky bucket space is in a continuously active state, a minimum retention rate is set for at least one of the first flow control rate and the second flow control rate.
[0047] Specifically, the smoothed flow distribution information is used to mitigate the direct impact of sudden flow changes within a single cycle on the configuration results of the first and second flow control rates; the deviation compensation information is used to reflect the sharing deviation that may form in the dual-bucket space during the previous scheduling cycle, so as to make corrections in the current cycle. After obtaining the above information, the smoothed flow distribution information and the deviation compensation information determine the first and second flow control rates to be configured, and the adjustment range of the first and second flow control rates is limited to maintain the rate change of the current scheduling cycle relative to the previous scheduling cycle within a preset range.
[0048] When at least one leaky bucket space is continuously active, a minimum retention rate is set for at least one of the first flow control rate and the second flow control rate to prevent a leaky bucket space from being compressed to an excessively low level during a short period of low flow. As an optional stable rate splitting method, the smoothed flow distribution information, deviation compensation information, and the flow control rate to be configured in this embodiment can be determined according to the following relationship:
[0049]
[0050] in, and These represent the actual arrival flow of the first leaky bucket space and the second leaky bucket space during the k-th scheduling period, respectively. and These represent the smoothed flow distribution information formed in the current period. This represents the traffic smoothing coefficient, used to characterize the proportion and weight of the actual arriving traffic in the current scheduling period within the smoothed traffic distribution information. Its value ranges from 0 to... <1, when A larger value indicates that the smoothed traffic distribution information is more sensitive to changes in the actual arrival traffic in the current scheduling period; a smaller value indicates that the smoothed traffic distribution information retains more of the historical traffic trend from the previous scheduling period. This allows the rate update of the dual-bucket space to no longer rely entirely on the instantaneous traffic of a single period, but to simultaneously reference the traffic trend already established in the previous period.
[0051] After obtaining the smoothed flow distribution information, deviation compensation information is further introduced:
[0052]
[0053] in, and These represent the combined weights of the first and second leaky bucket spaces used for rate allocation in the current cycle, respectively. and This represents the cumulative amount of the shared deviation of the double-bucket space in the preceding cycle. This represents the deviation compensation weight coefficient, used to characterize the influence of the accumulated deviation in the preceding scheduling cycle on the overall weight. Its value range is... >0, used to adjust the correction strength of the deviation compensation information to the current scheduling cycle rate split result. The larger the value, the greater the impact of the previous cycle's rate distribution deviation on the current cycle's rate allocation; The smaller the value, the more the current cycle rate allocation relies on the smoothed flow distribution information. This allows for the correction of distribution deviations in previous cycles while reflecting the current smoothed flow trend.
[0054] Furthermore, the first and second flow control rates to be configured are recalculated based on the aforementioned comprehensive weights:
[0055]
[0056] in, and These represent the target splitting rates of the first and second leaky bucket spaces within the current period, respectively. The total rate R is the target total flow control rate for this logical link.
[0057] To prevent excessive rate jumps between adjacent scheduling cycles, rate limiting control is applied to the rate to be configured.
[0058]
[0059] in, and This indicates the first and second flow control rates of the bucket that will be written to the dual-bucket space in the current cycle. This indicates the maximum allowable adjustment range for a single period.
[0060] By processing the flow control rates, the changes in the first and second flow control rates relative to the previous cycle can be kept within a controllable range, thereby suppressing rate oscillations in the dual-space joint flow control. Furthermore, when at least one leaky bucket space is in a continuously active state, a minimum retention rate constraint can be applied to at least one of the first and second flow control rates to enhance the continuity of dual-space joint flow control in continuously active link scenarios.
[0061] In summary, the present invention determines the logical link identifier through traffic identification information and obtains the target leaky bucket addressing information based on the logical link identifier, so that link identification is no longer dependent on the physical interface location, thereby breaking the fixed binding relationship between the interface and the link, and expanding the number of logical links that the flow control device can support without increasing the number of physical leaky buckets.
[0062] By directing traffic from different interface groups that belong to the same logical link to the corresponding leaky buckets in the first leaky bucket space and the second leaky bucket space respectively, the first leaky bucket space and the second leaky bucket space jointly execute the flow control of the same logical link, and the dual-space splitting of the target total flow control rate ensures that the overall result after joint flow control is consistent with the target total flow control rate.
[0063] Furthermore, by using dynamic link instance numbers, shared address pairs, dual-version mapping areas, address pair status management mechanisms, smoothed traffic distribution information, deviation compensation information, amplitude limiting control, and minimum retention rate, the reuse security, runtime continuity, and stability of dual-space joint flow control under limited physical leaky bucket resource conditions are improved.
[0064] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0065] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0066] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0067] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0068] The embodiments of the present invention have been described above with reference to the accompanying drawings. However, the present invention is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of the present invention without departing from the spirit and scope of the claims. All of these forms are within the protection scope of the present invention.
Claims
1. A multi-link flow control method based on leaky bucket multiplexing, applied to a flow control device, the flow control device comprising a first leaky bucket space, a second leaky bucket space, and multiple interface groups for receiving traffic, characterized in that, The method includes: For traffic entering the flow control device, the logical link identifier corresponding to the traffic is determined based on the traffic identifier information carried by the traffic. Based on the logical link identifier, obtain the target leaky bucket addressing information corresponding to the logical link identifier; Based on the interface group into which the traffic enters, the traffic is directed to the corresponding leaky bucket indicated by the target leaky bucket addressing information in the first leaky bucket space or the second leaky bucket space, so that the first leaky bucket space and the second leaky bucket space jointly perform the flow control of the logical link; Obtain the traffic distribution information of the logical link in the first leaky bucket space and the second leaky bucket space; Based on the traffic distribution information, the target total flow control rate is divided into a first flow control rate and a second flow control rate, and respectively configured into corresponding leak buckets in the first leak bucket space and the second leak bucket space, wherein the sum of the first flow control rate and the second flow control rate is equal to the target total flow control rate.
2. The multi-link flow control method based on leaky bucket multiplexing according to claim 1, characterized in that, The traffic identification information is the VLAN number, the logical link identification is the link number, and the link identification module establishes a mapping relationship between the VLAN number, the link number, and the traffic direction.
3. The multi-link flow control method based on leaky bucket multiplexing according to claim 2, characterized in that, The target leaky bucket addressing information is obtained by the traffic matching module by searching in TCAM based on the link number.
4. The multi-link flow control method based on leaky bucket multiplexing according to claim 1, characterized in that, Traffic from different interface groups but belonging to the same logical link enters the corresponding leak bucket at the same address in the first leak bucket space and the second leak bucket space, respectively.
5. A multi-link flow control method based on leaky bucket multiplexing according to claim 1, characterized in that, The traffic distribution information includes the arrival traffic of the logical link in the first leaky bucket space and the arrival traffic in the second leaky bucket space, and the first flow control rate and the second flow control rate are allocated according to the proportion of the arrival traffic in the first leaky bucket space and the second leaky bucket space.
6. The multi-link flow control method based on leaky bucket multiplexing according to claim 1, characterized in that, The traffic identification information is a traffic feature key, and the logical link identifier is a dynamic link instance number determined based on the traffic feature key; The dynamic link instance number is created, maintained, or released as a candidate based on the active status of the traffic feature key using the dynamic link instance table.
7. A multi-link flow control method based on leaky bucket multiplexing according to claim 6, characterized in that, The target leaky bucket addressing information is a shared address pair. The shared address pair is determined through the address pair status management mechanism, and the address pair that simultaneously meets the reusability condition in the first leaky bucket space and the second leaky bucket space is allocated.
8. A multi-link flow control method based on leaky bucket multiplexing according to claim 7, characterized in that, The mapping relationship between the dynamic link instance number and the shared address pair is established through a dual-version mapping zone and is switched on after the shared address pair is prepared.
9. A multi-link flow control method based on leaky bucket multiplexing according to claim 7, characterized in that, The address pair state management mechanism includes at least the following states: idle state, bound state, empty state, and isolated observation state. The shared address pair goes through the emptying stage and the isolated observation stage in sequence before re-entering the idle state.
10. A multi-link flow control method based on leaky bucket multiplexing according to claim 1, characterized in that, The flow distribution information includes smoothed flow distribution information and deviation compensation information. The first flow control rate and the second flow control rate are determined by the smoothed flow distribution information and the deviation compensation information. Amplitude control is performed on the adjustment range of the first flow control rate and the second flow control rate. When at least one leaky bucket space is in a continuously active state, a minimum retention rate is set for at least one of the first flow control rate and the second flow control rate.