Sommario

Introduzione

Premesse

TLV di spaziatura interna

Esempio di TLV di riempimento

Nessuna spaziatura interna Hello

Nessun riempimento Hello sempre

Il problema con l'IS-IS e l'MTU dell'interfaccia

Inondazioni IS-IS

Modifiche all'MTU

Spaziatura interna Hello abilitata

Spaziatura interna Hello disabilitata

Note importanti

Introduzione

Questo documento descrive il comportamento della spaziatura interna dei pacchetti Hello del sistema IS-IS (Integrated Intermediate System-to-Intermediate System) in Cisco IOS®.

Premesse

Per impostazione predefinita, l'IS-IS invia i pacchetti Hello all'MTU (Maximum Transmission Unit) dell'interfaccia completa. Questo per rilevare le mancate corrispondenze MTU. L'MTU su entrambi i lati del collegamento deve corrispondere. La spaziatura interna può essere utilizzata anche per rilevare il valore MTU reale della tecnologia sottostante. Ad esempio, per il trasporto di layer 2 (L2) su scenari MPLS (Multi Protocol Label Switching), l'MTU della tecnologia di trasporto potrebbe essere molto inferiore all'MTU del perimetro. Ad esempio, l'MTU può essere di 9.000 byte sul perimetro della rete, mentre la tecnologia di trasporto MPLS ha una MTU di 1.500 byte.

Se i valori MTU corrispondono su entrambi i lati, la spaziatura interna può essere disabilitata. Di conseguenza, è possibile evitare un utilizzo non necessario della larghezza di banda e dei buffer da parte dei pacchetti IS-IS Hello. Il comando router usato per disabilitare la spaziatura interna Hello non è hello padding [multipoint|point-to-point]. Il comando di interfaccia utilizzato per disabilitare la spaziatura interna Hello è no isis hello padding.

Se la spaziatura interna è disabilitata all'inizio, il router invia comunque i pacchetti Hello con MTU completa. Per evitare questo problema, disabilitare il padding con il comando interface e usare la parola chiave always. In questo caso, tutti i pacchetti IS-IS Hello non vengono riempiti.

Nota: Cisco consiglia di non disabilitare il padding IS-IS Hello per essere certi che due router formino un'adiacenza IS-IS su un collegamento con valori MTU non corrispondenti su entrambi i lati.

TLV di spaziatura interna

I pacchetti IS-IS Hello hanno un valore TLV (Type Length Value) di spaziatura interna. Per un IH Point-to-Point (P2P), il TLV per la spaziatura interna è 8. Per la LAN IH, il TLV per la spaziatura interna è 8.

Esempio di TLV di riempimento

L'esempio riportato nell'immagine seguente viene usato in questa sezione per spiegare l'MTU e la disabilitazione della spaziatura interna Hello nell'IS-IS:

In questo esempio, PE1 e PE2 hanno configurato un circuito virtuale (VC) 100 tra di essi per collegare i router R1 e R2 a L2. Questo VC è un VC Ethernet over MPLS (EoMPLS).

PE1#show xconnect all

Legend:   XC ST=Xconnect State S1=Segment1 State S2=Segment2 State

UP=Up       DN=Down           AD=Admin Down     IA=Inactive

SB=Standby HS=Hot Standby     RV=Recovering     NH=No Hardware

XC ST Segment 1                         S1 Segment 2                         S2

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

UP pri   ac Se2/0(HDLC)                 UP mpls 10.100.1.5:100              UP

PE1#show mpls l2transport vc 100

Local intf     Local circuit             Dest address   VC ID     Status

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

Se2/0         HDLC                      10.100.1.5     100       UP

Ecco l'output del router R1:

interface Serial2/0

ip address 10.1.1.1 255.255.255.0

ip router isis 1

serial restart-delay 0

Di seguito è riportato l'output per il router R2:

interface Serial2/0

ip address 10.1.1.2 255.255.255.0

