Sommario

Introduzione

Esempio di rete

Percorso migliore

Tipi di versioni tabella

Numero versione tabella iniziale

Condizioni per una modifica della versione della tabella BGP

Utilizzo della versione della tabella

Utilizzo per la risoluzione dei problemi

Introduzione

Questo documento descrive la Table Version, un numero usato dal Border Gateway Protocol (BGP) per tenere traccia delle modifiche al miglior percorso dei prefissi BGP propagati ai peer BGP. È un numero utilizzato dal software BGP. Per visualizzare il numero di versione della tabella, immettere i comandi show, che consentono all'amministratore di rete di risolvere i problemi.

Esempio di rete

Questo è il diagramma di rete utilizzato per questo articolo:

Percorso migliore

Un prefisso BGP ha uno o più percorsi, perché il prefisso BGP viene appreso da peer e origini BGP diverse.

Di seguito è riportato un esempio di prefisso BGP con più percorsi. Ci sono due percorsi, e il miglior percorso è il secondo.

R1#show bgp ipv4 unicast 10.100.1.1

BGP routing table entry for 10.100.1.1/32, version 2

Paths: (2 available, best #2, table default)

Advertised to update-groups:

1

Refresh Epoch 1

5 4

10.1.5.5 from 10.1.5.5 (10.1.5.5)

Origin IGP, localpref 100, valid, external

rx pathid: 0, tx pathid: 0

Refresh Epoch 1

4

10.1.3.4 from 10.1.3.4 (10.100.1.1)

Origin IGP, metric 0, localpref 100, valid, external, best

rx pathid: 0, tx pathid: 0x0

Solo un percorso viene scelto come miglior percorso BGP in base all'algoritmo per il miglior percorso BGP. Questo è sempre il caso. Per ulteriori informazioni, fare riferimento all'articolo BGP Best Path Selection Algorithm.

Il percorso può essere appreso da un peer BGP o da un'origine, ad esempio dalla ridistribuzione da un protocollo di routing a BGP. In caso di modifica del percorso migliore, il BGP deve informare il peer inviando un aggiornamento o un ritiro. Il ritiro viene inviato quando viene rimosso l'ultimo percorso del prefisso BGP.

Di seguito è riportato un esempio in cui il prefisso ha origine localmente con il comando network:

R4#show bgp ipv4 unicast 10.100.1.1

BGP routing table entry for 10.100.1.1/32, version 4

Paths: (1 available, best #1, table default)

Advertised to update-groups:

1

Refresh Epoch 1

Local

0.0.0.0 from 0.0.0.0 (10.1.3.4)

Origin IGP, metric 0, localpref 100, weight 32768, valid, sourced, local, best

rx pathid: 0, tx pathid: 0x0

L'output mostra IGP origine.

Di seguito è riportato un esempio in cui il prefisso viene originato localmente dal comando redistribution connected:

R4#show bgp ipv4 unicast 10.100.1.1

BGP routing table entry for 10.100.1.1/32, version 7

Paths: (1 available, best #1, table default)

Flag: 0x820

Not advertised to any peer

Refresh Epoch 1

Local

0.0.0.0 from 0.0.0.0 (10.1.3.4)

Origin incomplete, metric 0, localpref 100, weight 32768, valid, sourced, best

rx pathid: 0, tx pathid: 0x0

L'output mostra Origine incompleta.

Tipi di versioni tabella

Il numero di versione della tabella è un valore a 32 bit e sono disponibili quattro tipi di versioni della tabella:

- Versione tabella BGP

- Versione tabella RIB

- Versione tabella peer

- Versione tabella prefisso

Per ulteriori informazioni, vedere la sezione Utilizzo della versione della tabella.

Numero versione tabella iniziale

Quando BGP non ha ancora ricevuto informazioni sui prefissi, la versione della tabella globale, la versione della tabella RIB e la versione della tabella peer sono 1, che è il punto di partenza per il numero di versione della tabella.

Il comando BGP con la parola chiave summary restituisce tre numeri di versione della tabella. La parola chiave summary può essere fornita per tutte le famiglie di indirizzi in BGP.

R1#show bgp ipv4 unicast summary

BGP router identifier 10.1.3.1, local AS number 1

BGP table version is 1, main routing table version 1

Neighbor     V       AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd

10.1.1.2     4        2       4       4        1    0    0 00:01:15        0

10.1.2.3     4        3       4       4        1    0    0 00:01:06        0

10.1.3.4     4        4       4       4        1    0    0 00:01:33        0

Per visualizzare la versione della tabella dei prefissi, esaminare un prefisso nella tabella BGP.

R1#show bgp ipv4 unicast 10.100.1.1/32

BGP routing table entry for 10.100.1.1/32, version 2

Paths: (1 available, best #1, table default)

Advertised to update-groups:

1

Refresh Epoch 1

4

10.1.3.4 from 10.1.3.4 (10.1.3.4)

Origin IGP, metric 0, localpref 100, valid, external, best

rx pathid: 0, tx pathid: 0x0

Per visualizzare la versione della tabella, usare il comando show ip bgp internal:

R1#show ip bgp internal

Time left for bestpath timer: 964 secs

Consistency-checker not enabled

Update generation pool version 8, messages 0, in pool 0, below 00:00:24.432.

Enhanced Refresh EOR Stalepath-time disabled

Enhanced Refresh max-eor-time disabled

Total number of BGP Accepter process: 50, Spawned count: 0

Total number of neighbors: 4

Total number of sessions : 4

Established            : 4

OpenConfirm            : 0

OpenSent               : 0

Active                 : 0

Connect                : 0

Idle                   : 0

Closing                : 0

Uninitialized          : 0

Address-family IPv4 Unicast, Mode : RW

Table Versions : Current 39 Init 2 RIB 39

Start time : 00:00:18.919    Time elapsed 22:15:38.198

First Peer up in : 00:00:06.830    Exited Read-Only in : 00:01:07.966

Done with Install in : 00:01:07.967    Last Update-done in : 00:01:07.969

0 updates expanded

L3VPN Tunnel Encapsulated Paths : 0

Slow-peer detection is disabled     BGP Nexthop scan:-

penalty: 0, Time since last run: 21:19:42.174,  Next due in: none

Max runtime : 0 ms Latest runtime : 0 ms Scan count: 2

BGP General Scan:-

Max runtime : 1 ms Latest runtime : 0 ms Scan count: 0

BGP future scanner version: 1333

BGP scanner version: 0

Address-family IPv4 Multicast, Mode : RW

Table Versions : Current 1 Init 1 RIB 1

Start time : 00:00:18.919    Time elapsed 22:15:38.199

First Peer up in : never    Exited Read-Only in : 00:00:10.286

Done with Install in : 00:00:10.286    Last Update-done in : never

0 updates expanded

L3VPN Tunnel Encapsulated Paths : 0

Slow-peer detection is disabled     BGP Nexthop scan:-

penalty: 0, Time since last run: never,  Next due in: none

Max runtime : 0 ms Latest runtime : 0 ms Scan count: 0

BGP General Scan:-

Max runtime : 1 ms Latest runtime : 0 ms Scan count: 0

BGP future scanner version: 1334

BGP scanner version: 0

Address-family MVPNv4 Unicast, Mode : RW

Table Versions : Current 1 Init 1 RIB 1

Start time : 00:00:18.919    Time elapsed 22:15:38.200

First Peer up in : never    Exited Read-Only in : 00:00:10.286

Done with Install in : 00:00:10.286    Last Update-done in : never

0 updates expanded

L3VPN Tunnel Encapsulated Paths : 0

Slow-peer detection is disabled     BGP Nexthop scan:-

penalty: 0, Time since last run: never,  Next due in: none

Max runtime : 0 ms Latest runtime : 0 ms Scan count: 0

BGP General Scan:-

Max runtime : 1 ms Latest runtime : 0 ms Scan count: 0

BGP future scanner version: 1334

TX VPN optimization enabled.

Condizioni per una modifica della versione della tabella BGP

Affinché il numero di versione della tabella BGP venga modificato, è necessario che venga modificato il percorso migliore e che la modifica venga propagata al RIB. Una modifica al RIB per un prefisso BGP si verifica solo se il prefisso si trova nel RIB come prefisso BGP. Se un altro protocollo di routing inserisce il prefisso nel routing, il prefisso BGP viene contrassegnato come errore RIB. In questo caso, anche se cambia il miglior percorso, la versione della tabella non cambia.

Di seguito è riportato un esempio in cui la versione della tabella BGP non cambia. Il prefisso BGP 10.100.1.1/32 appreso da R4 viene appreso anche da una route statica configurata su R1. Pertanto, R1 installa la route statica nella RIB e BGP su R1 contrassegna il prefisso come errore RIB, perché non è BGP che installa il prefisso nella RIB. Qualsiasi modifica apportata ai percorsi BGP per questo prefisso non viene propagata al RIB. Quindi, anche se c'è un miglior cambiamento di percorso, la versione della tabella BGP non è disturbata, perché non c'è alcun aggiornamento alla RIB.

R1#show bgp ipv4 unicast 10.100.1.1/32

BGP routing table entry for 10.100.1.1/32, version 8

Paths: (2 available, best #1, table default, RIB-failure(17))

Advertised to update-groups:

2

Refresh Epoch 2

4

10.1.3.4 from 10.1.3.4 (10.100.1.1)

Origin IGP, metric 0, localpref 100, valid, external, best

rx pathid: 0, tx pathid: 0x0

Refresh Epoch 2

5 4

10.1.5.5 from 10.1.5.5 (10.1.5.5)

Origin IGP, localpref 100, valid, external

rx pathid: 0, tx pathid: 0

R1#show ip route 10.100.1.1

Routing entry for 10.100.1.1/32

Known via "static", distance 1, metric 0 (connected)

Routing Descriptor Blocks:

* directly connected, via Loopback0

Route metric is 0, traffic share count is 1

Utilizzo della versione della tabella

Quando il miglior percorso cambia i prefissi BGP, devono verificarsi alcuni eventi:

- La RIB deve essere notificata.

- I peer BGP devono essere informati.

- Il router deve tenere traccia del peer BGP informato delle migliori modifiche al percorso.

Versione tabella BGP è il numero principale utilizzato. Questo numero è uguale alla versione più alta della tabella dei prefissi di qualsiasi prefisso BGP per una famiglia di indirizzi specifica. Si supponga che la tabella BGP contenga cinque prefissi, con la tabella dei prefissi versioni 3, 6, 8, 10 e 18. La versione della tabella BGP sarà quindi 18.

La versione della tabella peer viene utilizzata per tenere traccia dei peer che devono essere informati dei prefissi per i quali sono state apportate modifiche nel percorso migliore. La versione della tabella peer di ogni peer viene confrontata con la versione della tabella dei prefissi. Se la versione della tabella dei prefissi di un prefisso è inferiore alla versione della tabella peer, BGP deve inviare un aggiornamento per tale prefisso a tale peer BGP. Ad esempio, se il peer 10.1.1.2 ha una versione di tabella peer 60, il peer è aggiornato per tutti i prefissi con versione di tabella prefisso 60 e inferiore. Il router deve inviare un aggiornamento BGP per tutti i prefissi con una versione della tabella dei prefissi superiore a 60.

Una volta che il router aggiorna il peer BGP per ottenere il miglior prefisso di percorso modificato, il router aggiorna la versione della tabella peer per questo peer. Il valore di Versione tabella peer viene modificato in modo che corrisponda al valore della versione più alta della tabella prefissi di tutti i prefissi per cui è stato aggiornato il peer BGP. Si supponga che la versione della tabella peer sia 60 e che esistano due prefissi con le versioni della tabella dei prefissi 61 e 62. Dopo che il router ha inviato i nuovi percorsi migliori per questi due prefissi al peer BGP, la versione della tabella peer viene aggiornata a 62.

Versione tabella prefissi è il numero di versione della tabella associato al prefisso BGP. Viene modificato quando cambia il miglior percorso per quel prefisso. Ogni volta che il miglior percorso cambia per un prefisso BGP, la relativa versione della tabella dei prefissi viene modificata in modo che sia uguale al successivo numero di versione disponibile. Si supponga che il prefisso 10.0.0.0/8 abbia la versione 27 della tabella dei prefissi e che la versione della tabella BGP sia 30. In questo caso, quando il miglior percorso cambia per il prefisso 10.0.0.0/8, la versione della tabella dei prefissi viene spostata a 31.

La versione della tabella RIB viene utilizzata per tenere traccia della necessità di aggiornare la tabella RIB dopo la modifica del miglior percorso BGP. Il RIB deve essere informato dei prefissi BGP che hanno una versione della tabella dei prefissi superiore alla versione della tabella del RIB. Per questi prefissi è disponibile un evento RIB ADD, DELETE o MODIFY.

Utilizzo per la risoluzione dei problemi

Per sapere quando il BGP ha raggiunto la convergenza, immettere il comando show bgp summary. Se la versione della tabella BGP peer è uguale alla versione della tabella BGP, il peer ha eseguito la convergenza. Se la versione della tabella di routing principale è uguale alla versione della tabella BGP, il RIB è convergente.

R1#show bgp ipv4 unicast summary

BGP router identifier 10.1.3.1, local AS number 1

BGP table version is 2, main routing table version 2

1 network entries using 144 bytes of memory

1 path entries using 80 bytes of memory

1/1 BGP path/bestpath attribute entries using 144 bytes of memory

1 BGP AS-PATH entries using 24 bytes of memory

0 BGP route-map cache entries using 0 bytes of memory

0 BGP filter-list cache entries using 0 bytes of memory

BGP using 392 total bytes of memory

BGP activity 1/0 prefixes, 1/0 paths, scan interval 60 secs

Neighbor     V       AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd

10.1.1.2     4        2      69      69        2    0    0 01:00:54        0

10.1.2.3     4        3      69      70        2    0    0 01:00:45        0

10.1.3.4     4        4      72      70        2    0    0 01:01:12        1

Le versioni delle tabelle BGP possono essere soggette a numerose modifiche, il che non sempre indica che si è verificato un problema.

Si supponga che il router sia connesso a Internet e che disponga della tabella di routing Internet completa. In genere, nella tabella BGP Internet sono presenti alcune modifiche al secondo. Quindi, il router deve ricalcolare il percorso migliore per alcuni prefissi e aggiornare il proprio RIB e i relativi peer BGP. Si tratta di un comportamento normale.

Se si cancella un peer BGP (la sessione viene reimpostata), il router deve annunciare la tabella BGP completa a quel peer. È previsto che il peer disponga di una versione tabella crescente. La versione della tabella aumenta quando il peer riceve nuovamente i prefissi BGP. Il peer BGP di invio non aumenta la versione della tabella per i prefissi BGP.

Ecco un esempio. La versione della tabella inizia con 28.

R1#show bgp ipv4 unicast summary

BGP router identifier 10.1.3.1, local AS number 1

BGP table version is 28, main routing table version 281

network entries using 144 bytes of memory2 path entries using 160 bytes of memory

2/1 BGP path/bestpath attribute entries using 288 bytes of memory

2 BGP AS-PATH entries using 48 bytes of memory

0 BGP route-map cache entries using 0 bytes of memory

0 BGP filter-list cache entries using 0 bytes of memory

BGP using 640 total bytes of memory

BGP activity 1/0 prefixes, 16/14 paths, scan interval 60 secs

Neighbor     V       AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd

10.1.1.2     4       2     117     125       28    0    0 01:43:50        0

10.1.2.3     4       3     117     125       28    0    0 01:43:53        0

10.1.3.4     4       4      10      12       28    0    0 00:04:22        1

10.1.5.5     4       5      55      63       28    0    0 00:45:45        1

R1#show bgp ipv4 unicast 10.100.1.1/32

BGP routing table entry for 10.100.1.1/32, version 28

Paths: (2 available, best #1, table default)

Advertised to update-groups:

1

Refresh Epoch 2

4

10.1.3.4 from 10.1.3.4 (10.100.1.1)   <<< path from R4

Origin IGP, metric 0, localpref 100, valid, external, best

rx pathid: 0, tx pathid: 0x0

Refresh Epoch 2

5 4

10.1.5.5 from 10.1.5.5 (10.1.5.5)   <<< path from R5

Origin IGP, localpref 100, valid, external

rx pathid: 0, tx pathid: 0

Eseguire una verifica approfondita per la sessione BGP verso R1 sul peer 10.1.3.4 (R4). Il peer annuncia solo un prefisso 10.100.1.1/32 verso R1. 10.100.1.1/32 viene appreso da R4 e R5. Il miglior percorso è il percorso da R4.

Verificare che il comando debug ip bgp internal sia abilitato per verificare cosa succede alle versioni della tabella BGP. Per verificare cosa succede alla ricezione dell'aggiornamento, è necessario abilitare il comando debug ip bgp updates.

R1#debug ip bgp updates

BGP updates debugging is on for address family: IPv4 Unicast

R1#debug ip bgp internal

BGP internal debugging is on

R1#show debugging

IP routing:

BGP internal debugging is on

BGP updates debugging is on for address family: IPv4 Unicast

R1#

%BGP-5-NBR_RESET: Neighbor 10.1.3.4 reset (Peer closed the session)   <<< BGP

session to R4 goes down

BGP: TX IPv4 Unicast Net global 10.100.1.1/32 Changed.

BGP: TX IPv4 Unicast Net global 10.100.1.1/32 RIB done.

BGP: TX IPv4 Unicast Net global 10.100.1.1/32 Changed.

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Resetting counters.

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Ignoring dummy policy change.

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Resetting counters.

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Ignoring dummy policy change.

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Changing state from ACTIVE to DOWN

(session not established).

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Removing from group (3 members left).

%BGP-5-ADJCHANGE: neighbor 10.1.3.4 Down Peer closed the session

%BGP_SESSION-5-ADJCHANGE: neighbor 10.1.3.4 IPv4 Unicast topology base removed

from session  Peer

closed the session

BGP: TX IPv4 Unicast Mem global 10.1.3.4 State is DOWN (session not established).

BGP: net global:IPv4 Unicast:base 10.100.1.1/32 RIB-INSTALL Attempting to

install.   <<< RIB gets informed

BGP: net global:IPv4 Unicast:base 10.100.1.1/32 RIB-INSTALL Built route type:

1024, flags: 200000, tag: 5,

metric: 0 path: 1.

BGP: net global:IPv4 Unicast:base 10.100.1.1/32 RIB-INSTALL Path 1, type: DEF,

gw: 10.1.5.5, idb: N/A,

topo_id: 0, src: 1.1.5.5, lbl: 1048577, flags: 0.

BGP: net global:IPv4 Unicast:base 10.100.1.1/32 RIB-INSTALL Installing 1 paths,

multipath limit 1 (from 1).

BGP(0): Revise route installing 1 of 1 routes for 10.100.1.1/32 -> 10.1.5.5

(global) to main IP table   <<< The remaining path through R5 gets installed

in the RIB

BGP: net global:IPv4 Unicast:base 10.100.1.1/32 RIB-INSTALL Install successful.

BGP: TX IPv4 Unicast Net global 10.100.1.1/32 RIB done.

BGP: TX IPv4 Unicast Net global 10.100.1.1/32 RIB done.

BGP: TX IPv4 Unicast Tab RIB walk done version 29, added 1 topologies.

BGP: TX IPv4 Unicast Tab Executing.

BGP: TX IPv4 Unicast Wkr global 1 Cur Processing.

BGP: TX IPv4 Unicast Top global Appending nets from attr 0x9362CB4.

BGP: TX IPv4 Unicast Wkr global 1 Cur Attr change from 0x0 to 0x9362CB4.

BGP(0): (base) 10.1.1.2 send UPDATE (format) 10.100.1.1/32, next 10.1.1.1,

metric 0, path 5 4   <<< R1 sends update for 10.100.1.1/32 for Table Version 29.

(bestpath is still the one from R5, i.e. the only one R1 has at this moment)

BGP: TX IPv4 Unicast Wkr global 1 Cur Net 10.100.1.1/32 (Pxt 0x9F58FA0:0x0)

Formatted.

BGP: TX IPv4 Unicast Top global No attributes with modified nets.

BGP: TX IPv4 Unicast Top global Added tail marker with version 29.

BGP: TX IPv4 Unicast Wkr global 1 Cur Reached marker with version 29.

BGP: TX IPv4 Unicast Top global No attributes with modified nets.

BGP: TX IPv4 Unicast Wkr global 1 Cur Replicating.

BGP: TX IPv4 Unicast Wkr global 1 Cur Done (end of list), processed 1 attr(s),

1/1 net(s), 0 pos.

BGP: TX IPv4 Unicast Grp global 1 Checking EORs again (3/3).

BGP: TX IPv4 Unicast Grp global 1 Start minimum advertisement timer (30 secs).

BGP: TX IPv4 Unicast Wkr global 1 Cur Blocked (minimum advertisement interval).

BGP: TX IPv4 Unicast Wkr global 1 Cur Reached end of list.

BGP: TX IPv4 Unicast Grp global 1 Converged.

BGP: TX IPv4 Unicast Tab Processed 1 walker(s).

BGP: TX IPv4 Unicast Tab Generation completed.

BGP: TX IPv4 Unicast Top global Deleting first marker with version 28.

BGP: TX IPv4 Unicast Top global Collection reached marker 28 after 0 path

extension(s).

BGP: TX IPv4 Unicast Top global Collection done on marker 29 after 1 path

extension(s).

BGP: TX IPv4 Unicast Top global Collection done on marker 29 after 0 path

extension(s).

BGP: TX IPv4 Unicast Mem global 10.1.3.4 Policy change while no group and

member is DOWN.

BGP: TX IPv4 Unicast Mem global 10.1.3.4 Changing state from DOWN to WAIT

(pending advertised bit allocation).

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Added to group (now has

4 members).

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Continuing into ACTIVE state.

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Refresh Start-of-rib for afi 1,

safi 1.

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Full refresh requested.

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Refresh has to wait for pathext

prepend.

%BGP-5-ADJCHANGE: neighbor 10.1.3.4 Up    <<< BGP session to R4 is up again.

But, R1 did not learn the prefix 10.100.1.1/32 yet from R4.

BGP: nbr_topo global 10.1.3.4 IPv4 Unicast:base (0x63D50D0:1) rcvd Refresh

Start-of-RIB

BGP: nbr_topo global 10.1.3.4 IPv4 Unicast:base (0x63D50D0:1) refresh_epoch

is 2

BGP: TX IPv4 Unicast Top global Start pathext prepend.

BGP: TX IPv4 Unicast Tab Pathext prepend full table refresh.

BGP: TX IPv4 Unicast Tab Pathext prepend full table refresh.

BGP: TX IPv4 Unicast Top global Inserting initial marker.

BGP: TX IPv4 Unicast Top global Done pathext prepend (1 attrs).

BGP: TX IPv4 Unicast Grp global 1 Starting refresh after prepend completion.

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Starting refresh (first member,

1, 0, marker).

BGP: TX IPv4 Unicast Wkr global 1 Ref Start at marker 1.

BGP: TX IPv4 Unicast Wkr global 1 Ref Unblocked

BGP: TX IPv4 Unicast Top global Collection done on marker 1 after 0 path

extension(s).

BGP: TX IPv4 Unicast Tab Executing.

BGP: TX IPv4 Unicast Wkr global 1 Ref Processing.

BGP: TX IPv4 Unicast Wkr global 1 Ref Attr change from 0x0 to 0x9362CB4.

BGP(0): (base) 10.1.1.2 send UPDATE (format) 10.100.1.1/32, next 10.1.1.1,

metric 0, path 5 4

BGP: TX IPv4 Unicast Wkr global 1 Ref Net 10.100.1.1/32 (Pxt 0x9F58FA0:0x0)

Formatted.

BGP: TX IPv4 Unicast Wkr global 1 Ref Reached marker with version 29.

BGP: TX IPv4 Unicast Wkr global 1 Ref Replicating (pending member_pos

processing).

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Completed refresh.

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Refresh stop.

BGP: TX IPv4 Unicast Grp global 1 Refresh complete.

BGP: TX IPv4 Unicast Wkr global 1 Ref Stop.

BGP: TX IPv4 Unicast Wkr global 1 Ref Blocked (not in list).

BGP: TX IPv4 Unicast Grp global 1 Converged.

BGP: TX IPv4 Unicast Mem global 1 1 10.1.3.4 Send EOR.

BGP: TX IPv4 Unicast Wkr global 1 Ref Suspending / blocked (member marker),

processed 1 attr(s), 1/1 net(s),

1 pos.

BGP: TX IPv4 Unicast Tab Processed 1 walker(s).

BGP: TX IPv4 Unicast Tab Generation completed.

BGP: TX IPv4 Unicast Top global Deleting first marker with version 1.

BGP: TX IPv4 Unicast Top global Collection reached marker 1 after 0 path

extension(s).

BGP: TX IPv4 Unicast Top global Collection done on marker 29 after 1 path

extension(s).

BGP: TX IPv4 Unicast Top global Collection done on marker 29 after 0 path

extension(s).

BGP(0): 10.1.3.4 rcvd UPDATE w/ attr: nexthop 10.1.3.4, origin i, metric 0,

merged path4, AS_PATH

BGP(0): 10.1.3.4 rcvd 10.100.1.1/32   <<< R1 received 10.100.1.1/32 from

R4 again

BGP: TX IPv4 Unicast Net global 10.100.1.1/32 Changed.

BGP: nbr_topo global 10.1.3.4 IPv4 Unicast:base (0x63D50D0:1) rcvd Refresh

End-of-RIB

BGP: net global:IPv4 Unicast:base 10.100.1.1/32 RIB-INSTALL Attempting to install.

BGP: net global:IPv4 Unicast:base 10.100.1.1/32 RIB-INSTALL Built route type:

1024, flags: 200000, tag: 4, metric: 0 path: 1.

BGP: net global:IPv4 Unicast:base 10.100.1.1/32 RIB-INSTALL Path 1, type: DEF,

gw: 10.1.3.4, idb: N/A, topo_id: 0, src: 1.1.3.4, lbl: 1048577, flags: 0.

BGP: net global:IPv4 Unicast:base 10.100.1.1/32 RIB-INSTALL Installing 1 paths,

multipath limit 1 (from 1).

BGP(0): Revise route installing 1 of 1 routes for 10.100.1.1/32 -> 10.1.3.4

(global) to main IP table

BGP: net global:IPv4 Unicast:base 10.100.1.1/32 RIB-INSTALL Install successful.

BGP: TX IPv4 Unicast Net global 10.100.1.1/32 RIB done.

BGP: TX IPv4 Unicast Net global 10.100.1.1/32 RIB done.

BGP: TX IPv4 Unicast Tab RIB walk done version 30, added 1 topologies.

BGP: TX IPv4 Unicast Tab Executing.

BGP: TX IPv4 Unicast Tab Generation completed.

BGP: TX Member message pool under period (60 < 600).

BGP: TX IPv4 Unicast Mem global 1 1 10.1.2.3 State is ACTIVE (ready).

BGP: TX IPv4 Unicast Grp global 1 Minimum advertisement timer expired.

BGP: TX IPv4 Unicast Wkr global 1 Cur Unblocked

BGP: TX IPv4 Unicast Tab Executing.

BGP: TX IPv4 Unicast Wkr global 1 Cur Processing.

BGP: TX IPv4 Unicast Top global Appending nets from attr 0x9362D54.

BGP: TX IPv4 Unicast Wkr global 1 Cur Attr change from 0x0 to 0x9362D54.

BGP(0): (base) 10.1.1.2 send UPDATE (format) 10.100.1.1/32, next 10.1.1.1,

metric 0, path 4   <<< R1 sends an update for 10.100.1.1/32 for Table Version

30 (bestpath is again the one from R4)

BGP: TX IPv4 Unicast Wkr global 1 Cur Net 10.100.1.1/32 (Pxt 0x9F58FA0:0x0)

Formatted.

BGP: TX IPv4 Unicast Top global No attributes with modified nets.

BGP: TX IPv4 Unicast Top global Added tail marker with version 30.

BGP: TX IPv4 Unicast Wkr global 1 Cur Reached marker with version 30.

BGP: TX IPv4 Unicast Top global No attributes with modified nets.

BGP: TX IPv4 Unicast Wkr global 1 Cur Replicating.

BGP: TX IPv4 Unicast Wkr global 1 Cur Done (end of list), processed 1

attr(s), 1/1 net(s), 0 pos.

BGP: TX IPv4 Unicast Grp global 1 Checking EORs again (4/4).

BGP: TX IPv4 Unicast Grp global 1 Start minimum advertisement timer (30 secs).

BGP: TX IPv4 Unicast Wkr global 1 Cur Blocked (minimum advertisement interval).

BGP: TX IPv4 Unicast Wkr global 1 Cur Reached end of list.

BGP: TX IPv4 Unicast Grp global 1 Converged.

BGP: TX IPv4 Unicast Tab Processed 1 walker(s).

BGP: TX IPv4 Unicast Tab Generation completed.

BGP: TX IPv4 Unicast Top global Deleting first marker with version 29.

BGP: TX IPv4 Unicast Top global Collection reached marker 29 after 0 path

extension(s).

BGP: TX IPv4 Unicast Top global Collection done on marker 30 after 1 path

extension(s).

BGP: TX IPv4 Unicast Top global Collection done on marker 30 after 0 path

extension(s).

BGP: TX IPv4 Unicast Tab RIB walk done version 30, added 0 topologies.

Tutte le versioni della tabella sono ora 30:

R1#show bgp ipv4 unicast summary

BGP router identifier 10.1.3.1, local AS number 1

BGP table version is 30, main routing table version 30

1 network entries using 144 bytes of memory

2 path entries using 160 bytes of memory

2/1 BGP path/bestpath attribute entries using 288 bytes of memory

2 BGP AS-PATH entries using 48 bytes of memory

0 BGP route-map cache entries using 0 bytes of memory

0 BGP filter-list cache entries using 0 bytes of memory

BGP using 640 total bytes of memory

BGP activity 1/0 prefixes, 17/15 paths, scan interval 60 secs

Neighbor     V       AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd

10.1.1.2     4        2     127     135       30    0    0 01:52:42        0

10.1.2.3     4        3     126     136       30    0    0 01:52:45        0

10.1.3.4     4        4      12      14       30    0    0 00:06:25        1

10.1.5.5     4        5      64      73       30    0    0 00:54:37        1

R1#show bgp ipv4 unicast 10.100.1.1/32

BGP routing table entry for 10.100.1.1/32, version 30

Paths: (2 available, best #1, table default)

Advertised to update-groups:

1

Refresh Epoch 2

4

10.1.3.4 from 10.1.3.4 (10.100.1.1)

Origin IGP, metric 0, localpref 100, valid, external, best

rx pathid: 0, tx pathid: 0x0

Refresh Epoch 2

5 4

10.1.5.5 from 10.1.5.5 (10.1.5.5)

Origin IGP, localpref 100, valid, external

rx pathid: 0, tx pathid: 0

Alla fine, in R1, sono state apportate due modifiche ai percorsi migliori. Così, la versione da tavolo è stata sbalzata di 2.

In primo luogo, il peer 10.1.3.4 è sceso su R1. Il miglior percorso è stato cambiato sul percorso ricevuto da R5. La versione della tabella è aumentata al successivo numero disponibile, che era 29. È stato eseguito il bump di 29 anche per la versione della tabella dei prefissi. La nervatura è stata aggiornata con questo nuovo percorso migliore. La versione della tabella del RIB è stata aumentata a 29. Quindi, R1 ha inviato un aggiornamento al peer BGP 10.1.1.2 per il nuovo percorso migliore e ha aggiornato la versione della tabella peer a 29. È stato aggiornato anche ogni altro peer.

In secondo luogo, una volta che il peer 10.1.3.4 era nuovamente attivo, R1 ha ricevuto l'aggiornamento per 10.100.1.1/32 da R4 e ha ricalcolato il percorso migliore. Il percorso di R4 è stato il nuovo miglior percorso, che ha determinato il riversamento della versione della tabella e della versione della tabella dei prefissi al successivo numero disponibile di 30. Anche in questo caso, il RIB e tutti gli altri peer BGP sono stati aggiornati e le versioni della tabella dei rib e dei peer sono state aggiornate a 30. La versione della tabella è stata riversata solo una volta ogni volta. Tuttavia, se gli altri prefissi BGP subissero altre modifiche, la versione della tabella verrebbe disturbata da più di un numero, perché salta ogni volta al successivo numero disponibile.

Se si immette il comando clear ip bgp out per un peer BGP, il router invia nuovamente i prefissi BGP a tale peer. Ciò non causa una modifica nel percorso migliore sul peer BGP ricevente. La versione della tabella nel peer non verrà pertanto modificata.

Quando si eseguono gli aggiornamenti debug ip bgp sul router ricevente, viene visualizzato:

BGP(0): 10.1.3.4 rcvd UPDATE w/ attr: nexthop 10.1.3.4, origin i,

metric 0, merged path 4, AS_PATH

BGP(0): 10.1.3.4 rcvd 10.100.1.1/32...duplicate ignored

L'aggiornamento ricevuto viene riconosciuto come duplicato, pertanto viene ignorato e non si verifica alcuna modifica del percorso ottimale.

Si supponga di avere un router con prefissi 100.000 nella tabella BGP e che la versione della tabella BGP aumenti di 100.000 al minuto. Si tratta di un comportamento imprevisto che deve essere esaminato. Uno dei motivi potrebbe essere che l'hop successivo per i prefissi BGP lampeggia ogni minuto per tutti i prefissi.

Quando la versione della tabella BGP aumenta rapidamente, uno dei risultati è che il processo BGP Router e BGP IO sono occupati, il che potrebbe causare un aumento costante della CPU del router.