Patent ID: 8369219

Claim:
An apparatus comprising: a first data scheduler configured to share available device bandwidth among a first type of traffic and a second type of traffic on an as-needed basis, wherein the first type of traffic includes external-link traffic arriving from outside of the apparatus, and wherein the second type of traffic includes recirculation traffic, the recirculation traffic comprising portions of the external-link traffic that has passed through the apparatus and are being recirculated through the apparatus; and a traffic monitor in communication with the first data scheduler, wherein the traffic monitor monitors bandwidth usage of the second type of traffic and latency of the second type of traffic and provides a traffic control signal to the first data scheduler, the traffic control signal generated based on the monitored bandwidth usage and latency of the second type of traffic, wherein the first data scheduler is configured to provide a service guarantee with regard to one or more pre-determined transmission characteristics for the recirculation traffic by: dynamically prioritizing the external-link traffic above the recirculation traffic in response to the traffic control signal indicating a first condition, and dynamically prioritizing the recirculation traffic above the external-link traffic in response to the traffic control signal indicating a second condition, wherein the first condition includes one of: the external-link traffic being served at a rate less than a total device bandwidth minus a predetermined minimum bandwidth allotted to the recirculation traffic, during a period in which the recirculation traffic is demanded; or the external-link traffic being served at a rate less than a total device bandwidth during a period in which the recirculation traffic is not demanded, and wherein the second condition includes: the recirculation traffic being served at a rate that is at, equal to, or less than the predetermined minimum bandwidth allotted to the recirculation traffic when a buffer associated with the recirculation traffic is being occupied above a pre-determined threshold amount.