CS 168 · LECTURE 19 · 2026-11-05 · 数据中心

数据中心拓扑与高双向带宽

数据中心网络追求高双向带宽、低尾延迟和可维护故障域;leaf–spine/Clos 用大量等价短路径替代一棵粗壮而昂贵的树。

版本快照:Fall 2026 官方课表与在线教材,核对日期 2026-09-02;官网仍标注 under construction,日期与政策可能变化。

  1. 互联网地基
  2. 路由
  3. 传输
  4. 应用与端到端
  5. 数据中心
  6. 群体通信
  7. 无线与移动

本章核心问题

怎样让任意服务器对之间都能并发通信,同时仍使用可批量采购的交换芯片?

1 · 为什么企业园区模型不够

数据中心流量常是 east–west:计算、存储和服务之间横向通信,且一次用户请求会 fan out 到大量后端。平均带宽之外,最慢的子请求决定整体尾延迟。

单棵汇聚树的上层链路很快成为瓶颈与大故障域。只升级核心硬件成本高且扩展不平滑,Clos 通过增加平行交换机水平扩展。

2 · leaf–spine 路径数

每个 leaf 连接所有 spine。两个不同 leaf 下的服务器之间,经任一 spine 都有一条等长最短路,因此若有 \(k\) 个 spine,理论上有 \(k\) 条 ECMP 候选。单个 spine 故障只减少一份容量。

同 leaf 通信无需上行。路径与容量计算必须先区分同 rack、同 pod 与跨 pod,否则会把不经过上层的流量算进 bisection。

3 · 超卖与双向带宽

leaf 下行总容量除以上行总容量得到 oversubscription 的一种常见表达。1:1 表示最坏情况下所有服务器满速跨 leaf 仍有匹配上行;更高超卖用成本换取依赖流量不会同时峰值的假设。

bisection bandwidth 衡量把节点分成两半时跨割可承载多少流量。实际可用吞吐还受哈希碰撞、故障与流方向影响。

4 · mice、elephant 与队列

短流(mice)对排队延迟敏感,长流(elephant)贡献大部分字节并容易占据队列。简单 FIFO 下一个大突发可让很多短 RPC 超时,触发上层重试放大负载。

数据中心拥塞控制常用浅队列、ECN、优先级或更精细调度,但任何机制都要防止 starvation,并在真实 incast 工作负载下验证。

交互推演:比较树形瓶颈与 leaf-spine 多条等价路径的带宽和故障域。

层次、冗余路径和上行超卖是拓扑关系,逐层展示能减少空间推理负担。

比较树形瓶颈与 leaf-spine 多条等价路径的带宽和故障域。的静态步骤概览

纠错:最容易带走的错误模型

闭卷推演

画 4 leaf × 4 spine,每链路 100 Gbit/s;计算两个 leaf 间候选路径、一个 spine 故障后的总上行容量,并构造一次最坏哈希碰撞。

检查:leaf–spine 中传统 ECMP 通常如何分流?

机制工作台:before → event → after

Before / local state

leaf-spine 中 host→leaf→spine→leaf→host

Event / after / output

leaf-spine 中 host→leaf→spine→leaf→host;每对 leaf 有多条等价路径,traffic pattern 决定 oversubscription。

检查:判断一个实现分支是否必要,最有力的问题是什么?

Explain It Yourself

给定四条 elephant flows,比较集中与散列后的链路负载。

自检方法

答案必须出现 packet/message、local state/table、触发 event、after state 与 output;只给定义不算完成。

一手资料

正文是 CourseStack 的中文解释与重新绘制的教学例子;官方页面负责课程原始定义,历史仓库只提供你的实现证据。