Claims
- 1. A multicast method for directing a root flow in an Asynchronous Transfer Mode (ATM) environment to a plurality of egress interfaces using a corresponding number of leaf flows, comprising the steps:
initializing a circularly-linked pointer list, wherein a plurality of linked pointers point to a corresponding number of cell memory locations in a memory space; upon receiving root flow cells in said ATM environment, storing said cells in said cell memory locations based on a root flow index associated with said root flow, wherein said root flow index is initialized to a particular pointer of said linked pointer list for storing a head root flow cell and is updated through said linked pointers upon arrival of additional root flow cells; initializing a plurality of leaf flow index values, wherein each index value corresponds to a leaf flow and is initialized to said particular pointer pointing to a cell memory location containing said head root flow cell; when a particular leaf flow becomes eligible for scheduling, obtaining a copy of said head root cell for emission to an egress interface associated with said particular leaf flow and updating its leaf flow index value to refer to a next one of said linked pointer list; and upon scheduling a particular root flow cell for each of said leaf flows, writing a new root flow cell in said particular root flow cell's memory location.
- 2. The multicast method for directing a root flow in an ATM environment as set forth in claim 1, wherein said operation of determining when a particular leaf flow becomes eligible for scheduling is performed by a hierarchical scheduler having a number of aggregation layers partitioned among a plurality of service priority categories.
- 3. The multicast method for directing a root flow in an ATM environment as set forth in claim 2, wherein one of said plurality of service priority categories is associated with a Constant Bit Rate (CBR) service class.
- 4. The multicast method for directing a root flow in an ATM environment as set forth in claim 2, wherein one of said plurality of service priority categories is associated with a real-time Variable Bit Rate (rt-VBR) service class.
- 5. The multicast method for directing a root flow in an ATM environment as set forth in claim 2, wherein one of said plurality of service priority categories is associated with a non-real-time Variable Bit Rate (nrt-VBR) service class.
- 6. The multicast method for directing a root flow in an ATM environment as set forth in claim 2, wherein one of said plurality of service priority categories is associated with an Unspecified Bit Rate (UBR) service class.
- 7. The multicast method for directing a root flow in an ATM environment as set forth in claim 2, wherein one of said plurality of service priority categories is associated with a Guaranteed Frame Rate (GFR) service class.
- 8. The multicast method for directing a root flow in an ATM environment as set forth in claim 1, wherein each leaf flow is specified by a Flow ID (FID).
- 9. The multicast method for directing a root flow in an ATM environment as set forth in claim 1, further comprising the step of adding additional number of leaf flows operable to receive said root flow.
- 10. The multicast method for directing a root flow in an ATM environment as set forth in claim 1, further comprising the step of deleting a number of existing leaf flows.
- 11. A multicast system for directing a root flow in an Asynchronous Transfer Mode (ATM) environment to a plurality of egress interfaces using a corresponding number of leaf flows, comprising:
means for initializing a circularly-linked pointer list, wherein a plurality of linked pointers point to a corresponding number of cell memory locations in a memory space; means operable upon receiving root flow cells in said ATM environment for storing said cells in said cell memory locations based on a root flow index associated with said root flow, wherein said root flow index is initialized to a particular pointer of said linked pointer list for storing a head root flow cell and is updated through said linked pointers upon arrival of additional root flow cells; means for initializing a plurality of leaf flow index values, wherein each index value corresponds to a leaf flow and is initialized to said particular pointer pointing to a cell memory location containing said head root flow cell; means, operable upon determining that a particular leaf flow is eligible for scheduling, for obtaining a copy of said head root cell for emission to an egress interface associated with said particular leaf flow and for updating its leaf flow index value to refer to a next one of said linked pointer list; and means for writing a new root flow cell in a particular root flow cell's memory location upon scheduling said particular root flow cell for each of said leaf flows.
- 12. The multicast system for directing a root flow in an ATM environment as set forth in claim 11, further including a hierarchical scheduler having a number of aggregation layers partitioned among a plurality of service priority categories, said hierarchical scheduler operating to determine when a particular leaf flow becomes eligible for scheduling.
- 13. The multicast system for directing a root flow in an ATM environment as set forth in claim 12, wherein one of said plurality of service priority categories is associated with a Constant Bit Rate (CBR) service class.
- 14. The multicast system for directing a root flow in an ATM environment as set forth in claim 12, wherein one of said plurality of service priority categories is associated with a real-time Variable Bit Rate (rt-VBR) service class.
- 15. The multicast system for directing a root flow in an ATM environment as set forth in claim 12, wherein one of said plurality of service priority categories is associated with a non-real-time Variable Bit Rate (nrt-VBR) service class.
- 16. The multicast system for directing a root flow in an ATM environment as set forth in claim 12, wherein one of said plurality of service priority categories is associated with an Unspecified Bit Rate (UBR) service class.
- 17. The multicast system for directing a root flow in an ATM environment as set forth in claim 12, wherein one of said plurality of service priority categories is associated with a Guaranteed Frame Rate (GFR) service class.
- 18. The multicast system for directing a root flow in an ATM environment as set forth in claim 11, wherein each leaf flow is specified by a Flow ID (FID).
- 19. The multicast system for directing a root flow in an ATM environment as set forth in claim 11, further comprising means for adding additional number of leaf flows operable to receive said root flow.
- 20. The multicast system for directing a root flow in an ATM environment as set forth in claim 11, further comprising means for deleting a number of existing leaf flows.
- 21. A buffer system for implementing a multicast scheduling technique in an Asynchronous Transfer Mode (ATM) environment, wherein a root flow is transmitted to a plurality of egress interfaces using a corresponding number of leaf flows, comprising:
an index memory structure operable to contain a plurality of leaf flow index values associated with said leaf flows and a root flow index associated with said root flow; a pointer memory structure operable to contain a plurality of circularly-linked pointers, wherein said leaf flow index values and said root flow index are indexed to said linked pointers; and a cell memory structure having a plurality of cell memory locations to which said linked pointers point, wherein root flow cells received in said ATM environment are stored in said cell memory locations based on said root flow index and, when a particular leaf flow becomes eligible for scheduling, a copy of a root cell is obtained for emission, said root cell being located in a cell memory location that is pointed to by a linked pointer to which said particular leaf flow's index value is indexed.
- 22. The buffer system for implementing a multicast scheduling technique in an ATM environment as set forth in claim 21, wherein a hierarchical scheduler having a number of aggregation layers partitioned among a plurality of service priority categories is provided for determining when said particular leaf flow becomes eligible for scheduling.
- 23. The buffer system for implementing a multicast scheduling technique in an ATM environment as set forth in claim 22, wherein one of said plurality of service priority categories is associated with a Constant Bit Rate (CBR) service class.
- 24. The buffer system for implementing a multicast scheduling technique in an ATM environment as set forth in claim 22, wherein one of said plurality of service priority categories is associated with a real-time Variable Bit Rate (rt-VBR) service class.
- 25. The buffer system for implementing a multicast scheduling technique in an ATM environment as set forth in claim 22, wherein one of said plurality of service priority categories is associated with a non-real-time Variable Bit Rate (nrt-VBR) service class.
- 26. The buffer system for implementing a multicast scheduling technique in an ATM environment as set forth in claim 22, wherein one of said plurality of service priority categories is associated with an Unspecified Bit Rate (UBR) service class.
- 27. The buffer system for implementing a multicast scheduling technique in an ATM environment as set forth in claim 22, wherein one of said plurality of service priority categories is associated with a Guaranteed Frame Rate (GFR) service class.
- 28. The buffer system for implementing a multicast scheduling technique in an ATM environment as set forth in claim 21, wherein each leaf flow is specified by a Flow ID (FID).
CROSS-REFERENCE TO RELATED APPLICATION(S)
[0001] This application discloses subject matter related to the subject matter disclosed in the following commonly owned co-pending U.S. patent applications: (i) “Stackplane Architecture,” filed Dec. 22, 1999, application Ser. No. 09/469,897, in the names of James W. Dove et al.; (ii) “Scalable Architecture For An Access Node,” filed Jun. 27, 2002, application Ser. No. ______, (Attorney Docket No.: 1285-0090US), in the name(s) of Eric Friedrichs et al.; (iii) “Integrated Gateway Functionality In An Access Network Element,” filed Nov. 2, 2001, application Ser. No. 10/052,846, in the names of Thornton Collins et al.; (iv) “System And Method For Implementing GFR Service In An Access Node's ATM Switch Fabric,” filed even date herewith, application Ser. No. ______, (Attorney Docket No.: 1285-0102US), in the names of Mudhafar Hassan-Ali et al.; (v) “Virtual Group Connection Scheme For ATM Architecture In An Access Node,” filed even date herewith, application Ser. No. ______, (Attorney Docket No.: 1285-0099US), in the names of Mudhafar Hassan-Ali et al.; (vi) “Calendar Heap System And Method For Efficient Sorting,” filed even date herewith, application Ser. No. ______, (Attorney Docket No.: 1285-0101US), in the names of Mudhafar Hassan-Ali et al.; (vii) “Hierarchical Scheduler Architecture For Use With An Access Node,” filed even date herewith, application Ser. No. ______, (Attorney Docket No.: 1285-0103US), in the names of Mudhafar Hassan-Ali et al., which are hereby incorporated by reference herein for all purposes.