Patent ID: 9608938
Date: 2017-03-28
CPC Classifications: H04L

Claim:
1. A non-transitory computer readable medium comprising instructions, which when executed by a processor on a switch perform a method, the method comprising: receiving, by a switch operating system (SOS), a first flow counter value for a flow of a first plurality of flows; determining, using the first flow counter value, that the flow is an elephant flow, wherein the flow is associated with one selected from a group consisting of a flow rate that is above a first threshold and a weighted average flow rate that is above a second threshold; obtaining flow egress port information by determining an egress port from a plurality of egress ports on the switch for each of the first plurality of flows; obtaining port congestion information for the switch, wherein the port congestion information comprises at least one selected from a group consisting of port congestion data for the egress port indicating that a packet was dropped by the egress port and port congestion data for the egress port indicating that a latency of the egress port exceeds an expected latency of the egress port; selecting, based on the port congestion information and the flow egress port information, a new egress port for the flow; and sending a request to update a switch chip on the switch, wherein the request specifies that subsequently received packets for the flow are to be forwarded out of the new egress port.