CN101478499B - Flow allocation method and apparatus in MPLS network - Google Patents

Flow allocation method and apparatus in MPLS network Download PDF

Info

Publication number
CN101478499B
CN101478499B CN2009101049442A CN200910104944A CN101478499B CN 101478499 B CN101478499 B CN 101478499B CN 2009101049442 A CN2009101049442 A CN 2009101049442A CN 200910104944 A CN200910104944 A CN 200910104944A CN 101478499 B CN101478499 B CN 101478499B
Authority
CN
China
Prior art keywords
container
path
list item
allocation
address
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
CN2009101049442A
Other languages
Chinese (zh)
Other versions
CN101478499A (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.)
Shenzhen Graduate School Tsinghua University
Original Assignee
Shenzhen Graduate School Tsinghua University
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 Shenzhen Graduate School Tsinghua University filed Critical Shenzhen Graduate School Tsinghua University
Priority to CN2009101049442A priority Critical patent/CN101478499B/en
Publication of CN101478499A publication Critical patent/CN101478499A/en
Application granted granted Critical
Publication of CN101478499B publication Critical patent/CN101478499B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention discloses a traffic distribution method and a device in a multi-protocol label switching network. The method comprises the following steps: extracting a flow label from the header of an IP packet; carrying out hashing operation to obtain a hash value as the table address of a bin distribution table; looking up a proper path number according to the table address and the bit distribution table, and outputting the IP packet from the proper path; and determining whether the bin distribution of the bin distribution table is reasonable, and adjusting the distribution table if the bin distribution is not reasonable. The device comprises a flow label extraction unit for extracting the flow label from the header of the IP packet; a hashing operation unit for carrying out hashing operation to obtain the hash value as the table address of a bin distribution table; a bin distribution unit for looking up the proper path number according to the table address and the bit distribution table; a packet switching unit for outputting the IP packet from the proper path; and a balance unit for determining whether the bin distribution of the bin distribution table is reasonable, and adjusting the distribution table if the bin distribution is not reasonable. The method and the device can improve the traffic balancing performance.

Description

