Hardware offload not working on CRS328

I have setup my CRS328-24P-4S+ and the basics are working fine. Tonight I ran my first speed test and got these (poor) results across a bonded 1Gbps pair:

status: done                                             
time-remaining: 0s                                               
ping-min-avg-max: 256us / 303us / 853us                            
jitter-min-avg-max: 0s / 44us / 551us                                
loss: 0% (0/200)                                       
tcp-download: 435Mbps local-cpu-load:98%                       
tcp-upload: 324Mbps local-cpu-load:87% remote-cpu-load:81%   
udp-download: 354Mbps local-cpu-load:88% remote-cpu-load:100%  
udp-upload: 344Mbps local-cpu-load:100% remote-cpu-load:90%

During the test CPU jumps to 100% and speed tops out at approx 400Mbps, so I’m thinking that hardware offload is not working. I confirmed all bridge ports have “hardware offload” checked, and Switch > Settings > Switch1 have “L3 Hw Offloading” checked. All my routes show “H” for hardware offloaded. The source and destination for the speed test are on the same subnet, so I’m not sure it matters that I have anything L3 configured on the switch.

However, the first line of the test output says:

;;; results can be limited by cpu, note that traffic generation/termination performance might not be representative of forwarding performance

Based on these above test results can I assume hw offloading is not working, or is this the most the little CPU of this CRS switch can push out? I tried running a speed test from another box TO this switch, and the switch CPU went to 100% again. (Suggesting hw offloading not working) When doing a server backup across the switch it runs at < 7% CPU…so maybe the test result is misleading? Though my backup seems to be running slower…(but that may be a red herring)

How do I find out IF and WHY the switch is not hw offloading? I tried to follow a youtube guide from a MT trainer, so I assumed I did it right.

NOTE: I found an additional settings under Switch> Ports > Switch1cpu > L3hw offloading but checking/unchecking made no difference. (Not sure what this does)

I have attached an export of my config. Any help appreciated!
export2.rsc (5.5 KB)

Not sure but looking at Help pages I see normally you have to explicitly specify hw offload on that bonding port when you add it to bridge.

So this (and other bonding ports)

add bridge=bridge comment="DIRECT - to storage" interface=ether_17_18 pvid=50

might have to be changed to

add bridge=bridge comment="DIRECT - to storage" interface=ether_17_18 hw=yes pvid=50

Can you try ?

Are you used tool mikrotik bandwidth test?
According to your data, it loads the cpu by 100%, Because of this, the built-in test can no longer show the speed

@holvoetn: I think hw is already turned on - but maybe I’m confusing setting? Here’s the output of /interface/bridge/port/print:

[admin@switchrack] > /interface/bridge/port/print          
Flags: I - INACTIVE; H - HW-OFFLOAD
Columns: INTERFACE, BRIDGE, HW, PVID, PRIORITY, HORIZON
 #    INTERFACE     BRIDGE  HW   PVID  PRIORITY  HORIZON
 0  H ether2        bridge  yes   100  0x80      none   
 1  H ether3        bridge  yes    30  0x80      none   
 2  H ether4        bridge  yes   100  0x80      none   
 3  H ether5        bridge  yes    30  0x80      none   
 4 IH ether6        bridge  yes    10  0x80      none   
 5  H ether8        bridge  yes    30  0x80      none   
 6 IH ether9        bridge  yes    20  0x80      none   
 7 IH ether10       bridge  yes   100  0x80      none   
 8  H ether11       bridge  yes   100  0x80      none   
 9  H ether12       bridge  yes   100  0x80      none   
10 IH ether13       bridge  yes    20  0x80      none   
11 IH ether14       bridge  yes    30  0x80      none   
12 IH ether15       bridge  yes   100  0x80      none   
13 IH ether16       bridge  yes    30  0x80      none   
14 IH sfp-sfpplus1  bridge  yes   100  0x80      none   
15 IH sfp-sfpplus2  bridge  yes   100  0x80      none   
16 IH sfp-sfpplus3  bridge  yes   100  0x80      none   
17 IH sfp-sfpplus4  bridge  yes   100  0x80      none   
18  H ether_23_24   bridge  yes   100  0x80      none   
19  H ether_17_18   bridge  yes    50  0x80      none   
20  H ether_19_20   bridge  yes   100  0x80      none   
21  H ether_21_22   bridge  yes   100  0x80      none   
23  H ether7        bridge  yes   100  0x80      none

Since hw=yes for ether_17_18 does that mean I’m already using the setting you recommend?

@madmax123: I will download the bttest for windows tool and try again. My test will be like this:

LAPTOP <—> CRS328 <—> RB4011

so that my traffic crosses the CRS328. I’ll post results once complete.

Well, cross switch traffic is looking much faster, so the above speed test results seem to be artificially low due to low powered CPU in the switch. So I’ll assume this is NOT a switch / hw offload problem but something external.

For that test, running my iperf3 container on the RB4011 will give more useful results. I can get 7-9 Gbit/sec across my CRS328 that way, depending on where the bottlenecks are.

WOw I didn’t realize these type of capabilities exist in the MT devices. For now I think my bottleneck is resolved, but I may come back to experiment with a container sometime

Well now that your not drinking US booze ( in Ontario ), I imagine many things will get clearer! :wink:

please dont mount the containers on the switch, use other device for that

Canadian beer is great, but Kentucky bourbon is irreplaceable. (Maybe Canadian Maple wine comes close)