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.
Cisco raccomanda la conoscenza di base di EtherChannel.
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.
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
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
6500-sp#test etherchannel load-balance interface port-channelNell'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
6500-sp#test etherchannel load-balance int port-channel 1 ip 192.168.1.1 172.16.1.1Passare 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).
Computed RBH: 0x5
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
7654 3210I 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.
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.
6500#show interface port-channel 1 etherchannelIn 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).
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
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)
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.
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.