IP Library Granted Patent US 7,787,370
Granted Patent B1
US 7,787,370 · App. 09/946,736 · Granted Aug 31, 2010

Technique for adaptively load balancing connections in multi-link trunks

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,787,370
App. No.
09/946,736
Granted
Aug 31, 2010
Kind
B1
Abstract

A technique for adaptively load balancing connections in multi-link trunks is disclosed. The present invention provides an adaptive load balancing algorithm that utilizes relative link quality metrics to adjust traffic distribution between links. Link quality metrics may include short-term averages of an observed packet drop rate for each member link in a bundle. The present invention may dynamically adjust the number of flows on each link in proportion to available bandwidth. In addition, link quality metrics may be equalized, such that no link is more lossy than the others.

Claims (55)

1. A method for adaptively load balancing connections in a multi-link trunk in a network having a plurality of network nodes, the method comprising the steps of:

determining at least one relative link quality metric for each link in the multi-link trunk;

detecting an arrival of a connection at a network node;

determining whether to drop an incoming packet at a link queue; and

assigning the connection to a link based on the relative link quality metric of the link;

wherein the step of determining whether to drop an incoming packet at the link queue further comprises the steps of:

computing at least one packet drop probability for each link;

generating a random number for the each link in the multi-link trunk;

comparing the random number to the at least one packet drop probability; and

computing an inter-drop interval for determining an interval at which to drop a packet.

2. The method of claim 1 , further comprising the step of:

filtering the packet drop probability.

3. The method of claim 2 , further comprising the step of:

computing a link weight for each link.

4. The method of claim 3 , further comprising the step of:

normalizing each link weight for each link.

5. The method of claim 4 , further comprising the step of:

determining a probability range for each link.

6. The method of claim 1 , wherein the step of assigning the connection to the link comprises the steps of:

associating each random number to a link; and

sending the connection to the link.

7. The method of claim 1 , wherein the random number is associated with one of a plurality of availability subintervals of availability values.

8. An apparatus for adaptively load balancing connections in a multi-link trunk in a network having a plurality of network nodes, the apparatus comprising:

a queue management algorithm for determining at least one relative link quality metric for each link in the multi-link trunk;

a detector for detecting an arrival of a connection at a network node and determining whether to drop an incoming packet at a link queue; and

a load balancing algorithm for assigning the connection to a link based on the relative link quality metric of the link;

wherein the detector further provides for computing at least one packet drop probability for each link; generating a random number for the each link in the multi-link trunk; and comparing the random number to the at least one packet drop probability; and further computes an inter-drop interval for determining an interval at which to drop a packet.

9. The apparatus of claim 8 , further comprising:

a filter for filtering the packet drop probability;

a link weight computer for computing a link weight for each link;

a normalizer for normalizing each link weight for each link; and

a probability range determinator for determining a probability range for each link.

10. The apparatus of claim 8 , further comprising:

an associator for associating each random number to a link; and

a sender for sending the connection to the link.

11. The apparatus of claim 8 , wherein the random number is associated with one of a plurality of availability subintervals of availability values.

12. At least one non-transitory computer readable storage medium storing a computer program of instructions configured to be readable by at least one processor for instructing the at least one processor to execute a computer process for performing the method as recited in claim 1 .

13. An article of manufacture for adaptively load balancing connections in a multi-link trunk in a network having a plurality of network nodes, the article of manufacture comprising:

at least one processor readable storage medium; and

instructions stored on the at least one medium;

wherein the instructions are configured to be readable from the at least one medium by at least one processor and thereby cause the at least one processor to operate so as to:

determine at least one relative link quality metric for each link in the multi-link trunk;

detect an arrival of a connection at a network node;

determine whether to drop an incoming packet at a link queue;

compute at least one packet drop probability for each link;

generate a random number for the each link in the multi-link trunk;

compare the random number to the at least one packet drop probability;

assign the connection to a link based on the relative link quality metric of the link; and

computing an inter-drop interval for determining an interval at which to drop a packet.

14. The article of manufacture of claim 13 , wherein the instructions further cause the at least one processor to operate so as to:

filter the packet drop probability;

compute a link weight for each link;

normalize each link weight for each link; and

determine a probability range for each link.

15. The article of manufacture of claim 13 , wherein the random number is associated with one of a plurality of availability subintervals of availability values.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Oct 26, 2020
From: JEFFERIES FINANCE LLC
To: RPX CLEARINGHOUSE LLC
Reel/Frame 054305/0505 →
SECURITY INTEREST Recorded Jun 29, 2018
From: RPX CLEARINGHOUSE LLC
To: JEFFERIES FINANCE LLC
Reel/Frame 046485/0644 →
RELEASE (REEL 038041 / FRAME 0001) Recorded Jan 2, 2018
From: JPMORGAN CHASE BANK, N.A.
To: RPX CORPORATION; RPX CLEARINGHOUSE LLC
Reel/Frame 044970/0030 →
SECURITY AGREEMENT Recorded Mar 9, 2016
From: RPX CORPORATION; RPX CLEARINGHOUSE LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038041/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2015
From: ROCKSTAR CONSORTIUM US LP; ROCKSTAR CONSORTIUM LLC; BOCKSTAR TECHNOLOGIES LLC; CONSTELLATION TECHNOLOGIES LLC; MOBILESTAR TECHNOLOGIES LLC; NETSTAR TECHNOLOGIES LLC
To: RPX CLEARINGHOUSE LLC
Reel/Frame 034924/0779 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2014
From: ROCKSTAR BIDCO, LP
To: ROCKSTAR CONSORTIUM US LP
Reel/Frame 032422/0919 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2011
From: NORTEL NETWORKS LIMITED
To: ROCKSTAR BIDCO, LP
Reel/Frame 027164/0356 →