RDMA 流的队列对散列
概述
负载均衡算法使用散列机制从链路聚合组 (LAG) 或 ECMP 束中选择最佳传出接口。大多数负载平衡算法会根据五元组信息进行哈希处理(即在链路之间划分流量负载)。5 元组信息涵盖第 2 层 (L2),其中包括源和目标 MAC 地址;第 3 层 (L3),包括源 IP 地址和目标 IP 地址;第 4 层 (L4),包括 TCP/UDP 端口。然而,在 AI-ML 训练网络中,大多数流量使用通过融合以太网的远程直接内存访问 (RDMA) 版本 2 (RoCEv2) 进行传输。ROCEv2 流量在 L4 端口上可能没有差异。这会导致熵减少,并可能导致负载平衡效率降低。
在使用 RoCEv2 进行应用程序流量传输的网络中,RDMA 连接在发送队列上发送流量,并在接收队列上接收流量。这些队列构成 RDMA 连接。发送队列和接收队列统称为队列对。每个队列对都有一个可识别的前缀。ROCEv2 使用目标队列对作为流标识字段。
您可以通过在哈希计算中包含目标队列对来增强 AI-ML 训练网络上的负载平衡。这称为队列对哈希。将目标队列对添加到哈希计算中,可以增加系统的熵,提高整体负载平衡效率。在支持此功能的设备和版本上,默认情况下会为所有 ROCEv2 流量启用队列对散列。
在设备上启用动态负载平衡 (DLB) 后,链路聚合组 (LAG) 接口上的队列对散列会自动禁用。
配置
验证队列对散列
默认情况下,负载平衡算法将 RDMA 队列对作为 RDMA 流量(IPv4 和 IPv6)散列计算的一部分。无需配置。
要确认已启用该功能,请使用以下命令并确认输出中的“RDMA 队列对”字段标记为“是”:
user@device> show forwarding-options enhanced-hash-key Current RTAG7 Settings ------------------------- Hash-Mode :layer2-payload Hash-Seed :108202401 inet RTAG7 settings: ---------------------- inet packet fields protocol :yes Destination IPv4 Addr :yes Source IPv4 Addr :yes destination L4 Port :yes Source L4 Port :yes Vlan id :no RDMA Queue Pair :yes inet non-packet fields incoming device :yes incoming port :yes inet6 RTAG7 settings: ---------------------- inet6 packet fields next-header :yes Destination IPv6 Addr :yes Source IPv6 Addr :yes destination L4 Port :yes Source L4 Port :yes Vlan id :no RDMA Queue Pair :yes inet6 non-packet fields incoming device :yes incoming port :yes Hash-Parameter Settings for ECMP: ------------------------------------ Hash Function = CRC16_BISYNC Hash offset base = 16 Hash offset = 4294967280 Hash preprocess = 0 Hash-Parameter Settings for LAG: ------------------------------------ Hash Function = CRC16_CCITT Hash offset base = 0 Hash offset = 0 Hash preprocess = 0 Ecmp Resilient Hash = Disabled ECMP DLB Load Balancing Options: --------------------------------------------------- Load Balancing Method : Disabled Inactivity Interval : 0 (us) Flowset Table size : 0 (entries per ECMP) Reassignment Probability Threshold : 0 Reassignment Quality Delta : 0 Egress Port Load Weight : 0 EgressBytes Min Threshold : 1 EgressBytes Max Threshold : 100 Sampling Rate : 62500 Ether Type : All
禁用队列对散列
要从负载平衡哈希计算中排除队列对,请配置以下内容:
平台支持
请参阅 功能浏览器, 了解平台和版本支持。