本帖最后由 网仙 于 2024-11-20 14:54 编辑
需要提前了解的:
在这个交换机里面,所有的100G端口都是按照4个25G端口来组合配置的。这也是方便用户对端口的拆分操作。
比如下面这两组,分别代表着2个100G端口。
8 qsfp28-1-1
9 qsfp28-1-2
10 qsfp28-1-3
11 qsfp28-1-4
12 qsfp28-2-1
13 qsfp28-2-2
14 qsfp28-2-3
15 qsfp28-2-4
当你需要配置100G的连接时,只需要配置第一个分口(qsfp28-1-1 ,qsfp28-2-1 )就行;如果是拆分成25G,则分别对四个口进行设置。
ok,言归正传,开始设置交换机。
1,下载winbox,这是mikrotik的上位机软件,专门用于设置交换机。
话说这个软件呢,是一言难尽,跟终端命令行相比,聊胜于无吧,实在是太抽象了,远古时代的操作风格,找个项目那是相当困难。所以很多时候还不如直接在命令行直接敲两下。
关键呀,你要知道,官方的ROS文档也都是基于命令行进行说明举例的,很多项目我在winbox里面我都找不到,不说了,都是泪。
下载链接:
https://mikrotik.com/download
根据操作系统自行选择,下载这个4.0的beta版本即可。
说明文档链接:
https://help.mikrotik.com/docs/
2,交换机插电,插上管理口的网线。winbox绿色软件,双击打开即可。
如果你的交换机之前设置过,可以按住前面的reset按钮,重置。重置后上电,管理口将会获取ip。
或者填入你交换机底部贴纸上的mac地址,(或者选择右侧的neighbor,自动搜寻网内的设备,也能找到交换机)贴纸上有密码,登录进去,选择Bridge模式(这货是可以当路由器用的,路由器有的功能它都有)。
第一步,最重要的,当然是检查固件更新,新版的固件才有这些个功能。
3,建议给交换机设定固定IP地址,方便后续管理使用。
默认交换机是开启DHCP服务的,如果你打算继续使用主路由的DHCP,可以在这里关掉本机DHCP。
设置入口:
interface,dhcp server, disable.
4,遇到不兼容时,可手动指定端口速率。
我使用网上十几块钱的华为dac无源铜缆时,就出现了无法连接Qlogic网卡的情况,需要在客户端网卡驱动和交换机内分别指定速率。反而一般AOC的有源光纤线是没问题的。这有点颠覆我的认知,传统意义上大家都认为DAC线的兼容性最好。
科普tips:
DAC跳线,是纯铜缆,没有光电转换环节,最省电,缺点是线长最大7米,且线束较粗。
AOC跳线,是模块跟光纤一体化封装的,两头各带一个光模块,在机房一般作为长距离跳线使用,这个线长度一般最大可以达到30米或者更长。优点是线很软很细,方便走线固定,且比较长,工作室小范围使用没有问题。缺点是功耗稍高一些,插上一个25G光模块,交换机大概多出1-2W的功耗。
以上两者的共同优点:大量垃圾源源不断的供应着,海鲜市场只要十几块钱一条,售价比网线还低。。。。
研究后得知,部分网卡或者dac线缆不太支持自动协商,导致端口无法link up,此时可以尝试手动指定该端口速率:
设置入口:
interface,ethernet,双击你需要调整的对应端口,下拉,关掉 auto negotiation,并选择一个你指定的速率,对于25G的DAC线,按照下面这个选择即可。
当然,咱们也可以使用下面的终端命令行进行配置:
/interface ethernet
set [ find default-name=sfp-sfpplus1 ] auto-negotiation=no speed=1G-baseT-full
set [ find default-name=sfp-sfpplus1 ] auto-negotiation=no speed=10G-baseCR
set [ find default-name=sfp-sfpplus1 ] auto-negotiation=no speed=25G-baseCR
详细内容参见文档:
https://help.mikrotik.com/docs/spaces/ROS/pages/8323191/Ethernet
我一开始没有找到winbox里面设置的位置,全部用命令行操作,比较麻烦。后来找到了这里,就简单多了。
网卡侧设置:windows侧一般在网卡的配置界面,可以直接选择速率。
群晖则需要进ssh,sudo-i 获得root权限,执行以下命令,或者在计划任务栏里面添加命令行,执行一下就行了。
ethtool -s eth5 duplex full autoneg off speed 25000
ethtool -s eth4 duplex full autoneg off speed 25000
当然,你得知道你要操作的网卡是第几个,群晖的网卡是从“eth0”开始排列的。你在群晖网络里面看到的是从“网络1”开始的。
或者这样:
下图中对应我的群晖网卡是 网络5,网络6
有了以上几个步骤的操作,这个交换机,就能融入你的网络环境,正式启用了。
很多兄弟都是看了一些文档,担心mikrotik比较难用,不敢下手。
放心买吧,老铁!简单使用咱还是能实现的。
5,下面进入设置ROCE环节,即PFC+ECN。
点击winbox左侧导航栏的 new terminal,进入终端界面:
下面是我在执行过程中的代码,先贴出来,标注红色的是需要执行的代码。
MMM MMM KKK TTTTTTTTTTT KKK
MMMM MMMM KKK TTTTTTTTTTT KKK
MMM MMMM MMM III KKK KKK RRRRRR OOOOOO TTT III KKK KKK
MMM MM MMM III KKKKK RRR RRR OOO OOO TTT III KKKKK
MMM MMM III KKK KKK RRRRRR OOO OOO TTT III KKK KKK
MMM MMM III KKK KKK RRR RRR OOOOOO TTT III KKK KKK
MikroTik RouterOS 7.16.1 (c) 1999-2024 https://www.mikrotik.com/
Press F1 for help
[admin@MikroTik] > /interface/ethernet/switch
先开启L3和Qos两个offloading卸载
交换机有2个交换芯片,0是主交换芯片,1是辅助lan口(管理口的芯片)
[admin@MikroTik] /interface/ethernet/switch> set 0 l3-hw-offloading=yes
[admin@MikroTik] /interface/ethernet/switch> set 0 qos-hw-offloading=yes
[admin@MikroTik] /interface/ethernet/switch> print
Columns: NAME, TYPE, L3-HW-OFFLOADING, QOS-HW-OFFLOADING
# NAME TYPE L3-HW-OFFLOADING QOS-HW-OFFLOADING
0 switch1 Marvell-98DB4210 yes yes
1 switch2 Atheros-8227 no no
[admin@MikroTik] /interface/ethernet/switch/qos/tx-manager> set queue-buffers=auto ecn=yes numbers=0
[admin@MikroTik] /interface/ethernet/switch/qos/tx-manager> print
Flags: H - HW-OFFLOADED
Columns: NAME, QUEUE-BUFFERS, ECN
# NAME QUEUE-BUFFERS ECN
0 H default auto yes
;;; Use this for permanently disconnected ports
1 H offline auto no
[admin@MikroTik] /interface/ethernet/switch/qos/tx-manager/queue> set 3 schedule=high-priority-group use-shared-buffers=yes
[admin@MikroTik] /interface/ethernet/switch/qos/tx-manager/queue> print
Flags: I - INACTIVE, H - HW-OFFLOADED
Columns: TX-MANAGER, TRAFFIC-CLASS, SCHEDULE, WEIGHT, QUEUE-BUFFERS, USE-SHARED-BUFFERS, WRED-ACTUAL, ECN-ACTUAL
# TX-MANAGER T SCHEDULE WEIGHT QUEU USE WRED-ACTUAL ECN-ACTUAL
0 I default 0 low-priority-group 1 auto no no no
1 H default 1 low-priority-group 2 auto yes yes yes
2 I default 2 low-priority-group 3 auto yes no no
3 I default 3 high-priority-group 3 auto yes no no
4 I default 4 high-priority-group 4 auto yes no no
5 I default 5 high-priority-group 5 auto yes no no
6 I default 6 strict-priority auto yes no no
7 I default 7 strict-priority auto yes no no
[admin@MikroTik] /interface/ethernet/switch/qos/profile> add name=roce-profile traffic-class=3
[admin@MikroTik] /interface/ethernet/switch/qos/profile> print
Flags: H - HW-OFFLOADED
Columns: NAME, PCP, DSCP, TRAFFIC-CLASS
# NAME PCP DSCP TRAFFIC-CLASS
0 H default 0 0 1
1 H roce-profile 0 0 3
[admin@MikroTik] /interface/ethernet/switch/qos/priority-flow-control> add name=roce-pfc tx=yes rx=yes traffic-cllass=3
[admin@MikroTik] /interface/ethernet/switch/qos/priority-flow-control> print
Flags: H - HW-OFFLOADED
Columns: NAME, TRAFFIC-CLASS, RX, TX, PAUSE-THRESHOLD, RESUME-THRESHOLD
# NAME TRAFFIC-CLASS RX TX PAUSE-THRESHOLD RESUME-THRESHOLD
0 H disabled no no
1 H roce-pfc 3 yes yes auto auto
[admin@MikroTik] /interface/ethernet/switch/qos/priority-flow-control> /interface/ethernet/switch/qos
[admin@MikroTik] /interface/ethernet/switch/qos> port
[admin@MikroTik] /interface/ethernet/switch/qos/port>
[admin@MikroTik] /interface/ethernet/switch/qos/port> set qsfp28-1-1 egress-rate-queue3=100.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set qsfp28-1-2 egress-rate-queue3=100.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set qsfp28-1-3 egress-rate-queue3=100.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set qsfp28-1-4 egress-rate-queue3=100.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set qsfp28-2-1 egress-rate-queue3=100.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set qsfp28-2-2 egress-rate-queue3=100.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set qsfp28-2-3 egress-rate-queue3=100.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set qsfp28-2-4 egress-rate-queue3=100.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set sfp28-1 egress-rate-queue3=25.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set sfp28-2 egress-rate-queue3=25.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set sfp28-3 egress-rate-queue3=25.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set sfp28-4 egress-rate-queue3=25.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set sfp28-5 egress-rate-queue3=25.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set sfp28-6 egress-rate-queue3=25.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set sfp28-7 egress-rate-queue3=25.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> set sfp28-8 egress-rate-queue3=25.0Gbps pfc=roce-pfc profile=roce-profile trust-l3=keep
[admin@MikroTik] /interface/ethernet/switch/qos/port> print
Flags: R - RUNNING
Columns: NAME, SWITCH, PROFILE, MAP, TRUST-L2, TRUST-L3, TX-MANAGER, PFC
# NAME SWITCH PROFILE MAP TRUST-L2 TRUST-L3 TX-MANAGER PFC
0 R sfp28-1 switch1 roce-profile default ignore keep default roce-pfc
1 sfp28-2 switch1 roce-profile default ignore keep default roce-pfc
2 sfp28-3 switch1 roce-profile default ignore keep default roce-pfc
3 R sfp28-4 switch1 roce-profile default ignore keep default roce-pfc
4 R sfp28-5 switch1 roce-profile default ignore keep default roce-pfc
5 sfp28-6 switch1 roce-profile default ignore keep default roce-pfc
6 R sfp28-7 switch1 roce-profile default ignore keep default roce-pfc
7 sfp28-8 switch1 roce-profile default ignore keep default roce-pfc
8 qsfp28-1-1 switch1 roce-profile default ignore keep default roce-pfc
9 qsfp28-1-2 switch1 roce-profile default ignore keep default roce-pfc
10 qsfp28-1-3 switch1 roce-profile default ignore keep default roce-pfc
11 qsfp28-1-4 switch1 roce-profile default ignore keep default roce-pfc
12 qsfp28-2-1 switch1 roce-profile default ignore keep default roce-pfc
13 qsfp28-2-2 switch1 roce-profile default ignore keep default roce-pfc
14 qsfp28-2-3 switch1 roce-profile default ignore keep default roce-pfc
15 qsfp28-2-4 switch1 roce-profile default ignore keep default roce-pfc
16 ether1 switch2
17 switch1-cpu switch1 default default ignore ignore default
18 switch2-cpu switch2
[admin@MikroTik] /interface/ethernet/switch> set switch1 qos-hw-offloading=yes
[admin@MikroTik] /interface/ethernet/switch> print
Columns: NAME, TYPE, L3-HW-OFFLOADING, QOS-HW-OFFLOADING
# NAME TYPE L3-HW-OFFLOADING QOS-HW-OFFLOADING
0 switch1 Marvell-98DB4210 yes yes
1 switch2 Atheros-8327 no no
[admin@MikroTik] /ip/neighbor/discovery-settings> set lldp-dcbx=yes
expected end of command (line 1 column 5)
[admin@MikroTik] /interface/ethernet> set [find switch=switch1] l2mtu=9500
[admin@MikroTik] /interface/ethernet> print
Flags: R - RUNNING; S - SLAVE
Columns: NAME, MTU, MAC-ADDRESS, ARP, SWITCH
# NAME MTU MAC-ADDRESS ARP SWITCH
0 S ether1 1500 A4:A1:A3:A7:AB:42 enabled switch2
1 S qsfp28-1-1 1500 A4:A1:A3:A7:AB:3A enabled switch1
2 S qsfp28-1-2 1500 A4:A1:A3:A7:AB:3B enabled switch1
3 S qsfp28-1-3 1500 A4:A1:A3:A7:AB:3C enabled switch1
4 S qsfp28-1-4 1500 A4:A1:A3:A7:AB:3D enabled switch1
5 S qsfp28-2-1 1500 A4:A1:A3:A7:AB:3E enabled switch1
6 S qsfp28-2-2 1500 A4:A1:A3:A7:AB:3F enabled switch1
7 S qsfp28-2-3 1500 A4:A1:A3:A7:AB:40 enabled switch1
8 S qsfp28-2-4 1500 A4:A1:A3:A7:AB:41 enabled switch1
9 RS sfp28-1 1500 A4:A1:A3:A7:AB:32 enabled switch1
10 S sfp28-2 1500 A4:A1:A3:A7:AB:33 enabled switch1
11 S sfp28-3 1500 A4:A1:A3:A7:AB:34 enabled switch1
12 RS sfp28-4 1500 A4:A1:A3:A7:AB:35 enabled switch1
13 RS sfp28-5 1500 A4:A1:A3:A7:AB:36 enabled switch1
14 S sfp28-6 1500 A4:A1:A3:A7:AB:37 enabled switch1
15 RS sfp28-7 1500 A4:A1:A3:A7:AB:38 enabled switch1
16 S sfp28-8 1500 A4:A1:A3:A7:AB:39 enabled switch1
[admin@MikroTik] /interface/ethernet
以上,红色部分是需要输入的代码,复制进去就行。如果你也是CRS510,全部copy即可。
如果是其他型号,关于网口的部分的描述可以需要根据自己的情况修改。
参考:
官方文档:
https://help.mikrotik.com/docs/s ... ty-basedFlowControl(PFC)
另外还有一个大咖“空桑”写的文档,非常有价值,在此致谢,链接如下:
https://hqshi.cn/info/ops/fast-eth
另外,关于客户端(网卡端)的设置也很重要,建议看一下这个大咖的专栏,id“总想搞点奇怪的”:
链接如下:
https://space.bilibili.com/366955371/article |