IP Library Granted Patent US 7,394,808
Granted Patent B2
US 7,394,808 · App. 10/852,317 · Granted Jul 1, 2008

Method and apparatus for implementing scheduling algorithms in a network element

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,394,808
App. No.
10/852,317
Granted
Jul 1, 2008
Kind
B2
Abstract

Device-wide performance guarantees may be implemented in a network element using a pull forwarding scheme by using separate processes on the network element communicating via handshake signals to enable coordination between the aspects of the network element. One class of processes execute at the ingress queues, a second class of process execut at junction points, and a final class of processes execute at the egress ports. The combination of these separate processes leads to the correct scheduling of frames in a device-wide manner as if there were a centralized scheduler with complete information about all queued frames. As a result, the performance guarantees of the intended scheduling algorithm are preserved and are provided in a device-wide manner. The scheduling algorithms that are supported include round-robin, deficit round robin, negative deficit round robin, weighted round robin, and strict priority.

Claims (24)

1. A method for implementing a scheduling algorithm in a network element, the method comprising the steps of:

instantiating a plurality of first processes associated with ingress queues and configured to hold protocol data units for particular egress ports;

instantiating a plurality of second processes associated with the egress ports; and

communicating between the plurality of first and second processes to coordinate a transfer of the protocol data units from the ingress queues to the egress ports to implement a device-wide fair scheduling algorithm.

2. The method of claim 1 , wherein the ingress queues are associated with flows of protocol data units being handled by the network element.

3. The method of claim 1 , wherein the protocol data units are queued at the ingress queues on a per egress queue basis.

4. The method of claim 1 , wherein each egress port is associated with a respective egress queue, and wherein the egress queues are configured to receive protocol data units upon transfer of the protocol data units to the egress ports.

5. The method of claim 1 , wherein the step of coordinating the transfer of the protocol data units comprises engaging in a handshake between the first and second processes.

6. The method of claim 1 , wherein the step of coordinating a transfer of protocol data units comprises coordinating between a plurality of the first processes to thereby coordinate the transfer of protocol data units from the plurality of ingress queues to the egress port.

7. The method of claim 6 , wherein the step of coordinating a transfer comprises asserting, by a first of the first processes, a request signal indicating the ability to transfer a protocol data unit; and asserting by the second process, a grant signal indicating that the first of the first processes is allowed to transfer the protocol data unit.

8. The method of claim 7 , wherein the step of coordinating a transfer further comprises asserting, by the first of the first processes, a release signal; and asserting, by the second process, a grant signal indicating that a second of the first processes is allowed to transfer the protocol data unit.

9. The method of claim 1 , wherein the step of coordinating a transfer of protocol data units comprises instantiating at least one third process, said third process being configured to select between the second processes.

10. A network element, comprising:

a data plane configured to handle protocol data units on a communication network, said data plane including a plurality of ingress ports and a plurality of egress ports, and a plurality of ingress queues configured to store said protocol data units at said ingress ports; and

a plurality of processes implemented on the data plane and configured to selectively communicate with each other to implement a device-wide fair scheduling algorithm.

11. The network element of claim 10 , wherein one of the processes is associated with each of the ingress queues.

12. The network element of claim 10 , wherein the data plane has aggregation points, and wherein one of the processes is associated with the aggregation points.

13. The network element of claim 10 , wherein one of the processes is associated with each of the egress ports.

14. The network element of claim 10 , wherein the processes include three classes of processes, a first of the classes of processes is associated with each of the ingress queues, a second of the classes of processes is associated with the aggregation points; and a third of the classes of processes is associated with each of the egress ports.

15. The network element of claim 14 , wherein the a process in the third class of processes is configured to control a subset of the second class of processes, and wherein a process in the second class of processes is configured to control a subset of the first class of processes.

16. The network element of claim 14 , wherein the processes communicate by asserting request, grant, and release signals.

17. the network element of claim 16 , wherein the processes further communicate by asserting visit signals.

18. The network element of claim 10 wherein the device-wide fair scheduling algorithm is a round robin scheduling algorithm.

19. The network element of claim 17 , wherein the device-wide fair scheduling algorithm is at least one of a priority scheduling, deficit round robin, negative deficit round robin, and weighted round robin, scheduling algorithm.

Assignments (6)
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 11, 2014
From: ROCKSTAR BIDCO, LP
To: ROCKSTAR CONSORTIUM US LP
Reel/Frame 032425/0867 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2011
From: NORTEL NETWORKS LIMITED
To: ROCKSTAR BIDCO, LP
Reel/Frame 027164/0356 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2004
From: FIGUEIRA, NORIVAL R.; LI, HUIWEN; ACHTARI, GUYVES
To: NORTEL NETWORKS LIMITED
Reel/Frame 016053/0598 →