In questo documento viene fornita una breve descrizione delle tabelle di bridging distribuite sugli switch Catalyst 2948G-L3 e 4908G-L3 sul layer 3 e vengono descritte le implicazioni delle tabelle di bridge distribuite e della topologia di routing asimmetrico quando i gruppi di bridge sono configurati sullo switch.
Nessun requisito specifico previsto per questo documento.
Le configurazioni di esempio riportate in questo documento sono state create in un ambiente lab con questi dispositivi (senza le configurazioni):
Catalyst 2948G-L3 con Cisco IOS 12.0(7)W5(15d)
Due router (nessun modello specifico o IOS)
Un PC o un'altra workstation che funge da server
Le configurazioni descritte in questo documento sono state implementate in un ambiente lab isolato. valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi o delle configurazioni di rete. Le configurazioni su tutti i dispositivi sono state cancellate con il comando write erase e ricaricate per assicurarsi che dispongano di una configurazione predefinita.
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
Sullo switch Catalyst 2948G-L3 sono disponibili due configurazioni di bridging tipiche:
Tutte le porte appartengono a un unico gruppo di bridge; non esiste una configurazione di layer 3.
I gruppi di porti appartengono a uno o più gruppi di bridge; Le BVI (Bridge Virtual Interfaces) vengono utilizzate per instradare il traffico per i vari gruppi di bridge.
In entrambe le configurazioni, le voci della tabella di inoltro di layer 2 per un determinato indirizzo MAC in un gruppo bridge vengono visualizzate con il comando show bridge-group-number.
Le voci della tabella bridge sugli switch Catalyst 2948G-L3 e 4908G-L3 sono in realtà composte internamente da almeno due voci, una sull'interfaccia di origine (dove risiede il dispositivo con quell'MAC) e una su ciascuna interfaccia di destinazione (l'interfaccia a cui è destinato il traffico proveniente da quell'MAC, in base all'MAC di destinazione nel frame). Infatti, il processo di apprendimento per la compilazione delle tabelle di bridging sugli switch Catalyst 2948G-L3 e 4908G-L3 viene in realtà distribuito su base porta per porta anziché a livello di switch.
Si consideri ad esempio la topologia nella Figura 1.
Figura 1: Catalyst 2948G-L3 Switch con due host collegati
In questa topologia, si supponga che le interfacce fast 1 e fast 2 appartengano allo stesso gruppo di bridge. Per ciascun indirizzo MAC, nello switch vengono aggiunte due voci di tabella bridge: uno sull'interfaccia fast 1 e uno sull'interfaccia fast 2, come mostrato di seguito:
2948G-L3#show bridge 1 Total of 300 station blocks, 298 free Codes: P - permanent, S - self Bridge Group 1: Address Action Interface 0000.1111.1111 forward FastEthernet1 0000.2222.2222 forward FastEthernet2 2948G-L3#
L'esempio mostra che lo switch Catalyst 2948G-L3 ha appreso l'indirizzo MAC 0000.111.1111 sull'interfaccia fast 1 e l'indirizzo MAC 000.2222.2222 sull'interfaccia fast 2.
Internamente, ci sono due voci per ciascun indirizzo MAC: una sull'interfaccia fast 1 e una sull'interfaccia fast 2. Per l'indirizzo MAC 000.111.1111, la voce sull'interfaccia fast 1 è una voce "locale", ossia il dispositivo con MAC 000.111.1111 è collegato a questa interfaccia, direttamente o tramite altri dispositivi di layer 2.
La voce 0000.1111.1111 sull'interfaccia fast 2 è una voce "remota", ossia il dispositivo con questo indirizzo MAC non è collegato a questa interfaccia. Una voce della tabella di bridge remota punta all'interfaccia a cui è effettivamente connesso il dispositivo con l'indirizzo MAC (in questo caso, interface fast 1).
Per l'indirizzo MAC 0000.2222.222, le voci sono invertite — l'interfaccia fast 2 ha una voce locale per l'indirizzo MAC e l'interfaccia fast 1 ha una voce remota per l'indirizzo MAC che punta all'interfaccia fast 2.
Nella figura 2 viene mostrato come archiviare gli indirizzi MAC nella tabella di inoltro globale e lo stato delle tabelle bridge interne, per porta, sullo switch Catalyst 2948G-L3.
Figura 2: Stato delle voci globali e della tabella di inoltro per porta
È possibile utilizzare il comando show epc patricia interface <interface> mac per visualizzare lo stato interno effettivo delle voci della tabella bridge (la struttura patricia è la struttura di dati utilizzata per memorizzare e accedere alla tabella bridge). Ad esempio, lo stato interno delle voci della tabella dei bridge ("mac") per l'interfaccia fast 1 è il seguente:
2948G-L3#show epc patricia interface fast 1 mac 1# MAC addr:0000.0000.0000 VC:0 Entry: 2# MAC addr:0900.2b01.0001 MyMAC 3# MAC addr:0180.c200.0000 MyMAC 4# MAC addr:0100.0ccc.cccd MyMAC 5# MAC addr:0100.0ccc.cccc MyMAC 6# MAC addr:0001.43a0.cc07 HsrpMAC 7# MAC addr:0000.2222.2222 IF Number:5 Entry:Remote 8# MAC addr:0000.1111.1111 IF Number:4 Entry:Local Total number of MAC entries: 8 2948G-L3#
Si noti che la voce "Local" per interface fast 1 è per l'indirizzo MAC 000.111.1111, mentre la voce "Remote" è per l'indirizzo MAC 000.222.2222.
Al contrario, per l'interfaccia fast 2:
2948G-L3#show epc patricia interface fast 2 mac 1# MAC addr:0000.0000.0000 VC:0 Entry: 2# MAC addr:0900.2b01.0001 MyMAC 3# MAC addr:0180.c200.0000 MyMAC 4# MAC addr:0100.0ccc.cccd MyMAC 5# MAC addr:0100.0ccc.cccc MyMAC 6# MAC addr:0001.43a0.cc08 HsrpMAC 7# MAC addr:0000.2222.2222 IF Number:5 Entry:Local 8# MAC addr:0000.1111.1111 IF Number:4 Entry:Remote Total number of MAC entries: 8 2948G-L3#
La voce "Local" per interface fast 2 è relativa all'indirizzo MAC 0000.222.2222, mentre la voce "Remote" è relativa all'indirizzo MAC 000.111.1111.
Se si utilizza una configurazione di bridging nello switch Catalyst 2948G-L3 o 4908G-L3 con una topologia di routing asimmetrico, vi sono importanti implicazioni funzionali per le tabelle bridge distribuite. In particolare, il bridging con routing asimmetrico può causare inondazioni unicast periodiche all'interno di un gruppo di bridge.
Il routing asimmetrico indica che i modelli di traffico da e verso una determinata subnet IP tramite lo switch Catalyst 2948G-L3 non seguono lo stesso percorso. Si consideri ad esempio la topologia nella Figura 3.
Figura 3: Topologia di routing asimmetrica
In questa topologia, il traffico proveniente dalla subnet IP 10.10.10.0/24 e destinato al server 1 (10.1.1.20) entra nel router 1 e viene inoltrato tramite l'interfaccia gig 1 alla subnet IP 10.1.1.0/24. L'interfaccia gig 1 si connette all'interfaccia gig 49 sullo switch Catalyst 2948G-L3.
L'interfaccia gig 49 appartiene al gruppo bridge 1, così come l'interfaccia fast 1, dove è connesso il server 1.
Quando il server 1 invia il traffico all'host richiedente nella subnet IP 10.10.10.0/24, utilizza il gateway predefinito. Il gateway predefinito del server 1 è il router 2, connesso all'interfaccia gig 50. L'interfaccia gig 50 è anche un membro del gruppo di bridge 1.
La cosa importante da notare su questa topologia è che, mentre il traffico destinato al server 1 dalla subnet IP 10.10.10.0/24 viene recapitato dal router 1, il traffico di ritorno dal server 1 alla subnet IP 10.10.10.0/24 passa attraverso il router 2 e non attraverso il router 1.
Di conseguenza, l'interfaccia gig 49 (collegata al router 1) non vede regolarmente il traffico proveniente dal server 1 (indirizzo MAC 000.333.3333). L'implicazione è che l'interfaccia gig 49 alla fine invecchia la voce "remota" della tabella di bridge per il server 1, che forza lo switch Catalyst 2948G-L3 a inondare i frame ricevuti sull'interfaccia gig 49 destinati al server 1 a tutte le porte nel gruppo di bridge.
Esaminate più in dettaglio perché ciò accade. Si supponga che tutte le tabelle ARP e le tabelle bridge siano vuote.
Il router 1 riceve il traffico da 10.10.10.100 destinato al server 1 (10.1.1.20).
ARP router 1 per server 1 uscita interfaccia gig 1.
Lo switch Catalyst 2948G-L3 riceve il pacchetto ARP di trasmissione sull'interfaccia gig 49 e sposta il frame su tutte le porte del gruppo bridge. Il risultato sono una voce locale per MAC 0000.111.1111 sull'interfaccia gig 49 e una voce remota per MAC 000.1111.1111 su tutte le interfacce del gruppo bridge.
Il server 1 riceve la richiesta ARP e risponde all'ARP. Il risultato è una voce Local per MAC 000.333.3333 sull'interfaccia fast 1 e una voce Remote per MAC 000.333.333 sull'interfaccia gig 49.
2948G-L3#show bridge 1 Total of 300 station blocks, 298 free Codes: P - permanent, S - self Bridge Group 1: Address Action Interface 0000.3333.3333 forward FastEthernet1 0000.1111.1111 forward Gi49 2948G-L3#show epc patricia interface gig 49 mac 1# MAC addr:0000.3333.3333 IF Number:4 Entry:Remote 2# MAC addr:0001.43a0.cd07 HsrpMAC 3# MAC addr:0000.1111.1111 IF Number:52 Entry:Local 4# MAC addr:0100.0ccc.cccd MyMAC 5# MAC addr:0180.c200.0000 MyMAC 6# MAC addr:0900.2b01.0001 MyMAC 7# MAC addr:0100.0ccc.cccc MyMAC Total number of MAC entries: 7 2948G-L3#show epc patricia interface fast 1 mac 1# MAC addr:0000.0000.0000 VC:0 Entry: 2# MAC addr:0900.2b01.0001 MyMAC 3# MAC addr:0180.c200.0000 MyMAC 4# MAC addr:0100.0ccc.cccd MyMAC 5# MAC addr:0100.0ccc.cccc MyMAC 6# MAC addr:0001.43a0.cc07 HsrpMAC 7# MAC addr:0000.3333.3333 IF Number:4 Entry:Local 8# MAC addr:0000.1111.1111 IF Number:52 Entry:Remote Total number of MAC entries: 8 2948G-L3#
Inoltre, il server 1 dispone ora di una voce ARP completa per il router 1 (10.1.1.1 con indirizzo MAC 000.111.111).
Server1% arp -a Net to Media Table Device IP Address Mask Flags Phys Addr ------ -------------------- --------------- ----- --------------- hme0 10.1.1.1 255.255.255.255 00:00:11:11:11:11 hme0 10.1.1.20 255.255.255.255 SP 00:00:33:33:33:33 hme0 224.0.0.0 240.0.0.0 SM 01:00:5e:00:00:00 Server1%
Il router 1 completa la voce ARP per 10.1.1.20 con l'indirizzo MAC 000.333.3333.
Router1#show arp Protocol Address Age (min) Hardware Addr Type Interface Internet 10.1.1.1 - 0000.1111.1111 ARPA GigabitEthernet1 Internet 10.10.10.1 - 0050.3e7c.45a1 ARPA GigabitEthernet8 Internet 10.1.1.20 0 0000.3333.3333 ARPA GigabitEthernet1 Internet 10.10.10.100 1 0000.aaaa.aaaa ARPA GigabitEthernet8 Router1#
Il router 1 inoltra il pacchetto da 10.10.10.100 al server 1 (10.1.1.20) con la voce ARP completata.
Quando lo switch Catalyst 2948G-L3 riceve il frame, controlla la tabella bridge archiviata nell'interfaccia gig 49 per l'indirizzo MAC di destinazione (0000.333.3333). Tenere presente che questa tabella è specifica dell'interfaccia, non globale per lo switch.
Lo switch Catalyst 2948G-L3 trova la voce Remote per l'indirizzo MAC del server 1 e inoltra il frame all'interfaccia fast 1 ("IF Number:4" in Spanning Tree).
2948G-L3#show epc patricia interface gig 49 mac 1# MAC addr:0000.3333.3333 IF Number:4 Entry:Remote 2# MAC addr:0001.43a0.cd07 HsrpMAC 3# MAC addr:0000.1111.1111 IF Number:52 Entry:Local 4# MAC addr:0100.0ccc.cccd MyMAC 5# MAC addr:0180.c200.0000 MyMAC 6# MAC addr:0900.2b01.0001 MyMAC 7# MAC addr:0100.0ccc.cccc MyMAC Total number of MAC entries: 7 2948G-L3#
Il server 1 riceve correttamente il frame.
Quando il server 1 risponde, determina (in base alla configurazione dello stack IP) che 10.10.10.100 si trova su una subnet IP diversa, quindi il server 1 esegue gli ARP per l'indirizzo IP del gateway predefinito (10.1.1.2).
Quando lo switch Catalyst 2948G-L3 riceve la trasmissione ARP, instrada il frame a tutte le interfacce del gruppo bridge. Il risultato è una voce locale per MAC 0000.333.3333 sull'interfaccia fast 1 e una voce remota per MAC 000.333.3333 su tutte le interfacce del gruppo bridge.
Il router 2 riceve la richiesta ARP e risponde all'ARP. Il risultato è una voce Local per MAC 000.222.2222 sull'interfaccia gig 50 e una voce Remote per MAC 000.222.222.222 sull'interfaccia fast 1.
2948G-L3#show bridge 1 Total of 300 station blocks, 297 free Codes: P - permanent, S - self Bridge Group 1: Address Action Interface 0000.2222.2222 forward Gi50 0000.3333.3333 forward FastEthernet1 0000.1111.1111 forward Gi49 2948G-L3#show epc patricia interface gig 50 mac 1# MAC addr:0000.2222.2222 IF Number:53 Entry:Local 2# MAC addr:0000.3333.3333 IF Number:4 Entry:Remote 3# MAC addr:0000.1111.1111 IF Number:52 Entry:Remote 4# MAC addr:0001.43a0.cd08 HsrpMAC 5# MAC addr:0100.0ccc.cccd MyMAC 6# MAC addr:0180.c200.0000 MyMAC 7# MAC addr:0900.2b01.0001 MyMAC 8# MAC addr:0100.0ccc.cccc MyMAC Total number of MAC entries: 8 2948G-L3#show epc patricia interface fast 1 mac 1# MAC addr:0000.0000.0000 VC:0 Entry: 2# MAC addr:0900.2b01.0001 MyMAC 3# MAC addr:0180.c200.0000 MyMAC 4# MAC addr:0100.0ccc.cccd MyMAC 5# MAC addr:0100.0ccc.cccc MyMAC 6# MAC addr:0001.43a0.cc07 HsrpMAC 7# MAC addr:0000.2222.2222 IF Number:53 Entry:Remote 8# MAC addr:0000.3333.3333 IF Number:4 Entry:Local 9# MAC addr:0000.1111.1111 IF Number:52 Entry:Remote Total number of MAC entries: 9 2948G-L3#
Inoltre, il router 2 ha ora una voce ARP completa per il server 1 (10.1.1.20) con indirizzo MAC 000.333.333.
Router2#show arp Protocol Address Age (min) Hardware Addr Type Interface Internet 10.1.1.2 - 0000.2222.2222 ARPA GigabitEthernet1 Internet 10.1.1.20 0 0000.3333.3333 ARPA GigabitEthernet1 Router2#
Il server 1 completa la voce ARP per 10.1.1.2 con l'indirizzo MAC 000.222.2222.
Server1% arp -a Net to Media Table Device IP Address Mask Flags Phys Addr ------ -------------------- --------------- ----- --------------- hme0 10.1.1.1 255.255.255.255 00:00:11:11:11:11 hme0 10.1.1.2 255.255.255.255 00:00:22:22:22:22 hme0 10.1.1.20 255.255.255.255 SP 00:00:33:33:33:33 hme0 224.0.0.0 240.0.0.0 SM 01:00:5e:00:00:00 Server1%
Il server 1 invia la risposta a 10.10.10.100 tramite il gateway predefinito, 10.1.1.2. Il frame trasmesso dal server 1 ha l'indirizzo MAC 000.222.2222 come indirizzo MAC di destinazione e 0000.333.3333 come indirizzo MAC di origine.
Quando lo switch Catalyst 2948G-L3 riceve il frame, controlla la tabella bridge sull'interfaccia fast 1 per individuare l'indirizzo MAC di destinazione (000.222.222).
Lo switch Catalyst 2948G-L3 trova la voce Remote per l'indirizzo MAC del router 2 e inoltra il frame all'interfaccia gig 50 (numero IF:53 nello Spanning Tree).
2948G-L3#show epc patricia interface fast 1 mac 1# MAC addr:0000.0000.0000 VC:0 Entry: 2# MAC addr:0900.2b01.0001 MyMAC 3# MAC addr:0180.c200.0000 MyMAC 4# MAC addr:0100.0ccc.cccd MyMAC 5# MAC addr:0100.0ccc.cccc MyMAC 6# MAC addr:0001.43a0.cc07 HsrpMAC 7# MAC addr:0000.2222.2222 IF Number:53 Entry:Remote 8# MAC addr:0000.3333.3333 IF Number:4 Entry:Local 9# MAC addr:0000.1111.1111 IF Number:52 Entry:Remote Total number of MAC entries: 9 2948G-L3#
A questo punto, tutto funziona come previsto. Ad esempio, quando un analizzatore di rete è connesso all'interfaccia fast 2 (anche nel gruppo bridge 1), l'analizzatore riceve solo il traffico di tipo flood (ad esempio broadcast e multicast), ma l'amministratore di rete può essere sorpreso quando il traffico unicast da 10.10.10.100 a 10.1.1.20 (server 1) viene acquisito dall'analizzatore.
Il problema si verifica quando la voce Remote per Server 1 scade sull'interfaccia gig 49 (connessa al router 1). Questo si verifica dopo 300 secondi (tempo di aging della tabella di bridge) se sull'interfaccia non arrivano frame con indirizzo MAC di origine 000.333.3333. La tabella dei bridge interni viene visualizzata in questo modo dopo la scadenza della voce Remote per Server 1:
2948G-L3#show epc patricia interface gig 49 mac 1# MAC addr:0001.43a0.cd07 HsrpMAC 2# MAC addr:0000.1111.1111 IF Number:52 Entry:Local 3# MAC addr:0100.0ccc.cccd MyMAC 4# MAC addr:0180.c200.0000 MyMAC 5# MAC addr:0900.2b01.0001 MyMAC 6# MAC addr:0100.0ccc.cccc MyMAC Total number of MAC entries: 6 2948G-L3#
L'unica voce è la voce Local per Router 1. La voce Remote per Server 1 (indirizzo MAC 000.333.333) è stata rimossa. Il risultato è il sovraccarico di tutto il traffico unicast dal router 1 al server 1 su ciascuna interfaccia del gruppo di bridge.
Sfortunatamente, l'unico modo per isolare il problema è controllare lo stato delle voci interne della tabella del bridge per interfaccia. Infatti l'output del comando show bridge indica che lo switch Catalyst 2948G-L3 ha ancora una voce per il server 1:
2948G-L3#show bridge 1 Total of 300 station blocks, 297 free Codes: P - permanent, S - self Bridge Group 1: Address Action Interface 0000.2222.2222 forward Gi50 0000.3333.3333 forward FastEthernet1 0000.1111.1111 forward Gi49 2948G-L3#
Infatti, se lo switch Catalyst 2948G-L3 ha una voce Local su un'interfaccia per un indirizzo MAC, l'indirizzo MAC viene visualizzato nella tabella del bridge.
Inoltre, un comando show arp sul router 1 mostra che la voce ARP è completa e corretta:
Router1#show arp Protocol Address Age (min) Hardware Addr Type Interface Internet 10.1.1.1 - 0000.1111.1111 ARPA GigabitEthernet1/1 Internet 10.10.10.1 - 0050.3e7c.45a1 ARPA FastEthernet7/1 Internet 10.1.1.20 7 0000.3333.3333 ARPA GigabitEthernet1/1 Internet 10.10.10.100 9 0000.aaaa.aaaa ARPA FastEthernet7/1 Router1#
Questo perché il tempo di aging ARP è di 4 ore per impostazione predefinita, molto più lungo del tempo di aging della tabella di bridge.
Esistono due soluzioni per questo problema:
Riprogettare la topologia di routing in modo che il traffico di una determinata subnet IP remota segua lo stesso percorso da e verso lo switch Catalyst 2948G-L3.
Ridurre il tempo di aging ARP sulle interfacce del router collegate allo switch Catalyst 2948G-L3 a 5 minuti (con il comando di configurazione dell'interfaccia arp timeout <secondi>).
Si preferisce la prima soluzione, ma la seconda può ridurre notevolmente la quantità di allagamenti unicast senza influire negativamente sulle prestazioni (l'aumento del carico di ARPing sul router non è significativo nella maggior parte dei casi).
Con il tempo di invecchiamento ARP predefinito di quattro ore, le inondazioni unicast possono verificarsi per quasi quattro ore. Con un timer ARP ridotto, l'allagamento unicast può durare al massimo quattro minuti prima che le voci della tabella del bridge vengano reinstallate. Infatti, se in (durata - 60 secondi) non viene rilevato traffico per un host in una tabella ARP di un router, il router torna agli ARP per tale host e aggiorna o reinstalla le voci della tabella del bridge dinamico nello switch Catalyst 2948G-L3 o 4908G-L3.
Tenere presente che, poiché non esiste un modo per sincronizzare il timer ARP e il timer della tabella di ponte con precisione, la seconda soluzione molto probabilmente non elimina completamente il flooding unicast.
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
06-Oct-2005 |
Versione iniziale |