OverQoS tunes the maximum output rate, , depending on network congestion in order to be both fair to cross traffic as well as achieve stability in the presence of other competing OverQoS traffic. One way of achieving this is to set based on an -TCP pipe abstraction which provides a bandwidth which is times the throughput of a single TCP connection on the virtual link. We set to be equal to the number of flows in the bundle.
We use MulTCP [29] to emulate the behavior of TCP connections. MulTCP uses a TCP-like congestion control mechanism with and as the increment and decrement parameters. While MulTCP may react quickly to congestion, it may not provide smooth variations in the sending rate. To obtain smoother variations, we may prefer to choose an alternate operating point with a lesser value of and without altering the net steady state throughput as determined by the TCP equation [27]. If we set , the corresponding value of can be calculated using the TCP equation as equal to . Across most of our evaluations, we use the standard parameters of MulTCP. Alternatively, we can also use an equation-based approach to emulate the behavior of TFRC connections [16].