数据中心网络
介绍
数据中心的应用需求正推动对高速网络的需求不断增长。这些网络不仅需要提供高吞吐量和低延迟,还应具备低 CPU 占用率,并能在大规模环境下支持大量连接。例如,分布式机器学习训练和云存储等带宽密集型应用,需要实现超过 100 Gbps 的服务器间网络带宽。在线服务如搜索和数据库则要求网络延迟尽可能低,以缩短查询响应时间。此外,大多数应用需要网络堆栈的 CPU 开销低,以便为计算任务保留更多 CPU 核心资源。
概念
InfiniBand
专为 RDMA 设计的网络。
RoCE
基于 Ethernet 做 RDMA。RoCE 协议目前存在 RoCEv1 和 RoCEv2 两个版本。
PFC
基于优先级的流控制(PFC),即 IEEE 标准 802.1Qbb,是一种链路层流控机制。这种流控机制与 IEEE 802.3x 以太网 PAUSE 使用的机制类似,但它是针对各个优先级进行操作的。PFC 不是暂停链路上的所有流量,而是允许你根据流量的类别选择性地暂停流量。
存在的问题:
- PFC 死锁,是指当多个交换机之间因微环路等原因同时出现拥塞,各自端口缓存消耗超过阈值,而又相互等待对方释放资源,从而导致所有交换机上的数据流都永久阻塞的一种网络状态。
RoCEv2 vs Infiniband
RoCEv2 | Infiniband | |
---|---|---|
带宽 | 最高 400 Gbps | 目前最高 400 Gbps |
直连时延(RTT) | 1.6 us | 1.6 us |
单跳交换机时延(单向) | 500 ns | 100-150 ns |
经过 3 跳交换机的端到端时延(RTT) | 4.6 us | 2.5 us |
设备 top 厂商 | NVIDIA(Mellanox) | NVIDIA(Mellanox) |
设备成本 | 较低 | 较高 |
是否可以与 以太网共用硬件 | 是 | 否 |
规模 | 可达整个数据中心数十万台服务器 | 最大万台左右服务器 |
流量控制 | 一般需要 PFC(需要管理员配置 PFC threshold) | Credit-based flow control(基本上不需要配置) |
拥塞控制 | DCQCN(注:老的 RoCE 卡拥塞控制很差) | 与 DCQCN 类似的 ECN-based 协议 |
多路径路由 | 根据源端口号 ECMP 随机选路,每条流仅走一条路 | 正常情况下与 RoCEv2 相同,故障情况下支持 adaptive routing 自动换路 |
丢包重传 | Go-back-N(注:很老的 RoCE 卡是 Go-back-0,很差) | Go-back-N |
运维难度 | 为解决故障网卡和交换机引起的 PFC 风暴问题,需要手动配置 PFC 阈值。此外,若网卡型号不一致,还需处理互联互通问题。 | 低,基本上免运维 |
适用场景 | 大规模互联网公司,大规模 AI/HPC 集群 | 中小规模 AI/HPC 集群 |
PFC vs ECN
项目 | PFC | ECN |
---|---|---|
网络位置 | 第二层 | 网络层和传输层 |
有效范围 | 点对点 | 端到端 |
对全网支持的需求 | 是 | 否 |
受控对象 | 网络上的前一个节点 (如果服务器 NIC 支持 PFC,PFC 也会在 NIC 上生效) |
发送主机 |
数据包缓存位置 | 中间节点和发送者 | 发送者 |
影响的流量 | 设备上八个队列中的任意一个的所有流量 | 拥塞连接 |
响应速度 | 快 | 慢 |
操作演练
Huawei
网络观测
协议介绍
目前交换机上的网络观测协议主要由 2 种,分别是 SNMP 和 Telemetry。
- SNMP 协议的全程是 Simple Network Management Protocol,称为简单网络管理协议。
- Telemetry 通常称为网络遥感技术或网络遥测技术。
主要区别如下:
特性 | SNMP | Telemetry |
---|---|---|
工作模式 | 拉取模式(pull mode) | 推送模式(push mode) |
数据结构 | 使用 MIB 定义 | 使用 YANG 定义 |
数据采集频率 | 5 分钟 | 秒/亚秒级 |
SNMP 存在的问题
- 数据采集频率太长导致忽略了很多问题
- 会导致 CPU 忽高
Telemetry 的优势
- 采集精度高
- 一次上报多个数据,提高了效率
- 上报数据携带时间戳,避免了传输延迟对采样数据的影响
- 支持 gRPC,订阅后主动上报(交换机充当 gRPC client)