MPTCP在数据中心的部署——技术概览以及拥塞控制公式

Improving Datacenter Performance and Robustness with Multipath TCP

论文链接:Improving Datacenter Performance and Robustness with Multipath TCP

​ 在数据时代,数据中心已经崛起并主导了计算领域,大数据中心通过其内部建立的多条数据路径来提供网络数据通讯服务。而现在的网络(论文发表年份2011年)大多采用传统的TCP/IP协议,也就是只支持一个网络接口地址链接的单路径传输。这种单路径TCP方法往往会带来部分链路资源空闲、部分连接堵塞的情况,有时还会出现丢包的情况,这一系列问题会带来很大的网络瓶颈,所以在计算机网络中需要高效率和高可靠性的方案解决这一矛盾。

​ MPTCP正如他的名字,是多路径TCP的代表,是为了优化这类网络问题而产生。简单来说MPTCP协议就是TCP协议的一个演变,将单路径使用的TCP变换为同时使用多条路径进行通信。相比于传统的单路径TCP通信协议,它更适合在当前(论文发表年份2011年)具备几十万服务器的数据中心上部署。

​ 本文通过设计htsim数据包模拟模型和丢包率函数模型来对MPTCP在模拟数据中心的应用能力进行理论测试,也通过在Amazon EC2平台中部署MPTCP模型验证了其强大的能力。试验结果表明其性能是常规TCP协议的3倍左右。它可以流畅的使用可用带宽,并在其中无缝衔接转换,能够在许多的拓扑结构上实现其目标:

  • 更高的吞吐量,因为有更多的路径的选择,这将大大减少空闲连接的数量;
  • 更好的公平性,不同连接之间的吞吐量相比于TCP更相近,拥塞分布将会更加均匀。
  • 作者团队设计的两种模拟模型也很好的证明了MPTCP在模拟数据中心环境中具有较强的鲁棒性,如果链路或交换机发生故障,即使没有 MPTCP,路由也会绕过它,但这需要时间。 MPTCP 使用许多路径;如果一个失败,其他人可以继续而不会暂停。更糟糕的是故障还不足以触发重新路由,但会导致链路自动协商回退到低链路速度,或者导致非常高的丢包率。单路径 TCP 只能通过慢速路径涓流数据; MPTCP 可以简单地避免在非常拥塞的路径上发送流量。

​ MPTCP的拥塞控制机制能够根据网络链路情况动态的调整发送速率,当其接收到ACK时,会增加拥塞窗口数量;而发生丢包时,会减少拥塞窗口的一半,这方面机制与传统TCP相同,但是MPTCP的子流拥有自主调节拥塞窗口的能力,MPTCP的每一条子流中都具有单独的拥塞窗口,子流可以根据各个链路的状况动态的调整拥塞窗口,但是会限制在整个MPTCP会话的窗口总数量范围内,子流的窗口调整方式如下所示:
当 子 流 接 收 到 A C K 时 , 增 加 拥 塞 窗 口 : w r = m i a n ( a / w t o t a l , 1 / w r ) 当子流接收到ACK时,增加拥塞窗口: w_r = mian(a / w_total, 1/w_r) ACKwr=mian(a/wtotal,1/wr)

当 发 生 丢 包 的 时 候 , 拥 塞 窗 口 就 会 变 为 : 2 / w r 当发生丢包的时候,拥塞窗口就会变为: 2/w_r 2/wr

​ 其中 w r w_r wr是当前子流的拥塞窗口, w t o t a l w_{total} wtotal是所有子流拥塞窗口的总和,a确定所有子流的攻击性(调整拥塞窗口增加速率的参数)

​ 由公式可以得出窗口的增加也会取决于总窗口的大小,所以一般大窗口的增长速度会快于小窗口,这一特点会主动的将拥塞路径转向负载较小的路径,来提升整体的负载平衡。

​ 在FatTree拓扑网络中,需要将子路径的数量增加到8个才能使用出整体网络90%的吞吐量;而在VL2和BCube的模拟当中结果却不同,VL2之中子路径的数量增多并不能带来大幅度的收益,明显的分界点在2条子路径时;而BCube的特点却同FatTree相近,具有子路径数量和吞吐性能的梯度变化特点。这样的实验可以优化不同拓扑结构当中MPTCP部署时的消耗,这将更有助于MPTCP在数据中心的应用。

​ 综上所述MPTCP的拥塞控制算法和拓扑特性能够很好的提升网络吞吐量,有效利用链路特征,实现负载均衡,减轻网络瓶颈的压力。但是通过思考发现MPTCP还具有一些诸如:部署时需要增加协议,很难大范围部署、在全域感知能力上需要提高等。

资料来源:

《Improving Datacenter Performance and Robustness with Multipath TCP》—— UCL(伦敦学院)

《MPTCP拥塞控制算法的设计与实现》—— 大连理工大学

《TCL源码分析》—— blog.csdn.net/weixin_34344677/article/details/94305449

《数据中心内的负载均衡》—— blog.csdn.net/weixin_42432918/article/details/119288480

《Dynamic flow scheduling for data center networks. In Proc. Usenix NSDI 2010.》 —— . Al-Fares, S. Radhakrishnan, B. Raghavan, N. Huang, and A. V ahdat.

wiki百科

百度百科

CSDN相关TCP协议名词解释
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值