19: 19: network layer: network layer: protocolli di...
TRANSCRIPT
1
19: 19: Network layer:Network layer:
protocolli di routing in IPprotocolli di routing in IP
1
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
Routing in TCP/IPRouting in TCP/IP
� Una rete TCP/IP (come Internet) è costituita da un insieme di Autonomous
Systems (ASs) interconnessi
� Ogni AS adotta un algoritmo di routing indipendente da quello adottato negli
altri AS
� Gli algoritmi di routing degli AS sono indicati generalmente col nome di IGP
(Interior Gateway Protocol)
� La comunicazione tra gli AS è governata da un algoritmo di routing differente,
indipendente dai protocolli IGP utilizzati internamente, indicato con il nome
generico di EGP (Exterior Gateway Protocol)
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
2
2
Fondamenti dell’instradamento in IPFondamenti dell’instradamento in IP
� Ogni datagramma IP attraversa un cammino composto da routers e da sotto-reti
� Quando un router consegna un datagramma ad una sotto-rete questo diventa l’unità di dati di servizio propria di questa sotto-rete
� La rete individuale consegna tale unità dati al prossimo router o a destinazione (se la destinazione è all'interno della rete stessa) con le stesse modalità con cui tratta le unità dati ad essa "appartenenti"
1
23
0111
Valore nell’intestazionedel pacchetto in arrivo
Algoritmo d’instradamento
Tabella di inoltro localeValore
d’intestazioneCollegamento
d’uscita
0100010101111001
3221
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
3
Fondamenti dell’instradamento in IP (cont.)Fondamenti dell’instradamento in IP (cont.)
Bridge
host mittente
router X
router Y
sub-rete A (X25)
sub-rete B (?)
host destinatario
LAN 1
LAN 2
INTERNET
PCIPCItramapacchet.
PCI ?
MACLLC
Net_id Data
Net_id Data
Net_id Data
Net_id Data
Net_id Data
Net_id Data
Net_id Data
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
4
3
Instradamento direttoInstradamento diretto
� L'instradamento in Internet può essere diviso in due classi: diretto e indiretto
� L’instradamento diretto è possibile solo se l’host mittente e l’host destinatario sono connessi alla stessa sub-rete fisica (ed omogenea).
� Lo scambio di datagrammi tra hosts connessi alla stessa rete non coinvolge i routers e, previa un’operazione di traduzione di indirizzi ed incapsulamento, la risultante unità dati viene inviata direttamente a destinazione.
� L'instradamento all'interno delle sub-reti può essere qualunque e non significativo globalmente.
� Utilizza i meccanismi propri della rete in questione per inviare il datagramma.
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
5
Instradamento indirettoInstradamento indiretto
� L’instradamento indiretto si applica quando l’host destinatario è connesso ad una sub-rete diversa da quella relativa all’host mittente
� Il mittente deve identificare un router a cui inviare il datagramma; il router deve inviare il datagramma verso la rete di destinazione.
⇒ Il mittente invia il datagramma al router più vicino utilizzando la sotto-rete fisica a cui è connesso.
⇒ Il router esamina il datagramma ricevuto e decide verso quale altro router indirizzarlo.
� Il processo si ripete di router in router finché si arriva alla rete di destinazione; qui tramite un indirizzamento diretto il datagramma viene inviato allo specifico host di destinazione
� I routers formano una struttura inter-connessa e cooperativa
� I datagrammi passano di router in router finché ne raggiungono uno che può consegnare il datagramma direttamente (cioè tramite un indirizzamento diretto)
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
6
4
Tabelle di instradamentoTabelle di instradamento
� Il meccanismo per l’instradamento in IP è basato su una tabella che ogni host o router mantiene allo scopo di conoscere le possibili destinazioni e le modalità per raggiungerle.
� Una tabella di instradamento contiene delle coppie (R,I) dove R è l’indirizzo della rete di destinazione e I è l’indirizzo del prossimo router lungo la strada che porta alla rete di destinazione.
� La tabella di instradamento specifica quindi solo un passo lungo il cammino verso la destinazione; un router non conosce quindi il cammino completo che il datagramma dovrà compiere
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
7
Tabelle di instradamentoTabelle di instradamento
20.0.0.5
20.0.0.6
30.0.0.6 40.0.0.7
30.0.0.7
Rete10.0.0.0
Rete20.0.0.0
Rete30.0.0.0
Rete40.0.0.0R1 R2 R3
10.0.0.5
Tabella di instradamento di R2
Per raggiungere hosts
indirizzati alla rete:
Indirizzare i datagrammi
verso questa strada (o router):
20.0.0.0 inoltrare direttamente
30.0.0.0 inoltrare direttamente
10.0.0.0 20.0.0.5
40.0.0.0 30.0.0.7
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
8
5
Tabelle di instradamento (cont.)Tabelle di instradamento (cont.)
� le tabelle contengono solo informazioni sulle reti di destinazione e non sui singoli nodi, al fine di:
⇒ nascondere il più possibile i dettagli inerenti la rete⇒ mantenere piccole le tabelle di instradamento⇒ consentire un instradamento efficiente
� Se un router non trova una strada nella sua tabella allora indirizza i suoi datagrammi verso un “router di default” (generalmente una macchina più potente, destinata principalmente ad operazioni di instradamento)
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
9
Router di defaultRouter di default
� Il meccanismo del router di default è usato:
⇒ da piccoli hosts, che possono anche non avere per nulla una tabella, ed inviare tutti i datagrammi non diretti alla rete cui sono collegati al router di default
⇒ da routers o hosts con una tabella di discrete dimensioni ma che tuttavia non copre tutte le possibili destinazioni; quando arriva un datagramma destinato ad una destinazione non contemplata dalla tabella, essi si rivolgono ad un router di default.
⇒ nelle reti stub
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
10
6
Aggregazione delle rotteAggregazione delle rotte
� L’indirizzamento gerarchico permette di pubblicizzare efficientemente le informazioni di routing:
200.23.16.0/23
200.23.18.0/23
200.23.30.0/23
Piscali-ISP
Organizzazione 0
Organizzazione 3Internet
Organizzazione 1
ISP-Pippo “Manda a me qualunque pacchetto il cui indirizzo
inizia con 199.31.0.0/16”
200.23.20.0/23Organizzazione 2
.
.
.
.
.
.
“Manda a me qualunque pacchetto il cui indirizzo
inizia con 200.23.16.0/20”
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
11
Rotte specificheRotte specifiche
ISP-Pippo annuncia una rotta specifica per l’organizzazione 1
200.23.16.0/23
200.23.18.0/23
200.23.30.0/23
Piscali-ISP
Organization 0
Organization 7Internet
Organization 1
ISP-Pippo “Manda a me qualunque pacchetto il cui indirizzo
inizia con 199.31.0.0/16
o 200.23.18.0/23”
200.23.20.0/23Organization 2
.
.
.
.
.
.
“Manda a me qualunque pacchetto il cui indirizzo
inizia con 200.23.16.0/20”
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
12
7
Sistemi autonomi interconnessiSistemi autonomi interconnessi
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
13
Ciascun sistema autonomo sa come inoltrare pacchetti lungo il percorso ottimo verso qualsiasi destinazione interna al gruppo
1d
1c
AS11a 1b
Algoritmod’instradamento
(intra-AS)
Algoritmod’instradamento
(inter-AS)
Tabellad’inoltro
3b3a
AS3
3c 2a
AS2
2c2b
⇒AS2 e AS3 hanno tre router ciascuno
⇒ I protocolli d’instradamento dei tre sistemi AS non sono necessariamente gli stessi
⇒ I router 1b, 1c, 2a e 3a sono gateway
⇒Ogni AS deve affidare in modo specifico ad uno o più dei suoi routers il compito di informare il mondo esterno della sua topologia
R3
SubNet 1.2
SubNet 1.3 SubNet 1.1
SubNet 1.4
R2
R4 R1
R5
R6
R8
R7
SubNet 2.2
SubNet 2.1
SubNet 2.3
SubNet 2.4
IGP
EGP
AS 1
AS 2EG
EGEGP
Interior e Exterior Gateway ProtocolsInterior e Exterior Gateway Protocols
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
14
8
Protocolli IGP: RIPProtocolli IGP: RIP
� Il primo protocollo di routing interno utilizzato in Internet è il RIP (Routing
Information Protocol), ereditato da Arpanet
� RIP è un protocollo basato sull’algoritmo distance vector
⇒ Metrica basata sul numero di hop, con infinito a costo 15
⇒ Tabelle di routing scambiate ogni 30s, con timeout a 180s
⇒ Utiliza UDP (protocollo di trasporto) per scambiare i messaggi
• è un protocollo di livello 3 che usa un protocollo di livello 4 !
� Adatto a reti di dimensioni limitate, ha iniziato a mostrare i suoi limiti già alla
fine degli anni ’70
⇒ Attualmente ancora utilizzato come protocollo di routing in piccole reti
private
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
15
RIPRIP
� E’ richiesto che ogni nodo scambi informazioni con i nodi adiacenti
⇒ due nodi sono adiacenti se sono direttamente connessi mediante la stessa rete
� E’ molto semplice, tuttavia:
⇒ la convergenza è lenta⇒ lo stato di equilibrio può essere un sub-ottimo
� Applica l’algoritmo di Bellman-Ford distribuito
� Ogni nodo x mantiene al suo interno tre vettori:
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
16
====)M,x(w
)1,x(w
Wx M
====)N,x(L
)1,x(L
Lx M
====)N,x(R
)1,x(R
Rx M
Vettore dei costi dei ramiuscenti dal nodo
Vettore delle distanzeminime verso le altre reti
Vettore dei routernext hop verso
le altre reti
9
RIPRIP
� Periodicamente (circa ogni 30 s) i router adiacenti si scambiano i vettori L
⇒ un router conosce quindi l’ultima versione dei vettori L inviata dai router adiacenti
� Un nodo x aggiorna i suoi vettori nel seguente modo
⇒ M : insieme dei nodi adiacenti al nodo x⇒ Nxy : sotto-rete che interconnette i nodi x e y
xyy ML(x,n) min w(x,N ) L(y,n)
R(x,n) y∈∈∈∈
= += += += +
====
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
17
RIP: esempio RIP: esempio
Sottorete destin. Router successivo Numero di hop verso la dest.w A 2y B 2z B 7x -- 1…. …. ....
Tabella d’instradamento nel router D
w x y
z
A
C
D B
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
18
10
RIP: esempioRIP: esempio
Tabella d’instradamento nel router D
Sottorete destin. Router successivo Numero di hop verso la dest.w A 2y B 2z B A 7 5x -- 1
…. …. ....
w x y
z
A
C
D B
Dest Next hopw - 1x - 1z C 4…. … ...
Notifica dalrouter A.
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
19
Messaggi RIPMessaggi RIP
� Un messaggio RIP è incapsulato in una unità dati UDP
� Pacchetto Response (“annuncio RIP” o “RIP advertisement”).
⇒ è emesso per inviare tutta o una parte della distance vector table⇒ è emesso
• ogni 30 secondi• in risposta ad un pacchetto Request• quando la “routing table” cambia (Triggered updates)
� Pacchetto Request
⇒ è emesso da un router per chiedere ad un nodo vicino l’invio della “distance vector table” o di una parte di essa
� Il formato massimo di un messaggio RIP è di 512 byte
• massimo 25 blocchi per messaggio • in caso di un numero maggiore di 25 indirizzi da aggiornare si
utilizzano messaggi RIP multipli
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
20
11
Protocolli IGP: OSPFProtocolli IGP: OSPF
� Nel 1979 il routing di Internet è migrato verso un protocollo di tipo link state
⇒ ciascun router utilizza il flooding per propagare lo stato delle sue
connessioni agli altri router della rete
⇒ ciascun router conosce la topologia completa della rete
� Alla fine del 1988 ne è stato sviluppato un successore, chiamato OSPF (Open
Short Path First), definito nell’RFC 2328
� OSPF è oggi il più diffuso protocollo IGP utilizzato in Internet
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
21
Caratteristiche di OSPFCaratteristiche di OSPF
� OSPF è stato progettato cercando di soddisfare diversi requisiti
� nessun vincolo di brevetto (O = Open)
� supporto di diverse metriche per la distanza (distanza fisica, hop, ritardo,
costo della linea, …)
� reazione dinamica e rapida a modifiche di topologia (link state)
� instradamento basato sul tipo di servizio (sfruttando i campi esistenti
nell’header di IP, ad esempio); questo è stato incluso in OSPF, ma
implementazioni ed applicativi per molto tempo lo hanno ignorato
� capacità di bilanciare il carico su diversi cammini
� supporto per sistemi gerarchici (quindi routing gerarchico anche all’interno
dello stesso AS) suddividendo l’AS in aree
� implementazione di sicurezza
� supporto per il tunneling
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
22
12
OSPFOSPF
� I router
⇒ hanno la responsabilità di contattare i router adiacenti e di acquisire la loro identità (pacchetti Hello);
⇒ formano i Link State Advertisement (LSA) che contengono una lista delle reti adiacenti con i relativi costi di raggiungimento gli LSA sono trasmessi a tutti gli altri router.
� Tutti i router della rete hanno lo stesso insieme di dati e quindi possono costruire lo stesso grafo pesato della rete; il grafo di rete è utilizzato per determinare i cammini ottimi.
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
23
OSPFOSPF
� Gli LSP sono emessi
⇒ quando un router contatta un nuovo router vicino⇒ quando un ramo si guasta⇒ quando il costo di un ramo varia⇒ periodicamente ogni fissato intervallo di tempo
� La rete trasporta gli LSA mediante la modalità a “inondazione” (flooding)
⇒ un LSA è rilanciato da un router su tutte le sue interfacce tranne quella da cui è stato ricevuto
⇒ gli LSA trasportano dei riferimenti temporali (time stamp) o numeri di sequenza per
• evitare il rilancio di pacchetti già rilanciati• consentire un corretto riscontro dal ricevente
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
24
13
OSPFOSPF
� La modalità a “inondazione” ha i seguenti vantaggi
⇒ esplora tutti i possibili cammini tra origine e destinazione⇒ è estremamente affidabile e robusta
� Il traffico generato dipende dalle dimensioni della rete e può essere molto elevato
� Caratteristiche di OSPF:
⇒ Sicurezza: gli scambi tra router sono autenticati.⇒ Multipath: quando più percorsi verso una destinazione hanno lo stesso
costo, OSPF consente di usarli senza doverne scegliere uno, come invece avveniva in RIP
⇒ Più metriche di costo per differenti TOS⇒ Supporto integrato per l’instradamento unicast e multicast.⇒ Supporto alle gerarchie in un dominio d’instradamento.
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
25
OSPF: topologia della reteOSPF: topologia della rete
� Ogni router mantiene un database che riflette i dati aggiornati sulla topologia della rete (Link state database o Database topologico)
� La topologia di rete è rappresentata come un grafo orientato
⇒ I nodi rappresentano• router• Network
– reti di transito: non contengono host (sorgenti e/o destinazioni)– reti stub: reti non di transito
⇒ I rami rappresentano• collegamenti diretti tra nodi di tipo router• collegamenti tra nodi di tipo router e nodi di tipo network
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
26
14
N11
N3
N4
N6
N7
N8
N9
N1
N2
N10
R2 R3
R1
R6
R4 R5
R7
R10R9
R11 R8
H1 R12
31
31 1
1 88
7
6
27
5
6
6
1
1
41
21
3
21
6
8
10
N12 N13 N14
N12
N15
Rete
8 88
2
9
N6
R1
R2
R4
R3 R6
R5
R7
R10
R8R11
R9
R12
N1
N2
N3
N4
N7
N8
N11
N9
N10
3
3 1
11 8
67
6
6
1
5
7
8
6
1
3
1
1
41
2
3
1
1
10 2 Grafo
8
H1
2
OSPF: topologia della reteOSPF: topologia della rete
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
27
OSPF: costruzione del grafoOSPF: costruzione del grafo
� Nel grafo rappresentativo della rete:
⇒ due router collegati da una linea punto-punto sono connessi da due rami orientati (uno per ogni verso)
⇒ più router connessi alla stessa rete sono rappresentati da nodi (router node) connessi ciascuno da due rami orientati (uno per ogni verso) al nodo rappresentativo della rete (network node)
⇒ una rete connessa ad un singolo router è rappresentata da un nodo di tipo stub
⇒ un host direttamente connesso ad un router è rappresentato con un ramo⇒ sistemi autonomi esterni sono rappresentati da nodi stub ed il costo dei
rami è determinato dal protocollo EGP
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
28
15
Spanning tree e tabelle di routingSpanning tree e tabelle di routing
Ogni router calcola lo spanning tree a partire dal grafo rappresentativo della rete mediante l’algoritmo di Dijkstra
R1
R2
R4
R3 R6
R5
R7
R10
R8R11
R9
R12
N1
N2
N3
N4
N6
N7
N8
N11
N9
N10
3
3
6 8
7
2
61
3
1
4
1
3
10 2
8
8
9
2
N12
N13
N14
N12N15
H1
Destin. N. H. Dist.N1 R3 10N2 R3 10N3 R3 7N4 R3 8R1 R3 7N6 R10 8N7 R10 12N8 R10 10
Destin. N.H. Dist.
N9 R10 11
N10 R10 13
R5 R5 6R7 R10 8N12 R10 10N13 R5 14N14 R5 14N15 R10 17
N11 R10 14H1 R10 21
Spanning Tree e Routing Table in R6
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
29
Esempio di costruzione del grafoEsempio di costruzione del grafo
R1
R2
R3
R4
N1
N2
N3
N4
N5
0
0
0 0
0
00
00
1
4
3
1
2
4
3
35
Topologia di Rete Grafo
191.8.12.1
191.8.16.2
191.8.4.2
191.8.4.1
N1
191.8.4.0/10
R1
N2
191.8.8.0/10
R2
R3
N3
191.8.12.0/10
N4
191.8.16.0/10N5
191.8.20.0/10
R4
191.8.20.1 191.8.16.1 191.8.12.2
191.8.8.1
191.8.8.2
5 3
3
4
2
1
34
1
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
30
16
R1
R2
R3
R4
N1
N2
N3
N4
N5
0
0
0 0
0
00
00
1
4
3
1
2
4
3
35
Grafo
R2
N1
4
N2
3
N23
R3
3
R3
0
N3
5
N1 4
R1
4
N4
7
N5
9
R1
0
N3
2
R4
5
R4
0
N4
8
N4
3
N5
5
Lista candidati
Spanning Tree
Esempio: costruzione spanning treeEsempio: costruzione spanning tree
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
31
R2
3N1 4
R1
0
R4
N2
R3
0
N3
2
0N4
3
N5
5
eth2eth1
Esempio: costruzione della tabella di instradamentoEsempio: costruzione della tabella di instradamento
Spanning tree
Network Next-HopRouter
Interfaccia Costo
N1 diretto eth1 4
N2 diretto eth2 3
N3 R3 eth2 5
N4 R1 eth1 7
N5 R1 eth1 9
Routing table
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
32
17
Esempio OSPFEsempio OSPF
A B C
D E
3
2
5
1
6
4 ADestinazione
DistanzaA B C D E0 1 2 1 2
Link local 1 1 3 1
BDestinazione
DistanzaA B C D E1 0 1 2 1
Link 1 local 2 1 4
CDestinazione
DistanzaA B C D E2 1 0 2 1
Link 2 2 local 5 5
DDestinazione
DistanzaA B C D E1 2 2 0 1
Link 3 3 6 local 6
EDestinazione
DistanzaA B C D E2 1 1 1 0
Link 4 4 5 6 local
Routing Table
Database Topologico(link bidirezionali)
Da A link
A B 1
A D 3
B C 2
B E 4
D E 6
E C 5
Dist
1
1
1
1
1
1
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
33
Esempio: guasto di un ramoEsempio: guasto di un ramo
Guasto del ramo AB
A B C
D E
3
2
5
xxxx
6
4
ADestinazione
DistanzaA B C D E0 inf inf 1 inf
Link local 1 1 3 1
BDestinazione
DistanzaA B C D Einf 0 1 inf 1
Link 1 local 2 1 4
CDestinazione
DistanzaA B C D E2 1 0 2 1
Link 2 2 local 5 5
DDestinazione
DistanzaA B C D E1 2 2 0 1
Link 3 3 6 local 6
EDestinazione
DistanzaA B C D E2 1 1 1 0
Link 4 4 5 6 local
Routing Table
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
34
18
A B C
D E
3
2
5
xxxx
6
4
A LinkMetric
1Inf B Link
Metric1Inf
DatabaseTopologico
Da A link
A B 1
A D 3
B C 2
B E 4
D E 6
E C 5
Dist
Inf
1
1
1
1
1
ADestinazione
DistanzaA B C D E0 3 3 1 2
Link local 3 3 3 3
BDestinazione
DistanzaA B C D E3 0 1 2 1
Link 4 local 2 4 4
CDestinazione
DistanzaA B C D E3 1 0 2 1
Link 5 2 local 5 5
DDestinazione
DistanzaA B C D E1 2 2 0 1
Link 3 6 6 local 6
EDestinazione
DistanzaA B C D E2 1 1 1 0
Link 6 4 5 6 local
Routing Table
Esempio: guasto di un ramoEsempio: guasto di un ramo
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
35
OSPF strutturato gerarchicamenteOSPF strutturato gerarchicamente
� Gerarchia su due livelli: area locale, dorsale.
⇒ Messaggio di link-state solo all’interno dell’area ⇒ Ciascun nodo ha una sua area; conosce solo la direzione (shortest path)
verso le reti nelle altre aree
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
36
Router di confine d’area: appartengono sia a un’area generica sia alla dorsale
Router di dorsale: effettuano l’instradamento all’interno della dorsale, ma non sono router di confine.
Router di confine: scambiano informazioni con i router di altri sistemi autonomi.
19
3b
1d
3a
1c
2aAS3
AS1
AS21a
2c
2b
1b
3c
Instradamento tra sistemi autonomiInstradamento tra sistemi autonomi
• Supponiamo che un router in AS1 riceva un datagramma la cui destinazione ricade al di fuori di AS1⇒ Il router dovrebbe
inoltrare il pacchetto verso uno dei due gateway. Ma quale??
AS1 deve:
Sapere quali destinazioni sono raggiungibili attraverso AS2 e quali attraverso AS3
Informare tutti i router all’interno del sistema in modo che ciascuno possa configurare la propria tabella d’inoltro per gestire destinazioni esterne
→ instradamento inter-AS!
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
37
Esempio: tabella d’inoltro nel router 1dEsempio: tabella d’inoltro nel router 1d
� Supponiamo che AS1 apprenda dal proprio protocollo d’instradamento inter-AS
che la sottorete x è raggiungibile da AS3 (gateway 1c), ma non da AS2.
⇒ Il protocollo inter-AS propaga questa informazione a tutti i propri router.
⇒ Il router 1d determina, partendo dall’informazione fornita dal protocollo intra-
AS, l’interfaccia I del router sul percorso a costo minimo dal router 1d al
gateway 1c.
⇒ Il router 1d può inserire la riga (x,I) nella propria tabella d’inoltro.
3b
1d
3a
1c2a
AS3
AS1
AS21a
2c
2b
1b
3c
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
38
20
Dal protocollo inter-AS si apprende
che la sottorete xè raggiungibile
attraversopiù gateway.
Si usa l’informazioned’instradamentoproveniente dal
protocollo intra-ASper determinare i costi
dei percorsi a costo minimo verso i
gateway.
Instradamento a “patata bollente”: si
sceglie il gateway che ha il costo minimo
inferiore.
Della tabella d’inoltro si determina
l’interfaccia I che conduce al gateway
a costo minimo.Si scrive (x,I)
nella tabella d’inoltro.
Esempio: scegliere fra più ASEsempio: scegliere fra più AS
� Supponiamo inoltre che AS1 apprenda dal protocollo d’instradamento tra sistemi autonomi che la sottorete x è raggiungibile da AS2 e da AS3.
⇒ Al fine di configurare la propria tabella d’inoltro, il router 1D dovrebbe determinare a quale gateway, 1b o 1c, indirizzare i pacchetti destinati alla sottorete x.
⇒ Anche questo compito spetta al protocollo d’instradamento inter-AS!⇒ Instradamento a patata bollente: il sistema autonomo si sbarazza del pacchetto
(patata bollente) non appena possibile.
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
39
BGP (protocollo di tipo EGP)BGP (protocollo di tipo EGP)
� Gli AS sono generalmente gestiti da una stessa organizzazione, e spesso
sono racchiusi entro i confini nazionali
� La connessione tra diversi AS deve essere regolata da un protocollo che
tenga conto di parametri aggiuntivi, che OSPF o altri protocolli IGP non
possono considerare
⇒ ad esempio, un AS può voler accettare pacchetti provenienti da un altro
AS solo se destinati al suo interno, ma non come transito
⇒ un AS potrebbe accettare di fare da transito per alcuni (che magari
hanno pagato per il servizio) e non per altri
� Per soddisfare queste esigenze è stato realizzato il protocollo BGP (Border
Gateway Protocol)
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
40
21
Caratteristiche del Border Gateway ProtocolCaratteristiche del Border Gateway Protocol
� Tiene conto di vincoli indipendenti dalla logica del cammino più breve
� BGP considera la rete (costituita dai boundary router) come un grafico a maglia,
dove gli AS sono punti e le connessioni tra AS linee
� I costi delle linee ed eventuali vincoli vengono generalmente configurati
manualmente sui router
� BGP è un protocollo adattivo di tipo distance vector modificato
⇒ ogni router scambia con i vicini la propria tabella di routing
� Rispetto al distance vector: le informazioni scambiate contengono anche i
cammini completi verso le destinazioni (algoritmo path vector) � un router sa
che, per una certa strada, attraverserà determinati AS
⇒ in questo modo possono essere applicati i vincoli sul routing
� Ciò permette di risolvere il problema del conto all’infinito: ogni router sa se un
percorso scelto dal vicino passa per se stesso, e lo scarta
R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010
41