聚合以太网 RDMA 可确保在以太网网络上实现低延迟、高吞吐量的轻量 RDMA 通信。RoCE 需要配置为单独在第 2 层或同时在第 2 层和第 3 层上无损传输信息流量的网络。
聚合以太网 RDMA (RDMA over Converged Ethernet, RoCE) 是一种网络协议,使用 RDMA 为网络密集型应用程序提供更快的数据传输。RoCE 可以在主机之间实现直接的内存传输,而无需使用主机的 CPU。
RoCE 协议有两个版本。RoCE v1 在链接网络层(第 2 层)上运行。RoCE v2 在 Internet 网络层(第 3 层)上运行。RoCE v1 和 RoCE v2 都需要无损网络配置。RoCE v1 需要第 2 层无损网络,而 RoCE v2 则要求为第 2 层和第 3 层均配置无损操作。
第 2 层无损网络
要确保第 2 层无损环境,您必须能够控制流量。可以通过在整个网络上启用全局暂停或使用数据中心桥接组 (Data Center Bridging, DCB) 定义的优先级流量控制 (Priority Flow Control, PFC) 协议来实现流量控制。PFC 是第 2 层协议,使用 802.1Q VLAN 标记的服务类字段设置各个流量的优先级。它会根据各个服务类优先级暂停到某个接收方的数据包传输。这样,将由一个链接同时承载无损 RoCE 流量和其他有损但尽力保留的流量。如果发生流量拥堵,可能会影响到重要的有损流量。要隔离不同的流量,可以在启用了 PFC 优先级的 VLAN 中使用 RoCE。
第 3 层无损网络
RoCE v2 要求在第 3 层路由设备中保留无损数据传输。要跨第 3 层路由器实现第 2 层 PFC 无损优先级传输,可以对路由器进行相应配置,把数据包的接收优先级设置映射到第 3 层的相应差异化服务代码点 (Differentiated Serviced Code Point, DSCP) QoS 设置。传输的 RDMA 数据包标记了第 3 层 DSCP、第 2 层优先级代码点 (Priority Code Point, PCP) 或同时标记了这二者。路由器使用 DSCP 或 PCP 从数据包中提取优先级。如果使用 PCP,数据包必须带有 VLAN 标记,且路由器必须复制标记的 PCP 位并将其转发到下一个网络。如果数据包标记了 DSCP,则路由器必须保持 DSCP 位不变。
与 RoCE v1 一样,RoCE v2 必须在启用了 PFC 优先级的 VLAN 上运行。
有关供应商特定的配置信息,请参考相应设备或交换机供应商的官方文档。