CN1192548C - Method of flow load sharing - Google Patents

Method of flow load sharing Download PDF

Info

Publication number
CN1192548C
CN1192548C CNB021179263A CN02117926A CN1192548C CN 1192548 C CN1192548 C CN 1192548C CN B021179263 A CNB021179263 A CN B021179263A CN 02117926 A CN02117926 A CN 02117926A CN 1192548 C CN1192548 C CN 1192548C
Authority
CN
China
Prior art keywords
passage
baud rate
packet
load sharing
sharing method
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.)
Expired - Fee Related
Application number
CNB021179263A
Other languages
Chinese (zh)
Other versions
CN1414737A (en
Inventor
宋义震
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB021179263A priority Critical patent/CN1192548C/en
Publication of CN1414737A publication Critical patent/CN1414737A/en
Application granted granted Critical
Publication of CN1192548C publication Critical patent/CN1192548C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present invention discloses a method for sharing flow loads, which comprises the steps that before a data packet is transmitted every time, the needed time of each link passage for transmitting the data packet is precalculated; then, the passage with the minimum transmitting time is selected, and the current data packet is transmitted by the passage. The present invention dynamically selects a link according to the busy degree of the passage, and has the advantages of favorable load sharing effect, stability and reliably. The present invention can be used for sharing different levels and different applications of flow loads with a data communication device.

Description

A kind of method of flow load sharing
Technical field
The present invention relates to the flow control technique of data communications equipment in the communication field, specifically, relate to a kind of sharing method of flow load.
Background technology
In network, often to use multilink and carry out flow load sharing, for example the multilink point-to-point of multirouting load balancing and link layer (MP, Multilink PPP) load balancing.
MP is in order to increase bandwidth, a plurality of ppp link bindings to be used.In the RFC1990 agreement of being formulated by the network work group in August, 1996, MP allows message fragment is sent to same destination with each burst, simultaneously to improve network response time on a plurality of ppp links.MP may operate in that Virtual-Template interface (Virtual-Template) is gone up, on the basic rate interface (BRI:Basic Rate Interface) or primary rate interface (PRI:Primary Rate Interface) interface in dialing mouthful (Dialer interface) and the Integrated Service Digital Network.The realization of MP comprises the several funtion parts of burst, transmission, reception and reorganization of MP channel management and message.The load balancing that in MP message process of transmitting, needs to use link.Usually the load sharing method that adopts is the mean allocation flow or comes dispense flow rate according to the ratio of passage baud rate.
The method of mean allocation flow is present the most frequently used method, no matter this method is the busy situation of link, with probability such as message or packet be assigned to each link.Because the transmission rate or the flow disposal ability of each bar link often have difference, if on average to each bar link packet distribution, the overweight network delay that causes of link load that can cause having strengthens, even message is dropped, and the link that has is idle relatively.Therefore, this method only is applicable to the traffic sharing of the interface of same alike result and speed, at each passage transmission rate or available bandwidth not simultaneously, can directly cause the waste of bandwidth, and is even not available.
Also disclose the method for coming dispense flow rate according to the ratio of passage baud rate in the RFC1990 agreement, this method is that message or packet are connected the pro rate of baud rate of road port to each link channel.Though this method has had certain improvement, but still there is following defective: on the one hand, the passage baud rate that can not obtain to determine sometimes; On the other hand, the baud rate of passage can not accurately reflect the real transmitting capacity of passage sometimes.The error that these factors are brought all can influence the effect of load balancing significantly, and for example, if channel capacity is bigger, the packet that may take place in the transmit queue of a passage is more, and the another one passage is idle relatively, causes network delay very big; If in the MP load balancing, used message fragment, also may organize the bag failure because the burst of same message is oversize at interval, cause network obstructed.
Summary of the invention
The object of the present invention is to provide a kind of method of flow load sharing,, obtain maximum total bandwidth, and reduce network delay as far as possible rationally to utilize multilink efficiently.
Technical scheme of the present invention is achieved in that
A kind of sharing method of flow load, this method comprises at least:
A. before each transmission packet, calculate every link channel in advance and send the required time of packet;
B. select the shortest passage of transmitting time, and send current data packet with this passage.
Steps A further comprises, according to every link channel transmission required time of packet of ratio calculation of passage data total amount to be sent and passage baud rate.Wherein, data total amount to be sent can be transmit queue packet total amount, each passage bottom buffer data bag total amount and the current data packet three sum according to the passage statistics.
In addition, can described passage baud rate be set by configuration order equals or approaches the virtual baud rate that the actual transmission rate of passage forms.This virtual baud rate forms the conversion of synchronizing channel baud rate for the asynchronous paths baud rate; Or asynchronous paths baud rate conversion formed for the synchronizing channel baud rate, can convert than synchronizing channel baud rate low 1/4th by the asynchronous paths baud rate.
Said method may further include: the fastest passage is set to current default value in advance, will the short transmission time be initialized as maximum, begins to calculate one by one the packet transmitting time of each passage then from default passage.
The step B of this method may further include:
B01) judge when the transmitting time of prepass whether less than the short transmission time of Set For Current, be set to the fastest passage if then work as prepass, and current transmitting time is set is the short transmission time, carry out B02 then), otherwise directly carry out B02);
B02) switch to next passage and calculate the packet transmitting time of passage, detect until all passages and finish.
Come the Dynamic Selection link according to the busy extent of passage among the present invention, send the link that packet always selects the earliest data to be sent at every turn and send, be equivalent to introduce feedback control mechanism in the load balancing process; The actual transmission rate of while reference channel, adopt virtual baud rate replaceable channel baud rate, adapted to the situation that the passage baud rate that can not obtain to determine or passage baud rate can not accurately reflect the transmitting capacity of passage better, the scheme of load balancing is done further optimization, enlarged the scope of application; Load balancing of the present invention is effective, and is reliable and stable, and the scope of application is wide, can be widely used in the different levels of data communications equipment, the flow load sharing of different application.
Description of drawings
The process chart that Fig. 1 is responsible for sharing for flow of the present invention.
Fig. 2 implements illustration for one of sendaisle management among the present invention.
Embodiment
For make purpose of the present invention, technical scheme, and advantage clearer, below with reference to the accompanying drawing embodiment that develops simultaneously, the present invention is described in more detail.
The present invention selects optimum sendaisle to carry out load balancing according to the busy situation and the transmission rate of link.Introducing service quality (QOS) afterwards, the management more complicated of transmit queue, but the packet sum in the buffering area can reflect the busy situation of passage.Do not considering have under the situation of new high priority packets adding, the buffer data bag total amount of each passage bottom and the ratio of passage baud rate can show the required time of data that sends in the buffering area.Because statistics buffering area total bytes more complicated, amount of calculation is bigger, therefore replaces byte number with total data bag number, promptly uses formula (1) to predict that passage sends the required time of packet.
(transmit queue packet total amount+each passage bottom buffer data bag total amount+current data packet)/channel rate (1)
Transmit queue packet total amount in the formula (1) and each passage bottom buffer data bag total amount obtain according to the statistics of each passage.
Referring to shown in Figure 1, the process chart that Fig. 1 is responsible for sharing for flow of the present invention.Handling process may further comprise the steps:
1) during every transmission one packet, at first, execution in step 101, the fastest passage is set to default value, and this default value is determined when calling by system; Simultaneously, will the short transmission time be initialized to maximum, for example: can use the unsigned long variable, will the short transmission time be initialized as 0XFFFFFFFF.In the present embodiment, sendaisle adopts circular linked list to manage, and as shown in Figure 2, passage 1~passage n is respectively as a node of circular linked list.Generally before not sending any data, any passage can be initialized as current sendaisle, and after each transmission data or burst, usually next passage of the fastest passage that will currently select is made as the default value of sendaisle, can obtain the send opportunity of equalization to guarantee the identical link of speed.
2) execution in step 102, and employing formula (1) is calculated the transmitting time of every channel data bag respectively.Because packet of every transmission is all reselected the fastest passage of expection, so the value of current data packet is generally 1 in the formula (1), so, formula (1) can be reduced to formula (2):
(transmit queue packet total amount+each passage bottom buffer data bag total amount+1)/channel rate (2)
Directly predict that with formula (2) passage sends the required time of packet, the required the shortest result of time of transmission packet according to prediction, in all passages, select the fastest passage of expection to send the current data burst, for example, the transmit queue of supposing all passages is sky, and what then select must be the highest passage of baud rate.
3) execution in step 103, whether the channel data bag transmitting time that determining step 102 calculated is less than the current short transmission time, if execution in step 104 then, work as prepass and be set to the fastest passage, the channel data bag transmitting time that step 102 is calculated is set to the short transmission time, and execution in step 105 then; Otherwise direct execution in step 105, judge whether all passages have all carried out the prediction of channel data bag transmitting time, if execution in step 107,108 then, the most next passage of fast passage is set to the default value that send next time, sends data with the fastest passage of pointed and at this passage then; Otherwise execution in step 106 switches to next passage, returns execution in step 102 again.
The fastest passage of expection is all reselected in the each transmission of above-mentioned processing procedure, is equivalent to introduce FEEDBACK CONTROL, makes load balancing effective.
Owing to be provided with bigger deviation at the actual transmitting capacity of the situation lower channel that has and the baud rate of passage, for example, when two routers link to each other by asynchronous serial port, the baud rate of asynchronous serial port is the communication speed between asynchronous serial port and the MODEM, speed between two MODEM then determines according to line quality after consulting mutually, generally can be lower than the serial ports baud rate, and the baud rate setting of two ends router rs async serial ports also can be inconsistent.In addition, synchronous serial interface is operated in data terminal equipment (DTE) mode following time, can not obtain correct baud rate value.Therefore, in order to solve the problem that the passage baud rate that can't obtain to determine or passage baud rate can not accurately reflect the transmitting capacity of passage better, when calculated data bag transmitting time, introduce virtual baud rate replaceable channel speed, promptly in interface configuration command, increase an order and come the manual value that this variable is set, it is equaled or the available Mean Speed during near communication, carry out the calculating of load balancing with this parameter substitution passage baud rate, to select the quickest sendaisle.
For instance, article one, synchronous special line and an async dialup link that actual connection speed is 64Kbps are done load balancing, the baud rate of async dialup passage is 115.2Kbps, the actual connection speed of MODEM is 33.6kbps, usually should be with the actual connection speed of the MODEM virtual baud rate as asynchronous port.Owing to include flag bit in the data of asynchronous transmission, under the situation of identical baud rate, the efficient of asynchronous transmission is than hanging down about 1/4 synchronously, therefore asynchronous 33.6Kbps can convert and be synchronous 25.2Kbps, can on the interface of async dialup link correspondence, the value of configuration virtual baud rate be 25.2Kbps like this, the configurable virtual baud rate 64Kbps of synchronization link.Certainly, can not dispose if can correctly discern baud rate yet.
Another kind of scheme is that the conversion of synchronizing channel baud rate is the asynchronous paths baud rate, similarly, efficient according to asynchronous transmission is converted than hanging down about 1/4 synchronously, promptly, the synchronizing channel baud rate is about 4/3 times of asynchronous paths baud rate, therefore on synchronizing channel, with the 64Kbps rate configuration of synchronous special line is virtual baud rate 85.3Kbps, configuration virtual baud rate 33.6Kbps on asynchronous serial interface, if the ratio of the virtual baud rate of two links near or equal actual treatable flow ratio.
Virtual baud rate is set as 0 when the passage initialization, if the user is manual on this passage virtual baud rate is not set, and then still controls traffic sharing according to the actual baud rate of passage.Virtual baud rate can be widely used in the traffic sharing control of interface, by with the virtual baud rate replaceable channel of passage speed, sharing of load has been done further optimization, has enlarged applicable scope.

