Patent ID: 8593964

Claim:
A system comprising: a bottleneck-detection mechanism configured to detect a bottleneck in a network based on network-state information received from one or more switches, wherein the network-state information indicates whether a channel is experiencing a slow drain; a data-flow identification mechanism configured to-identify a data flow that contributes to the bottleneck, wherein while identifying the data flow the data-flow identification mechanism is further configured to: represent the switches in the network in a data structure that corresponds to the network topology; map the received network-state information to the network topology represented by the data structure to identify a data path which is affected by the bottleneck; issue a query to a data channel corresponding to the bottleneck; in response to the query, receive information which identifies one or more data flows transmitted via the bottleneck channel; and determine one or more of the data flows to be offending data flows which contribute to the bottleneck, based on the identified data path which is affected by the bottleneck; and a rate-limiting mechanism configured to generate a signal to reduce the data flow from the data flow's source device.