Patent attributes
An adaptive network-based approach for reducing congestion on certain select-group of flows within a programmable network wherein switches dynamically adjust the receive window size (rwnd) and/or the ACK pace of other TCP flows by interfering their ACK packets, those flows sharing network resources causing congestion on the select-group of flows. The TCP flow rate is reduced to make more network resources available to the group of select-flows. The system of invention further comprises a centralized controller detecting so called a ‘bad queue’ causing persistent traffic slow-down due to TCP behavior. The bad queue detection is performed by (i) monitoring switch ports' transmit and receive queues, (ii) calculating minimum packet sojourn times on queues, (iii) determining which flows to slow down to clear detected bad queues, and (iv) sending messages to certain switches to execute changes to a group of ACK packets.