Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Premesse

Terminologia

Teoria REP

Scelta della porta alternativa REP

Annunci sulle porte bloccate

Scelta di una porta alternativa

Annunci sulla porta finale

Notifica errore collegamento REP

Bilanciamento del carico VLAN e porta preferita REP

Configurazione

Esempio di rete

Configurazioni

Verifica

Riepilogo dei comandi

Risoluzione dei problemi

Cuneo della coda di input

Messaggi di log REP

Informazioni correlate

Introduzione

Questo documento descrive come configurare e convalidare il protocollo REP (Resilient Ethernet Protocol) sugli switch Catalyst 9000.

Prerequisiti

Requisiti

Cisco raccomanda la conoscenza dei seguenti argomenti:

- Prevenzione del loop di layer 2

Componenti usati

Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:

- Catalyst 9200

- Catalyst 9300

- Catalyst 9400

- Catalyst 9500

- Catalyst 9600

- Cisco IOS XE 17.6.5 e versioni successive

Attenzione: la funzione REP non è supportata sugli switch con SVL (Stackwise Virtual)

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

REP è un protocollo proprietario di Cisco progettato per impedire loop di rete e fornire una convergenza rapida in caso di errore di collegamento nelle reti Ethernet di livello 2. Si tratta di un'alternativa allo Spanning Tree Protocol e viene spesso utilizzata in topologie di livello 2 specifiche che richiedono estensioni di livello 2 di grandi dimensioni, come reti IoT, reti industriali o reti di produzione. I "segmenti" REP sono formati tramite il concatenamento di porte tra switch configurati con lo stesso ID segmento. Con funzionalità quali il bilanciamento del carico REP e la sua capacità di coesistere con STP, REP può essere utilizzato per costruire topologie di livello 2 complesse ma prevedibili.

Terminologia

Termine

Definizione

Segmento

Catena di porte connesse che condividono lo stesso ID segmento

ID segmento

Numero utilizzato per rappresentare il segmento compreso tra 1 e 1024

Porta REP

Porta configurata per l'esecuzione di REP. STP è disabilitato sulle porte REP.

Edge Port

Porta che termina un bordo del segmento REP.

Porta alternativa

Porta che blocca le VLAN nel segmento per impedire la formazione di loop. Se è configurato il bilanciamento del carico, nel segmento sono presenti 2 porte alternative

Open Port

La porta nel segmento che inoltra tutte le VLAN

Segmento chiuso

Segmento REP in cui entrambe le porte edge si trovano sullo stesso switch e sono connesse l'una all'altra. Chiamato anche 'segmento ad anello'.

Apri segmento

Segmento REP in cui le porte perimetrali non sono collegate tra loro. Le porte edge si trovano su switch diversi e tra di esse è presente una porta di blocco.

LSL (Link Status Layer)

Protocollo handshake a 3 vie responsabile della definizione delle adiacenze adiacenti e del mantenimento dello stato del collegamento. I frame LSL vengono inviati ogni 1 secondo sulle porte REP.

HFL (Hardware Flood Layer)

Livello responsabile della semplificazione della rapida convergenza dopo un errore di collegamento dovuto al sovraccarico delle PDU REP tramite multicast

BPA (Blocked Port Advertisement)

Messaggio inviato da una porta per annunciare l'elenco di VLAN bloccate. Anche i BPA possono apportare modifiche alla topologia, rendendo le porte di ricezione scaricabili nella tabella MAC

End Port Advertisement (EPA)

Trasmette informazioni globali sul segmento REP e viene inviato da porte Edge

REP Admin VLAN

VLAN utilizzata per le notifiche rapide REP flooding per la convergenza dopo un errore di collegamento. L'HFL funziona qui se è configurato. In caso contrario, la VLAN di amministrazione REP è 1.

Teoria REP

REP è in grado di prevenire i loop di switching bloccando le VLAN su una singola porta nel segmento noto come porta alternativa. Quando tutte le porte nel segmento REP sono nello stato UP, la porta alternativa è bloccata per impedire il loop. Quando un collegamento nel segmento REP si interrompe o se uno switch ha un problema che determina la perdita dei pacchetti del protocollo REP, la porta alternativa viene inoltrata per le VLAN che stava bloccando in precedenza. È importante notare che per questo motivo, i segmenti REP possono gestire solo una singola porta fallita all'interno del segmento. Un errore su più di un collegamento sul segmento REP può causare una perdita di traffico.

