IP Library Granted Patent US 7,349,336
Granted Patent B2
US 7,349,336 · App. 10/370,670 · Granted Mar 25, 2008

Random early drop with per hop behavior biasing

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,349,336
App. No.
10/370,670
Granted
Mar 25, 2008
Kind
B2
Abstract

A technique for random early drop (RED) with per-hop-behavior (PHB) biasing involves breaking RED parameters into queue-specific parameters and packet-specific parameters. Each queue has associated queue-specific parameters. Each packet has an associated traffic class. The packet-specific parameters are related to the traffic class of the packet. The queue-specific and packet-specific parameters are then both used in RED procedures, thereby providing a PHB bias from using packet-specific parameters. The technique provides for absolute queue size support that can be dynamically changed based upon available memory resource levels.

Claims (69)

1. A method of performing random early drop (RED), comprising:

receiving a packet with an associated traffic class;

making a class-specific RED adjustment for said packet to bias RED procedures for different traffic classes within a single queue; and

managing said packet in accordance with RED parameters and said class-specific RED adjustment.

2. The method of claim 1 , further comprising:

associating queue-based parameters with a queue;

associating PHB parameters with said packet according to said traffic class; and

making said class-specific RED adjustment in accordance with said queue-based parameters and said PHB parameters.

3. The method of claim 2 , further comprising:

establishing a queue size threshold using said class-specific RED adjustment; and

executing said RED procedures on said packet in accordance with said queue size threshold.

4. The method of claim 3 , wherein said queue size threshold is a minimum threshold, further comprising:

establishing a maximum threshold using said class-specific RED adjustment. wherein said executing further comprises executing said RED procedures on said packet in accordance with said maximum threshold;

determining a packet marking probability from said class-specific RED adjustment;

marking said packet if said packet is above said maximum threshold; and

marking said packet if said packet is between said minimum threshold and said maximum threshold in accordance with said packet marking probability.

5. The method of claim 4 , further comprising: determining a maximum allowed queue count for said queue from said queue-based parameters;

determining a minimum threshold percentage and a maximum threshold percentage from said PHB parameters;

calculating said minimum threshold from said minimum threshold percentage and said maximum allowed queue count; and

calculating said maximum threshold from said maximum threshold percentage and said maximum allowed queue count.

6. The method of claim 5 , further comprising: discarding said packet if said packet is marked.

7. The method of claim 1 , further comprising:

determining a queue weight from said PHB parameters;

calculating an average queue size using said queue weight; and

using said average queue size in accordance with said RED procedures.

8. The method of claim 2 , where said queue-based parameters include an absolute maximum count check mode indicator, further comprising:

establishing a count check mode for said queue;

detecting when memory resources have dropped below a memory resource threshold;

modifying absolute resource maximum settings of a queue in accordance with said count check mode and said detecting; and

executing said RED procedures on a packet using said absolute resource maximum settings.

9. The method of claim 8 , wherein said modifying includes a modification selected from the group consisting of ignoring absolute resource maximum settings, maintaining absolute resource maximum settings, and increasing absolute resource maximum settings.

10. A method of performing random early drop (RED) with per-hop-behavior (PHB) biasing, comprising:

associating queue-based parameters with a queue;

associating PHB parameters with a packet according to a traffic class associated with said packet;

establishing a queue size threshold using said queue-based parametric and said PHB parameters; and

executing RED procedures on said packet in accordance with said queue size threshold, said RED procedures biased for different traffic classes within a single queue.

11. The method of claim 10 , wherein said queue size threshold is a minimum threshold, further comprising:

establishing a maximum threshold using said queue-based parameters and said PHB parameters, wherein said executing further comprises executing said RED procedures on said packet in accordance with said maximum threshold;

determining a packet marking probability from said PHB parameters;

marking said packet if said packet is above said maximum threshold; and

marking said packet if said packet is between said minimum threshold and said maximum threshold in accordance with said packet marking probability.

12. The method of claim 11 , further comprising: determining a maximum allowed queue count for said queue from said queue-based parameters;

