DCTCP (数据中心 TCP)

DCTCP 是对数据中心网络 TCP 拥塞控制算法的增强,它利用数据中心网络中的显式拥塞通知 (ECN) 向终端主机提供多位反馈。

要在终端主机上启用它

sysctl -w net.ipv4.tcp_congestion_control=dctcp
sysctl -w net.ipv4.tcp_ecn_fallback=0 (optional)

数据中心网络中运行 DCTCP 的所有交换机都必须支持 ECN 标记,并且配置为在达到定义的交换机缓冲区阈值时进行标记。 DCTCP 在交换机上的默认 ECN 标记阈值启发式方法在 1Gbps 时为 20 个数据包 (30KB),在 10Gbps 时为 65 个数据包 (~100KB),但可能需要进一步的仔细调整。

有关更多详细信息,请参阅以下文档

论文

该算法在以下两篇 SIGCOMM/SIGMETRICS 论文中有更详细的描述

  1. Mohammad Alizadeh, Albert Greenberg, David A. Maltz, Jitendra Padhye, Parveen Patel, Balaji Prabhakar, Sudipta Sengupta, and Murari Sridharan

    “数据中心 TCP (DCTCP)”,数据中心网络会议”

    Proc. ACM SIGCOMM, New Delhi, 2010.

    http://simula.stanford.edu/~alizade/Site/DCTCP_files/dctcp-final.pdf http://www.sigcomm.org/ccr/papers/2010/October/1851275.1851192

  1. Mohammad Alizadeh, Adel Javanmard, and Balaji Prabhakar

    “DCTCP 分析:稳定性、收敛性和公平性” Proc. ACM SIGMETRICS, San Jose, 2011.

    http://simula.stanford.edu/~alizade/Site/DCTCP_files/dctcp_analysis-full.pdf

IETF 信息草案

DCTCP 站点