Flow allocation method in a kind of multi-protocol label switching network and device
Technical field
The present invention relates to a kind of method and apparatus that network traffics are distributed, be specifically related to flow allocation method and device in a kind of multi-protocol label switching network.
Background technology
Current, IP network is used universal day by day, and number of users and network size constantly enlarge, the network traffics sustainable growth.For service quality and the resource utilization that improves IP network, press for the traffic management ability of enhanced IP network.The multiprotocol label switching (mpls) network integration connection-oriented bag retransmission technique and IP dynamic routing, be the key technology of Next Generation Internet.Comparing with the shortest path route in the existing IP network, based on the multipath route of MPLS network easy, traffic management ability efficiently is provided, have very big application potential, also is the hot fields of current research.Flow allocation method is one of key technology of multipath route.Assignment of traffic is that aggregate flow speed ratio as required is divided into several stream, distributes to mulitpath, realizes the balanced growth of each paths flow, reaches the target of network traffics equiblibrium mass distribution.
In recent years, reported many researchs, but still there is deficiency in these methods about flow allocation method.
Wheel shifting method (round-robin) is the least unit dispense flow rate with the bag, from one group of path, selects a paths successively in turn, and warp paths thus sends bag.The wheel shifting method can reach optimum assignment of traffic, gives the forwarding expense that operation increases less.Its unfavorable one side is the serious entanglement of the order of wrapping; This is because with a pair of (source node; Destination node) there is different delays in the different paths between (source-destination pair); Can cause the bag order entanglement that belongs to same TCP stream, and Transmission Control Protocol reduces transmission rate to the signal of the bag of incorrect order arrival as network congestion in view of the above.
For keeping the order of bag, direct hash (Hash) method has been proposed.Directly hashing is the least unit dispense flow rate with stream, uses hash function to select the path, has realized the orderly transmission of bag.The input of hash function is a traffic identifier, and to belonging to first-class bag, traffic identifier remains unchanged, and hash function is always selected same paths thus, is assigned to all the time on the same paths so belong to the bag of same stream.Traffic identifier is taken from five-tuple (source IP address, purpose IP address, transport layer protocol number usually; Source port, destination interface) (source IP address, destination IP address; Transport protocol, sourceport, and destination port) a part or all.Directly the weak point of ashing technique is that differing of flow equalization effect and package level is bigger, and this is bigger because of the speed possibility difference of the stream that is in active state, so traffic identifier is not necessarily obeyed even distribution.
Performance for direct hash has proposed table ashing technique (referring to 2000-Inforcom, Performance of Hashing-Based Schemes for Internet Load Banlancing).The table ashing technique is directly adding an indirect distribution structure in the ashing technique, at first is divided into many groups (being assumed to be uniform hashing) to aggregate flow by traffic identifier through hash function, and each group comprises several stream, and a group is also referred to as a container (bin); Give outgoing route these containers according to the path capacity pro rate then.Because the quantity of container is at least greater than the quantity of outgoing route, thus the table ashing technique aggregate flow divide thinner, so the method for dispense container is better than the method equalization performance of direct hash.
For further improving the performance of table ashing technique, the table ashing technique (referring to 2005-Computer Networks, Traffic distribution over equal-cost-multi-paths) that can heavily distribute has been proposed.The flow of this method each container of record and outgoing route, every at a distance from a regular time, redistribute container once.Cause the bag incorrect order in order to reduce because of redistributing container, this method is only selected to be newly assigned to the minimum path of occupancy to this receptacle by the maximum container of the capacity under the highest path of occupancy.
But this method remains in following deficiency:
(1) in theory, distribute if traffic identifier is obeyed evenly, so existing hash function can evenly be divided stream with traffic identifier as keyword.If at this moment the speed ratio of stream is more approaching, stream just can be evenly distributed on each container so.But because the speed difference of the stream of active state is bigger, traffic identifier is also not necessarily obeyed evenly and is distributed, and causes the flow difference of each container bigger.When this thing happens, can only be through redistributing the performance that container could improve flow equalization.
(2) existing hash function is static, and the parameter of its dependence does not just change once confirming, so the original allocation of container also adopts static method, that is the quantity of specified containers in advance, and gives the path container allocation in this quantity and outgoing route capacity ratio.Therefore, when stream arrived in order, the flow difference of each container was bigger.
Summary of the invention
Technical problem to be solved by this invention is exactly in order to overcome above deficiency, to have proposed flow allocation method and device in a kind of multi-protocol label switching network, can improving the assignment of traffic performance.
Technical problem of the present invention solves through following technical scheme:
Flow allocation method in a kind of multi-protocol label switching network comprises the steps: A, from the packet header of IP bag, extracts traffic identifier; B, carry out hash operations according to traffic identifier and draw the list item address of hashed value as the container allocation table; C, find out suitable path number according to said list item address and container allocation table, and with the IP bag from the output of said suitable path; D, judge whether the container allocation of container allocation table is reasonable, if unreasonablely just adjust said container allocation table.
The said container allocation table of adjustment comprises among the said step D: through calculating the allocation offsets in each path, find out idle route and the busiest path; Judge on the busiest path whether have the part container, said part container capacity approaches the residual capacity of said idle route most and said part container is redistributed from the busiest path to idle route to make that the allocation offsets in all paths is littler; If have, then said part container is redistributed from the busiest path to idle route.
If there is not said part container on the busiest path; Judge then whether the container of capacity maximum on the busiest path is positioned at the upper bound of the list item address size expression scope of container allocation table; If just the length of current list item address is added 1; And put 0 to the first address p that does not expand list item, if just only the first address p that does not expand list item is not set to j-1, wherein j is the list item address of the container of capacity maximum on the busiest said path; Increase by a new container then, form partner's container with the container that said capacity is maximum, then the outgoing route numbering of the newly-increased container of initialization makes it to use identical path with the maximum container of said capacity.
The said container allocation table of adjustment also comprises among the said step D: judge whether said partner's container has identical outgoing route; If just carry out the container union operation; If not, whether the allocation offsets of outgoing route of judging said partner's container all greater than 0, and both allocation offsets sums are less than the allocation offsets of idle route; If just carry out the container union operation, and idle route is arranged in the path of the container after will merging; Said container union operation comprises: judge whether the newly-increased container in partner's container is positioned at the upper bound that current list item address size is expressed scope; If just the length of current list item address is subtracted 1; And put 2d-1 to the first address p that does not expand list item; Wherein d is said container allocation table list item address size, if not just only with the current first address decrement of not expanding list item; Discharge the newly-increased container in partner's container then.
Said step B specifically comprises: produce a sufficiently long random bit sequence by traffic identifier; From said random bit sequence, the bit of getting certain-length promptly draws said hashed value.
Said step D whenever carried out once at a distance from 25 seconds-35 seconds.
Flow distribution device in a kind of multi-protocol label switching network comprises: the traffic identifier extraction unit: be used for extracting traffic identifier from the packet header of IP bag; Hash operations unit: be used to carry out hash operations and draw the list item address of hashed value as the container allocation table; Container allocation unit: be used for finding out suitable path number according to said list item address and container allocation table; Packet switch unit: the IP bag is exported from said suitable path; Balanced unit: be used to judge whether the container allocation of container allocation table is reasonable, if unreasonablely just adjust said container allocation table.
The said container allocation table of said adjustment comprises: through calculating the allocation offsets in each path, find out idle route and the busiest path; Judge on the busiest path whether have the part container, said part container capacity approaches the residual capacity of said idle route most and said part container is redistributed from the busiest path to idle route to make that the allocation offsets in all paths is littler; If have, then said part container is redistributed from the busiest path to idle route.
If there is not said part container on the busiest path; Judge then whether the container of capacity maximum on the busiest path is positioned at the upper bound of the list item address size expression scope of container allocation table; If just the length of current list item address is added 1; And put 0 to the first address p that does not expand list item, if just only the first address p that does not expand list item is not set to j-1, wherein j is the list item address of the container of capacity maximum on the busiest said path; Increase by a new container then, form partner's container with the container that said capacity is maximum, then the outgoing route numbering of the newly-increased container of initialization makes it to use identical path with the maximum container of said capacity.
Also comprise: judge whether said partner's container has identical outgoing route; If just carry out the container union operation; If not, whether the allocation offsets of outgoing route of judging said partner's container all greater than 0, and both allocation offsets sums are less than the allocation offsets of idle route; If just carry out the container union operation, and idle route is arranged in the path of the container after will merging; Said container union operation comprises: judge whether the newly-increased container in partner's container is positioned at the upper bound that current list item address size is expressed scope; If just the length of current list item address is subtracted 1; And put 2d-1 to the first address p that does not expand list item; Wherein d is said container allocation table list item address size, if not just only with the current first address decrement of not expanding list item; Discharge the newly-increased container in partner's container then.
The beneficial effect of the present invention and prior art contrast is: the present invention has improved the flow equalization performance, has avoided causing to redistribute owing to the individual containers flow is excessive obtaining desirable equalization performance.The present invention has reduced the number of times of heavy dispense container, has avoided owing to container repeatedly heavily distributes the incorrect order of the bag that causes between some paths, and then has influenced network delivery efficient.
Description of drawings
Fig. 1 is the schematic flow sheet of the flow allocation method in the multi-protocol label switching network of the specific embodiment of the invention;
Fig. 2 is the principle schematic of the hash operations of the specific embodiment of the invention;
Fig. 3 is the structural representation of the container allocation table that does not have expansion of the specific embodiment of the invention;
Fig. 4 is the structural representation of the container allocation table after the expansion of the specific embodiment of the invention;
Fig. 5 is the structural representation of the flow distribution device in the multi-protocol label switching network of the specific embodiment of the invention.
Embodiment
Below through concrete execution mode and combine accompanying drawing that the present invention is explained further details.
Before the flow allocation method in carrying out multi-protocol label switching network of the present invention, can generate the container allocation table earlier.The number of container allocation table list item is by the decision of the quantity of outgoing route, gets 2 power greater than number of path.
Above-mentioned like Fig. 1, the flow allocation method in a kind of multi-protocol label switching network comprises the steps:
The first step: from the packet header of IP bag, extract traffic identifier.
Second step: carry out hash operations according to traffic identifier and draw the list item address of hashed value as the container allocation table.Specifically can adopt following method to carry out: to produce a sufficiently long random bit sequence by traffic identifier; From said random bit sequence, the bit of getting certain-length promptly draws said hashed value.As shown in Figure 2; In one embodiment of the invention; Traffic identifier is through 32 CRCs (CRC32), 16 CRCs (CRC16) and three arithmetic elements of 12 CRCs (CRC12), exports 32,16 and 12 s' random bit sequence respectively.The dynamic hashing function as input, is exported d bit as container allocation table list item address with this three strings bit sequence.
The 3rd step: find out suitable path number according to said list item address and container allocation table, and the IP bag is exported from this path.
The 4th step: whether the container allocation of judging the container allocation table is reasonable, if unreasonablely just adjust said container allocation table.This step is whenever carried out once at a distance from a set time, and the said set time is more little, and the assignment of traffic performance is good more, but the processing time of cost is big more, and adjusts the distribution of container continually, has the phenomenon of more bag incorrect orders.Find that after test of many times the said set time was preferably 25 seconds-35 seconds, further was preferably 30 seconds.
Fig. 3 is the container allocation table that does not have expansion, is made up of b list item, and the address is from 0 to b-1, and p is the parameter of container allocation table, represents the first address of not expanding list item.C is the capacity of container, and L is the time of container statistics, and I is the numbering of outgoing route.Fig. 4 is the container allocation table after the expansion, wherein (0, b), (1, b+1), (2, b+2) be three pairs of partner's containers respectively.
Judge whether reasonable method is for the container allocation of container allocation table: the allocation offsets D that judges all paths is 0, if then the container allocation of container allocation table is reasonable.The allocation offsets of path j is:
Figure GDA0000047212620000081
X wherein iBe the flow of path j,
Figure GDA0000047212620000082
C jIt is the capacity of path j.
Content through the parameter of adjustment hash function, the size that changes the container allocation table and renewal container allocation table makes that the flow distribution on the container is more reasonable.
Adjusting said container allocation table comprises: through calculating the allocation offsets in each path, find out idle route (path that allocation offsets is minimum) and the busiest path (path of allocation offsets maximum); Judge on the busiest path whether have the part container, said part container capacity approaches the residual capacity of said idle route most and said part container is redistributed from the busiest path to idle route to make that the allocation offsets in all paths is littler; If have, then said part container is redistributed from the busiest path to idle route.The purpose of doing like this is to prevent to be fitted on too much flow point on the idle route, makes idle route transship again, thus shifting out the part container from this paths again sometime in future.This can prevent that certain container from switching back and forth between mulitpath.
If there is not said part container on the busiest path; That just carries out the container splitting operation; The container splitting operation is specially: judge and list item address size that whether the maximum container of capacity on the busiest path is positioned at the container allocation table to express the upper bound of scope (express the upper bound of scope: the binary number that d binary digit arranged, the signless integer of represented maximum is 2 d-1; Also be the last column in the container allocation table); If just the length of current list item address is added 1; And put 0 to the first address p that does not expand list item, if just only the first address p that does not expand list item is not set to j-1, wherein j is the list item address of the container of capacity maximum on the busiest said path; Increase by a new container then, form partner's container with the container that said capacity is maximum, then the outgoing route numbering of the newly-increased container of initialization makes it to use identical path with the maximum container of said capacity.
Along with the container allocation table is constantly expanded, the value of p constantly increases.Container after the expansion constitutes a pair of partner's container with corresponding container, and the partner container identical to content can carry out union operation.
Adjusting said container allocation table also comprises: judge whether said partner's container has identical outgoing route; If just carry out the container union operation; If not, whether the allocation offsets of outgoing route of judging said partner's container all greater than 0, and both allocation offsets sums are less than the allocation offsets of idle route; If just carry out the container union operation, and idle route is arranged in the path of the container after will merging; Said container union operation comprises: judge whether the newly-increased container in partner's container is positioned at the upper bound that current list item address size is expressed scope; If just the length of current list item address is subtracted 1; And put 2d-1 to the first address p that does not expand list item, if not just only with the current first address decrement of not expanding list item; Discharge the newly-increased container in partner's container then.
Above-mentioned the 4th step does not need one to fix on after the 3rd step.
With an instance the present invention is further specified below: supposition MPLS ingress router has 10 paths between the MPLS egress router, and capacity is designated as C respectively 1, C 2, C 3..., C 10, the length of container allocation table list item address is got 12 (d=12), just is the output of CRC12, so the allocation table list item has 2 during initial condition d=2 12Individual.The first address p=0 that does not expand list item.
Along with the continuous arrival of input IP bag, the flow allocation method of being taked is following:
Step 1:IP bag gets into the input buffering memory cell, and wait is assigned with.
Step 2: packet switch apparatus reads the IP bag from the input buffering memory cell, separates IP packet header, delivers to the traffic identifier extraction element.
Step 3: the traffic identifier extraction unit extracts traffic identifier from IP packet header, give the hash operations unit.
Used (source IP address, purpose IP address) as traffic identifier in this example, so IPv4 network flow sign is had 2 32+32Individual, can use the IP address as sign for IPv6, also can use the traffic identifier field in packet header.Also can use (source IP address, purpose IP address, source port number, destination slogan) four-tuple and (source IP address; Purpose IP address, source port number, destination slogan; Protocol number) five-tuple traffic identifier is considered from angle of practical application in this example, chooses the IP address as traffic identifier; Because port numbers is usually used in transport layer protocol (TCP, UDP etc.), some IP layer protocols have only protocol number.
Step 4: the hash operations unit uses the dynamic hashing algorithm, calculates the address of container as input with traffic identifier.Hash operations is divided into 2 steps: (1) bit sequence generating function H (k).The CRC function that uses in this example includes: CRC12, CRC16 and CRC32.Also can select CRC8 etc. for use in the reality.(referring to CRC).H (k) is generated the bit sequence of a string 60 bit long by traffic identifier.(2) dynamic hashing computing.The main distinction of dynamic hashing and static hash is dynamically to adjust hash function, and new hash function " has comprised " old hash function.Be meant comprising here for what handled by old hash function to be stored in the keyword in the hash table, the hash result of new hash function remains unchanged.Therefore the Domotechnica of dynamic hashing is hash function; Usual way is to be transformed into a string bit sequence to keyword; Get wherein a part as hashed value (address of hash table entry), when needs are expanded, increase the figure place (comprising original address bit) of being got.If hi (k), (i=0 wherein, 1 ...) be gang's dynamic hashing function, be mapped as the long bit sequence of i to keyword k: 0,1 ..., 2i-1}.So this gang's function is satisfied:
hi(k)=hi-1(k)
Or
hi(k)=hi-1(k)+2i-1
Such function has a variety of, and the method that we use is to use a H (k) to convert k the random bit sequence of a string length into earlier, and hi (k) just gets the back i position of this sequence.Just,
If H (k)=bm-1...b2b1b0
Hi (k)=bi-1...b1b0, wherein m>=i so
Step 5: the hash operations unit outputs to container allocation unit, balanced unit to list item address and IP bag long respectively;
(1) the list item address of container allocation table outputs to the container allocation unit, is used to search the container allocation table, produces the outgoing route label, sees step 6.
(2) IP bag long outputs to balanced unit, is used to upgrade the dynamic hashing function parameters, and the size and the content of adjustment container allocation table, sees step 7.
Step 6: the container allocation table is searched in the container allocation unit;
Preserve the container allocation table in the container allocation unit; Be placed on traffic statistics information of container (the C field of container allocation table) and outgoing route numbering (the I field of container allocation table) in the same table in this example.
Step 7: balanced unit statistics container flow, upgrade the dynamic hashing function parameters, and the size and the content of adjustment container allocation table.
The real-time traffic of balanced unit monitoring container and outgoing route; Whenever at a distance from one regular time section; Check whether current container allocation is reasonable; If reasonable inadequately, through parameter (d, p), container allocation, expansion or the contraction container allocation table of adjustment hash function, improve the flow equalization performance so.
Balanced unit periodically triggers the adjustment operation of container allocation.Concrete adjustment container allocation table comprises the steps:
(1) uses redistribution method, the distribution of adjustment container.
At first, find out the most idle and the busiest path through calculating the allocation offsets in each path; Attempt then being newly assigned to the most idle path to the part receptacle on the busiest path.Approach most the container of idle route j residual capacity when we find capacity, and make that the allocation offsets of n paths is littler, redistribute this part container so, otherwise find out the maximum container of capacity, this container is carried out splitting operation (promptly carrying out following (2)).
(2) fission process of container.
Be positioned at the upper bound (j=2d-1) that current list item address size (d) is expressed scope if wait to divide container j; So at first to increase the length (d=d+1) of list item address, and put 0 to p, increase by one group of new container then; Form some with original container to partner's container; Then the outgoing route numbering of the newly-increased container of initialization makes it to use identical path with partner's container, avoids the incorrect order that wraps; Otherwise, can only need to upgrade the value of p, increase new container.p=j-1
(3) merging process of container
The condition that the balanced unit periodic test merges:, carry out the container union operation so if " partner " container has identical outgoing route; If the outgoing route of " partner " container all has overflow, and overflow the allocation offsets of sum, carry out so that container merges and the adjustment operation less than idle route.
If container i to be combined is positioned at the upper bound (i=2d-1) that current list item address size (d) is expressed scope; So at first to reduce the length (d=d-1) of list item address; And put 2d-1 to p; (discharging container refers to: remove the delegation in the container allocation table, the container allocation table has just diminished like this to discharge container i then; Being also referred to as the container allocation table has shunk); Otherwise only need upgrade the value of p, and p=p-1 discharges container i.
Step 8: the container allocation unit turns back to packet switch apparatus to the outgoing route numbering, and packet switch apparatus outputs to the current IP bag on the corresponding path, has accomplished the assignment of traffic process.
As shown in Figure 5, the flow distribution device in a kind of multi-protocol label switching network comprises: the traffic identifier extraction unit: be used for extracting traffic identifier from the packet header of IP bag; Hash operations unit: be used to carry out hash operations and draw the list item address of hashed value as the container allocation table; The container allocation table is preserved the unit, is used to preserve the container allocation table; Packet switch unit: be used for finding out suitable path number, and the IP bag is exported from this path according to said list item address and container allocation table; Balanced unit: be used to judge whether the container allocation of container allocation table is reasonable, if unreasonablely just adjust said container allocation table.
The present invention is assigned to an aggregate flow on the outgoing route of a plurality of different capabilities, according to the pro rate flow of path capacity, makes the occupancy balanced growth of each outgoing route.
Above content is to combine concrete preferred implementation to the further explain that the present invention did, and can not assert that practical implementation of the present invention is confined to these explanations.For the those of ordinary skill of technical field under the present invention, under the prerequisite that does not break away from the present invention's design, can also make some simple deduction or replace, all should be regarded as belonging to protection scope of the present invention.