determining a minimum threshold percentage and a maximum threshold percentage from said PHB parameters;

calculating said minimum threshold from said minimum threshold percentage and said maximum allowed queue count; and

calculating said maximum threshold from said maximum threshold percentage and said maximum allowed queue count.

13. The method of claim 11 , further comprising: dropping said packet if said packet is marked.

14. The method of claim 10 , further comprising:

determining a queue weight from said PHB parameters;

calculating an average queue size using said queue weight; and

using said average queue size in accordance with said RED procedures.

15. A method of performing random early drop (RED), comprising:

detecting when memory resources have dropped below a memory resource threshold;

modifying absolute resource maximum settings of a queue in accordance with said detecting; and

executing RED procedures on a packet using said absolute resource maximum settings.

16. The method of claim 15 , wherein said modifying includes a modification selected from the group consisting of ignoring absolute resource maximum settings, maintaining absolute resource maximum settings, and increasing absolute resource maximum settings.

17. A system for performing random early drop (RED) with per-hop-behavior (PHB) biasing, comprising;

a queue configured to receive packets with a plurality of associated traffic classes, wherein a packet of said packets has an associated traffic class; and

a RED block associated with said queue, said RED block including:

memory, configured to store:

queue-based parameters associated with said queue;

PHB parameters associated with said traffic class; and

RED procedures; and

a processor configured to execute said RED procedures on said packet using said queue-based parameters and said PHB parameters.

18. The system of claim 17 , further comprising:

a queue-based parameter selector for selecting said queue-based parameters using a queue identifier (QID) of said queue; and

a PHB parameter selector for selecting said PHB parameters using said traffic class.

19. The system of claim 18 , wherein said queue-based parameters include a maximum allowed queue count and said PHB parameters include a maximum threshold percentage and a minimum threshold percentage.

20. The system of claim 17 , further comprising:

a free memory pointer block configured to detect when total available memory resources are below a reserve threshold, wherein said queue-based parameters include an absolute maximum count check mode selected from the modes consisting of disabling an absolute maximum count check, enabling said absolute maximum count check, disabling said absolute maximum count check if total memory resources are not below said reserve threshold and enabling said absolute maximum count check otherwise, and setting said absolute maximum count check to higher than a maximum count check if total memory resources are not below said reserve threshold and setting said absolute maximum count check to said maximum count check otherwise.

Assignments (11)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 28, 2021
From: PROVENANCE ASSET GROUP LLC
To: RPX CORPORATION
Reel/Frame 059352/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: NOKIA US HOLDINGS INC.
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058363/0723 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: CORTLAND CAPITAL MARKETS SERVICES LLC
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058983/0104 →
ASSIGNMENT AND ASSUMPTION AGREEMENT Recorded Feb 14, 2019
From: NOKIA USA INC.
To: NOKIA US HOLDINGS INC.
Reel/Frame 048370/0682 →
CHANGE OF NAME Recorded Feb 7, 2019
From: LUCENT TECHNOLOGIES INC.
To: ALCATEL-LUCENT USA INC.
Reel/Frame 049887/0613 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2017
From: NOKIA TECHNOLOGIES OY; NOKIA SOLUTIONS AND NETWORKS BV; ALCATEL LUCENT SAS
To: PROVENANCE ASSET GROUP LLC
Reel/Frame 043877/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP LLC
To: NOKIA USA INC.
Reel/Frame 043879/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP, LLC
To: CORTLAND CAPITAL MARKET SERVICES, LLC
Reel/Frame 043967/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2014
From: CREDIT SUISSE AG
To: ALCATEL-LUCENT USA INC.
Reel/Frame 033950/0261 →
SECURITY INTEREST Recorded Mar 7, 2013
From: ALCATEL-LUCENT USA INC.
To: CREDIT SUISSE AG
Reel/Frame 030510/0627 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 5, 2007
From: RIVERSTONE NETWORKS, INC.
To: LUCENT TECHNOLOGIES INC.
Reel/Frame 020213/0306 →