Patent ID: 7164686

Claim:
In an output-buffered switch system for broadband networks, the switch system having a plurality of flows i (i=1˜N) and an output queue, the output queue having a plurality of windows, each flow i having a corresponding normalized weight w i and a credit c i , and using a window index d i to point to a window, wherein the normalized weight of the flow i is w i =W×w i */(w 1 *+w 2 * + . . . w N *), w i * being the weight of flow i and W being the size of a window, a method comprising the steps of: (A) when packet P i of flow i arrives, determining whether the credit c i of flow i is larger than the size of packet P i based on the normalized weight w i , window index d i and credit c i corresponding to the flow i, wherein the normalized weight w i , window index d i and credit c i are stored in a table; (B) if the credit c i of flow i is smaller than the size of packet P i , adding the normalized weight w i of the flow i to the credit c i , incrementing the window index d i , and executing step (A) again; (C) if the credit c i of flow i is larger than the size of packet P i , the packet P i is placed into the window pointed by the window index d i ; (D) subtracting the size of the packet P i from the credit c i , and (E) scheduling the packets for delivery in a stepwise manner in order to guarantee a quality of service.