Назад | Перейти на главную страницу

Неравномерная балансировка нагрузки в режиме balance-rr в Ubuntu 18.04

Подключите две сетевые карты в конфигурации balance-rr:

root@server:~# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp1s0: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9000 qdisc mq master bond0 state UP mode DEFAULT group default qlen 1000
    link/ether 4a:76:c7:cc:8a:73 brd ff:ff:ff:ff:ff:ff
3: enp0s31f6: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9000 qdisc fq_codel master bond0 state UP mode DEFAULT group default qlen 1000
    link/ether 4a:76:c7:cc:8a:73 brd ff:ff:ff:ff:ff:ff
4: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 9000 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    link/ether 4a:76:c7:cc:8a:73 brd ff:ff:ff:ff:ff:ff

Связь отлично работает и настраивается ниже через netplan:

network:
ethernets:
    enp0s31f6:
        dhcp4: false
    enp1s0:
        dhcp4: false
version: 2
bonds:
    bond0:
         interfaces: [enp0s31f6,enp1s0]
         addresses: [10.0.10.10/16]
         gateway4: 10.0.0.1
         mtu: 9000
         nameservers:
              addresses: [10.0.0.1]
         parameters:
                 mode: balance-rr
                 mii-monitor-interval: 100

Однако я замечаю кое-что особенное. При передаче больших файлов через NFS с одного сервера (соединение 10G) я достигаю макс.180 МБ / с, при этом ~ 120 МБ / с проходит через enp0s31f6 и ~ 60 МБ / с проходит через enp1s0. Если я отключу enp0s31f6, другой интерфейс, enp1s0 достигнет максимальной пропускной способности 120 МБ / с.

Есть идеи, почему нагрузка распределяется в соотношении 2: 1?