介绍

数据中心的应用需求正推动对高速网络的需求不断增长。这些网络不仅需要提供高吞吐量和低延迟,还应具备低 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 种,分别是 SNMPTelemetry

  • SNMP 协议的全程是 Simple Network Management Protocol,称为简单网络管理协议。
  • Telemetry 通常称为网络遥感技术或网络遥测技术。

主要区别如下:

特性 SNMP Telemetry
工作模式 拉取模式(pull mode) 推送模式(push mode)
数据结构 使用 MIB 定义 使用 YANG 定义
数据采集频率 5 分钟 秒/亚秒级

SNMP 存在的问题

  • 数据采集频率太长导致忽略了很多问题
  • 会导致 CPU 忽高

Telemetry 的优势

  • 采集精度高
  • 一次上报多个数据,提高了效率
  • 上报数据携带时间戳,避免了传输延迟对采样数据的影响
  • 支持 gRPC,订阅后主动上报(交换机充当 gRPC client)

相关管理软件