Bonding Speed Problem

Hi,
I’m trying to increase bandwith by bonding. I tried 802.3ad dynamic, Balance-rr and Balance-xor. All give the same speed (about 950mbps)
Mikrotik 802.3ad dynamic Speed: 950Mbps CPU: %4-6
Mikrotik Balance-rr Speed: 950Mbps CPU: %90-95

interface/bonding/print detail 
Flags: X - disabled; R - running 
 0    name="Master" mtu=1500 mac-address=00:00:00:00:00:00 arp=enabled arp-timeout=auto slaves=ether19,ether20 
      mode=802.3ad primary=none link-monitoring=mii arp-interval=100ms arp-ip-targets="" mii-interval=100ms 
      down-delay=0ms up-delay=0ms lacp-rate=30secs transmit-hash-policy=layer-2-and-3 min-links=0

But when I don’t use mikrotik and do lacp on netgear I get about 1.5Gbps (Speed 1.5Gbps only in Balance–rr. Others about 950mbps)
NetGear Balance-rr Speed: 1.5Gbps
NetGear 802.3ad Speed: 950Mbps

What am I doing wrong?or missing?

I drew the topology instead of explaining it.
Top.png
And my conf;

# 2024-02-16 16:37:59 by RouterOS 7.13.1
# software id = RV6V-C7LK
#
# model = CRS326-24G-2S+
# serial number = 
/interface bridge
add admin-mac=00:00:00:00:00:00 auto-mac=no ingress-filtering=no name=bridge \
    port-cost-mode=short vlan-filtering=yes
/interface ethernet
set [ find default-name=ether1 ] comment="e1"
set [ find default-name=ether2 ] comment="e2"
set [ find default-name=ether3 ] comment="H1"
set [ find default-name=ether4 ] comment="H2"
/interface vlan
add interface=bridge name=vlan172 vlan-id=172
add interface=bridge name=vlan200 vlan-id=200
add interface=bridge name=vlan201 vlan-id=201
add interface=bridge name=vlan202 vlan-id=202
/interface bonding
add mode=802.3ad name=Master slaves=ether19,ether20 transmit-hash-policy=\
    layer-2-and-3
/interface lte apn
set [ find default=yes ] ip-type=ipv4 use-network-apn=no
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/port
set 0 name=serial0
/interface bridge port
add bridge=bridge ingress-filtering=no interface=ether1 internal-path-cost=10 \
    path-cost=10 pvid=201
add bridge=bridge ingress-filtering=no interface=ether2 internal-path-cost=10 \
    path-cost=10 pvid=201
add bridge=bridge ingress-filtering=no interface=ether3 internal-path-cost=10 \
    path-cost=10 pvid=201
add bridge=bridge ingress-filtering=no interface=ether4 internal-path-cost=10 \
    path-cost=10 pvid=201
add bridge=bridge ingress-filtering=no interface=ether5 internal-path-cost=10 \
    path-cost=10
add bridge=bridge ingress-filtering=no interface=ether6 internal-path-cost=10 \
    path-cost=10
add bridge=bridge ingress-filtering=no interface=ether7 internal-path-cost=10 \
    path-cost=10
add bridge=bridge ingress-filtering=no interface=ether8 internal-path-cost=10 \
    path-cost=10
add bridge=bridge ingress-filtering=no interface=ether9 internal-path-cost=10 \
    path-cost=10
add bridge=bridge ingress-filtering=no interface=ether10 internal-path-cost=\
    10 path-cost=10
add bridge=bridge ingress-filtering=no interface=ether11 internal-path-cost=\
    10 path-cost=10
add bridge=bridge ingress-filtering=no interface=ether12 internal-path-cost=\
    10 path-cost=10
add bridge=bridge ingress-filtering=no interface=ether13 internal-path-cost=\
    10 path-cost=10
add bridge=bridge ingress-filtering=no interface=ether14 internal-path-cost=\
    10 path-cost=10
add bridge=bridge ingress-filtering=no interface=ether15 internal-path-cost=\
    10 path-cost=10
add bridge=bridge ingress-filtering=no interface=ether16 internal-path-cost=\
    10 path-cost=10
add bridge=bridge ingress-filtering=no interface=ether17 internal-path-cost=\
    10 path-cost=10
add bridge=bridge ingress-filtering=no interface=ether18 internal-path-cost=\
    10 path-cost=10
add bridge=bridge disabled=yes ingress-filtering=no interface=ether19 \
    internal-path-cost=10 path-cost=10
add bridge=bridge disabled=yes ingress-filtering=no interface=ether20 \
    internal-path-cost=10 path-cost=10
add bridge=bridge ingress-filtering=no interface=sfp-sfpplus1 \
    internal-path-cost=10 path-cost=10
add bridge=bridge ingress-filtering=no interface=sfp-sfpplus2 \
    internal-path-cost=10 path-cost=10
add bridge=bridge interface=ether21
add bridge=bridge interface=ether22
add bridge=bridge interface=ether23
add bridge=bridge interface=ether24
add bridge=bridge interface=Master pvid=202
/ip firewall connection tracking
set loose-tcp-tracking=no
/ip settings
set max-neighbor-entries=8192
/ipv6 settings
set disable-ipv6=yes
/interface bridge vlan
add bridge=bridge vlan-ids=""
add bridge=bridge tagged=sfp-sfpplus2 vlan-ids=172
add bridge=bridge comment="e" tagged=sfp-sfpplus2 untagged=\
    ether1,ether2,ether3,ether4 vlan-ids=201
add bridge=bridge tagged=sfp-sfpplus2 vlan-ids=200
add bridge=bridge tagged=sfp-sfpplus2 untagged=Master vlan-ids=202
/interface ovpn-server server
set auth=sha1,md5
/ip address
add address=172.16.10.51/23 interface=vlan172 network=172.16.10.0
/ip dns
set servers=192.168.200.5,192.168.200.6
/ip route
add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=172.16.10.1 \
    pref-src="" routing-table=main scope=30 suppress-hw-offload=no \
    target-scope=10
/ip service
set telnet disabled=yes
set ftp disabled=yes
set ssh disabled=yes
set api disabled=yes
set api-ssl disabled=yes
/routing bfd configuration
add disabled=no interfaces=all min-rx=200ms min-tx=200ms multiplier=5
/system clock
set time-zone-name=Europe/Istanbul
/system identity
set name=MGT
/system note
set show-at-login=no
/system ntp client
set enabled=yes
/system ntp client servers
add address=172.16.10.2
/system routerboard settings
set boot-os=router-os
/tool mac-server
set allowed-interface-list=none
/tool mac-server ping
set enabled=no

Balancing-rr is the only bonding method that sends packets from the same connection across different interfaces in the bond. But that isn’t hardware offloaded, which is why the CRS CPU maxes out. 802.3ad is offloaded to the switch chip, but will send all packets belonging to the same connection across the same interface. And you are running only a single iperf TCP connecton, so you’re getting no more than 1G (minus overhead) throughput. Use 802.3ad or balancing-xor (both are hardware offloaded on the CRS3xx switches) and run multiple iperf connections (-P option) and you’ll see 1G+ total throughput.

Veeam will take backup over this connection. As far as I understand from your description, the speed will not exceed 1g+ as it will create a single connection in veeam.

Yes. Unless Veeam has a way to use multiple TCP connections for a single host-backup, that is what will happen.

Thanks for the information..

Did this answer help you?

Yes .. He explained to me that I couldn’t do what I wanted to do …