Thursday, August 20, 2015

Adaptive Congestion Control for Unpredictable Cellular Networks

Yasir Zaki (New York University Abu Dhabi), Thomas Pötsch (University of Bremen), Jay Chen (New York University Abu Dhabi), Lakshminarayanan Subramanian (New York University), Carmelita Görg (University of Bremen)

Paper:
http://conferences.sigcomm.org/sigcomm/2015/pdf/papers/p509.pdf

Public review:
http://conferences.sigcomm.org/sigcomm/2015/pdf/reviews/308pr.pdf

Code:
http://yzaki.github.io/verus

It is well-known that Cellular Networks have throughput performance problems. One of the reason is the mismatch between TCP assumptions and Cellular Network behavior.

Authors present Verus, which is an adaptive congestion control, to mitigate the problem between TCP features and unpredictable cellular links. Verus is an end-to-end congestion control protocol that uses delay measurements to react quickly to the capacity changes in cellular networks without explicitly attempting to predict the cellular channel dynamics. Verus learns a delay profile that captures the relationship between end-to-end packet delay and outstanding window size over short epochs.

Authors compares Verus with TCP Cubic and TCP Vegas. Verus better utilizes the bandwidth. Also, TCP Delay and Vegas have higher delay. Verus provides nearly 30% higher throughput but with higher delay against Sprout, which is the state of the art technique.

Q&A

Q: For very short LTE latency, what would be the TCP gain?
A: We did some analysis with commercial LTE deployments. Thus, we do not think there would be much different. You would be able to get the delay feedback and adapt.

Q: You can blast UDP flow and mess up TCP fairness.
A: Verus was evaluated against other TCPs on a tail drop link.

Q: Why did you do your implementation of TCP over UDP?
A: Convenience, not in the kernel.

Q: What if you implement on kernel space?
A: We might get better improvements since we could get the signals faster.

Q: What if the flows are short?
A: If the flows are short, they do not live beyond the slow start and perform similarly to TCP. The target was to look at longer-lived connections.

Q: Did you look at the convergence time?
A: No, we did not.