Claims (8)

1. the flow allocation method in the multi-protocol label switching network is characterized in that: comprise the steps:
A, from the packet header of IP bag, extract traffic identifier;
B, carry out hash operations according to traffic identifier and draw the list item address of hashed value as the container allocation table;
C, find out suitable path number according to said list item address and container allocation table, and with the IP bag from the output of said suitable path;
D, judge whether the container allocation of container allocation table is reasonable, if unreasonablely just adjust said container allocation table, the said container allocation table of said adjustment comprises:
Through calculating the allocation offsets in each path, find out idle route and the busiest path;
Judge on the busiest path whether have the part container, said part container capacity approaches the residual capacity of said idle route most and said part container is redistributed from the busiest path to idle route to make that the allocation offsets in all paths is littler; If have, then said part container is redistributed from the busiest path to idle route.
2. the flow allocation method in the multi-protocol label switching network according to claim 1; It is characterized in that: if there is not said part container on the busiest path; Judge then whether the container of capacity maximum on the busiest path is positioned at the upper bound of the list item address size expression scope of container allocation table; If just the length of current list item address is added 1; And put 0 to the first address p that does not expand list item, if just only the first address p that does not expand list item is not set to j-1, wherein j is the list item address of the container of capacity maximum on the busiest said path; Increase by a new container then, form partner's container with the container that said capacity is maximum, then the outgoing route numbering of the newly-increased container of initialization makes it to use identical path with the maximum container of said capacity.
3. the flow allocation method in the multi-protocol label switching network according to claim 2; It is characterized in that: the said container allocation table of adjustment also comprises among the said step D: judge whether said partner's container has identical outgoing route; If just carry out the container union operation; If not, whether the allocation offsets of outgoing route of judging said partner's container all greater than 0, and both allocation offsets sums are less than the allocation offsets of idle route; If just carry out the container union operation, and idle route is arranged in the path of the container after will merging;
Said container union operation comprises: judge whether the newly-increased container in partner's container is positioned at the upper bound that current list item address size is expressed scope; If just the length of current list item address is subtracted 1; And put 2d-1 to the first address p that does not expand list item; Wherein d is said container allocation table list item address size, if not just only with the current first address decrement of not expanding list item; Discharge the newly-increased container in partner's container then.
4. according to the flow allocation method in the arbitrary described multi-protocol label switching network of claim 1-3, it is characterized in that: said step B specifically comprises: produce a sufficiently long random bit sequence by traffic identifier; From said random bit sequence, the bit of getting certain-length promptly draws said hashed value.
5. the flow allocation method in the multi-protocol label switching network according to claim 4 is characterized in that: said step D whenever carried out once at a distance from 25 seconds-35 seconds.
6. the flow distribution device in the multi-protocol label switching network is characterized in that comprising:
Traffic identifier extraction unit: be used for extracting traffic identifier from the packet header of IP bag;
Hash operations unit: be used to carry out hash operations and draw the list item address of hashed value as the container allocation table;
Container allocation unit: be used for finding out suitable path number according to said list item address and container allocation table;
Packet switch unit: the IP bag is exported from said suitable path;
Balanced unit: be used to judge whether the container allocation of container allocation table is reasonable, if unreasonablely just adjust said container allocation table, the said container allocation table of said adjustment comprises:
Through calculating the allocation offsets in each path, find out idle route and the busiest path;
Judge on the busiest path whether have the part container, said part container capacity approaches the residual capacity of said idle route most and said part container is redistributed from the busiest path to idle route to make that the allocation offsets in all paths is littler; If have, then said part container is redistributed from the busiest path to idle route.
7. the flow distribution device in the multi-protocol label switching network according to claim 6; It is characterized in that: if there is not said part container on the busiest path; Judge then whether the container of capacity maximum on the busiest path is positioned at the upper bound of the list item address size expression scope of container allocation table; If just the length of current list item address is added 1; And put 0 to the first address p that does not expand list item, if just only the first address p that does not expand list item is not set to j-1, wherein j is the list item address of the container of capacity maximum on the busiest said path; Increase by a new container then, form partner's container with the container that said capacity is maximum, then the outgoing route numbering of the newly-increased container of initialization makes it to use identical path with the maximum container of said capacity.
8. the flow distribution device in the multi-protocol label switching network according to claim 7; It is characterized in that: also comprise: judge whether said partner's container has identical outgoing route; If just carry out the container union operation; If not, whether the allocation offsets of outgoing route of judging said partner's container all greater than 0, and both allocation offsets sums are less than the allocation offsets of idle route; If just carry out the container union operation, and idle route is arranged in the path of the container after will merging;
Said container union operation comprises: judge whether the newly-increased container in partner's container is positioned at the upper bound that current list item address size is expressed scope; If just the length of current list item address is subtracted 1; And put 2d-1 to the first address p that does not expand list item; Wherein d is said container allocation table list item address size, if not just only with the current first address decrement of not expanding list item; Discharge the newly-increased container in partner's container then.
CN2009101049442A 2009-01-08 2009-01-08 Flow allocation method and apparatus in MPLS network Expired - Fee Related CN101478499B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009101049442A CN101478499B (en) 2009-01-08 2009-01-08 Flow allocation method and apparatus in MPLS network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009101049442A CN101478499B (en) 2009-01-08 2009-01-08 Flow allocation method and apparatus in MPLS network

