IP Library Granted Patent US 7,606,161
Granted Patent B2
US 7,606,161 · App. 10/825,656 · Granted Oct 20, 2009

Distributing information across equal-cost paths in a network

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,606,161
App. No.
10/825,656
Granted
Oct 20, 2009
Kind
B2
Abstract

A method of distributing data across a network having a plurality of equal-cost paths. Also, a device for distributing data over a network according to the method. The data, which is typically contained in data packets, may be distributed based on at least one attribute of each of the packets. The data may also be distributed according to a weighted distribution function that allows for unequal amounts of traffic to be distributed to each of the equal-cost paths.

Claims (31)

1. A method of distributing data across a network, the method comprising:

providing a distribution device configured to distribute packets of data across a set of equal-cost paths in the network;

determining if a set of equal-cost paths exist; and

distributing the packets across the paths based on at least one attribute of each of the packets,

wherein the distributing comprises using a pointer portion from a first set of instructions of a first compilation set of instructions to select a second set of instructions from a second compilation set of instructions, and

wherein the first set of instructions includes a first value that specifies how much weight is to be given to each equal-cost path in the set of equal-cost paths.

2. The method of claim 1 , wherein the distributing comprises distributing the packets based on source addresses.

3. The method of claim 1 , wherein the distributing comprises distributing the packets based on next-hop addresses.

4. The method of claim 1 , wherein the distributing comprises performing a hashing function on the attribute.

5. A method of distributing data across a network, the method comprising:

providing a distribution device configured to distribute a set of packets of data across a set of equal-cost paths in the network; and

distributing each packet in the set of packets across the set of equal-cost paths according to a weighted distribution so that at least one of said packets is given greater weight to be distributed across at least one of said equal-cost paths than at least one other of said equal-cost paths, said packet weight corresponding to a number of entries stored in a memory, wherein the distributing comprises

obtaining a match between a longest prefix in a first packet and a portion of a first set of instructions in a first compilation of sets of instructions, and

using a pointer portion from the first set of instructions to select a second set of instructions from a second compilation of sets of instructions, wherein the first set of instructions includes a first value that specifies how much weight is to be given to each equal-cost path in the set of equal-cost paths.

6. The method of claim 5 , wherein the distributing further comprises using a packet attribute from each packet to perform the weighted distribution.

7. The method of claim 6 , wherein the distributing comprises performing a hashing function on the packet attribute.

8. The method of claim 5 , wherein the distributing comprises:

performing a hashing function on an attribute of the first packet to obtain a hashed result;

dividing the hashed result by the first value, thereby obtaining a remainder value, and using the remainder value to obtain an offset;

adding the offset to the first pointer to select the second set of instructions,

wherein the second set of instructions includes a pointer to a third set of instructions in a third compilation of sets of instructions.

9. The method of claim 8 , wherein the distributing further comprises forwarding the first packet to a port designated in the third set of instructions.

10. The method of claim 5 , further comprising updating a compilation of sets of instructions used to perform the weighted distribution, wherein the compilation is updated based on a best-fit algorithm.

11. A distribution device, the device comprising:

a set of ports; and

a first distribution unit, including a device logic, wherein the first distribution unit is configured to use the device logic to distribute a packet of data entering the device through a first port among the set of ports to a second port among the set of ports, the device logic comprising:

a first lookup unit including an acknowledgement unit for acknowledging whether multiple equal-cost paths exist, a first referencing unit for referencing a second lookup unit when multiple equal-cost paths do exist, and a second referencing unit for referencing a third lookup unit otherwise,

the second lookup unit including a second distribution unit for distributing the packet across the set of ports and a third referencing unit for referencing the third lookup unit, and

the third lookup unit including a selection unit for selecting the second port.

12. The device of claim 11 , wherein, in the second lookup unit, multiple entries, each referencing a common set of instructions in the third lookup unit, are included.

13. The device of claim 12 , wherein, in the second lookup unit, a different number of entries resulting in the packet being distributed to the first path than to a second path are included.

Assignments (6)
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF MERGER PREVIOUSLY RECORDED AT REEL: 047195 FRAME: 0827. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Nov 5, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047924/0571 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047195/0827 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2004
From: KALKUNTE, MOHAN; SAMPATH, SRINIVAS; KISHORE, KARAGADA RAMARAO
To: BROADCOM CORPORATION
Reel/Frame 015225/0425 →