Quando la funzione REP è abilitata su un'interfaccia, tutte le VLAN vengono bloccate immediatamente. Il REP LSL prende il controllo e inizia a inviare PDU LSL per stabilire un'adiacenza. L'adiacenza viene creata utilizzando un handshake a 3 vie con i successivi pacchetti LSL hello inviati a intervalli di 1 secondo per mantenere i vicini REP.

Durante l'individuazione dei router adiacenti REP, i dispositivi scambiano l'ID segmento REP e l'ID porta.

- L'ID segmento è un numero compreso tra 1 e 1024 ed è configurato sull'interfaccia quando si abilita REP. Questo identifica in modo univoco il segmento REP.

- L'ID porta è una parola a 60 bit generata automaticamente dall'indirizzo MAC del sistema e dal numero di porta sullo switch.

- La PDU LSL viene inviata all'indirizzo MAC di destinazione è 0180.c200.0000

9200-STACK-1#show interface port-channel1 rep detail | i PortID

PortID: 08E978BC1A4FDD80                                         <--- Port ID with system MAC in bold

9200-STACK-1#show version | i MAC

Base Ethernet MAC Address : 78:bc:1a:4f:dd:80                    <-- Switch system MAC

Una porta REP passa allo stato Non riuscito dopo essere stata chiusa o dopo 5 secondi il timeout di attesa LSL scade.

Scelta della porta alternativa REP

La porta alternativa REP è la porta nel segmento che blocca le VLAN.

- La scelta della porta alternativa avviene immediatamente dopo che i vicini REP sono stati stabiliti utilizzando un meccanismo di proposta e accordo per determinare quale porta singola nel segmento rimane bloccata.

- Ogni porta del segmento annuncia la propria chiave di porta e la propria priorità di porta e attende il contratto.

- La porta con la priorità più alta viene selezionata come porta alternativa.

- Il processo di selezione avviene tramite messaggi BPA REP.

Annunci sulle porte bloccate

Un messaggio BPA è costituito da una chiave e da una priorità di porta.

- La chiave della porta REP è un identificatore a 9 byte che viene generato ogni volta che la porta entra in uno stato di blocco (che è immediatamente sul collegamento per le porte abilitate per REP).

- È una combinazione dell'ID della porta e di un numero generato in modo casuale.

- Port Priority è anche un identificatore a 9 byte.

Scelta di una porta alternativa

1. Su collegamento attivo e mentre la porta REP è in stato di blocco, annuncia la chiave della porta e la priorità alla porta adiacente REP

2. La porta ricevente confronta la priorità della porta BPA ricevuta con la propria priorità di porta

3. La porta ricevente risponde con un messaggio ACK contenente la chiave ricevuta in BPA dalla porta adiacente. Quando il vicino riceve la propria chiave nel BPA sa che il BPA è un messaggio ACK dal vicino

4. Se l'ACK contiene una priorità di porta superiore a quella locale, la porta locale passa a uno stato OPEN. Non risponde al vicino con la priorità più alta, ma inoltra la proposta all'altro vicino di REP.

5. L'altro router adiacente di replica confronta la priorità della porta ricevuta con la propria. Se la priorità ricevuta è superiore a quella locale, non risponde e inoltra la proposta. Se la priorità locale è più alta, risponde alla proposta originale con la propria priorità

Questo processo si ripete finché la porta con priorità massima rimane in modalità di blocco. Questa diventa la porta alternativa del segmento. La porta alternativa continua a inviare messaggi BPA contenenti la relativa chiave di porta al segmento REP. Tutte le porte REP nel segmento memorizzano la chiave della porta alternativa.

In un segmento REP stabile, tutte le porte sono in accordo sulla porta alternativa in quanto tutte hanno la stessa copia della chiave della porta alternativa. Tutti gli switch che conservano l'ID della chiave della porta alternativa diventano rilevanti durante gli scenari di errore del collegamento.

Annunci sulla porta finale