ip router isis 1

serial restart-delay 0

L'output del comando debug isis adj-packets debug fornisce informazioni sull'adiacenza IS-IS:

R1#debug isis adj-packets

IS-IS Adjacency related packets debugging is on for router process 1

R1#

13:00:59.978: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1499

13:01:07.758: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1499

13:01:16.280: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1499

R2#

13:01:50.100: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1499

13:02:00.062: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1499

13:02:07.899: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1499

In questo scenario, l'adiacenza IS-IS non riesce.

R1#show isis neighbors

Tag 1:

System Id     Type Interface   IP Address     State Holdtime Circuit Id

R1#

R1#show clns interface Serial 2/0

Serial2/0 is up, line protocol is up

Checksums enabled, MTU 1500, Encapsulation HDLC

ERPDUs enabled, min. interval 10 msec.

CLNS fast switching enabled

CLNS SSE switching disabled

DEC compatibility mode OFF for this interface

Next ESH/ISH in 18 seconds

Routing Protocol: IS-IS

Circuit Type: level-1-2

Interface number 0x1, local circuit ID 0x101

Level-1 Metric: 10, Priority: 64, Circuit ID: R1.01

Level-1 IPv6 Metric: 10

Number of active level-1 adjacencies: 0

Next IS-IS Hello in 5 seconds

if state DOWN

L'MTU sulle interfacce seriali per i router R1 e R2 è l'impostazione predefinita di 1.500 byte.

L'adiacenza IS-IS non riesce perché i pacchetti IS-IS Hello hanno dimensioni di 1.499 byte. La rete MPLS consente solo pacchetti da 1.500 byte, meno otto byte (due etichette MPLS per il servizio MPLS), che equivalgono a 1.492 byte (le dimensioni del pacchetto di cui è consentita la trasmissione). Per il trasporto di L2 su MPLS, le dimensioni dell'intestazione L2 devono essere sottratte dai 1.492 byte risultanti.

Nessuna spaziatura interna Hello

In questo scenario, il comando no isis hello padding viene utilizzato sull'interfaccia di Serial2/0 sul router R1:

interface Serial2/0

ip address 10.1.1.1 255.255.255.0

ip router isis 1

serial restart-delay 0

no isis hello padding

R1#

13:03:46.712: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1499

13:03:54.717: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1499

13:04:03.057: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1499

13:04:11.538: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1499

13:04:21.301: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1499

13:04:30.636: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1499

13:04:39.958: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1499

Come mostrato, vengono inviati più di cinque pacchetti IS-IS Hello con dimensioni MTU complete (1.497 byte). Il router continua a inviare i pacchetti Hello con spaziatura interna finché non compare l'adiacenza IS-IS. Tuttavia, a meno che il problema dell'MTU non sia risolto, l'adiacenza non viene visualizzata.

L'MTU viene ridotta a 1.400 byte sull'interfaccia Serial2/0 sul router R1. Pertanto, i pacchetti di dimensioni fino a 1.400 byte possono sicuramente passare attraverso la rete MPLS sullo pseudo filo.

Ecco l'output del router R1:

!

interface Serial2/0

mtu 1400

ip address 10.1.1.1 255.255.255.0

ip router isis 1

serial restart-delay 0

no isis hello padding

R1#

13:07:19.428: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1399

13:07:29.024: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1399

13:07:38.185: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1399

13:07:45.715: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1399

13:07:55.351: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1399

13:08:04.814: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1399

13:08:14.216: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1399

13:08:23.447: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1399

13:08:31.676: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1399

13:08:39.966: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:DOWN, length 1399

Il router R1 continua a trasmettere i pacchetti Hello con spaziatura interna. La dimensione è ora di 1.400 byte meno uno.

Dopo aver abbassato l'MTU sull'interfaccia Serial 2/0 sul router R2, il padding viene disabilitato.

Di seguito è riportato l'output per il router R2:

interface Serial2/0

mtu 1400

