基于 DSCP 的 PFC,用于第 3 层未标记流量
您可以配置基于 DSCP 的 PFC,以支持跨第 3 层连接到第 2 层子网的未标记流量的无损行为,适用于诸如聚合以太网远程直接内存访问 (RDMA) 版本 2 (RoCEv2) 等协议。
概述
使用基于 DSCP 的 PFC 时,系统会根据传入流量的第 3 层 IP 报头中配置的 6 位分布式服务代码点 (DSCP) 值(而非第 2 层 VLAN 报头中的 3 位 IEEE 802.1p 代码点)生成暂停帧,以通知对等方链路拥塞。
由于 PFC 只能发送与 PFC 优先级代码点对应的暂停帧,因此当触发基于 DSCP 的 PFC 时,必须将 6 位配置的 DSCP 值映射到 3 位 PFC 优先级,以便在暂停帧中使用。配置映射包括:在将转发类映射到队列时,将 PFC 优先级值映射到无损耗转发类;定义拥塞通知配置文件以在具有所需 DSCP 值的流量上启用 PFC,以及配置 DSCP 分类器,以便将 PFC 优先级映射的转发类(以及丢失优先级)与配置的 DSCP 值相关联,以便在其上触发 PFC 暂停帧。
对等设备应配置有输出 PFC 和相应的流控制队列,以便与设备上的 PFC 优先级配置匹配。
使用 功能资源管理器 确认平台和版本对特定功能的支持。
基于 DSCP 的 PFC,用于 AI-ML 数据中心中的第 3 层无标记流量
AI 和机器学习应用在数据中心内正在迅速扩展。在处理 AI 和机器学习工作负载以及大型数据集时,一项关键挑战是处理数据大小。将计算卸载到图形处理单元 (GPU) 可以显着加快此任务的速度。然而,数据大小和模型,尤其是大型语言模型 (LLM),往往会超过单个 GPU 的内存容量。因此,通常需要多个 GPU 才能在合理的作业完成时间内完成作业,尤其是对于训练而言。
AI 数据中心的性能取决于所使用的 GPU 数量以及连接 GPU 的网络效率。网络速度减慢会导致 GPU 利用率不足,导致作业完成时间延长。作为 AI 数据中心网络中 InfiniBand 的替代品,基于以太网的网络正变得越来越受欢迎。其中一种解决方案是基于融合以太网的远程直接内存访问 (RDMA) 版本 2 (RoCEv2) 网络。
RoCEv2 涉及将 RDMA 协议数据包封装在 UDP 数据包中,以便通过以太网网络进行传输。RoCEv2 协议利用基于优先级的流量控制 (PFC) 建立无丢包网络,而 数据中心量化拥塞通知 (DCQCN) 为 RoCEv2 提供端到端拥塞控制。Junos OS 演化版通过结合显式拥塞通知 (ECN) 和 PFC 来支持 DCQCN,以实现端到端的无损 AI 以太网网络。
要支持通过第 3 层 (L3) 连接到第 2 层 (L2) 子网的无损 IPv6 流量,您可以将 PFC 配置为使用未标记 VLAN 流量的 L3 标头中的 6 位差异服务代码点 (DSCP) 值来运行。您可以将 PFC 与 DSCP 配合使用,作为 L2 VLAN 标记数据包标头中 IEEE 802.1p 优先级值的替代方法。您需要基于 DSCP 的 PFC 来支持 RoCEv2。
优势-
利用基于以太网的网络构建 AI-ML 数据中心网络。
-
提高大型数据集的网络效率。
-
实现端到端无损 AI-ML 以太网网络。
配置
要配置基于 DSCP 的 PFC:
将无损转发类映射到 PFC 优先级(以十进制形式 (0-7) 表示的 3 位值),以便在 PFC 暂停帧中使用。
您还必须使用该
queue-num选项将输出队列分配给转发类。在这种情况下,需要该no-loss选项来支持基于 DSCP 的 PFC 的无损行为,并且该pfc-priority语句指定优先级值映射,如下所示:[edit class-of-service] user@device# set forwarding-classes class class-name queue-num queue-number no-loss user@device# set forwarding-classes class class-name pfc-priority pfc-priority
定义输入拥塞通知配置文件,以对所需 6 位 DSCP 值指定的流量启用 PFC。(可选)配置最大接收单元 (MRU) 和电缆长度(用于确定为链路预留的 PFC 缓冲区裕量空间):
注意:不能在同一拥塞通知配置文件下同时配置基于 DSCP 的 PFC 和 IEEE 802.1p PFC。
[edit class-of-service] user@device# set congestion-notification-profile name input dscp code-point code-point-bits pfc mru mru-value user@device# set congestion-notification-profile name cable-length cable-length-value
为配置的 DSCP 值和在前面步骤中映射的无损转发类设置 DSCP 分类器:
[edit class-of-service] user@device# set classifiers dscp classifier-name forwarding-class class-name loss-priority level code-points code-point-bits
将前面步骤中设置的分类器和拥塞通知配置文件分配给要启用基于 DSCP 的 PFC 的接口:
[edit class-of-service] user@device# set interfaces interface-name classifiers dscp classifier-name user@device# set interfaces interface-name congestion-notification-profile profile-name
查看配置。
例如,使用以下示例命令为接口 xe-0/0/1 配置基于 DSCP 的 PFC,当 DSCP 值为 110000 的传入流量拥塞时,将生成 PFC 优先级为 3 的 PFC 暂停帧:
set interfaces xe-0/0/1 unit 0 family inet address 10.1.1.2/24 set class-of-service forwarding-classes class fc1 queue-num 1 no-loss set class-of-service forwarding-classes class fc1 pfc-priority 3 set class-of-service congestion-notification-profile dpfc-cnp input dscp code-point 110000 pfc set class-of-service classifiers dscp dpfc forwarding-class fc1 loss-priority low code-points 110000 set class-of-service interfaces xe-0/0/1 congestion-notification-profile dpfc-cnp set class-of-service interfaces xe-0/0/1 classifiers dscp dpfc
PTX10000 系列路由器的配置
验证配置。
检查入口端口。
show interfaces interface-name extensive | match Priority
show interfaces queue interface-name
显示基于 DSCP 的输入拥塞通知配置文件。
show class-of-service congestion-notification-profile cnp name
显示映射到每个 PFC 优先级的转发类。
show class-of-service forwarding-classes