【微知】mlxconfig如何配置模块开关自动协商速率?

背景

一般交换机关闭自动协商,网卡开启自动协商。某些情况下自动协商失败(比如网卡固件和第三方模块的兼容性问题造成协商失败)

配置方式

查看协商情况

mlxlink -d <bdf> 

如果自动协商失败,会报错。
其他查看:
mlxlink -d -m -e -c --show_serdes_tx --rx_fec_histogram --show_histogram

ethtool动态关闭autoneg

如果协商失败,假设在PXE阶段,那么系统都无法安装。会带来很多问题。
如果有协同,协商失败,可以通过ethtool的autonegotiation来配置:

# 基本语法
sudo ethtool -s <网卡名> autoneg off speed <速率> duplex <模式>

# 示例:设置为 1000Mbps 全双工,关闭自动协商
sudo ethtool -s eth0 autoneg off speed 1000 duplex full

# 示例:设置为 100Mbps 全双工
sudo ethtool -s eth0 autoneg off speed 100 duplex full

# 示例:设置为 10Mbps 半双工
sudo ethtool -s eth0 autoneg off speed 10 duplex half

比如设置为200G:
ethtool -s speed 200000 duplex full autoneg off

通过mlxconfig配置关闭

(这个配置只能部分影响,无法真正做到)

mlxconfig -d </dev/mst/mstdevice> set PHY_AUTO_NEG_P1=2 PHY_RATE_MASK_OVERRIDE_P1=1

PHY_AUTO_NEG_P1配置开关自动协商

可设置的值:

  • 0 默认(根据固件配置)
  • 1 开自动协商
  • 2 关自动协商
[root@localhost ~]# mlxconfig -d /dev/mst/mt4117_pciconf0 i |grep -i PHY_AUTO_NEG_P1 -A 20
PHY_AUTO_NEG_P1=<AUTO_NEG_DISABLED|AUTO_NEG_ENABLED|DEVICE_DEFAULT>Control link Auto Negotiation operation
0x0: DEVICE_DEFAULT                                     
0x1: AUTO_NEG_ENABLED                                    
0x2: AUTO_NEG_DISABLED                                          other values are reserved.

PHY_RATE_MASK_OVERRIDE_P1和PHY_RATE_MASK_P1

P1表示物理端口1(不是从0开始,第二个端口是P1
PHY_RATE_MASK_OVERRIDE_P1表示可以用户自定义。当设置为true之后可以通过 PHY_RATE_MASK_P1的bitmap来配置默认值。

PHY_RATE_MASK_P1 这个值有些网卡需要先打开PHY_RATE_MASK_OVERRIDE_P1之后mlxfwreset然后再才能看到。
比如设置200G的就是 Bit 12 - 200GAUI-4 / 200GBASE-CR4/KR4
这里长度CR4的4表示4个lanes(200G的话 就是50G的serdes的速率)。这个值要根据网卡serdes来配置。

                    PHY_RATE_MASK_OVERRIDE_P1=<False|True>  When TRUE, the supported link speeds can be customized by PHY_RATE_MASK
                    PHY_RATE_MASK_P1=<NUM>                  Enables the supported rates for the link. Each bit represents a rate, set bit indicates the speed may be used, if supported by the device,
                                                            Valid when PHY_RATE_MASK_OVERRIDE is TRUE.
                                                            
                                                            Bit 0 - SGMII_100M
                                                            Bit 1 - 1000BASE-X / SGMII
                                                            Bit 3 - 5GBASE-R
                                                            Bit 4 - XFI / XAUI-1 - 10G
                                                            Bit 5 - XLAUI-4/XLPPI-4 - 40G
                                                            Bit 6 - 25GAUI-1/ 25GBASE-CR / KR
                                                            Bit 7 - 50GAUI-2 / LAUI-2/ 50GBASE-CR2/KR2
                                                            Bit 8 - 50GAUI-1 /50GBASE-CR / KR
                                                            Bit 9 - CAUI-4 / 100GBASE-CR4 / KR4
                                                            Bit 10 - 100GAUI-2 / 100GBASE-CR2 / KR2
                                                            Bit 11 - 100GAUI-1 / 100GBASE-CR / KR
                                                            Bit 12 - 200GAUI-4 / 200GBASE-CR4/KR4
                                                            Bit 13 - 200GAUI-2 / 200GBASE-CR2/KR2
                                                            Bit 15 - 400GAUI-8/ 400GBASE-CR8
                                                            Bit 16 - 400GAUI-4/ 400GBASE-CR4
                                                            Bit 19 - 800GAUI-8/ 800GBASE-CR8
                                                            Bit 31 - SGMII_10M
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值