Vinculación de conmutadores 802.3ad y HPE: el tráfico de entrada y salida no está en la misma interfaz

Vinculación de conmutadores 802.3ad y HPE: el tráfico de entrada y salida no está en la misma interfaz

Tengo LACP configurado entre mi servidor (802.3ad, capa 2, por lo tanto, según la MAC de origen y la MAC de destino) y mi conmutador.

Recientemente vi que el tráfico de entrada para un par de red usa una interfaz (eth3), mientras que la salida, para el mismo par de red, usa la otra interfaz (eth1).

¿Es el comportamiento normal?

Mirando la documentación del kernel (https://www.kernel.org/doc/Documentation/networking/bonding.txt, sección xmit_hash_policy): No lo creo. Pero debo admitir que estoy perdido, realmente perdido...

He aquí mi arreglo:

configuración de enlace en mi servidor

root@server:~# 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): 200
Down Delay (ms): 200

802.3ad info
LACP rate: fast
Min links: 0
Aggregator selection policy (ad_select): stable
Active Aggregator Info:
    Aggregator ID: 2
    Number of ports: 2
    Actor Key: 17
    Partner Key: 8
    Partner Mac Address: 2c:23:3a:6a:c5:fe

Slave Interface: eth1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 6
Permanent HW addr: b0:83:fe:d9:93:a0
Aggregator ID: 2
Slave queue ID: 0

Slave Interface: eth3
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 6
Permanent HW addr: b0:83:fe:d9:93:a2
Aggregator ID: 2
Slave queue ID: 0

Configuración del switch (HPE 5130):

<switch> display link-aggregation load-sharing mode interface Bridge-Aggregation 8
Bridge-Aggregation8 load-sharing mode: 
Layer 2 traffic: packet type-based sharing
Layer 3 traffic: packet type-based sharing


<switch>display link-aggregation verbose Bridge-Aggregation 8 
Loadsharing Type: Shar -- Loadsharing, NonS -- Non-Loadsharing 
Port Status: S -- Selected, U -- Unselected,  
             I -- Individual, * -- Management port 
Flags:  A -- LACP_Activity, B -- LACP_Timeout, C -- Aggregation, 
        D -- Synchronization, E -- Collecting, F -- Distributing, 
        G -- Defaulted, H -- Expired 

Aggregate Interface: Bridge-Aggregation8
Aggregation Mode: Dynamic
Loadsharing Type: Shar
Management VLAN : None
System ID: 0x8000, 2c23-3a6a-c5fe
Local: 
  Port             Status  Priority Oper-Key  Flag
--------------------------------------------------------------------------------
  GE1/0/8          S       32768    8         {ABCDEF}
  GE2/0/8          S       32768    8         {ABCDEF}
Remote: 
  Actor            Partner Priority Oper-Key  SystemID               Flag   
--------------------------------------------------------------------------------
  GE1/0/8          2       255      17        0xffff, b083-fed9-93a0 {ABCDEF}
  GE2/0/8          1       255      17        0xffff, b083-fed9-93a0 {ABCDEF}

Intenté cambiar el modo de equilibrio de carga en mi conmutador pero nada cambió.

¡Gracias!

Respuesta1

Con LACP o enlace estático, cada lado decide por sí solo cómo dirigir el tráfico.

Los conmutadores generalmente aplican un esquema SA/DA: procesan los tres o cuatro bits inferiores de las direcciones de origen y destino y los usan como índice de puerto LAG. Los conmutadores más simples solo usan direcciones MAC, los más sofisticados direcciones IP (cuando están presentes) o incluso junto con puertos TCP/UDP.

La intención es que un único flujo utilice siempre las mismas combinaciones de puertos, de modo que las tramas no puedan salirse de secuencia.

El uso exclusivo de direcciones MAC hace que todo el tráfico entre dos hosts (o enrutadores) utilice siempre la misma combinación de puertos.

El uso de direcciones IP permite distribuir los flujos entre enrutadores o le permite seleccionar direcciones IP (secundarias) para optimizar los flujos y las combinaciones de IP/puerto equilibran la carga de diferentes conexiones automáticamente (aunque no necesariamente de manera óptima).

Por lo tanto, el tráfico de entrada al host está controlado por el conmutador y el tráfico de salida está controlado por el host. Esto puede llevar muy fácilmente a que se utilicen diferentes puertos en ambas direcciones. Aunque no duele.

información relacionada