info: Zhang H , Chen L , Yi B ,et al.CODA: Toward Automatically Identifying and Scheduling Coflows in the Dark[C]//Conference on Acm Sigcomm Conference.ACM, 2016.DOI:10.1145/2934872.2934880.
最近的一系列研究工作表明,利用coflows来利用应用层信息可以显著提高分布式数据并行应用程序的通信性能。但现有方案的无法实现coflows自动识别和调度。
我们能否在不手动更新任何数据并行应用程序的情况下自动识别和调度coflows?这可以归结为三个关键设计目标有待解决:
主要提出了一个可在不修改应用程序的情况下实现自动快速准确识别和容错性调度coflows的算法CODA,并实现原型进行了小规模部署以及大规模仿真测试,结果符合预期。
对应用层的透明性方面,研究者巧妙利用了基于DBSCAN密度聚类算法的incremental Rough-DBSCAN进行在线聚类,并辅以离线属性探索和距离度量学习,实现了快速准确的coflows识别,替代了之前研究提出的手工的侵入性的方式(比如在编写应用的时候通过注释),从而实现了自动地coflows识别。
容错性coflows调度方面,研究者分析了pioneers和stragglers两类误识别的影响并指出了stragglers对于CCT指标的显著的负面影响,针对此采用了延迟绑定最小化其影响。此外,研究者指出了coflow内部排序对于识别错误的关键影响,针对此采用了流内核流间优先级相结合的调度策略。最终容错性设计带来了CCT指标提升和错误影响的减少。
系统采取了主从架构,将流信息采集和coflow调度的执行交由代理机执行,流识别和调度决策由Master机执行,做了一个分离,实现了低性能损失下的高可伸缩性。
info: Chowdhury M , Stoica I .Coflow: a networking abstraction for cluster applications[C]//Acm Workshop on Hot Topics in Networks.ACM, 2012.DOI:10.1145/2390231.2390237.