1

I have configured my server as bonding interface to achieve 2Gbit network speed but it seems ubuntu can not go over than 1gbit and the outgoing traffic from server is not balanced over 2 interfaces.

The switch behind of this server is a Juniper switch and all configuration is verified by Juniper JTac so there should not be any issue on switch side. It is configured as LACP 802.3ad.

The configuration on ubuntu is as following :

auto p255p1
iface p255p1 inet manual
bond-master bond0

auto p255p2
iface p255p2 inet manual
bond-master bond0

auto bond0
iface bond0 inet static
        address xx.xx.xx.x
        netmask 255.255.255.248
        gateway xx.xx.xx.xx

bond-mode 4
bond-miimon 100
bond-lacp-rate 1
bond-slaves none

Is there any one there who had experience with this such configuration and know if there is any special configuration to solve this issue?

Again : The issue here is that the outgoing traffic from server is not balanced and going only over one interface, incoming traffic is balanced and coming from both interfaces however it is limited to 1gbit at all and can not go upto 2gbit.

Thanks

2
  • 2
    You won't get 2GbE on a single source-destination pair.
    – ewwhite
    Jun 13, 2016 at 18:31
  • This is not only one destination, my server has a lot of viewer and there are more than only one connection to the server Jun 15, 2016 at 20:12

1 Answer 1

3

The following configuration works for me. The essential part is bond-xmit-hash-policy layer3+4 which controls the interface hashing policy for transmit packets. https://www.kernel.org/doc/Documentation/networking/bonding.txt It is also the rough equivalent of that the switch does in regards to load balancing the packets. http://kb.juniper.net/InfoCenter/index?page=content&id=KB22943 The default uses a simple XOR of the destination MAC address and thus will yield the same interface when your destination is the same server. With layer3+4 the source and destination port numbers come into play as well causing most single server traffic to even out nicely.

auto bond0
iface bond0 inet manual
        up ifconfig $IFACE up
        slaves eth4 eth5
        bond-mode 4
        bond-miimon 100
        bond-downdelay 200
        bond-updelay 200
        bond-lacp-rate 1
        bond-xmit-hash-policy layer3+4

6: eth4: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9000 qdisc mq master bond0 state UP mode DEFAULT group default qlen 1000
    link/ether 90:e2:ba:69:b6:c8 brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped overrun mcast
    605614572345 28863625 0       14      0       11413
    TX: bytes  packets  errors  dropped carrier collsns
    13213800052 20824630 0       0       0       0
7: eth5: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9000 qdisc mq master bond0 state UP mode DEFAULT group default qlen 1000
    link/ether 90:e2:ba:69:b6:c8 brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped overrun mcast
    601225223800 25966547 0       14      0       11219
    TX: bytes  packets  errors  dropped carrier collsns
    8500820678 14501120 0       0       0       0

Please note that i have omitted the mtu 9000 statement in configuration because your switch is likely configured for an MTU of 1500.

1
  • Thanks, I will give it a try and see if it helps in my server Jun 21, 2016 at 19:36

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .