Session

Fine-grained TCP Tuning

Speakers

Amery Hung
Xiaochun Lu

Label

Nuts and Bolts

Session Type

Talk

Contents

Description

Flow-based traffic management in the current data center network landscape is facing growing challenges. As the new generation of NICs brings higher throughput, the number of flows also increases. Since more applications with diverse network behavior can be hosted on the same host, traditional flow management may result in under-utilization of the network. For example, when a large number of short and long-lived flows co-exist in a single host, traditional congestion control algorithm like CUBIC will implicitly favor long-lived flows in terms of bandwidth because a short flow may not be able to reach a high send rate due to TCP slow start. In addition, since different applications may have different requirements (e.g., latency, throughput), and operate in different network environments, parameters that respect these factors can potentially better utilize the network. In this talk, we will discuss how we plan to tackle the challenge by taking factors beyond traditional per-flow information into consideration when tuning TCP parameters. First, we show how we can learn from other flows that share the same path when setting parameters of a new flow. Then, we will discuss how to design a receiver-side flow scheduler that detects incast and host congestion, and proactively adjust the receiving window. Finally, we will discuss how bpf qdisc can be used for tuning.