最大最小公平策略(Max-Min Fairness)
最大最小公平策略(Max-Min Fairness) 是一种常见的资源分配策略,其核心思想是:
“尽可能地满足每个需求较小的请求,然后在资源剩余的情况下按比例满足更大请求。”
✅ 通俗解释
想象一个水龙头向多个水桶同时放水:
- 每个水桶都有不同的容量(表示每个流的带宽需求)。
- 开始时所有桶同时接水,但如果水不够,系统会优先把水平均分给那些容量小的桶(即带宽需求小的流),直到这些桶“满”了(即满足需求)。
- 剩余的水再分给还没“满”的桶(需求更大的流)。
📌 在 coflow 调度中的应用
在一个 coflow 中有多个流(flows),这些流从不同机器发送数据到目标机器。如果你不知道哪个流是瓶颈(即哪个流数据最多、最慢),你可以:
- 对所有流平均分配带宽,保证每个流最小限度地被满足。
- 优先满足传输速度慢的流,从而整体 coflow 更快完成(因为 coflow 的完成时间是由最慢的流决定的)。
📈 好处
- 不依赖先验知识(无需知道哪个流数据最多);
- 自然避免“某个流饿死”(即饥饿);
- 比完全平均分配或贪心策略更能提高整体完成效率(CCT)。
🛠️ 举例
假设有 3 个流,它们需要分别传输的数据量是:
- 流 A:2 MB
- 流 B:5 MB
- 流 C:9 MB
最大最小公平策略的分配过程如下:
- 先平分总带宽(比如每个流先给 2 MB);
- 流 A 已完成,带宽从 A 释放出来;
- 剩余带宽继续在 B 和 C 中按比例分配,直到它们也完成。
🧠 总结
最大最小公平性 = 每个流都获得“它最需要的最小资源份额”,以保障整体公平与效率。
在 coflow 调度中,它是无先验知识下非常有效的一种资源分配策略。