MulTFRC: providing weighted fairness for multimediaapplications (and others too!)

Dragana Damjanovic and Michael Welzl
Appears in: 
CCR July 2009

When data transfers to or from a host happen in parallel, users do not always consider them to have the same importance. Ideally, a transport protocol should therefore allow its users to manipulate the fairness among ows in an almost arbitrary fashion. Since data transfers can also include real-time media streams which need to keep delay - and hence buffers - small, the protocol should also have a smooth sending rate. In an effort to satisfy the above requirements, we present MulTFRC, a congestion control mechanism which is based on the TCP-friendly Rate Control (TFRC) protocol. It emulates the behavior of a number of TFRC ows while maintaining a smooth sending rate. Our simulations and a real-life test demonstrate that MulTFRC performs significantly better than its competitors, potentially making it applicable in a broader range of settings than what TFRC is normally associated with.

Public Review By: 
Darryl Veitch

This paper extends the derivation underlying the TCP Friendly Rate Control (TFRC) equation, resulting in a tunable version, ‘MulTFRC,’ capable of computing the appropriate TCP-friendly data rate of a flow that matches the throughput of N TCP flows.
Instead of naively multiplying the TFRC rate by the number of parallel streams being emulated, the scheme implicitly estimates the loss event rate that each flow would have received individually.
Much as MulTCP does for TCP, there are benefits to incorporating parallel TCP connections ‘natively,’ rather than actually running separate connections in parallel, including reduced overhead at the transport and application layers, and avoiding potentially nasty and variability inducing `self competition'.
Although the ideas in this paper are natural extensions of the existing literature rather than truly groundbreaking, this is work that seems like it `should' be done, and the authors have provided some convincing simulation and data-based evidence that the scheme works as one might hope. In particular they showed that its sending rate is quite smooth, and insensitive to the value of the tuning parameter N. A nice feature is that the N is not limited to integer values and can even be less than one, allowing for flexible use, and very friendly flows indeed.