- Author:
Ali Munir
(Michigan State University) Congestion Control, Transport, Data Center
摘要:
DC transport 像 DCTCP,PDQ,pFabric 经常被认为是竞争关系,(protocol A vs protocol B)。实际上这些protocol是互补的,于是我们提出了PASE,合并所有现有的transport策略
- self-adjusting endpoints(TCP)
- in-network prioritization(pFabric)
- arbitration(PDQ).
PASE部署非常友好,相比那些需要改网络元素的state-of-the-art的protocol(pFabric)更好,我们评估了PASE(NS2 Simulation and TestBed)
引入:
每个DC网络transport的目标不同:
- 最小化延迟时间
- 最小化FCT(流完成时间);AFCT
- 在DDL前完成flow
在本篇文章中,我们首先提取3种DC-transport设计方法:
- 自我调整的端点 self-adjusting endpoints
- 武断 Arbitration
- 网络优先级 in-network prioritization
我们提出的PASE结合了这三者:
- PASE 分布式 Arbitration 决定 flow 的优先级
- TCP-like end-host Trnasport 来做rate control 和 loss recovery
- 用优先级队列来scheduling 每个link之中的packet
本文的3个贡献是:
- 贡献1:对比DC的这些协议的优势和劣势
- 贡献2:设计PASE综合了这些策略,并且有controlplane,以及一个终端主机传输协议,并设计了一种速率控制机制。
- 贡献3:评估 PASE 包括macro-benchmark 和别的协议对比,以及micro-benchmark 内部如何优化。
Transport策略
单一策略的种类与对比:
1.Self-Adjusting Endpoints
比如传统的TCP用的就是这一类的,又比如DCTCP和D2TCP,收发端自己会决定传输多少数量级的数据基于网路的拥塞。2.Arbitration
Explicit rate protocols 比如PDQ,这一类的方法需要交换机来做排序的决定。3.In-network Prioritization
在传输的protocol中,使用in-network优先级,包裹会带着流的一些属性,比如ddl和size,然后交换机来决定packet的去留。比如pFabric。
策略Unison的好处:
论文在这边讨论了三种策略两两结合的好处
- 1.In-network Prioritization complementing arbitration
- 2.Arbitration aiding In-network Prioritization
- 3.Arbitration helping Self-Adjusting Endpoints
分别举了例子来说明如何获得好处~
PASE
PASE 是一个传输框架,综合了三种传输策略, Prioritization,Arbitration, 以及Self-adjusting Endpoints,结合方式如下:
- Arbitrators 做inter-flow prioritization流的优化,粗粒度的时间尺度调整。
- 端点需要测试是否链路上有空余
- In-network 优化机制需要聚焦于每个包裹的Prioritization,细粒度的优化。
Arbitration Control Plane
1.基本的判断算法
2.从底至上的层级判断(早期剪枝)+(代表团)
End-host Transport
最后的Output就是决定Priority Queue和一个Sending Rate
2个方向 Rate Control 速率控制以及 Loss Recovery丢包恢复。
Rate Control 速率控制。
- [1].对于一个top queue里面的流,他的cwnd速率控制窗口是Rref x RTT
- [2].对于一个lower priority queue里面的流,好好学习DCTCP
- [3].对于一个bottom priority queue的流,窗口cwnd = 1
Loss Recovery 丢包恢复。
- [1].对于一个top queue里面的流,采用现有的丢失恢复机制,基于超时的重传.
- [2].对于一个lower priority queue里面的流,采用probe packets,有ack重传,没有ack我就加时。
- [3].当包裹重新排序的时候,从低优先级到高优先级,降低传输量。
Implementation应用
- 小范围Linux testbed.
- NS2-Simulator.
Evaluation评估
模拟的设置
宏观基准
- 首先对比Friendly Deploy,和DDL无关: DCTCP
- 然后对比和DDL有关:D2TCP
- 最后对比最好的但是要改switch的:pFabric
- 在Multi-Link Scenario 和 High Loads的情况下都是PASE更好
微观基准
PASE 对于rate control比较敏感,所以可以通过调整rate control达到更好的整体效果
- [1].Arbitration optimization
- [2].Benefit of end-to-end arbitration
- [3].Impact of number of priority queues & Reference Rate & Impact of RTO and Probing.
这些小细节都可以通过微调达到更好的效果。
TestBed上的评估
验证了之前的想法,的确PASE能够达到更优的AFCTs.
相关工作
- 第一类 Self-adjusting Endpoints: 许多DC transports 使用这种策略.
- 比如DCTCP 使用自适应的拥塞控制ECN.
- 比如D2TCP和L2DCT分别在DCTCP基础上增加了deadline awareness以及size awareness
- MCP在D2TCP基础上委派了更多的精确的流控制通过ECN标志
- 第二类 Arbitration:
- PDQ 和 D3 都采用Network-wide arbitration 但招致较高的流切换负荷。
- PASE bottom up 方法和 EyeQ很类似
- 第三类 In network prioritization:
- pFabric: 使用in-network优先,通过基于priority的流调度以及丢包控制。
- Detail: 一个跨层网络堆栈: 专注于最小化尾部延迟,但不针对AFCT.