162306a36Sopenharmony_ci.. SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci
362306a36Sopenharmony_ci======================
462306a36Sopenharmony_ciDCTCP (DataCenter TCP)
562306a36Sopenharmony_ci======================
662306a36Sopenharmony_ci
762306a36Sopenharmony_ciDCTCP is an enhancement to the TCP congestion control algorithm for data
862306a36Sopenharmony_cicenter networks and leverages Explicit Congestion Notification (ECN) in
962306a36Sopenharmony_cithe data center network to provide multi-bit feedback to the end hosts.
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ciTo enable it on end hosts::
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci  sysctl -w net.ipv4.tcp_congestion_control=dctcp
1462306a36Sopenharmony_ci  sysctl -w net.ipv4.tcp_ecn_fallback=0 (optional)
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ciAll switches in the data center network running DCTCP must support ECN
1762306a36Sopenharmony_cimarking and be configured for marking when reaching defined switch buffer
1862306a36Sopenharmony_cithresholds. The default ECN marking threshold heuristic for DCTCP on
1962306a36Sopenharmony_ciswitches is 20 packets (30KB) at 1Gbps, and 65 packets (~100KB) at 10Gbps,
2062306a36Sopenharmony_cibut might need further careful tweaking.
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ciFor more details, see below documents:
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ciPaper:
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ciThe algorithm is further described in detail in the following two
2762306a36Sopenharmony_ciSIGCOMM/SIGMETRICS papers:
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci i) Mohammad Alizadeh, Albert Greenberg, David A. Maltz, Jitendra Padhye,
3062306a36Sopenharmony_ci    Parveen Patel, Balaji Prabhakar, Sudipta Sengupta, and Murari Sridharan:
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci      "Data Center TCP (DCTCP)", Data Center Networks session"
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ci      Proc. ACM SIGCOMM, New Delhi, 2010.
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ci    http://simula.stanford.edu/~alizade/Site/DCTCP_files/dctcp-final.pdf
3762306a36Sopenharmony_ci    http://www.sigcomm.org/ccr/papers/2010/October/1851275.1851192
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ciii) Mohammad Alizadeh, Adel Javanmard, and Balaji Prabhakar:
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci      "Analysis of DCTCP: Stability, Convergence, and Fairness"
4262306a36Sopenharmony_ci      Proc. ACM SIGMETRICS, San Jose, 2011.
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_ci    http://simula.stanford.edu/~alizade/Site/DCTCP_files/dctcp_analysis-full.pdf
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ciIETF informational draft:
4762306a36Sopenharmony_ci
4862306a36Sopenharmony_ci  http://tools.ietf.org/html/draft-bensley-tcpm-dctcp-00
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_ciDCTCP site:
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ci  http://simula.stanford.edu/~alizade/Site/DCTCP.html
53