Claims (9)

1, a kind of sharing method of flow load is characterized in that, this method may further comprise the steps at least:
A. before each transmission packet, calculate every link channel in advance and send the required time of packet;
B. select the shortest passage of transmitting time, and send current data packet with this passage.
2, load sharing method according to claim 1 is characterized in that steps A further comprises, according to every link channel transmission required time of packet of ratio calculation of passage data total amount to be sent and passage baud rate.
3, load sharing method according to claim 2 is characterized in that, by configuration order described passage baud rate is set and equals or approach the virtual baud rate that the actual transmission rate of passage forms.
4, load sharing method according to claim 3 is characterized in that, by configuration order the virtual baud rate that the conversion of synchronizing channel baud rate forms for the asynchronous paths baud rate is set.
5, load sharing method according to claim 3 is characterized in that, by configuration order the virtual baud rate that the conversion of asynchronous paths baud rate forms for the synchronizing channel baud rate is set.
6, according to claim 4 or 5 described load sharing methods, it is characterized in that, the asynchronous paths baud rate is converted than synchronizing channel baud rate low 1/4th.
7, load sharing method according to claim 2 is characterized in that, sets data total amount to be sent and is transmit queue packet total amount, each passage bottom buffer data bag total amount and current data packet three sum according to the passage statistics.
8, load sharing method according to claim 1, it is characterized in that, this method further comprises: the fastest passage is set to current default value in advance, will the short transmission time be initialized as maximum, begins to calculate one by one the packet transmitting time of each passage then from default passage.
9, load sharing method according to claim 1 is characterized in that, described step B further comprises:
B01) judge when the transmitting time of prepass whether less than the short transmission time of Set For Current, be set to the fastest passage if then work as prepass, and current transmitting time is set is the short transmission time, carry out B02 then), otherwise directly carry out B02);
B02) switch to next passage and calculate the packet transmitting time of passage, detect until all passages and finish.
CNB021179263A 2002-05-23 2002-05-23 Method of flow load sharing Expired - Fee Related CN1192548C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB021179263A CN1192548C (en) 2002-05-23 2002-05-23 Method of flow load sharing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB021179263A CN1192548C (en) 2002-05-23 2002-05-23 Method of flow load sharing

