【RDMA】设置网卡默认PFC和ECN-在DSCP基于QoS模式下为Linux驱动程序配置ROCE

目录

在DSCP基于QoS模式下为Linux驱动程序配置ROCE--设置网卡默认PFC和ECN

如何在RDMA-CM QP上设置发出消息的ToS/DSCP值


在DSCP基于QoS模式下为Linux驱动程序配置ROCE--设置网卡默认PFC和ECN

翻译自:RoCE Configuration for Linux Drivers in DSCP-Based QoS Mode (nvidia.com)

说明:
本文提供了在安装了MLNX_OFED和Mellanox设备的情况下,针对丢包网络中运行RoCE的DSCP-based QoS模式的配置示例。

备注:

QoS参数在QP创建时进行设置。在使用RDMA-CM时,可以为由RDMA-CM创建的QP设置QoS参数。

下面的一些配置步骤是永久性或临时性。对于永久性配置,运行mlxconfig后,需要执行设备重置(mlxfwreset)或主机重启。

配置

第1步 - 设置QoS参数
将DSCP(L3)设置为网卡的信任模式

# mlnx_qos -i <interface> --trust dscp

[可选] 为所有RoCE流量设置ToS为106(DSCP 26)(注:此命令是非持久的)

# echo 106 > /sys/class/infiniband/<mlx-device>/tc/1/traffic_class

[可选] 将RDMA-CM的ToS设置为106(DSCP 26)(注:此命令是非持久的)

# cma_roce_tos -d <mlx-device> -t 106

[可选] 启用TCP流量的ECN功能(注:此命令是非持久的)

# sysctl -w net.ipv4.tcp_ecn=1

注解:

<interface> 是指父接口(例如ens2f0)

<vlan-interface> 是指VLAN接口(例如ens2f0.100)

<mst-device> 是指MST设备(例如/dev/mst/mt4115_pciconf0)

<mlx-device> 是指mlx设备(例如mlx5_0)

参考资料

RoCE部署的推荐网络配置示例
以太网交换机解决方案
如何在RDMA-CM QP上设置出口ToS/DSCP

如何在RDMA-CM QP上设置发出消息的ToS/DSCP值

HOWTO SET EGRESS TOS/DSCP ON RDMA-CM QPS 

 翻译自:HowTo Set Egress ToS/DSCP on RDMA-CM QPs (nvidia.com)

描述
本文介绍了配置RDMA-CM QP的ToS/DSCP的命令。此功能从MLNX_OFED 4.0及更高版本开始支持,并支持ConnectX-4适配器。

参考资料

RDMA/RoCE解决方案:

新增了一个RDMA-CM configfs条目,允许用户选择RDMA-CM QP的默认TOS。这对于希望在不更改代码的情况下控制TOS字段的用户非常有用。其他使用rdma_set_option API显式设置TOS的应用程序不受影响,仍然可以按预期工作,并覆盖configfs的值。

要配置TOS,用户可以使用MLNX_OFED 4.0中的cma_roce_tos脚本。

使用示例:

# cma_roce_tos -d <ib_device> -t <tos>

注意:TOS字段为8位,而DSCP字段为6位。要设置DSCP值为X,需要将该值乘以4(向左移位2位)。例如,要设置DSCP值为24,(24x4=96)。将TOS位设置为96。

注意:如果运行perftest包(例如ib_send_bw),运行此命令将更改-T选项(TOS默认值)。换句话说,如果使用此命令,则无需运行-T <tos>。

注意:ECN配置不同,通过sysfs或mlxconfig完成,参见:HowTo Configure DCQCN (RoCE CC) values for ConnectX-4 (Linux)。:ESPCommunity

注意:确保将默认的RDMA CM模式更改为RoCE v2,请参见HowTo Set the Default RoCE Mode When Using RDMA CM。:ESPCommunity

注意:此命令不是持久的。

注意:配置新的ToS/DSCP值仅会影响新创建的QP。确保重新启动应用程序或更新连接以查看效果。

猜你喜欢

转载自blog.csdn.net/bandaoyu/article/details/131620205