[2012 HotNets] Coflow: A Networking Abstraction for Cluster Applications
Coflows make it easier for applications to convey their communicatino semantics to the network, which in turn enables the network to better optimize common communication patterns.
[2014 SIGCOMM] Efficient coflow scheduling with Varys
Smallest-Effective-Bottleneck-First (SEBF) heuristic: greedily schedules a coflow based on its bottleneck’s completion time
Minimum-Allocation-for-Desired-Duration (MADD) algorithm: slows down all the flows in a coflow to match the completion time of the flow that will take the longest to finish, so that other coexisting coflows can make progress
[2015 SIGCOMM] Aalo: Efficient coflow scheduling without prior knowledge
Removed the clairvoyance requirements of the coflow information
Aalo employs Discretized Coflow-Aware Least-Attained Service (D-CLAS) to separate coflows into a small number of priority queues based on how much they have already sent across the cluster. By performing prioritization across queues and by scheduling coflows in the FIFO order within each queue, Aalo’s non-clairvoyant scheduler reduces coflow completion times while guaranteeing starvation freedom.