Publications (2)

Publication Number Publication Date
CN1414737A CN1414737A (en) 2003-04-30
CN1192548C true CN1192548C (en) 2005-03-09

Family

ID=4744574

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB021179263A Expired - Fee Related CN1192548C (en) 2002-05-23 2002-05-23 Method of flow load sharing

Country Status (1)

Country Link
CN (1) CN1192548C (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1302645C (en) * 2003-05-26 2007-02-28 华为技术有限公司 Method for realizing average flow bearing by bound ports of network processor system
CN1324840C (en) * 2003-06-18 2007-07-04 中兴通讯股份有限公司 A method for performing speed limiting on data traffic by network processor
CN100417138C (en) * 2005-11-19 2008-09-03 华为技术有限公司 Load sharing method
CN100407705C (en) 2006-04-12 2008-07-30 华为技术有限公司 Router control method and system
CN101039277A (en) * 2007-04-12 2007-09-19 华为技术有限公司 Load sharing method and its equipment
EP2932667A4 (en) * 2012-10-03 2016-09-28 Distrix Networks Ltd Systems and methods for adaptive load balanced communications, routing, filtering, and access control in distributed networks
CN107888442B (en) 2016-09-30 2021-05-14 华为技术有限公司 Port rate determining method and computer equipment
CN107396395B (en) * 2017-05-27 2020-01-03 长沙中天电子设计开发有限公司 Method, system and device for optimizing and controlling multi-terminal access to wireless network
CN110912783B (en) * 2019-12-18 2021-03-12 北京嘀嘀无限科技发展有限公司 Flow playback method and device, electronic equipment and storage medium
CN113965946A (en) * 2021-09-30 2022-01-21 广州市玄武无线科技股份有限公司 Method and system for distributing 5G message channels through intelligent routing

Also Published As

Publication number Publication date
CN1414737A (en) 2003-04-30

Similar Documents

Publication Publication Date Title
EP0732019B1 (en) Control of overload situations in frame relay network
AU689518B2 (en) Control of overload situations in frame relay network
CN100349443C (en) Method and apparatus for scheduling message processing
US7177268B2 (en) Packet distributing device
US20060098573A1 (en) System and method for the virtual aggregation of network links
EP0788698A1 (en) A method for congestion management in a frame relay network and a node in a frame relay network
CN1192548C (en) Method of flow load sharing
US7839787B2 (en) Delay-based overflow routing in communication systems
US5533017A (en) Line interface device for fast-packet switching network
CN1440174A (en) General headline analyser for supporting independent packet speech scheme in data transmission protocol
US7321557B1 (en) Dynamic latency assignment methodology for bandwidth optimization of packet flows
CN1180654C (en) Euivalent switching method for transmission devices in MPLS networks
JP3273790B2 (en) Congestion management method in frame relay network and node of frame relay network
JP2002223202A (en) Method of transmitting data and transmitter using it
CN1567891A (en) A method for implementing data service transmission routing
CN101053222A (en) Method for transmitting supplying to use data with data block mode
US20030137979A1 (en) Switching unit
US5694394A (en) Transmission channel selection system using destination address
CN1265585C (en) Method of implementing bridge group multiplexing on WAN interface
CN100490406C (en) Asymmetric Ethernet data transmission system and method
EP1202508A1 (en) Dynamic fragmentation of information
CN1567892A (en) A method for implementing data service transmission routing
CN1136706C (en) Adaption method for integrating Internet with quasi-synchronous digital system
Rufa et al. SS 7 Flow Control
JPH05236021A (en) Communication controller

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20050309

Termination date: 20110523