Автор Тема: bonding + lacp непонятки  (Прочитано 930 раз)

Оффлайн KALIBR-10

  • Давно тут
  • **
  • Сообщений: 424
bonding + lacp непонятки
« : 14.04.2021 16:44:02 »
Всем доброго.
Запилил бондинг из двух сетевух

5e:00.0 Ethernet controller: Intel Corporation 82599 10 Gigabit Dual Port Backplane Connection (rev 01)
Subsystem: Intel Corporation Ethernet X520 10GbE Dual Port KX4-KR Mezz
Kernel driver in use: ixgbe
5e:00.1 Ethernet controller: Intel Corporation 82599 10 Gigabit Dual Port Backplane Connection (rev 01)
Subsystem: Intel Corporation Ethernet X520 10GbE Dual Port KX4-KR Mezz
Kernel driver in use: ixgbe

# cat options
TYPE=bond
ONBOOT=yes
DISABLED=no
NM_CONTROLLED=no
CONFIG_WIRELESS=no
CONFIG_IPV4=no
CONFIG_IPV6=no
BOOTPROTO=none
HOST="ens2f0 ens2f1"
BONDMODE=4
BONDOPTIONS="lacp_rate=fast"

ens2f0
# cat options
TYPE=eth
CONFIG_WIRELESS=no
BOOTPROTO=static
CONFIG_IPV4=no
DISABLED=no
NM_CONTROLLED=no
ONBOOT=yes
CONFIG_IPV6=no

ens2f1
# cat options
TYPE=eth
CONFIG_WIRELESS=no
BOOTPROTO=static
CONFIG_IPV4=no
DISABLED=no
NM_CONTROLLED=no
ONBOOT=yes
CONFIG_IPV6=no

# cat /proc/net/bonding/bond1
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
Peer Notification Delay (ms): 0

802.3ad info
LACP rate: fast
Min links: 0
Aggregator selection policy (ad_select): stable
System priority: 65535
System MAC address: ca:8c:65:ff:30:10
Active Aggregator Info:
Aggregator ID: 1
Number of ports: 2
Actor Key: 15
Partner Key: 1
Partner Mac Address: e4:f0:04:ef:c9:7e

Slave Interface: ens2f0
MII Status: up
Speed: 10000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: b8:85:84:e6:37:45
Slave queue ID: 0
Aggregator ID: 1
Actor Churn State: none
Partner Churn State: none
Actor Churned Count: 0
Partner Churned Count: 0
details actor lacp pdu:
    system priority: 65535
    system mac address: ca:8c:65:ff:30:10
    port key: 15
    port priority: 255
    port number: 1
    port state: 63
details partner lacp pdu:
    system priority: 32768
    system mac address: e4:f0:04:ef:c9:7e
    oper key: 1
    port priority: 32768
    port number: 130
    port state: 61

Slave Interface: ens2f1
MII Status: up
Speed: 10000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: b8:85:84:e6:37:47
Slave queue ID: 0
Aggregator ID: 1
Actor Churn State: none
Partner Churn State: none
Actor Churned Count: 0
Partner Churned Count: 0
details actor lacp pdu:
    system priority: 65535
    system mac address: ca:8c:65:ff:30:10
    port key: 15
    port priority: 255
    port number: 2
    port state: 63
details partner lacp pdu:
    system priority: 32768
    system mac address: e4:f0:04:ef:c9:7e
    oper key: 1
    port priority: 32768
    port number: 186
    port state: 61

На коммутаторе (Dell MXL 10/40GbE) так же оба порта добавлены в port-channel
interface TenGigabitEthernet 0/1
 no ip address
 mtu 9216
 iscsi profile-compellent

 port-channel-protocol LACP
  port-channel 1 mode active
 no shutdown
interface TenGigabitEthernet 1/1
 no ip address
 mtu 9216
 iscsi profile-compellent
!       
 port-channel-protocol LACP
  port-channel 1 mode active
 no shutdown
!       
!
interface Port-channel 1
 description "to slot01"
 no ip address
 mtu 9216
 switchport
 spanning-tree mstp edge-port
 spanning-tree rstp edge-port
 spanning-tree 0 portfast
 spanning-tree pvst edge-port
 iscsi profile-compellent
 lacp long-timeout
 no shutdown

Пробовал выключать сначала один порт, затем включать и выключать другой, трафик идёт нормально.
Но наблюдается интересная картина, на одном интерфейсе постоянно исходящий на нуле. Пробовал гонять по тети большие файлы, нефига, забивается только тот интерфейс который работает в обе стороны.
Разбаньте в телеге шакалы!!!

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 103
Re: bonding + lacp непонятки
« Ответ #1 : 14.04.2021 20:16:31 »
Там бывает ещё режим балансировки. На стороне Linux можно добавить "xmit_hash_policy=layer2+3" в BONDOPTIONS, а на стороне коммутатора надо смотреть, как то слово называется, у всех по разному немного.

Оффлайн klark973

  • Завсегдатай
  • *
  • Сообщений: 662
  • Неспящий саппорт
Re: bonding + lacp непонятки
« Ответ #2 : 14.04.2021 21:58:38 »
...
BONDMODE=4
...
Но наблюдается интересная картина, на одном интерфейсе постоянно исходящий на нуле. Пробовал гонять по тети большие файлы, нефига, забивается только тот интерфейс который работает в обе стороны.
Всё правильно, так работает LACP (единственный "честный" бондинг, реализуемый железом). Если перейти на Round-Robin, будут задействованы все порты, причём с пропорциональной загрузкой, будет прирост в пределах 7-10%, но по моему опыту с ним не избежать странных сетевых глюков в некоторых условиях, так что не рекомендую.
To moan or to solve -- that is the question!