Aeolus针对近年数据中心较热的主动拥塞控制协议一个普遍没有解决好的问题:第一个RTT内unscheduled的数据包直接发送造成丢包, 延时不可控。
- 主动拥塞控制思想:request and allocation, 显式分配带宽,提前避免拥塞发生
- 主动拥塞控制实现方式:基于集中控制器(Fastpass)、基于交换机(TFC PDQ)、基于接收端(ExpressPass pHost NDP Homa)
Motivation
- 第一个RTT传输很重要:随着带宽增长,越来越多的流能够在一个RTT内发送完毕;流可以从直接发送(不等待一个RTT后credit的分配结果)获益;空余带宽更多
- 主动拥塞控制在第一个RRT内的问题
两个极端:
- 如果第一个RTT所有流都先等待credit:带宽浪费,短流带来额外开销大
- 如果第一个RTT所有流都线速发:充分利用带宽,但是无节制:
scheduled的数据包会受到unscheduled数据包的干扰
,尾延时增大。实验发现, tails are due to buffer buildups and subsequent packet drops caused by senders bursting too many unscheduled packets in the first RTT.
Design
Aeolus的设计目标:希望unscheduled的数据包只充分利用网络剩余带宽而不干扰scheduled数据包,保证主动拥塞控制的带宽分配正常,同时具有良好的可部署性。
Thoughts
参考文献
Aeolus A Building Block for Proactive Transport in Datacenters