ip address 10.1.1.2 255.255.255.0

ip router isis 1

serial restart-delay 0

Quando il router R1 vede arrivare il pacchetto IS-IS Hello dal router R2, richiama l'adiacenza IS-IS. Poiché il router R2 vede anche i pacchetti IS-IS Hello dal router R1, alla fine l'adiacenza IS-IS passa allo stato UP, ossia viene creata una adiacenza a tre vie. A questo punto, il router R1 (con la spaziatura interna Hello disabilitata sull'interfaccia Serial 2/0) riduce al minimo le dimensioni del pacchetto Hello.

R1#

13:08:47.010: ISIS-Adj: Rec serial IIH from *HDLC* (Serial2/0), cir type L1, cir id 01,

length 1399

13:08:47.010: ISIS-Adj: newstate:1, state_changed:1, going_up:0, going_down:0

13:08:47.010: ISIS-Adj: Action = GOING UP, new type = L1

13:08:47.010: ISIS-Adj: New serial adjacency

13:08:47.010: ISIS-Adj: rcvd state INIT, old state DOWN, new state INIT, nbr usable TRUE

13:08:47.011: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:INIT, length 1399

13:08:47.055: ISIS-Adj: Rec serial IIH from *HDLC* (Serial2/0), cir type L1, cir id 01,

length 1399

13:08:47.055: ISIS-Adj: rcvd state UP, old state INIT, new state UP, nbr usable TRUE

13:08:47.056: ISIS-Adj: newstate:0, state_changed:1, going_up:1, going_down:0

13:08:47.056: ISIS-Adj: Action = GOING UP, new type = L1

13:08:47.056: ISIS-Adj: L1 adj count 1

13:08:47.056: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:UP, length 43

Come mostrato, il router R1 invia un pacchetto IS-IS Hello con lunghezza 43 e riceve i pacchetti Hello dal router R2 con lunghezza 1399. Infatti la spaziatura interna Hello è ancora attiva sul router R2.

Nell'esempio, l'adiacenza IS-IS non viene visualizzata se su uno dei lati del collegamento la MTU è ancora impostata su 1.500 byte sull'interfaccia Serial 2/0. Ciò si verifica anche quando il comando no isis hello padding è abilitato. L'interfaccia viene visualizzata solo dopo che l'MTU è stata impostata sul valore corretto su entrambi i lati del collegamento.

Pertanto, se si disattiva solo la spaziatura interna IS-IS Hello, non è sufficiente per visualizzare l'adiacenza IS-IS. L'MTU deve essere sufficientemente bassa in modo che i pacchetti IS-IS Hello delle dimensioni MTU vengano inviati e ricevuti correttamente dai router su entrambi i lati del collegamento.

Nessun riempimento Hello sempre

Con l'MTU impostata su 1.500 byte sull'interfaccia Serial2/0 sul router R1, l'adiacenza non viene visualizzata perché i pacchetti IS-IS Hello trasmessi hanno ancora le dimensioni dell'MTU completa. Per risolvere questo problema, è possibile configurare il comando no isis hello padding always interface sull'interfaccia Serial2/0 in modo da disabilitare sempre la spaziatura interna.

!

interface Serial2/0

ip address 10.1.1.1 255.255.255.0

ip router isis 1

serial restart-delay 0

no isis hello padding always

Non appena questo comando è configurato, i pacchetti IS-IS Hello hanno le dimensioni minime. L'adiacenza IS-IS tra i router R1 e R2 si accende immediatamente.

R1#

13:25:47.284: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:INIT,

length 43, never pad

13:25:47.328: ISIS-Adj: Rec serial IIH from *HDLC* (Serial2/0), cir type L1,

cir id 01, length 1399

13:25:47.328: ISIS-Adj: rcvd state INIT, old state INIT, new state UP,

nbr usable TRUE

13:25:47.328: ISIS-Adj: newstate:0, state_changed:1, going_up:1, going_down:0

13:25:47.328: ISIS-Adj: Action = GOING UP, new type = L1

13:25:47.329: ISIS-Adj: L1 adj count 1

13:25:47.330: ISIS-Adj: Sending serial IIH on Serial2/0, 3way state:UP,

length 43, never pad

13:25:47.374: ISIS-Adj: Rec serial IIH from *HDLC* (Serial2/0), cir type L1,

cir id 01, length 1399

13:25:47.374: ISIS-Adj: rcvd state UP, old state UP, new state UP,

nbr usable TRUE

13:25:47.375: ISIS-Adj: newstate:0, state_changed:0, going_up:0, going_down:0

13:25:47.375: ISIS-Adj: Action = ACCEPT

13:25:47.375: ISIS-Adj: ACTION_ACCEPT:

Il problema con l'IS-IS e l'MTU dell'interfaccia

Se l'MTU dell'interfaccia non corrisponde, l'adiacenza IS-IS non viene visualizzata. Per una correzione rapida, è possibile disattivare la spaziatura interna IS-IS Hello con la parola chiave always. Tuttavia, questa soluzione potrebbe non essere reale.

Ecco l'output del router R1:

interface Serial2/0

ip address 10.1.1.1 255.255.255.0

ip router isis 1

serial restart-delay 0

no isis hello padding always

L'adiacenza IS-IS è attiva.

R1#show isis neighbors

Tag 1:

System Id     Type Interface   IP Address     State Holdtime Circuit Id

R2             L1   Se2/0       10.1.1.2       UP   22       01

Di seguito viene riportato un ping che viene inviato dal router R1 al router R3 per controllare il traffico che attraversa il collegamento:

R1#ping 10.100.1.3 source 10.100.1.1 size 1400 repeat 1

Type escape sequence to abort.

Sending 1, 1400-byte ICMP Echos to 10.100.1.3, timeout is 2 seconds:

Packet sent with a source address of 10.100.1.1

!

Success rate is 100 percent (1/1), round-trip min/avg/max = 44/44/44 ms

R1#ping 10.100.1.3 source 10.100.1.1 size 1500 repeat 1

Type escape sequence to abort.

Sending 1, 1500-byte ICMP Echos to 10.100.1.3, timeout is 2 seconds:

Packet sent with a source address of 10.100.1.1

.

Success rate is 0 percent (0/1)

Come mostrato, i pacchetti con una dimensione di 1.500 byte non possono passare. Infatti, il router R1 ritiene che l'MTU sia 1.500 byte sull'interfaccia Serial2/0:

R1#show interfaces Serial2/0

Serial2/0 is up, line protocol is up

Hardware is M4T

Internet address is 10.1.1.1/24

MTU 1500 bytes, BW 1544 Kbit/sec, DLY 20000 usec,

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

Encapsulation HDLC, crc 16, loopback not set

Keepalive set (10 sec)

Restart-Delay is 0 secs

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

Last clearing of "show interface" counters never

Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0

Queueing strategy: weighted fair

Output queue: 0/1000/64/0 (size/max total/threshold/drops)

Conversations 0/1/256 (active/max active/max total)

Reserved Conversations 0/0 (allocated/max allocated)

Available Bandwidth 1158 kilobits/sec

5 minute input rate 0 bits/sec, 0 packets/sec

5 minute output rate 0 bits/sec, 0 packets/sec

590 packets input, 283131 bytes, 0 no buffer

Received 567 broadcasts (0 IP multicasts)

0 runts, 0 giants, 0 throttles

0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort

693 packets output, 313789 bytes, 0 underruns

0 output errors, 0 collisions, 2 interface resets

0 unknown protocol drops

0 output buffer failures, 0 output buffers swapped out

3 carrier transitions     DCD=up DSR=up DTR=up RTS=up CTS=up

Se l'MTU viene ridotta a 1.400 byte sull'interfaccia Serial2/0, il router R1 può frammentare i pacchetti se sui pacchetti non è impostato il bit "non frammentare" (DF, Do Not Fragment). Se il bit DF è impostato sui pacchetti, il router può inviare un messaggio ICMP 3/4, che viene usato dal rilevamento dell'MTU del percorso. In questo modo, il mittente dei pacchetti può ridurre le dimensioni dei pacchetti inviati. L'impostazione corretta dell'MTU è importante per il traffico che attraversa il router, ma anche per il traffico che proviene dal router e attraversa il collegamento. Un esempio di quest'ultimo è il Border Gateway Protocol (BGP), che usa il protocollo TCP e può usare il rilevamento della MTU del percorso.

Inondazioni IS-IS

Per risolvere il problema di adiacenza IS-IS, l'operatore della rete può disattivare la spaziatura interna Hello con la parola chiave always. L'MTU del collegamento seriale viene lasciata a 1.500 byte.

C'è ancora il problema dell'alluvione dell'IS-IS. Quando il database IS-IS è di piccole dimensioni, non si verifica alcun problema.

R1#debug isis update-packets

IS-IS Update related packet debugging is on for router process 1

Quando il router R3 aggiunge un prefisso e invia questo messaggio, il router R1 riceve il router R3 Link State PDU (LSP) dal router R2.

R1#

*Nov 19 13:53:58.227: ISIS-Upd: Rec L1 LSP 0000.0000.0003.00-00, seq B, ht 1197,

*Nov 19 13:53:58.227: ISIS-Upd: from SNPA *HDLC* (Serial2/0)

*Nov 19 13:53:58.227: ISIS-Upd: LSP newer than database copy

*Nov 19 13:53:58.227: ISIS-Upd: TLV contents different, code 130

*Nov 19 13:53:58.228: ISIS-Upd: TID 0 leaf routes changed

Quando il numero di prefissi annunciati dal router R3 aumenta, l'LSP del router R3 è così grande da essere suddiviso in diversi frammenti:

R3#show isis database

Tag 1:

IS-IS Level-1 Link State Database:

LSPID               LSP Seq Num LSP Checksum LSP Holdtime     ATT/P/OL

R1.00-00             0x0000000C   0x5931       1137             0/0/0

R2.00-00             0x0000000B   0xCB7D       1162             0/0/0

R3.00-00           * 0x0000000D   0xF637       1104             0/0/0

R3.00-01           * 0x00000001   0x6AD8       1104             0/0/0

R3.00-02           * 0x00000001   0xB58A       1104             0/0/0

R3.01-00           * 0x00000002   0x9BB1       387              0/0/0

Tag null:

R3.00-00 è il primo frammento, R3.00-01 il secondo frammento e così via.

R2#

14:22:15.584: ISIS-Upd: Retransmitting L1 LSP 0000.0000.0003.00-00 on Serial2/0

14:22:15.624: ISIS-Upd: Sending L1 LSP 0000.0000.0003.00-00, seq E, ht 467 on

Serial2/0

14:22:18.352: ISIS-Snp: Rec L1 CSNP from 0000.0000.0003 (Ethernet1/0)

14:22:20.625: ISIS-Upd: Retransmitting L1 LSP 0000.0000.0003.00-00 on Serial2/0

14:22:20.657: ISIS-Upd: Sending L1 LSP 0000.0000.0003.00-00, seq E, ht 462 on

Serial2/0

Questo è l'LSP che viene ritrasmesso dal router R2 sull'interfaccia Serial2/0. La lunghezza della PDU è di 1.490 byte, quindi le dimensioni del pacchetto non consentono di raggiungere il router R1.

Mentre l'adiacenza IS-IS tra i router R1 e R2 è attiva, il router R1 ha meno prefissi IP nella sua tabella di routing:

R1#show isis neighbors

Tag 1:

System Id     Type Interface   IP Address     State Holdtime Circuit Id

R2             L1   Se2/0       10.1.1.2       UP   25       01

R2#show isis neighbors

Tag 1:

System Id     Type Interface   IP Address     State Holdtime Circuit Id

R1             L1   Se2/0       10.1.1.1       UP   26       01

R3             L1   Et1/0       10.1.2.3       UP   8        R3.01

R2#show ip route summary

IP routing table name is default (0x0)

IP routing table maximum-paths is 32

Route Source   Networks   Subnets     Replicates Overhead   Memory (bytes)

connected       0           5           0           360         900

static          0           0           0           0           0

application     0           0           0           0           0

isis 1          0           252         0           18144       45360

Level 1: 252 Level 2: 0 Inter-area: 0

internal        1                                               10620

Total           1           257         0           18504       56880

R1#show ip route summary

IP routing table name is default (0x0)

IP routing table maximum-paths is 32

Route Source   Networks   Subnets     Replicates Overhead   Memory (bytes)

connected        0           3           0           216         540

static           0           0           0           0           0

application      0           0           0           0           0

isis 1           0           2           0           144         360

Level 1: 2 Level 2: 0 Inter-area: 0

internal          1                                              560

Total           1           5           0           360         1460

Infatti l'LSP R3.00-00 inviato dal router R3 non raggiunge il router R1.

R3#show isis database

Tag 1:

IS-IS Level-1 Link State Database:

LSPID                 LSP Seq Num LSP Checksum LSP Holdtime     ATT/P/OL

R1.00-00             0x0000000E   0x5533       1009              0/0/0

R2.00-00             0x0000000C   0xC97E       453               0/0/0

R3.00-00           * 0x0000000F   0xF239       1045              0/0/0

R3.00-01           * 0x00000003   0x66DA       1098              0/0/0

R3.00-02           * 0x00000003   0xB18C       1060              0/0/0

R3.01-00           * 0x00000004   0x97B3       554               0/0/0

Tag null:

R1#show isis database

Tag 1:

IS-IS Level-1 Link State Database

LSPID                 LSP Seq Num LSP Checksum LSP Holdtime     ATT/P/OL

R1.00-00           * 0x0000000E   0x5533       1008              0/0/0

R2.00-00             0x0000000C   0xC97E       449               0/0/0

R3.00-01             0x00000002   0x68D9       223               0/0/0

R3.00-02             0x00000002   0xB38B       246               0/0/0

R3.01-00             0x00000004   0x97B3       545               0/0/0

Il router R1 non ha il primo frammento dell'LSP L1 (R3.00-00) del router R3. Questo primo frammento è il più grande e contiene il maggior numero di prefissi in questo caso. Per questo motivo, il router R1 non dispone di alcuni prefissi, il che provoca il black-holing del traffico.

Per risolvere il problema, è possibile ridurre l'MTU dell'LSP tramite il comando lsp-mtu <128-4352>router IS-IS. Se si configura questo comando solo sul router R2, il router R2 non modifica in alcun modo gli LSP ricevuti dal router R3. Ciò significa che se il router R2 riceve un LSP di 1.490 byte, il router R2 non lo frammenta. Se si configura il comando lsp-mtu 1400 sul router R3, il router R3 crea LSP più piccoli, sufficientemente piccoli per attraversare il collegamento tra i router R2 e R1.

La lunghezza della PDU è ora di 1.394 byte se si configura il comando lsp-mtu 1400 sul router R3:

In conclusione, se si ha un collegamento con MTU inferiore e si usa il comando no isis hello padding always, si possono verificare inondazioni del traffico e black-holing. Per risolvere il problema di flooding, è possibile ridurre le dimensioni massime degli LSP, ma è necessario configurare anche il comando lsp-mtu router IS-IS su ogni router IS-IS.

Modifiche all'MTU

In questa sezione vengono descritti gli effetti delle modifiche apportate all'MTU sottostante.

Spaziatura interna Hello abilitata

In questo scenario, la rete funziona correttamente dall'inizio. L'MTU è impostata su 1.400 byte sull'interfaccia Serial2/0 sui router R1 e R2. Il padding IS-IS Hello è abilitato, ossia il comportamento predefinito.

Ecco l'output del router R1:

interface Serial2/0

mtu 1400

ip address 10.1.1.1 255.255.255.0

ip router isis 1

serial restart-delay 0

Di seguito è riportato l'output per il router R2:

interface Serial2/0

mtu 1400

ip address 10.1.1.2 255.255.255.0

ip router isis 1

serial restart-delay 0

R1#show isis neighbors

Tag 1:

System Id     Type Interface   IP Address     State Holdtime Circuit Id

R2             L1   Se2/0       10.1.1.2       UP   23       01

R2#show isis neighbors

Tag 1:

System Id     Type Interface   IP Address     State Holdtime Circuit Id

R1             L1   Se2/0       10.1.1.1       UP   27       01

0000.0000.0003 L1   Et1/0       10.1.2.3       UP   7       0000.0000.0003.01

L'adiacenza IS-IS su tutta la serie è attiva e l'allagamento IS-IS è a posto.

In un determinato momento, si verifica un problema nella rete del provider di servizi MPLS che causa una riduzione dell'MTU end-to-end tra PE1 e PE2 al di sotto di 1.400 byte.

Poiché la spaziatura interna Hello è abilitata (comportamento predefinito), l'adiacenza IS-IS si interrompe rapidamente sull'interfaccia Serial2/0. Ciò indica la presenza di un problema nel cloud MPLS. Poiché l'adiacenza IS-IS si interrompe, il routing non punta più a questo cloud MPLS e il traffico non è bloccato.

Spaziatura interna Hello disabilitata

In questo scenario, la rete funziona correttamente dall'inizio. L'MTU è impostata su 1.400 byte sull'interfaccia Serial2/0 sui router R1 e R2. Il riempimento IS-IS Hello è disabilitato.

Ecco l'output del router R1:

!

interface Serial2/0

mtu 1400

ip address 10.1.1.1 255.255.255.0

ip router isis 1

serial restart-delay 0

no isis hello padding

Di seguito è riportato l'output per il router R2:

!

interface Serial2/0

mtu 1400

ip address 10.1.1.2 255.255.255.0

ip router isis 1

serial restart-delay 0

no isis hello padding

L'adiacenza IS-IS su tutta la serie è attiva e l'allagamento IS-IS è a posto.

Questo è il database del router R1:

R1#show isis database

Tag 1:

IS-IS Level-1 Link State Database:

LSPID                 LSP Seq Num LSP Checksum LSP Holdtime     ATT/P/OL

R1.00-00           * 0x0000001D   0x3742       1148              0/0/0

R2.00-00             0x0000001D   0xA78F       1161              0/0/0

R3.00-00             0x00000016   0xAFE4       454               0/0/0

R3.00-01             0x0000000B   0x0A0B       393               0/0/0

R3.00-02             0x0000000B   0xC2A5       451               0/0/0

R3.01-00             0x00000009   0x8DB8       435               0/0/0

In un determinato momento, si verifica un problema nella rete del provider di servizi MPLS che causa una riduzione dell'MTU end-to-end tra PE1 e PE2 al di sotto di 1.400 byte.

L'IS-IS non viene influenzato immediatamente, ma il traffico IP potrebbe esserlo. Se il traffico ha dimensioni di 1.400 byte, i pacchetti vengono scartati nella rete MPLS.

Se la rete è stabile, non si verificano inondazioni per un lungo periodo di tempo. Questo valore rimane invariato per tutto il tempo di aggiornamento dell'LSP. Una volta che è il momento di aggiornare gli LSP, il flooding viene interrotto attraverso la rete MPLS.

R2#

15:27:07.848: ISIS-Upd: Retransmitting L1 LSP 0000.0000.0003.00-01 on Serial2/0

15:27:07.880: ISIS-Upd: Sending L1 LSP 0000.0000.0003.00-01, seq C, ht 1147 on

Serial2/0

15:27:12.883: ISIS-Upd: Retransmitting L1 LSP 0000.0000.0003.00-01 on Serial2/0

15:27:12.924: ISIS-Upd: Sending L1 LSP 0000.0000.0003.00-01, seq C, ht 1142 on

Serial2/0

Questo è il database IS-IS del router R1 dopo che il problema si è verificato nella rete MPLS:

R1#show isis database

Tag 1:

IS-IS Level-1 Link State Database:

LSPID                 LSP Seq Num LSP Checksum LSP Holdtime     ATT/P/OL

R1.00-00           * 0x0000001D   0x3742       725               0/0/0

R2.00-00             0x0000001D   0xA78F       737               0/0/0

R3.00-00             0x00000016   0xAFE4       30                0/0/0

R3.00-01             0x0000000B   0xCE1F       0 (30)            0/0/0

R3.00-02             0x0000000C   0xC0A6       895               0/0/0

R3.01-00             0x0000000A   0x8BB9       906               0/0/0

Questo è il database dopo la scadenza del tempo di attesa per alcuni frammenti LSP dal router R3:

R1#show isis database

Tag 1:

IS-IS Level-1 Link State Database:

LSPID                LSP Seq Num LSP Checksum LSP Holdtime     ATT/P/OL

R1.00-00           * 0x0000001D   0x3742       605               0/0/0

R2.00-00             0x0000001D   0xA78F       618               0/0/0

R3.00-02             0x0000000C   0xC0A6       775               0/0/0

R3.01-00             0x0000000A   0x8BB9       787               0/0/0

I frammenti R3.00-00 e R3.00-01 non vengono più visualizzati sul router R1 e i percorsi dal router R3 non si trovano più sul router R1:

R1#show ip route summary

IP routing table name is default (0x0)

IP routing table maximum-paths is 32

Route Source   Networks   Subnets     Replicates Overhead   Memory (bytes)

connected       0           3           0           216         540

static          0           0           0           0           0

application     0           0           0           0           0

isis 1          0           2           0           144         360

Level 1: 2 Level 2: 0 Inter-area: 0

internal        1                                               560

Total           1           5           0           360         1460

Come mostrato, alcuni frammenti LSP del router R3 sono scaduti e non vengono visualizzati. In questo modo, alcune route non vengono visualizzate nella tabella di routing.

Se si disattiva la spaziatura interna Hello, potrebbe essere nascosto un problema futuro nella rete. Quando l'MTU sottostante viene modificata, può causare un problema di routing molto più difficile da risolvere perché è necessario esaminare la tabella di routing e il database IS-IS su più router per individuare il problema. Con la spaziatura interna Hello attivata, il fatto che l'adiacenza IS-IS non sia attiva rende molto più semplice determinare la posizione del problema.

Note importanti

La soluzione migliore è impostare l'MTU sul valore corretto sui collegamenti e assicurarsi che sia uguale su entrambi i lati dei collegamenti. Ciò garantisce che il flooding IS-IS funzioni correttamente e che il router sia in grado di eseguire correttamente la frammentazione o di comportarsi correttamente quando aiuta il rilevamento dell'MTU del percorso.

Il problema dell'allagamento dell'IS-IS potrebbe diventare ovvio solo quando i provider di servizi di traduzione diventano più grandi (quando la rete cresce). Quando la spaziatura interna IS-IS Hello è disattivata, viene corretto il problema in cui le adiacenze IS-IS non vengono visualizzate. Tuttavia, il problema dell'inondazione, del traffico di black-holing e forse del rilevamento dell'MTU del percorso interrotto, può potenzialmente sorgere molto più tardi rispetto al momento in cui la spaziatura interna IS-IS Hello viene disabilitata. Questo rende la risoluzione del problema molto più difficile e richiede molto più tempo.