Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Premesse

Switch Catalyst serie 6500

Switch Catalyst serie 4500

Switch Catalyst serie 3750

Problemi potenziali

Introduzione

Questo documento descrive come identificare il collegamento del membro EtherChannel utilizzato da un particolare flusso di traffico sugli switch Cisco Catalyst serie 6500, 4500 e 3750.

Prerequisiti

Requisiti

Cisco raccomanda la conoscenza di base di EtherChannel.

Componenti usati

Le informazioni fornite in questo documento si basano sulle seguenti piattaforme: Cisco Catalyst serie 6500, 4500, 2960, 3750, 3750G, 3750X e 3560 Switch.

Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.

Premesse

Il modo in cui funziona il bilanciamento del carico EtherChannel è che lo switch assegna un risultato hash da 0 a 7 in base al metodo hash configurato (algoritmo di bilanciamento del carico) per il tipo di traffico. Questo risultato hash viene comunemente denominato RBH (Result Bundle Hash).

Il numero di flussi dipende dall'algoritmo di bilanciamento del carico configurato. Ecco un esempio.

Source 192.168.1.1 (mac a.a.a ) sending a tcp stream to 172.16.1.1 ( mac b.b.b )

with a source tcp port of 50 and destination port 2000

Source 192.168.1.1 (mac a.a.a ) sending a tcp stream to 209.165.201.1 ( mac c.c.c )

with a source tcp port of 60 and destination 2000.

If configured load balancing algorithm is SRC_MAC

Then no of flows = 1

If configured load balancing algorithm is DST_MAC

Then no of flows = 2

If configured load balancing algorithm is DST_PORT

Then no of flows= 1

Switch Catalyst serie 6500

1. Controllare l'algoritmo di bilanciamento del carico operativo.

2. Dal processore dello switch (SP), immettere show etherchannel load-balance.

6500#remote login sw

Trying Switch ...

Entering CONSOLE for Switch

Type "^C^C^C" to end this session

6500-sp#show etherchannel load-balance

EtherChannel Load-Balancing Configuration:

src-dst-ip

mpls label-ip

3. Trovare il valore RBH scelto per il pacchetto tra il flusso desiderato.

6500-sp#test etherchannel load-balance interface port-channel

Nell'esempio, il flusso è compreso tra 192.168.1.1 e 172.16.1.1 e il canale della porta in questione è il canale della porta 1. Scegliere gli attributi del comando in base all'output del passaggio 1. Se l'algoritmo di bilanciamento del carico configurato è src_ip, fornire l'indirizzo src-ip del pacchetto 192.168.1.1. Poiché nell'esempio l'algoritmo di bilanciamento del carico configurato è src-dst ip, il comando deve includere entrambi 192.1 da 172.16.1.1.

6500-sp#test etherchannel load-balance int port-channel 1 ip 192.168.1.1 172.16.1.1

Computed RBH: 0x5

Would select Gi3/2 of Po1

4. Trovare la porta fisica mappata al valore RBH. (facoltativo)

In alcune versioni di Cisco IOS®, l'output del comando non restituisce l'interfaccia fisica scelta. Eseguire questo passaggio solo quando le informazioni dell'interfaccia di uscita non vengono generate nel passaggio 2.

6500-sp#test etherchannel load-balance int port-channel 1 ip 192.168.1.1 172.16.1.1

Computed RBH: 0x5
Passare alla console del processore di routing e immettere il comando show interface port-channel <num> etherchannel. Verificare l'output della colonna Load corrispondente a un'interfaccia fisica. Convertire il valore Load in formato binario (fare riferimento a questo esempio).

6500-sp#exit

[Connection to Switch closed by foreign host]

6500#show interface port-channel 1 etherchannel

Port-channel1   (Primary aggregator)

Age of the Port-channel   = 0d:01h:05m:54s

Logical slot/port   = 14/1          Number of ports = 2

HotStandBy port = null

Port state          = Port-channel Ag-Inuse

Protocol            =   LACP

Fast-switchover     = disabled

Ports in the Port-channel:

Index   Load   Port     EC state        No of bits

------+------+------+------------------+-----------

0     55     Gi3/1    Active    4

1     AA     Gi3/2    Active    4
Qui il valore di carico per gi3/2 è AA e per gi3/1 è 55.

7654 3210

gig3/2 - AA - 1010 1010

---- ----

|      |

A      A

gi3/1 -  55 - 0101 0101

---- ----

|      |

5      5