Publications (2)

Publication Number Publication Date
CN101478499A CN101478499A (en) 2009-07-08
CN101478499B true CN101478499B (en) 2012-01-04

Family

ID=40839134

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101049442A Expired - Fee Related CN101478499B (en) 2009-01-08 2009-01-08 Flow allocation method and apparatus in MPLS network

Country Status (1)

Country Link
CN (1) CN101478499B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101841460B (en) * 2010-02-08 2015-05-13 中兴通讯股份有限公司 Method and device for redirecting multi-protocol label switching message flow
CN102035743A (en) * 2010-12-17 2011-04-27 天津曙光计算机产业有限公司 Dynamic load balanced distribution method
CN105630590B (en) * 2014-11-28 2019-08-09 阿里巴巴集团控股有限公司 A kind of business information processing method and processing device
CN105515966B (en) * 2015-12-07 2018-09-21 中国航空工业集团公司西安航空计算技术研究所 A kind of FC network sendaisle control methods based on D_ID
US10223171B2 (en) * 2016-03-25 2019-03-05 Intel Corporation Mitigating load imbalances through hierarchical performance balancing
CN106130990B (en) * 2016-06-29 2019-06-18 中国联合网络通信集团有限公司 The control method and device of container access
CN106210162B (en) * 2016-06-29 2019-03-19 中国联合网络通信集团有限公司 Communication control method and device
CN109416646B (en) * 2016-09-08 2022-04-05 华为技术有限公司 Optimization method for container allocation and processing equipment
CN111147381B (en) * 2018-11-02 2022-01-18 华为技术有限公司 Flow balancing method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7277386B1 (en) * 2002-11-12 2007-10-02 Juniper Networks, Inc. Distribution of label switched packets
WO2008016558A2 (en) * 2006-07-31 2008-02-07 Cisco Technology, Inc. Technique for multiple path forwarding of label-switched data traffic

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7277386B1 (en) * 2002-11-12 2007-10-02 Juniper Networks, Inc. Distribution of label switched packets
WO2008016558A2 (en) * 2006-07-31 2008-02-07 Cisco Technology, Inc. Technique for multiple path forwarding of label-switched data traffic

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Tim Wing Chim等.Traffic distribution over-equal-cost-multi-paths.《COMPUTER NETWORK》.2005,465-475. *

