Claims
- 1. A method of providing access to a switch fabric, comprising:
determining scheduling information specific to a link to the switch fabric; and using the scheduling information to determine a queue to be serviced by the link.
- 2. A method of providing access to a switch fabric as recited in claim 1, wherein the link is one of a plurality of links to the switch fabric.
- 3. A method of providing access to a switch fabric as recited in claim 1, wherein the queue is one of a plurality of queues used to buffer data.
- 4. A method of providing access to a switch fabric as recited in claim 1, wherein the switch fabric is a striped switch fabric.
- 5. A method of providing access to a switch fabric as recited in claim 1, wherein the switch fabric is a non-striped switch fabric.
- 6. A method of providing access to a switch fabric as recited in claim 1, wherein the scheduling information includes a state variable.
- 7. A method of providing access to a switch fabric as recited in claim 1, wherein the scheduling information includes an index (I) variable and a round (R) variable.
- 8. A method of providing access to a switch fabric as recited in claim 1, further comprising updating the scheduling information.
- 9. A method of providing access to a switch fabric as recited in claim 1, wherein determining scheduling information specific to a link includes obtaining from a designated storage location the scheduling information specific to the link.
- 10. A method of providing access to a switch fabric as recited in claim 9, wherein the link is one of a plurality of links to the switch fabric, said designated storage location is one of a plurality of storage locations, and further comprising storing in each of said plurality of storage locations scheduling information specific to a different one of said plurality of links.
- 11. A method of providing access to a switch fabric as recited in claim 10, wherein said plurality of storage locations are arranged in a ring and the method further comprises rotating the ring by shifting the data in each storage, so that the data stored in the designated location corresponds to a next link to be serviced.
- 12. A method of providing access to a switch fabric as recited in claim 11 further comprising updating the scheduling information specific to a serviced link.
- 13. A method of providing access to a switch fabric as recited in claim 1, wherein determining a queue to be serviced by the link includes applying the scheduling information to a scheduling process that is specific to the link.
- 14. A method of providing access to a switch fabric as recited in claim 1, wherein determining a queue to be serviced by the link includes applying the scheduling information to a scheduling process that is specific to the link, and wherein the scheduling process employs a weighted round robin (WRR) scheme.
- 15. A method of providing access to a switch fabric as recited in claim 1, wherein determining a queue to be serviced by the link includes applying the scheduling information to a scheduling process that is specific to the link, and wherein the scheduling process employs a weighted fair queueing (WFQ) scheme.
- 16. A method of providing access to a switch fabric as recited in claim 1, wherein determining a queue to be serviced by the link includes applying the scheduling information to a scheduling process that is specific to the link, and wherein the scheduling process employs a deficit round robih (DRR) scheme.
- 17. A method of providing access to a switch fabric as recited in claim 1, wherein determining a queue to be serviced by the link includes applying the scheduling information to a scheduling process that is specific to the link, and wherein the scheduling process employs a strict priority (SP) scheme.
- 18. A method of providing access to a switch fabric as recited in claim 1, wherein determining a queue to be serviced by the link includes applying the scheduling information to a scheduling process that is specific to the link, and wherein the scheduling process employs a round robin (RR) scheme.
- 19. A system for providing access to a switch fabric comprising:
a buffer configured to store a plurality of queues; and a queue scheduler associated with the buffer and configured to:
determine scheduling information specific to a link to the switch fabric; and use the scheduling information to select one of the plurality of queues as the next queue to be serviced by the link.
- 20. A computer program product for providing access to a switch fabric, the computer program product being embodied in a computer readable medium and comprising computer instructions for:
determining scheduling information specific to a link to the switch fabric; and using the scheduling information to determine a queue to be serviced by the link.
- 21. A method of providing access to a switch fabric, comprising:
providing a first scheduling mode in which a queue to be serviced by a link is determined by using a first set of scheduling information not specific to the link; and providing a second scheduling mode in which a second set of scheduling information specific to the link is used to determine a queue to be serviced by the link.
- 22. A method of providing access to a switch fabric as recited in claim 21, further comprising providing a user interface to select between the first scheduling mode and the second scheduling mode.
- 23. A method of providing access to a switch fabric as recited in claim 21, further comprising providing a criterion to select between the first scheduling mode and the second scheduling mode.
- 24. A method of providing access to a switch fabric as recited in claim 21, further comprising obtaining said first set of scheduling information from a designated storage location when operating in the first scheduling mode and obtaining said second set of scheduling information from the same designated storage location when operating in the second scheduling mode.
- 25. A method of providing access to a switch fabric as recited in claim 24, wherein the link is one of a plurality of links to the switch fabric, said designated storage location is one of a plurality of storage locations, and further comprising storing in each of said plurality of storage locations scheduling information specific to a different one of said plurality of links.
- 26. A method of providing access to a switch fabric as recited in claim 25, wherein said plurality of storage locations are arranged in a ring and the method further comprises rotating the ring when operating in said second scheduling mode by shifting the data in each storage location in the ring, so that the data stored in the designated location corresponds to a next link to be serviced.
- 27. A method of providing access to a switch fabric as recited in claim 26, further comprising not rotating the ring when operating in said first scheduling mode.
- 28. A system for providing access to a switch fabric comprising:
a buffer configured to store a plurality of queues; a queue scheduler associated with the buffer, configured to provide a first scheduling mode in which a queue to be serviced by a link is determined by using scheduling information not specific to the link, and to provide a second scheduling mode in which scheduling information specific to the link is used to determine a queue to be serviced by the link.
- 29. A computer program product for providing access to a switch fabric, the computer program product being embodied in a computer readable medium and comprising computer instructions for:
providing a first scheduling mode in which a queue to be serviced by the link is determined by using scheduling information not specific to the link; providing a second scheduling mode in which scheduling information specific to the link is used to determine a queue to be serviced by the link.
- 30. A method of providing access to a switch fabric, comprising:
operating in a first scheduling mode in which a queue to be serviced by a link is determined using scheduling information not specific to the link; determining that a criterion has been met, wherein meeting the criterion indicates that it is advantageous to operate in a second scheduling mode in which scheduling information specific to the link is used to determine the queue to be serviced by the link; and switching to said second scheduling mode.
- 31. A system for providing access to a switch fabric, comprising:
a buffer configured to store a plurality of queues; a queue scheduler associated with the buffer, configured to operate in a first scheduling mode in which a queue to be serviced by a link is determined by using scheduling information not specific to the link, to determine that a criterion has been met, wherein meeting the criterion indicates that it is advantageous to operate in a second scheduling mode in which scheduling information specific to the link is used to determine the queue to be serviced by the link; and to switch to operate in a second scheduling mode.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to U.S. Provisional Patent Application No. 60/465,654 (Attorney Docket No. TIMEP010+) entitled An Improved Network Switch Fabric Access Integrated Circuit filed Apr. 25, 2003, which is incorporated herein by reference for all purposes.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60465654 |
Apr 2003 |
US |