CN101753463A - Multichannel transmission load balancing method and device - Google Patents
Multichannel transmission load balancing method and device Download PDFInfo
- Publication number
- CN101753463A CN101753463A CN201010104826A CN201010104826A CN101753463A CN 101753463 A CN101753463 A CN 101753463A CN 201010104826 A CN201010104826 A CN 201010104826A CN 201010104826 A CN201010104826 A CN 201010104826A CN 101753463 A CN101753463 A CN 101753463A
- Authority
- CN
- China
- Prior art keywords
- sequence
- template
- arbitration
- sequence elements
- dimensional matrix
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 30
- 238000000034 method Methods 0.000 title claims abstract description 19
- 239000011159 matrix material Substances 0.000 claims description 28
- 238000010586 diagram Methods 0.000 description 7
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The embodiment of the invention discloses a multichannel transmission load balancing method and a multichannel transmission load balancing device so as to solve the problem that how to uniformly distribute messages to various channels under the condition that a message length rule is changed in traffic. A technical scheme provided by the invention comprises the following steps: determining all sequence elements according to the number of member channels, wherein each sequence element comprises unique member channel arranging information; selecting all or partial sequence elements from all the sequence elements to construct an trbitration template; and traversing the trbitration template to determine a sending sequence of the channels. The method and the device can be applied to scenes requiring uniformly distributing the messages to multiple ports according to the number.
Description
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a method and an apparatus for balancing a multi-channel transmission load.
Background
In the current network data transmission and processing process, a plurality of low-speed channels are often bundled into a high-speed channel for use, which relates to how to uniformly distribute messages to the plurality of low-speed channels to ensure Load balance (Load balance) of each channel. If the load of each channel is uneven, the subsequent processing link is blocked seriously, and packet loss is caused.
In the prior art, a round-robin traversal mode is adopted to distribute messages to each channel. In the message distribution mode, under the condition that the message length in the flow is randomly changed, the actual load of each channel is balanced; however, when the length of the packet in the flow is regularly changed, the load is not uniform, which causes a heavy load on a part of the channel, and even the packet is discarded when the load exceeds the processing capacity of the channel.
Disclosure of Invention
Embodiments of the present invention provide a method and an apparatus for balancing multichannel transmission load, which can uniformly distribute a message to each channel even when the length rule of the message in the flow changes.
In order to achieve the above purpose, the embodiment of the invention adopts the following technical scheme:
a multi-channel transmission load balancing method comprises the following steps: determining all sequence elements according to the number of the member channels, wherein the member channel arrangement information contained in each sequence element is unique; selecting all or part of sequence elements from all sequence elements to form an arbitration template; and traversing the arbitration template to determine the sending sequence of each channel.
A multi-channel transport load balancing apparatus, comprising: a sequence element determining unit, configured to determine all sequence elements according to the number of member channels, where member channel arrangement information included in each sequence element is unique; the arbitration template building unit is used for selecting all or part of sequence elements from all the sequence elements to build an arbitration template; and the sending sequence determining unit is used for traversing the arbitration template to determine the sending sequence of each channel.
The multichannel transmission load balancing method and the device provided by the embodiment of the invention determine all sequence elements by the number of the member channels, wherein the arrangement information of the member channels contained in each sequence element is unique, an arbitration template is constructed by selecting all or part of the sequence elements from all the sequence elements, and then the arbitration template is traversed to determine the sending sequence of each channel, thereby breaking through the rule of distributing messages by adopting a polling traversal mode in the prior art, randomly distributing the messages to each channel, ensuring the actual load balance of each channel, solving the problem of uneven load distribution in the prior art under the condition of the regular change of the message length in the flow, and achieving the purpose of uniformly distributing the messages to each channel under the condition of the regular change of the message length in the flow; moreover, under the condition that the message length in the flow is randomly changed, the equal distribution probability of each channel is also ensured, and the performance is consistent with that of the prior art.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to these drawings without creative efforts.
Fig. 1 is a flowchart of a multi-channel transmission load balancing method according to an embodiment of the present invention;
fig. 2 is a schematic diagram of all sequence elements determined by a transmission including 3 member channels according to an embodiment of the present invention, where fig. 2-a is a three-channel system model, and fig. 2-b is a schematic diagram of all sequence elements determined;
fig. 3 is a schematic diagram of a partial sequence element determined by a transmission including 4 member channels according to an embodiment of the present invention, where fig. 3-a is a four-channel system model, and fig. 3-b is a schematic diagram of a partial sequence element determined;
FIG. 4 is an exemplary diagram of selecting a partial sequence element to construct an arbitration template according to an embodiment of the present invention;
FIG. 5 is an exemplary diagram of traversing the arbitration template of FIG. 4 to obtain a transmission sequence for each channel;
fig. 6 is a schematic structural diagram of a channel transmission load balancing apparatus according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
As shown in fig. 1, a method for balancing load of multi-channel transmission according to an embodiment of the present invention includes:
and 11, determining all sequence elements according to the number of the member channels, wherein the member channel arrangement information contained in each sequence element is unique.
In order to arbitrate among multiple channels, the vertical axis of the sequence element (seed) and the number of member channels should be consistent; meanwhile, in order to ensure that each channel is selected once in seed, the horizontal axis of seed should also be consistent with the number of member channels, so if the number of member channels is N, then seed is an N × N matrix.
Assuming that there are n member channels, since the way all the member channels are arranged in each seed is summarized as:i.e., the number of member channels factorizes several ways.
Once the seed number is determined, all the seeds can be calculated by nested loops.
For this reason, assuming that the number of member channels is n, step 11 may first construct an n × n two-dimensional matrix, and then determine all sequence elements, i.e., the sequence elements of the number of member channels factorial number, according to different arrangement manners of all member channels in the two-dimensional matrix, where each sequence element is an n × n two-dimensional matrix in which only one unit in each row and each column is true, and the remaining units are false.
For example, for a transmission comprising 3 member channels, 3 × 2 × 1 ═ 6 sequence elements can be determined, see fig. 2-a and 2-b, fig. 2-a being a three-channel system model with all its seeds as shown in fig. 2-b. For a transmission comprising 4 member channels, it is possible to determine 24 sequence elements, see fig. 3-a and 3-b, for example, with 4 × 3 × 2 × 1, fig. 3-a being a four-channel system model, the seed of the corresponding part of which is shown in fig. 3-b. Wherein the vertical axis squares of each seed represent different channels, the horizontal axis squares of each seed represent time order, and the shaded squares represent selected channels.
And 12, selecting all or part of sequence elements from all the sequence elements to form an arbitration template.
The arbitration template is composed of a plurality of seeds, for example, for a seed determined by the number N of member channels, M (1 ≦ M ≦ N) are selected from all the seeds, and the formed arbitration template is a (M × N) × N two-dimensional matrix. The selection of the number M is mainly based on the implementation of hardware, and generally, the more the selected seed number is, the higher the requirement on hardware is.
The selected seeds form an arbitration template, all or part of the seeds can be selected from all the seeds by adopting a random factor mode, and the arbitration template is formed by arranging according to the selection time sequence; or, all or part of seeds are selected from all seeds by using a mode of configuring an array, and the arbitration template is determined to be constructed by using the number and the sequence.
For example, if a random factor is used to select a seed for 4 × 3 × 2 × 1 ═ 24 seeds determined by 4 member channels, the number of selected seeds is {24 × 0.3} - } 7 when the random factor is 0.3, where { } represents a value, and then these selected seeds are arranged in the selection time order to construct the arbitration template.
Referring to fig. 4, fig. 4 is an example of constructing an arbitration template by selecting partial seeds, randomly selecting a certain number of seeds from all seeds, and then arranging the selected seeds together in a selection time sequence to obtain the arbitration template.
And 13, traversing the arbitration template to determine the sending sequence of each channel.
As described above, the arbitration template is constructed as a two-dimensional matrix of (M × N) × N, in which the horizontal axis is the time axis, and the transmission order is determined; the vertical axis is a spatial axis, and a transmission channel is determined, so that the transmission sequence of each channel can be determined by traversing the two-dimensional matrix of the arbitration template.
Taking the arbitration template constructed in fig. 4 as an example, referring to fig. 5, traversing the arbitration template from right to left to obtain the sending sequence of each channel is:
0,3,2,1,3,2,0,1,0,3,1,2,1,0,3,2。
therefore, the sending sequence is randomly changed, the rule of the existing polling traversal channel sending sequence is broken through, messages are randomly distributed to all the channels, and therefore the actual load balance of all the channels can be guaranteed.
Therefore, in the multi-channel transmission load balancing method provided by the embodiment of the present invention, first, all sequence elements are determined by the number of member channels, then, a certain number of sequence elements are randomly selected from all the sequence elements to construct an arbitration template, and finally, the arbitration template is traversed to determine a sending sequence of each channel, so that a message is randomly distributed to each channel, the actual load balancing of each channel is ensured, the problem of uneven load distribution in the prior art when the message length rule in the traffic changes is solved, and the purpose of uniformly distributing the message to each channel when the message length rule in the traffic changes is achieved; moreover, under the condition that the message length in the flow is randomly changed, the equal distribution probability of each channel is also ensured, and the performance can be kept consistent with the prior art.
Based on the method provided by the embodiment of the present invention, referring to fig. 6, the embodiment of the present invention provides a multi-channel transmission load balancing apparatus, including:
a sequence element determination unit 61, configured to determine all sequence elements according to the number of member channels, where the member channel arrangement information included in each sequence element is unique;
an arbitration template building unit 62, configured to randomly select a certain number of sequence elements from all the sequence elements to build an arbitration template;
and a sending sequence determining unit 63, configured to traverse the arbitration template to determine a sending sequence of each channel.
Specifically, the sequence element determining unit 61 is configured to construct a two-dimensional matrix of the number of member channels × the number of member channels, determine all sequence elements factoring the number of member channels according to different arrangement modes of all the member channels in the two-dimensional matrix, where each sequence element is the two-dimensional matrix in which only one unit in each row and each column is true, and the remaining units are false.
The arbitration template building unit 62 is configured to randomly select a certain number of sequence elements from all the sequence elements in a random factor manner, and arrange and build an arbitration template according to a selection time sequence; or randomly selecting a certain number of sequence elements from all the sequence elements by using a configuration array mode, and determining to use the serial number and the sequence to construct an arbitration template; wherein the constructed arbitration template is a two-dimensional matrix composed of the randomly selected sequence elements.
The transmission sequence determining unit 63 is configured to traverse the two-dimensional matrix of the arbitration template, a horizontal axis of the two-dimensional matrix determines a transmission sequence, and a vertical axis of the two-dimensional matrix determines a transmission channel.
It can be understood that the multi-channel transmission load balancing device provided by the embodiment of the present invention can be implemented by hardware logic or software, and performs balanced distribution on messages with regularly changing lengths in the traffic to each channel; for the message with the length changing randomly in the flow, the equal distribution probability of each channel can still be ensured, and the performance is consistent with that of the prior art.
Finally, it should be noted that the multi-channel transmission load balancing method and apparatus provided in the embodiments of the present invention may be applied to any scenario in which packets need to be equally divided to multiple ports according to the number.
It will be understood by those skilled in the art that all or part of the steps in the method for implementing the above embodiments may be implemented by relevant hardware instructed by a program, and the program may be stored in a computer readable storage medium, such as ROM/RAM, magnetic or optical disk, etc.
The above description is only for the specific embodiments of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present invention, and all the changes or substitutions should be covered within the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.
Claims (8)
1. A multi-channel transmission load balancing method is characterized by comprising the following steps:
determining all sequence elements according to the number of the member channels, wherein the member channel arrangement information contained in each sequence element is unique;
selecting all or part of sequence elements from all sequence elements to form an arbitration template;
and traversing the arbitration template to determine the sending sequence of each channel.
2. The method of claim 1, wherein determining all sequence elements according to the number of member channels, wherein the member channel arrangement information included in each sequence element is unique comprises:
constructing a two-dimensional matrix of the number of member channels multiplied by the number of member channels;
and determining the sequence elements of the factorial number of the member channels according to different arrangement modes of all the member channels in the two-dimensional matrix, wherein each sequence element is the two-dimensional matrix of which each row and each column only have one unit as true and the rest units are false.
3. The method of claim 2, wherein selecting all or a portion of the sequence elements from all of the sequence elements to construct an arbitration template comprises:
selecting all or part of sequence elements from all sequence elements by adopting a random factor mode, and arranging and establishing an arbitration template according to a selection time sequence; or,
selecting all or part of sequence elements from all sequence elements by using a configuration array mode, and determining to use numbers and sequences to build an arbitration template;
wherein the constructed arbitration template is a two-dimensional matrix composed of the selected sequence elements.
4. The method of claim 3, wherein traversing the arbitration template to determine a transmission sequence for each lane comprises:
and traversing the two-dimensional matrix of the arbitration template, wherein the horizontal axis of the two-dimensional matrix determines the sending time sequence, and the vertical axis of the two-dimensional matrix determines the sending channel.
5. A multi-channel transmission load balancing apparatus, comprising:
a sequence element determining unit, configured to determine all sequence elements according to the number of member channels, where member channel arrangement information included in each sequence element is unique;
the arbitration template building unit is used for selecting all or part of sequence elements from all the sequence elements to build an arbitration template;
and the sending sequence determining unit is used for traversing the arbitration template to determine the sending sequence of each channel.
6. The apparatus according to claim 5, wherein the sequence element determining unit is specifically configured to construct a two-dimensional matrix of the number of member channels x the number of member channels, determine all sequence elements of the number of member channels of the factorial number according to different arrangement manners of all the member channels in the two-dimensional matrix, and each sequence element is the two-dimensional matrix in which only one unit in each row and each column is true and the remaining units are false.
7. The apparatus according to claim 6, wherein the arbitration template configuration unit is specifically configured to select all or part of sequence elements from all sequence elements by using a random factor, and arrange and configure the arbitration templates in a selection time order; or, all or part of sequence elements are selected from all sequence elements in an array configuration mode, and the arbitration template is established by using the serial number and the sequence; wherein the constructed arbitration template is a two-dimensional matrix composed of the selected sequence elements.
8. The apparatus according to claim 7, wherein the transmit sequence determining unit is specifically configured to traverse a two-dimensional matrix of the arbitration template, a horizontal axis of the two-dimensional matrix determining a transmit time order, and a vertical axis of the two-dimensional matrix determining a transmit channel.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010104826A CN101753463A (en) | 2010-01-29 | 2010-01-29 | Multichannel transmission load balancing method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010104826A CN101753463A (en) | 2010-01-29 | 2010-01-29 | Multichannel transmission load balancing method and device |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101753463A true CN101753463A (en) | 2010-06-23 |
Family
ID=42479888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010104826A Pending CN101753463A (en) | 2010-01-29 | 2010-01-29 | Multichannel transmission load balancing method and device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101753463A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932226A (en) * | 2012-10-26 | 2013-02-13 | 苏州阔地网络科技有限公司 | Method and system for reducing network connection |
CN103441903A (en) * | 2013-09-03 | 2013-12-11 | 北京邮电大学 | Network node communication simulation method based on shortest communication time |
CN105049262A (en) * | 2015-08-24 | 2015-11-11 | 中国联合网络通信集团有限公司 | Method and device for adjusting flow loads of ports |
WO2019007361A1 (en) * | 2017-07-04 | 2019-01-10 | 中兴通讯股份有限公司 | Load sharing method and apparatus, routing device and storage medium |
CN112306922A (en) * | 2020-11-12 | 2021-02-02 | 山东云海国创云计算装备产业创新中心有限公司 | Multi-data-pair multi-port arbitration method and related device |
-
2010
- 2010-01-29 CN CN201010104826A patent/CN101753463A/en active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932226A (en) * | 2012-10-26 | 2013-02-13 | 苏州阔地网络科技有限公司 | Method and system for reducing network connection |
CN102932226B (en) * | 2012-10-26 | 2015-07-15 | 苏州阔地网络科技有限公司 | Method for reducing network connection |
CN103441903A (en) * | 2013-09-03 | 2013-12-11 | 北京邮电大学 | Network node communication simulation method based on shortest communication time |
CN105049262A (en) * | 2015-08-24 | 2015-11-11 | 中国联合网络通信集团有限公司 | Method and device for adjusting flow loads of ports |
CN105049262B (en) * | 2015-08-24 | 2018-07-10 | 中国联合网络通信集团有限公司 | Adjust the method and device of port flow load |
WO2019007361A1 (en) * | 2017-07-04 | 2019-01-10 | 中兴通讯股份有限公司 | Load sharing method and apparatus, routing device and storage medium |
CN112306922A (en) * | 2020-11-12 | 2021-02-02 | 山东云海国创云计算装备产业创新中心有限公司 | Multi-data-pair multi-port arbitration method and related device |
CN112306922B (en) * | 2020-11-12 | 2023-09-22 | 山东云海国创云计算装备产业创新中心有限公司 | Multi-data-to-multi-port arbitration method and related device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10153985B2 (en) | Dragonfly processor interconnect network | |
US8819272B2 (en) | Multiprocessor communication networks | |
CN101753463A (en) | Multichannel transmission load balancing method and device | |
CN106657191B (en) | Load balancing method and related device and system | |
CN102017534A (en) | Deterministic back-off-method and apparatus for peer-to-peer communications | |
CN103023804B (en) | A kind of aggregated links adaptive flow load-balancing method, device and the network equipment | |
US7665092B1 (en) | Method and apparatus for distributed state-based load balancing between task queues | |
Chen et al. | Evolutionarily stable spectrum access | |
CN103493449A (en) | Effective circuits in packet-switched networks | |
CN105022717A (en) | Network on chip resource arbitration method and arbitration unit of additional request number priority | |
CN104243348B (en) | A kind of data processing method and device | |
CN102769806B (en) | Resource assignment method and device of optical transmission net | |
CN103873367B (en) | Route data grouping, method and device for determining route and fat tree network | |
CN106850433B (en) | Video trunk line management method and device of video monitoring system | |
Raha et al. | A genetic algorithm inspired load balancing protocol for congestion control in wireless sensor networks using trust based routing framework (GACCTR) | |
CN105224501B (en) | The method and apparatus improved annulus torus network and its determine data packet transmission path | |
CN106358316A (en) | Channel access method and channel access apparatus | |
US9762474B2 (en) | Systems and methods for selecting a router to connect a bridge in the network on chip (NoC) | |
CN115834054A (en) | Multilevel key level management method and device | |
CN104022928B (en) | The topological construction method and system of a kind of high density server | |
CN109195222A (en) | A kind of power distribution method based on statistical property reference | |
CN114697002B (en) | Distributed quantum cryptography network group key distribution method and system | |
CN105900383B (en) | Communication system, control node and communication means | |
CN102594488B (en) | Space flows to the method, apparatus and data transmission method, device of empty time stream mapping | |
CN102624622B (en) | Routing computation method and device for network video based on multistage forwarding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20100623 |