Also Published As

Publication number Publication date
CN101478499A (en) 2009-07-08

Similar Documents

Publication Publication Date Title
CN101478499B (en) Flow allocation method and apparatus in MPLS network
US9762494B1 (en) Flow distribution table for packet flow load balancing
Kumar et al. Beyond best effort: Router architectures for the differentiated services of tomorrow's internet
US8259585B1 (en) Dynamic link load balancing
US6768716B1 (en) Load balancing system, apparatus and method
EP3072274B1 (en) Source routing with entropy-header
US20110164503A1 (en) System and Method to Support Enhanced Equal Cost Multi-Path and Link Aggregation Group
US9917891B2 (en) Distributed in-order load spreading resilient to topology changes
CN101547139B (en) Method and device for announcing network topology changes
CN101447929A (en) Traffic routing method, router and communication system
CN102075444A (en) Network system and method for guaranteeing multi-type service quality
CN103607358B (en) Dynamic ECMP method and system based on link utilization rate average sum
CN108632159A (en) A kind of network service traffic load-balancing method based on prediction
WO2012109910A1 (en) Routing method and device for link aggregation
CN108400936A (en) Information Network method for routing based on MPLS
Singh et al. Load balancing in IP/MPLS networks: a survey
CN101478480B (en) Method and apparatus for implementing load balance
US11070472B1 (en) Dynamically mapping hash indices to member interfaces
WO2014187398A1 (en) Lsp data packet generating method and device
Li et al. MPLS traffic engineering load balance algorithm using deviation path
Kang et al. Niagara: Scalable load balancing on commodity switches
Desmouceaux et al. A content-aware data-plane for efficient and scalable video delivery
Tounsi et al. Small packets aggregation in an IP domain
Ali et al. QoS multicast aggregation under multiple additive constraints
Hussein Multipath bandwidth capacity allocation and MPLS internet traffic engineering

Legal Events

Date Code Title Description
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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120104

Termination date: 20160108

CF01 Termination of patent right due to non-payment of annual fee