A network rate management protocol with TCP congestion control and fairness for all
Our study is motivated by the need to enable quality of service (QoS), congestion control and fair rate allocation for all end applications. We propose a new approach to address these needs which is different from the current practice whereby end applications pursue their own rate control using TCP. Our approach comprises a network rate management protocol (RMP) that controls the rate of all flows (at an aggregate level based on routes) subject to QoS requirements. The RMP control also facilitates a new TCP sliding-window congestion control based on the fair target rates computed by the RMP. Each non-TCP aggregate flow is policed by its respective edge router and each TCP flow adapts its window size as to achieve the RMP suggested fair target rate. The stability analysis of the new TCP congestion control is performed in a linearly scalable framework, which is less restrictive than a fluid model. We show that our proposed control is linearly scalable and establish its global asymptotic stability under arbitrary and variable information time lags, aka totally asynchronous conditions. The stability and the vitality of our control is verified by two means. One is a simulation of a network comprising 74 core links and up to 768 flows, each using its own access link. The simulation is also used to compare our control with the congestion control algorithms used in Fast, Vegas and Reno TCPs. The second verification means is an actual implementation of the control in the Linux kernel and its experimentation in a WAN testbed network comprising six routers and long haul links running UDP flows as well as CUBIC, N-RENO and C-TCP flows. Our experiments demonstrate that our approach can guarantee fair rates for all flows and QoS to premium flows.