IP Library Granted Patent US 8,274,887
Granted Patent B2
US 8,274,887 · App. 12/780,633 · Granted Sep 25, 2012

Distributed congestion avoidance in a network switching system

Assignee: Broadcom Corporation
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 8,274,887
App. No.
12/780,633
Granted
Sep 25, 2012
Kind
B2
Abstract

According to an example embodiment, a total offered traffic load for a shared resource within a network switching system may be determined, the total offered traffic load may include, for example, a sum of offered traffic loads from one or more active virtual output queues (VOQs) of the network switching system. A capacity of the shared resource within the network switching system may be determined. A transmission rate from one or more of the active VOQs over the shared resource may be adjusted such that the total traffic load from the active VOQs does not exceed the capacity of the shared resource.

Claims (36)

1. A network switching system comprising one or more virtual output queues (VOQs), and a bandwidth database, the network switching system further comprising:

a network device configured to determine a total offered traffic load for a shared resource within a network switching system, the total offered traffic load including a sum of offered traffic loads from one or more active virtual output queues (VOQs) of the network switching system;

the network device configured to determine a capacity of the shared resource within the network switching system based on the bandwidth database; and

the network device configured to adjust a transmission rate from one or more of the active VOQs over the shared resource such that the total traffic load from the active VOQs does not exceed the capacity of the shared resource.

2. The network switching system of claim 1 wherein the network device being configured to determine a total offered traffic load comprises:

each of a plurality of ingress network devices of the network switching system being configured to report a state of one or more of its VOQs such that one or more ingress network devices of the network switching system obtains a global view of a demand or total offered traffic load upon one or more shared resources of the network switching system.

3. The network switching system of claim 2 wherein the ingress network devices reporting states of one or more of its VOQs comprises an ingress network device sending a queue state message indicating an empty/non-empty status for one or more VOQs.

4. The network switching system of claim 2 wherein the ingress network devices reporting states of one or more of its VOQs comprises an ingress network device sending a queue state message indicating a level of fullness for one or more VOQs.

5. The network switching system of claim 1 wherein the network device being configured to determine a total offered traffic load comprises:

the network device exchanging queue state messages with other network devices of the network switching system to allow one or more of the network devices to determine active and non-active virtual output queues (VOQs), each VOQ associated with a destination, and wherein a path from an ingress network device to an egress network device within the network switching system includes one or more resources or segments that may be shared among the VOQs.

6. The network switching system of claim 1 wherein the network device being configured to determine a capacity of the shared resource within a network switching system comprises the network device being configured to:

determine a destination associated with each VOQ;

determine resources for a path between an ingress device and a destination for each VOQ based on the bandwidth database;

determine a resource that is shared among a plurality of the VOQs; and

determine a bit rate capacity of the shared resource based on the bandwidth database.

7. The network switching system of claim 1 wherein the network device being configured to adjust comprises the network device being configured to:

adjust a transmission rate from one or more of the VOQs that use the shared resource to be approximately a fair share of the capacity of the shared resource based on a number of active VOQs offering traffic load over the shared resource and the capacity of the shared resource, the shared resource including a path segment within a switch fabric of the network switching system.

8. The network switching system of claim 1 wherein the network device being configured to adjust comprises the network device being configured to:

adjust a transmission rate from one or more of the VOQs to provide an uneven or weighted allocation of bandwidth among the VOQs.

9. A network switching system comprising one or more virtual output queues (VOQs), the network switching system comprising:

means for determining a total offered traffic load for a shared resource within a network switching system, the total offered traffic load including a sum of offered traffic loads from one or more active virtual output queues (VOQs) of the network switching system;

means for determining a capacity of the shared resource within the network switching system; and

means for adjusting a transmission rate from one or more of the active VOQs over the shared resource such that the total traffic load from the active VOQs does not exceed the capacity of the shared resource.

10. The network switching system of claim 9 wherein the means for determining a total offered traffic load comprises:

each of a plurality of ingress devices of the network switching system reporting a state of one or more of its VOQs such that one or more ingress devices of the network switching system obtains a global view of a demand or total offered traffic load upon one or more shared resources of the network switching system.

11. The network switching system of claim 10 wherein the ingress devices reporting states of one or more of its VOQs comprises an ingress device sending a queue state message indicating an empty/non-empty status for one or more VOQs.

12. The network switching system of claim 10 wherein the ingress devices reporting states of one or more of its VOQs comprises an ingress device sending a queue state message indicating a level of fullness for one or more VOQs.

13. The network switching system of claim 9 wherein the means for determining a total offered traffic load comprises:

network devices of the network switching system exchanging queue state messages to allow one or more of the network devices to determine active and non-active virtual output queues (VOQs), each VOQ associated with a destination, and wherein a path from an ingress network device to an egress network device within the network switching system includes one or more resources or segments that may be shared among the VOQs.

14. The network switching system of claim 9 wherein the means for determining a capacity of the shared resource within a network switching system comprises:

means for determining a destination associated with each VOQ;

means for determining resources for a path between an ingress device and a destination for each VOQ;

means for determining a resource that is shared among a plurality of the VOQs; and

means for determining a bit rate capacity of the shared resource.

15. The network switching system of claim 9 wherein the means for adjusting comprises:

means for adjusting a transmission rate from each of the VOQs that use the shared resource to be approximately a fair share of the capacity of the shared resource based on a number of active VOQs offering traffic load over the shared resource and the capacity of the shared resource, the shared resource including a path segment within a switch fabric of the network switching system.

Assignments (5)
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF MERGER TO 09/05/2018 PREVIOUSLY RECORDED AT REEL: 047230 FRAME: 0133. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047630/0456 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047230/0133 →
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 →
Continuity (3)
Continuation 11639651 · Dec 15, 2006
Provisional Application 60794385 · Apr 24, 2006
Related Publication 20100220595A1 · Sep 2, 2010