This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM5748: Ethernet bonding with load balancing mode - low bitrate issue

Part Number: AM5748

Hi All,

Our Kernel Version is:- 4.14.40-g4796173fc5

we are using ethernet bonding driver with eth0 and eth1 interface and created bond0. 

bond0 - 192.168.0.100

With balance-rr mode we are able to use 2 PHY ports simultaneously on same subnet with ethernet bonding. 

But bitrate is very low while verify with iperf and packets also losing. below iperf report for you reference. 

"Requirement is both ports needs to be accessed on same subnet simultaneously and speed also in Gbps or alteast Mbps".

we are looking for load balancing mode with some good speed in Mbps without packet drop, we have followed below document 

Dual MAC Mode (Bonding) when we try to using balance-rr mode  throughput is less and in other balance mode(Balance-xor,balance-tlb, balance-alb) we are not able to work make both ethernet port up.

is there any configuration is missing? we are using below commands

modprobe bonding
echo 0 > /sys/class/net/bond0/bonding/mode
echo 100 > /sys/class/net/bond0/bonding/miimon
ifconfig bond0 192.168.0.100 netmask 255.255.255.0 up
echo +eth0 > /sys/class/net/bond0/bonding/slaves
echo +eth1 > /sys/class/net/bond0/bonding/slaves

root@user-a:~# iperf3 -c 192.168.0.101
Connecting to host 192.168.0.101, port 5201
[ 5] local 192.168.0.100 port 44124 connected to 192.168.0.101 port 5201
[ ID] Interval            Transfer           Bitrate             Retr     Cwnd
[ 5] 0.00-1.00 sec    55.1 KBytes 451 Kbits/sec   25 1.41 KBytes
[ 5] 1.00-2.00 sec    55.1 KBytes 452 Kbits/sec   38 2.83 KBytes
[ 5] 2.00-3.00 sec    56.6 KBytes 463 Kbits/sec   39 2.83 KBytes
[ 5] 3.00-4.00 sec    56.6 KBytes 463 Kbits/sec   41 2.83 KBytes
[ 5] 4.00-5.00 sec    45.2 KBytes 371 Kbits/sec   39 2.83 KBytes
[ 5] 5.00-6.00 sec    56.6 KBytes 463 Kbits/sec   41 2.83 KBytes
[ 5] 6.00-7.00 sec    56.6 KBytes 463 Kbits/sec   39 2.83 KBytes
[ 5] 7.00-8.00 sec    67.9 KBytes 556 Kbits/sec   50 2.83 KBytes
[ 5] 8.00-9.00 sec    56.6 KBytes 463 Kbits/sec   41 2.83 KBytes
[ 5] 9.00-10.00 sec  56.6 KBytes 463 Kbits/sec  39 2.83 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 563 KBytes 461 Kbits/sec 392 sender
[ 5] 0.00-10.00 sec 540 KBytes 443 Kbits/sec receiver

USER - A 192.168.0.101 PING TO BOARD 192.168.0.100 (bond0)

root@user-a:# ping 192.168.0.100
PING 192.168.0.100 (192.168.0.100) 56(84) bytes of data.
64 bytes from 192.168.0.100: icmp_seq=2 ttl=64 time=0.250 ms
64 bytes from 192.168.0.100: icmp_seq=4 ttl=64 time=0.160 ms
64 bytes from 192.168.0.100: icmp_seq=6 ttl=64 time=0.107 ms
64 bytes from 192.168.0.100: icmp_seq=7 ttl=64 time=0.139 ms
64 bytes from 192.168.0.100: icmp_seq=8 ttl=64 time=0.133 ms
64 bytes from 192.168.0.100: icmp_seq=9 ttl=64 time=0.154 ms
^C
--- 192.168.0.100 ping statistics ---
9 packets transmitted, 6 received, 33% packet loss, time 8177ms
rtt min/avg/max/mdev = 0.107/0.157/0.250/0.045 ms

USER - B 192.168.0.102 PING TO BOARD 192.168.0.100 (bond0)

root@user-b:# ping 192.168.0.100
PING 192.168.0.100 (192.168.0.100) 56(84) bytes of data.
64 bytes from 192.168.0.100: icmp_seq=2 ttl=64 time=0.146 ms
64 bytes from 192.168.0.100: icmp_seq=4 ttl=64 time=0.148 ms
64 bytes from 192.168.0.100: icmp_seq=6 ttl=64 time=0.152 ms
64 bytes from 192.168.0.100: icmp_seq=7 ttl=64 time=0.144 ms
64 bytes from 192.168.0.100: icmp_seq=8 ttl=64 time=0.168 ms
64 bytes from 192.168.0.100: icmp_seq=9 ttl=64 time=0.167 ms
^C
--- 192.168.0.100 ping statistics ---
9 packets transmitted, 6 received, 33% packet loss, time 8177ms
rtt min/avg/max/mdev = 0.144/0.154/0.168/0.012 ms

Thanks in advance

Uthayakumar R H

  • Hi TI e2e team,

    Any finding or pointer for low throughput?

    we are trying to create bond0 using eth0 and eth1 as slaves, idea is to access both eth port from outside world using bond0 single IP address with some reasonable throughput.

    Thanks in advance

    Uthayakumar R H