I messaggi EPA vengono generati dalle porte edge ogni 4 secondi. Questi messaggi vengono inoltrati da ogni interfaccia REP nel segmento e ogni porta aggiunge le proprie informazioni sulla topologia al messaggio.

Una volta che la porta perimetrale riceve un EPA generato dall'altra porta perimetrale nel segmento, ha una topologia completa dell'intero segmento.

L'EPA consente a ciascuna porta di spigolo di vedersi e facilita la scelta della porta di spigolo principale. La porta del bordo con la priorità più alta diventa la porta del bordo principale.

Notifica errore collegamento REP

Quando un collegamento non riesce in un segmento REP, passa allo stato 'Non riuscito' ed è in corso l'invio di notifiche di errore del collegamento contenenti la chiave memorizzata nella cache della porta alternativa. Lo switch di invio scarica anche gli indirizzi MAC per il collegamento REP ancora attivo.

Lo switch adiacente REP riceve la notifica di errore del collegamento e la inoltra a qualsiasi router adiacente REP sul segmento, oltre a cancellare le voci degli indirizzi MAC per le porte nel segmento REP. Se lo switch che riceve la notifica di errore del collegamento contiene la porta alternativa sul segmento, la porta viene spostata in stato OPEN.

Le notifiche degli errori dei collegamenti vengono distribuite in due modi:

1. REP Fast Notifications tramite invio di messaggi BPA all'indirizzo multicast Cisco 0100.0ccc.ccce

2. Rep Reliable Notifications (notifiche affidabili) tramite invio di messaggi BPA in frame BPDU REP (simili ai frame LSL REP).

Funzionalità

Notifica rapida

Notifica affidabile

Hardware inoltrato

Sì

No

Affidabile

No

Sì tramite la numerazione sequenziale e le ritrasmissioni

Passaggio attraverso una porta alternativa/bloccante

No

Sì

Inoltrato all'esterno del segmento REP

Sì

No

Inviato su VLAN di amministrazione REP

Sì

No (utilizza VLAN nativa)

Le notifiche degli errori di collegamento REP agiscono in modo simile ai TCN STP in quanto vengono puntati alla CPU e attivano lo scaricamento MAC sulle porte REP. Con la configurazione aggiuntiva delle porte REP rivolte verso i segmenti STP, una notifica di errore del collegamento REP può essere convertita in un TCN STP per informare il dominio STP di scaricare i MAC a causa di un errore del collegamento REP.

Bilanciamento del carico VLAN e porta preferita REP

Quando è configurato il bilanciamento del carico VLAN, la porta del perimetro principale della replica è la porta che può avviare il bilanciamento del carico. La porta preferita da REP è la porta che si preferisce diventi la porta alternativa.

La porta edge primaria è rilevante nello scenario di bilanciamento del carico perché il bilanciamento del carico viene avviato dalla porta edge primaria tramite una configurazione aggiuntiva.

Il bilanciamento del carico si ottiene configurando le VLAN che la porta preferita deve bloccare.

- Le VLAN rimanenti vengono bloccate sulla porta del perimetro principale.

- Sono disponibili 2 porte alternative quando il bilanciamento del carico VLAN è configurato e attivo.

Una volta configurato, il bilanciamento del carico non ha effetto fino a quando non viene attivato un errore di collegamento o un'interruzione manuale della priorità dalla porta del perimetro principale.

Configurazione

Esempio di rete

Configurazioni

Tutte le porte devono essere configurate come porte trunk con un ID segmento REP corrispondente. L'opzione di spigolo richiede il parametro di spigolo.

9200-STACK-1#show running-config interface port-channel 1

Building configuration...

Current configuration : 100 bytes

!

interface Port-channel1

switchport mode trunk        <-- Must be a trunk

load-interval 30

rep segment 1 edge           <-- configure edge port in REP segment 1

end

Le porte REP che non sono porte perimetrali non richiedono la parola chiave edge.

9300-STACK-2#show running-config interface port-channel 1

Building configuration...

Current configuration : 69 bytes

!

interface Port-channel1

switchport mode trunk

rep segment 1                <-- non-edge REP port configuration

end

Verifica

Una volta configurate tutte le porte del segmento, il segmento è completo e non devono essere presenti porte guaste.

