mpls traffic-engineering example-config with explicit-path cisco per tunnel-TE fast-reroute node protection and definizione comandi and ipotesi di inoltro traffico over tunnel mpls
03.01 2020 | by massimilianompls traffic-engineering example-config cisco per tunnel-TE fast-reroute and router isis Architettura di riferimento Esempio […]
https://www.ingegnerianetworking.com/wp-content/uploads/2020/01/mpls-te-fastreroute-tunnel-3ad.png
mpls traffic-engineering example-config cisco per tunnel-TE fast-reroute and router isis
Architettura di riferimento
Esempio di configurazione explicit-path TE Fast-Reroute from 12K-1:
ip cef
mpls label protocol ldp
mpls traffic-eng tunnels
mpls traffic-eng reoptimize timers frequency 120
tag-switching advertise-tags for MPLS
!
ip access-list standard MPLS
permit 10.255.254.12
permit 10.255.254.14
permit 10.255.254.16
permit 10.255.254.18
permit 10.255.254.20
!
!
ip explicit-path name PATH_818 enable
next-address 10.255.254.34
next-address 10.255.254.38
next-address 10.255.254.42
next-address 10.255.254.46
!
ip explicit-path name PATH_816 enable
next-address 10.255.254.53
next-address 10.255.254.49
next-address 10.255.254.45
!
ip explicit-path name PATH_820 enable
exclude-address 10.255.254.53
!
ip explicit-path name PATH_814 enable
exclude-address 10.255.254.38
!
ip explicit-path name PATH_812 enable
exclude-address 10.255.254.34
!
!
ip explicit-path name PATH_1818
next-address 10.255.254.53
next-address 10.255.254.49
!
ip explicit-path name PATH_1820
next-address 10.255.254.34
next-address 10.255.254.38
next-address 10.255.254.42
next-address 10.255.254.46
next-address 10.255.254.50
!
ip explicit-path name PATH_1816
exclude-address 10.255.254.34
!
ip explicit-path name PATH_1814
next-address 10.255.254.53
next-address 10.255.254.49
next-address 10.255.254.45
next-address 10.255.254.41
!
ip explicit-path name PATH_1812
next-address 10.255.254.53
next-address 10.255.254.49
next-address 10.255.254.45
next-address 10.255.254.41
next-address 10.255.254.37
!
Esempio di configurazione interface tunnel TE Fast_Reroute from 12K-1:
interface Loopback1
description “Loopback Tunnel MPLS”
ip address 10.255.254.10 255.255.255.255
no ip directed-broadcast
!
interface GigabitEthernet1/0
description to “12K-2 intra-pop”
mtu 1520
bandwidth 1000000
ip address 10.255.254.33 255.255.255.252
no ip directed-broadcast
ip router isis
no keepalive
negotiation auto
mpls traffic-eng tunnels
mpls traffic-eng backup-path Tunnel816
mpls traffic-eng backup-path Tunnel814
mpls traffic-eng backup-path Tunnel 812
tag-switching ip
bfd interval 200 min_rx 200 multiplier 3
isis circuit-type level-1
isis network point-to-point
isis metric 63 level-1
isis bfd
!
interface GigabitEthernet2/0
description to “12K-6 inter-pop”
mtu 1520
bandwidth 1000000
ip address 10.255.254.54 255.255.255.252
no ip directed-broadcast
ip router isis
negotiation auto
mpls traffic-eng tunnels
mpls traffic-eng backup-path Tunnel818
mpls traffic-eng backup-path Tunnel820
tag-switching ip
bfd interval 300 min_rx 300 multiplier 3
isis circuit-type level-1
isis network point-to-point
isis metric 1 level-1
isis bfd
!
!
interface Tunnel814
description “Tunnel FRR verso 12K-3”
ip unnumbered Loopback1
no ip directed-broadcast
tunnel destination 10.255.254.14
tunnel mode mpls traffic-eng
tunnel mpls traffic-eng path-option 10 explicit name PATH_814
!
interface Tunnel 816
description “Tunnel FRR verso 12K-4”
ip unnumbered Loopback1
no ip directed-broadcast
tunnel destination 10.255.254.16
tunnel mode mpls traffic-eng
tunnel mpls traffic-eng path-option 10 explicit name PATH_816
!
interface Tunnel 818
description “Tunnel FRR verso 12K-5”
ip unnumbered Loopback1
no ip directed-broadcast
tunnel destination 10.255.254.18
tunnel mode mpls traffic-eng
tunnel mpls traffic-eng path-option 10 explicit name PATH_818
!
interface Tunnel 820
description “Tunnel FRR verso 12K-6”
ip unnumbered Loopback1
no ip directed-broadcast
tunnel destination 10.255.254.20
tunnel mode mpls traffic-eng
tunnel mpls traffic-eng path-option 10 explicit name PATH_820
!
interface Tunnel 812
description “Tunnel FRR verso 12K-2”
ip unnumbered Loopback1
no ip directed-broadcast
tunnel destination 10.255.254.12
tunnel mode mpls traffic-eng
tunnel mpls traffic-eng path-option 10 explicit name PATH_812
!
interface Tunnel 1818
description Tunnel to 12K-5″
ip unnumbered Loopback1
no ip directed-broadcast
tunnel destination 10.255.254.18
tunnel mode mpls traffic-eng
tunnel mpls traffic-eng path-option 10 explicit name PATH_1818
tunnel mpls traffic-eng path-option 20 dynamic
tunnel mpls traffic-eng fast-reroute
!
interface Tunnel 1820
description Tunnel to 12K-6″
ip unnumbered Loopback1
no ip directed-broadcast
tunnel destination 10.255.254.20
tunnel mode mpls traffic-eng
tunnel mpls traffic-eng path-option 10 explicit name PATH_1820
tunnel mpls traffic-eng path-option 20 dynamic
tunnel mpls traffic-eng fast-reroute
!
interface Tunnel 1816
description Tunnel to 12K-4″
ip unnumbered Loopback1
no ip directed-broadcast
tunnel destination 10.255.254.16
tunnel mode mpls traffic-eng
tunnel mpls traffic-eng path-option 10 explicit name PATH_1816
tunnel mpls traffic-eng path-option 20 dynamic
tunnel mpls traffic-eng fast-reroute
!
interface Tunnel 1814
description Tunnel to 12K-3″
ip unnumbered Loopback1
no ip directed-broadcast
tunnel destination 10.255.254.14
tunnel mode mpls traffic-eng
tunnel mpls traffic-eng path-option 10 explicit name PATH_1814
tunnel mpls traffic-eng path-option 20 dynamic
tunnel mpls traffic-eng fast-reroute
!
interface Tunnel 1812
description Tunnel to 12K-2″
ip unnumbered Loopback1
no ip directed-broadcast
tunnel destination 10.255.254.12
tunnel mode mpls traffic-eng
tunnel mpls traffic-eng path-option 10 explicit name PATH_1812
tunnel mpls traffic-eng path-option 20 dynamic
tunnel mpls traffic-eng fast-reroute
!
Esempio di configurazione MPLS-TE sotto processo ISIS router from 12K-1:
router isis
net 49.0001.0192.1681.2001.00 # 12K-1 (per gli altri 12K l’ultimo decimale del 5 ottetto sarà 2,3,4,5,6)
is-type level-1
metric-style wide
log-adjacency-changes
mpls traffic-eng router-id loopback1
mpls traffic-eng level-1
no passive-interface gigabitethernet 1/0
no passive-interface gigabitetherent 2/0
passive-interface default
bfd all-intefaces
Esempio di definizione comandi:
ip unnumbered loopback: i router cisco non inoltrano traffico su interfacce che non hanno un indirizzo IP; è necessario quindi assegnare un indirizzo IP all’interfaccia tunnel mpls (di solito quello dedicato alla loopback di riferimento)
tunnel mode mpls traffic-eng: è necessario per indicare al sistema operativo del router che il tunnel è di tipo mpls (si ricorda che possiamo avere tunnel di diverso tipo come GRE, IPSEC, etc… e pertanto si deve specificare il mode del tunnel IT)
tunnel mpls traffic-eng path-option 20 dynamic: è necessario per indicare al sistema operativo del router di utilizzae un algoritmo dinamico per la selezione del percorso (il CSPF è l’algoritmo per questa funzionalità ); il valore 20 indica una priorità con cui si utilizza il CSPF
tunnel mpls traffic-eng path-option 10 explicit name < name >: indica il percorso selezionato di tipo esplicito attraverso una serie di comandi di next-address oppure exclude-address (gli indirizzi possono essere l’indirizzo IP di una interfaccia fisica o di una loopback dei router mpls facenti parte del backbone); il valore 10 indica una priorità di scelta nella selezione del percorso
tunnel mpls traffic-eng bandwidth < value >: indica un valore di banda in Kbit/sec del tunnel mpls; questo valore è utile solo per il piano di controllo per una ammissione del tunnel stesso. Non ha valore a livello di pianod di forwarding o dati e di fatto non implica nessuna banda riservata tramite operazioni di scheduling.
tunnel mpls traffic-eng priority 5 5: indica dei valori di priorità con il primo valore = Setup ed il secondo valore = holding; i numeri ammessi sono in un range tra zero e sette dove 0 = priorità massima e 7 = priorità minima
in caso di fault di un percorso esplicito con priorità ed a seguito di una sua nuova disponibilità in rete, i router hanno la possibilità di riottimizare il percorso attuale e ci sono tre modalità :
in modalità priviligiata (enable):
mpls traffic-eng reoptimize tunnel x: rappresenta una ottimizzazione manuale
mpls traffic-eng reoptimize events link-up: rappresenta una ottimizzazione indotta da evento
mpls traffic-eng reoptimize timers frequency < value in sec >: il value indica il periodo di ottimizzazione in secondi; ad esempio se il valore = 120 il router effettua una riottimizzazione ogni 120 sec
NOTA: la procedura di riottimizzazione si ottiene attraverso lo scambio di messaggi PATH sul percorso primario (quello esplicito) e nell’attesa del messaggio RESV corrispondente; in questo frattempo il router continua ad inviare il traffico sul “vecchio” percorso per evitare di perdere pacchetti ( tecnica conosciuta con il nome di ” make-before-break” )
tunnel mpls traffic-eng fast-reroute: questo comando è necessario configurare per i tunnel che necessitano di essere protetti; i router di ingresso sono quindi consapevoli che il tunnel IT è protetto localmente.
Per la verifica basta controllare il campo ” Flags ” dell’oggetto RSVP-TE SESSION_ATTRIBUTE nei messaggi PATH; questo deve avere il valore 0x01 (Local Protection Desired)
tunnel mpls backup-path < tunnel x >: configurato sotto interfaccia ed indica di utilizzare il percorso di backup in caso il percorso primario fallisse e fosse rilevato su base interfaccia fisica
Modalità di inoltro del traffico over tunnel TE:
L’inoltro del traffico può essere statico o dinamico.
– Per mezzo di routing statico si debbono configurare normali rotte statiche:
ip route < IP_destinazione > < mask > tunnel x
- – Per mezzo di routing statico su base policy amministrative:
interface gix/y
ip policy route-map TRAFFIC-ADMIN
!
route-map TRAFFIC-ADMIN
match ip address 150
set interface tunnel x
!
access-list 150 permit ip any 172.16.1.0 0.0.0.255
ip policy route-map TRAFFIC-ADMIN: sotto interfaccia indica che tutto il traffico proveniente dalla IF x/y segue la politica di routing applicata nella route-map associata
match ip address 150: indica quale sorgenti e destinazioni sono soggette alla policy; in questo caso qualsiasi sorgente con destinazione 172.16.1.0/24
set interface tunnel x: indica che i pacchetti facenti parte della classe sopra indicata dalla ACL debbono essere trasmessi al tunnel x
– Per mezzo di routing dimanico, la configurazione è:
interface tunnel x
tunnel mpls traffic-eng autoroute announce
questo comando viene configurato su base interfaccia