For gi3/2 bits 1,3,5 and 7 are set. So RBH value of 1,3,5,and 7 chooses gi3/2.

For gi3/1 bits 0,2,4 and 6 are set. So RBH value of 0,2,4,and 6 chooses gi3/1.
I risultati illustrano che sono impostati quattro bit per ciascuna delle due interfacce. Pertanto, quando EtherChannel include due collegamenti, ciascun collegamento ha la stessa probabilità di essere utilizzato.

Tuttavia, quando ci sono tre collegamenti in EtherChannel, l'output del test EtherChannel è simile a questo:

6500#show interface port-channel 1 etherchannel

Port-channel1   (Primary aggregator)

Age of the Port-channel   = 0d:01h:05m:54s

Logical slot/port   = 14/1          Number of ports = 2

HotStandBy port = null

Port state          = Port-channel Ag-Inuse

Protocol            =   LACP

Fast-switchover     = disabled

Ports in the Port-channel:

Index   Load   Port     EC state        No of bits

------+------+------+------------------+-----------

0     49     Gi3/1    Active    3

1     92     Gi3/2    Active    3

2     24     Gi3/3    Active    2
In questo caso, il rapporto di condivisione dei bit è di 3:3:2. Pertanto, i due collegamenti hanno una probabilità maggiore di essere utilizzati rispetto al terzo (ulteriori informazioni sono disponibili nella sezione aggiuntiva alla fine).

Switch Catalyst serie 4500

1. Controllare l'algoritmo di bilanciamento del carico configurato con il comando show etherchannel load-balancecommand.

2. Usare il comando show platform software etherchannel port-channel 1 map per trovare l'interfaccia in uscita.

4500#show platform software etherchannel port-channel 1 map ip 192.168.1.1

172.16.1.1

Map port for IP 192.168.1.1, 172.16.1.1 is Gi3/1(Po1)

NOTE: Software forwarded traffic uses Gi3/1(Po1)

Switch Catalyst serie 3750

Sugli switch Catalyst serie 3750, viene usato un algoritmo hash a 8 bit simile. In questo caso, la distribuzione del traffico è più efficace anche quando il numero di collegamenti in EtherChannel è 2, 4 o 8. Il comando per controllare l'interfaccia nel canale della porta:

test etherchannel load-balance interface port-channel

Si supponga che l'algoritmo di bilanciamento del carico del canale della porta sia configurato come src-dst ip sullo switch 3750 (impostazione non predefinita). Nell'esempio viene mostrato come identificare il collegamento usato dal traffico tra le versioni 192.168.1.1 e 172.16.1.1.

3750(config)#port-channel load-balance src-dst-ip

3750#show etherchannel load-balance

EtherChannel Load-Balancing Configuration:

src-dst-ip

3750#test etherchannel load-balance interface port-channel 1 ip 192.168.1.1 172.16.1.1

Would select Gi3/1 of Po1

Se l'algoritmo di bilanciamento del carico è basato sull'indirizzo MAC, è possibile usare il comando precedente se si forniscono gli indirizzi MAC di origine e di destinazione del pacchetto.

Problemi potenziali

Di seguito vengono riportati alcuni scenari che possono causare una distribuzione non uniforme del traffico sulle interfacce membro EtherChannel e i passaggi necessari per ottimizzare il bilanciamento del carico.

- Scenario: Se in EtherChannel sono presenti due flussi e due interfacce fisiche, è possibile che un flusso sia più comunicativo dell'altro. Se ci sono cinque flussi e uno è più loquace, questo flusso può sopraffare gli altri. Qualunque sia l'interfaccia fisica scelta da questo flusso ha un utilizzo relativamente maggiore rispetto alle altre.

- Risoluzione: Controlla il flusso del super talker. È necessario esaminarlo dal lato host.

- Scenario: Un problema comune è che non si dispone di un numero sufficiente di flussi e la maggior parte del piccolo numero di flussi viene eseguito l'hashing alla stessa interfaccia fisica.

- Risoluzione: Aumentare il numero di flussi. Tentativo di modificare l'algoritmo di hash in quello più appropriato per il traffico.

- Scenario: Quando ci sono 3, 5, 6 o 7 collegamenti fisici in EtherChannel, alcuni collegamenti hanno una probabilità più alta di accettare il traffico rispetto all'altro (in base al numero di bit di hashing assegnati a ciascuna interfaccia fisica), il che porta alla possibilità che il traffico sia distribuito in modo non equo.

- Risoluzione: Utilizzare i numeri di collegamento 2, 4 o 8 in EtherChannel.