Confermare la topologia REP.

9200-STACK-1#show rep topology

REP Segment 1

BridgeName                       PortName   Edge Role

-------------------------------- ---------- ---- ----

9200-STACK-1                     Po1        Pri  Open     <-- primary edge port

9300-STACK-1                     Po1             Alt      <-- alternate port that is blocking VLANs

9300-STACK-1                     Po4             Open

9300-STACK-3                     Po4             Open

9300-STACK-3                     Po3             Open     <-- port is OPEN and forwarding all VLANs

9300-STACK-2                     Po3             Open

9300-STACK-2                     Po1             Open

9200-STACK-1                     Po2        Sec  Open     <-- secondary edge port

Confermare lo stato della rappresentazione su un'interfaccia.

9200-STACK-1#show interface port-channel 1 rep                            <-- check REP status for the port

Interface                    Seg-id Type           LinkOp      Role

---------------------------- ------ -------------- ----------- ----

Port-channel1                1      Primary Edge    TWO_WAY     Open      <-- Edge port is not blocking any VLANs

L'output dettagliato fornisce ulteriori informazioni sullo stato REP della porta

9200-STACK-1#show interfaces port-channel1 rep detail

Port-channel1   REP enabled

Segment-id: 1 (Primary Edge)

PortID: 08E978BC1A4FDD80             <-- port ID made from system MAC + random number

Preferred flag: No

Operational Link Status: TWO_WAY

Current Key: 0BE934ED1B4798003405    <-- cached key of the segment Alternate port

Port Role: Open

Blocked VLAN:

Admin-vlan: 1                        <-- REP admin vlan

Preempt Delay Timer: disabled

LSL Ageout Timer: 5000 ms            <-- default link status adjacency hold down timer

LSL Ageout Retries: 5

Configured Load-balancing Block Port: none    <-- no load balancing configured on the port

Configured Load-balancing Block VLAN: none

STCN Propagate to: none                       <-- sending TCNs into STP domain is disabled

LSL PDU rx: 924743, tx: 612406

HFL PDU rx: 1, tx: 1

BPA TLV rx: 611945, tx: 2

BPA (STCN, LSL) TLV rx: 0, tx: 0

BPA (STCN, HFL) TLV rx: 0, tx: 0

EPA-ELECTION TLV rx: 13, tx: 11

EPA-COMMAND TLV rx: 0, tx: 0

EPA-INFO TLV rx: 152998, tx: 152999

Riepilogo dei comandi

show rep topology

show rep topology detail

show rep topology segment <Id>

show rep topology segment <Id> detail

show rep topology archive

show rep topology archive detail

show interfaces gig<X/X> rep

show interfaces gig<X/X> rep detail

Risoluzione dei problemi

Cuneo della coda di input

In alcune versioni del codice, il pacchetto REP HSL può coprire la coda di input di un'interfaccia.

- Questo può influire sulla convergenza REP se i pacchetti HSL riempiono la coda di input e i pacchetti di convergenza LSL non possono essere elaborati

- Causa: ID bug Cisco CSCwc52868

- La coda di input gestisce l'elaborazione di TUTTI i protocolli. Una volta che la coda diventa "piena", il traffico di controllo di rete legittimo viene ridotto e non può essere svuotato manualmente.

Sintomi del cuneo della coda

- Protocolli quali CDP, IGMP e così via smettono di funzionare (è possibile perdere un router adiacente in caso di problemi di programmazione multicast di CDP, IGMP e così via).

- I sintomi variano a seconda delle funzionalità e dei protocolli che arrivano all'interfaccia e che devono essere elaborati.

- La coda di input dell'interfaccia viene utilizzata per i pacchetti che arrivano a un'interfaccia per essere accodati e reindirizzati alla CPU per l'elaborazione

- Una coda di input si blocca quando un determinato pacchetto non può essere rimosso dalla coda e alla fine viene raggiunto il limite della coda di input

- Una volta raggiunto il limite della coda di input dell'interfaccia, non è possibile archiviare altri pacchetti che verranno quindi scartati.

Verifica di un cuneo di coda

I pacchetti di livello dell'hardware REP su una VLAN amministrativa REP causano la rottura della coda di input su una porta L2.

C9300#show interface gi1/0/48

GigabitEthernet1/0/48 is up, line protocol is up (connected)

Hardware is Gigabit Ethernet, address is 7486.0b0c.e0b0 (bia 7486.0b0c.e0b0)

Description: PORT

MTU 1500 bytes, BW 1000000 Kbit/sec, DLY 10 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation ARPA, loopback not set

Keepalive set (10 sec)

Full-duplex, 1000Mb/s, media type is 10/100/1000BaseTX

input flow-control is on, output flow-control is unsupported

ARP type: ARPA, ARP Timeout 04:00:00

Last input 01:14:45, output 00:00:00, output hang never

Last clearing of "show interface" counters never

Input queue: 2438/2000/16/0 (size/max/drops/flushes); Total output drops: 0     <-- 2438 frames in the input queue who's limit is 2000

<...snip...>

Selezionare questa CLI per confermare se un'interfaccia contiene buffer con REP HFL frame

- L'indirizzo MAC di destinazione per i frame HFL è 0100.0ccc.ccce

C9300#show buffers input-interface gi1/0/48 packet

Tracekey : 1#09f7811786f1de5ddfa0f5542a69f593

Buffer information for Middle buffer at 0x7F81FE8E9000

data_area 0x7F820F78F004, refcount 1, next 0x0, flags 0x210

linktype 189 (LINK_REP), enctype 3 (SNAP), encsize 22, rxtype 88

if_input 0x7F820E71DB50 (GigabitEthernet1/0/48), if_output 0x0 (None)

inputtime 3d14h (elapsed 03:11:48.761)

outputtime 00:00:00.000 (elapsed never), oqnumber 65535

datagramstart 0x7F820F78F072, datagramsize 565, maximum size 804

mac_start 0x7F820F78F072, addr_start 0x7F820F78F072, info_start 0x7F820F78F080

network_start 0x7F820F78F088, transport_start 0x0, caller_pc :55FBF3ED3000+37680AC

7F820F78F072: 01000CCC CCCEA0F8 ...LLN x           <--- HFL destination MAC is in the queue

Risolvi cuneo coda

- Riavviare il dispositivo (non è possibile cancellare una coda di input senza ricaricarla). Chiudi/non chiude l'interfaccia (questi buffer non vengono cancellati)

- Eseguire l'aggiornamento a una versione del codice non interessata dal problema

- Regolare le dimensioni della coda di input (nei casi in cui si è certi che non vi saranno più frame HSL in arrivo, è possibile provare ad aumentare le dimensioni della coda di input. Tenete presente che è probabile che il problema si manifesti di nuovo la prossima volta che si verifica un'inondazione HSL).

In questo stato si verificano alcuni syslog REP. Questi log vengono richiamati nella sezione successiva

Nota: tenere presente che si tratta di un registro generico che indica una perdita di LSL tra vicini, che può verificarsi per altri motivi. Quindi è utile identificare questo problema specifico, ma non si limita a questo problema

Messaggi di log REP

Registra messaggio

Definizione

Azioni di ripristino

%REP-4-LINKSTATUS: TenGigabit Ethernet1/1/1 (segmento 1) non è operativo a causa di un router adiacente che non risponde

Indica una perdita di LSL tra vicini

- Le interfacce di conferma non dispongono di una coda di input separata

- Verificare che i collegamenti non contengano CRC e altri errori incrementali

- Verificare che non vi siano CoPP o rilasci nel percorso punt della CPU

%REP-5-EDGEMISCONFIG: topologia non valida. Più di due porte edge configurate per il segmento

visualizzato quando l'annuncio di porta perimetrale ricevuto non corrisponde all'annuncio di porta perimetrale inviato

- Comportamento previsto quando più porte in una topologia vengono ripristinate da uno stato di errore. Questo messaggio può essere visualizzato, ma non dopo la definizione della topologia

- ogni porta guasta nella topologia rep funge da porta edge e invia un annuncio

Informazioni correlate

- Guida alla configurazione di layer 2, Cisco IOS XE Bengaluru 17.6.x (switch Catalyst 9500)

- ID bug Cisco CSCwc52868