part a - internetworking: routing ip. sommario introduzione tecniche di instradamento indirizzi...

57
Part A - Internetworking: routing IP

Upload: pietrina-manzi

Post on 01-May-2015

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Part A - Internetworking: routing IP

Page 2: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Sommario

• Introduzione • Tecniche di

instradamento • Indirizzi • L'instradamento • Neighbor greetings • L'internetworking

multiprotocollo • Il livello Network • Algoritmi di

instradamento • Algoritmi statici

• Algoritmi adattativi • Algoritmi di routing

distance vector • Algoritmi di routing

Link State Packet • Routing gerarchico • IP: Autonomous

System • IP: protocolli di

Routing • Glossario termini• Bibliografia-

Sitografia

Page 3: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Architettura di un Router

LA N WA N

Processo/i di Routing

Tabella di Routing

Processo di Forwarding

Page 4: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Tabella di routing

198.113.181.0/24 [170/304793]192.150.42.177 02:03:50 D

198.113.181.64/26

192.168.96.0

192.150.42.0/24

[110/9936]192.150.42.11 02:03:50 O

192.150.42.177 00:00:20 R

C

[120/3]

Ethernet0

Ethernet0

Ethernet0

Ethernet0

Network # Interface Next Hop Metric Age Source

150.100.0.0/16 Ethernet0 192.150.42.177 [110/8506] 01:03:50 O

150.100.32.0/24 Ethernet0 192.150.42.11 [120/2] 00:00:15 R

0.0.0.0 / 0 Serial0 195.31.42.57 [1] S

Page 5: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Algoritmi di routing

• Le tabelle possono essere costruite con algoritmi:

–Statico• tabelle definite dal gestore• il gestore ha un totale controllo dei flussi di traffico• deve intervenire manualmente per riconfigurare la rete• utilizzato ad es. nella parte non magliata di reti TCP/IP

–Dinamico• tabelle calcolate con appositi algoritmi di routing ed

aggiornate automaticamente ad ogni modifica della configurazione della rete

Page 6: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Routing statico e dinamico

Zona della rete in cui è utilizzato routing dinamico

Page 7: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Protocolli di Routing

• I protocolli di routing stabiliscono le regole per la comunicazione tra i vari router all’interno di una rete.

• I protocolli di routing distribuiscono dinamicamente le informazioni sulla topologia della rete necessarie per la scelta dei percorsi e le modificano quando avviene qualche cambiamento.

• Ogni protocollo di routing applica un algoritmo di routing per la scelta del percorso “più breve” sulla base delle informazioni sulla topologia della rete possedute

Page 8: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Mappa dei Protocolli di RoutingMappa dei Protocolli di Routing

IP Routing Protocols IP Routing Protocols

Interior Gateway Protocol

( intra - Autonomous System)

Interior Gateway Protocol

( intra - Autonomous System)

Exterior Gateway Protocol

( inter - Autonomous Systems)

Exterior Gateway Protocol

( inter - Autonomous Systems)

BGPBGPDistance Vector

Protocol

Distance Vector

Protocol

RIPRIPOSPF IS-IS

OSPF IS-IS

Link State Protocol

Link State Protocol

Page 9: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

IGP ed EGPIGP ed EGP

Autonomous system 3

Autonomous system (AS) 1

IGP

EGP

Autonomous system 2

Internal Router

Internal RouterInternal Router

AS Border Router

Page 10: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

INTERNET

SUBNETS

Router

Host

Struttura di Internet

Page 11: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Gli “Autonomous Systems” o“Sistemi Autonomi”

AS 1

AS 2

AS 3

BGP-4

BGP-4

BGP-4OSPF

RIP

IGRP

AS 4

RIP

BGP-4

Page 12: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

• OSPF è un protocollo di tipo link state

• Utilizza l’algoritmo di Dijkstra• Ogni router conosce lo stato di

tutta la rete• I cambiamenti sul routing

vengono propagati istantaneamente (nel momento in cui avvengono) attraverso la tecnica del “flooding”

• Migliore convergenza rispetto al RIP

• OSPF utilizza una struttura gerarchica

• OSPF si adatta bene a reti di grandi dimensioni

• OSPF è un protocollo di tipo link state

• Utilizza l’algoritmo di Dijkstra• Ogni router conosce lo stato di

tutta la rete• I cambiamenti sul routing

vengono propagati istantaneamente (nel momento in cui avvengono) attraverso la tecnica del “flooding”

• Migliore convergenza rispetto al RIP

• OSPF utilizza una struttura gerarchica

• OSPF si adatta bene a reti di grandi dimensioni

IGP: RIP o OSPF?IGP: RIP o OSPF?

• Rip è un protocollo di tipo Distance Vector

• Utilizza l’algoritmo di Bellmann-Ford

• Ogni router informa solamente i suoi vicini sulla propria tabella di routing

• I cambiamenti sul routing vengono propagati periodicamente causando un’occupazione di banda (circa ogni 30 sec.)

• Lenta convergenza• RIP viene utilizzato in reti di

piccole dimensioni

• Rip è un protocollo di tipo Distance Vector

• Utilizza l’algoritmo di Bellmann-Ford

• Ogni router informa solamente i suoi vicini sulla propria tabella di routing

• I cambiamenti sul routing vengono propagati periodicamente causando un’occupazione di banda (circa ogni 30 sec.)

• Lenta convergenza• RIP viene utilizzato in reti di

piccole dimensioni

Page 13: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Altri protocolli di routing

• IGRP (Interior Gateway Routing Protocol) è stato sviluppato da CISCO per risolvere alcune limitazioni di RIP. Come RIP, è un protocollo “distance-vector”.

• IS-IS è molto simile ad OSFP (è un protocollo “link state”)

• EGP (Exterior Gateway Protocol) è stato il primo protocollo di routing inter-dominio utilizzato. Presenta molte limitazioni ed è stato quindi sostituito dal BGP

• BGP (Border Gateway Protocol) è il protocollo di routing inter-dominio attualmente utilizzato (nella versione BGP-4)

Page 14: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Ogni nodo mantiene un database con le distanze minime tra sé stesso e tutte le possibili destinazioni

Noto anche come algoritmo di Bellman-Ford

Ogni nodo, quando modifica le proprie tabelle di instradamento, invia ai nodi adiacenti un distance vector

Il distance vector è un insieme di coppie[indirizzo - distanza]

La distanza è espressa tramite metriche classiche quali numero di hop e costo

Un router ricalcola le sue tabelle se:cade una linea attivariceve un distance vector da un nodo adiacente diverso da quello memorizzato (più recente)

Il calcolo consiste nella fusione di tutti i distance vector delle linee attive

Se le tabelle risultano diverse da quelle precedenti, invia ai nodi adiacenti un nuovo distance vector

Distance Vector

Page 15: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

D C2 54 106 307 15

RRaRbRcRd

D C1 03 10

5 307 15

RRaRb

RcRd

D C2 153 106 20

RRaRbRc

D C1 152 153 154 20

8 10 Rd

RR2R1R4R1

5 456 257 258 25

R2R4R1R2

costo = 10 costo = 15

costo

= 54 60 Rb

R1R2

R3

R4

Distance Vector

Page 16: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Vantaggi:Molto semplice da implementare

Svantaggi:Possono innescarsi dei loop a causa di particolari variazioni della topologia

Converge alla velocità del link più lento e del router più lento

Difficile capirne e prevederne il comportamento su reti grandi: nessun nodo ha una mappa della rete!

L’implementazione di meccanismi migliorativi appesantisce notevolmente il protocollo

Distance Vector: caratteristiche

Page 17: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Routing Information Protocol (RIP)Routing Information Protocol (RIP)

• RIP appartiene alla categoria dei Distance Vector Routing Distance Vector Routing ProtocolsProtocols

• Applica l’algoritmo di Bellman-Ford per la determinazione delle tabelle di instradamento

• E’ richiesto che ogni nodo scambi informazioni con i nodi vicini

– due nodi sono vicini se sono direttamente connessi mediante la stessa rete

• RIP è utilizzato in reti di piccole dimensioni• E’ molto semplice, tuttavia

– la convergenza è lenta– lo stato di equilibrio può essere un sub-ottimo

Page 18: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

RIP: tabelle di statoRIP: tabelle di stato

• Ogni router ha una tabella di stato in cui compare una riga (colonna) per ciascuna rete di cui il router sia a conoscenza

• Ogni riga (colonna) contiene le seguenti informazioni:– indirizzo identificativo della rete– indirizzo del primo router del percorso (next hop)– distanza dalla rete (numero minimo di reti da attraversare se

metriche unitarie)

Page 19: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP: Inizializzazione (1)

• Condizione iniziale– Routing table vuote

• Metrica– Distanza

A B C

D E

3

2

5

1

6

4 ADestinazione

DistanzaA B C D E0 ? ? ? ?

Link local ? ? ? ?

BDestinazione

DistanzaA B C D E? 0 ? ? ?

Link ? local ? ? ?

CDestinazione

DistanzaA B C D E? ? 0 ? ?

Link ? ? local ? ?

DDestinazione

DistanzaA B C D E? ? ? 0 ?

Link ? ? ? local ?

EDestinazione

DistanzaA B C D E? ? ? ? 0

Link ? ? ? ? local

Routing Table

Page 20: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP: Inizializzazione (2)

• Step 2:– A emette un messaggio

verso B e D

A B C

D E

3

2

5

1

6

4

A AddressMetric

A --- --- --- ---0 --- --- --- ---

ADestinazione

DistanzaA B C D E0 ? ? ? ?

Link local ? ? ? ?

BDestinazione

DistanzaA B C D E1 0 ? ? ?

Link 1 local ? ? ?

CDestinazione

DistanzaA B C D E? ? 0 ? ?

Link ? ? local ? ?

DDestinazione

DistanzaA B C D E1 ? ? 0 ?

Link 3 ? ? local ?

EDestinazione

DistanzaA B C D E? ? ? ? 0

Link ? ? ? ? local

Routing Table

Page 21: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP: Inizializzazione (3)

• Step 3:– B emette un messaggio

verso A, C e E

A B C

D E

3

2

5

1

6

4

B AddressMetric

A B --- --- ---1 0 --- --- ---

ADestinazione

DistanzaA B C D E0 1 ? ? ?

Link local 1 ? ? ?

BDestinazione

DistanzaA B C D E1 0 ? ? ?

Link 1 local ? ? ?

CDestinazione

DistanzaA B C D E2 1 0 ? ?

Link 2 2 local ? ?

DDestinazione

DistanzaA B C D E1 ? ? 0 ?

Link 3 ? ? local ?

EDestinazione

DistanzaA B C D E2 1 ? ? 0

Link 4 4 ? ? local

Routing Table

Page 22: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP : Inizializzazione (4)

• Step 4:– D emette un messaggio

verso A e E

A B C

D E

3

2

5

1

6

4

D AddressMetric

A --- --- D ---1 --- --- 0 ---

ADestinazione

DistanzaA B C D E0 1 ? 1 ?

Link local 1 ? 3 ?

BDestinazione

DistanzaA B C D E1 0 ? ? ?

Link 1 local ? ? ?

CDestinazione

DistanzaA B C D E2 1 0 ? ?

Link 2 2 local ? ?

DDestinazione

DistanzaA B C D E1 ? ? 0 ?

Link 3 ? ? local ?

EDestinazione

DistanzaA B C D E2 1 ? 1 0

Link 4 4 ? 6 local

Routing Table

Page 23: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP : Inizializzazione (5)

• Step 5:– A emette un messaggio

verso B e D

A B C

D E

3

2

5

1

6

4

A AddressMetric

A B --- D ---0 1 --- 1 ---

ADestinazione

DistanzaA B C D E0 1 ? 1 ?

Link local 1 ? 3 ?

BDestinazione

DistanzaA B C D E1 0 ? 2 ?

Link 1 local ? 1 ?

CDestinazione

DistanzaA B C D E2 1 0 ? ?

Link 2 2 local ? ?

DDestinazione

DistanzaA B C D E1 2 ? 0 ?

Link 3 3 ? local ?

EDestinazione

DistanzaA B C D E2 1 ? 1 0

Link 4 4 ? 6 local

Routing Table

Page 24: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP : Inizializzazione (6)

• Step 6:– C emette un messaggio

verso B e E

A B C

D E

3

2

5

1

6

4

C AddressMetric

A B C --- ---2 1 0 --- ---

ADestinazione

DistanzaA B C D E0 1 ? 1 ?

Link local 1 ? 3 ?

BDestinazione

DistanzaA B C D E1 0 1 2 ?

Link 1 local 2 1 ?

CDestinazione

DistanzaA B C D E2 1 0 ? ?

Link 2 2 local ? ?

DDestinazione

DistanzaA B C D E1 2 ? 0 ?

Link 3 3 ? local ?

EDestinazione

DistanzaA B C D E2 1 1 1 0

Link 4 4 5 6 local

Routing Table

Page 25: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP : Inizializzazione (7)

• Step 7:– E emette un messaggio

verso B, C e D

A B C

D E

3

2

5

1

6

4

E AddressMetric

A B C D E2 1 1 1 0

ADestinazione

DistanzaA B C D E0 1 ? 1 ?

Link local 1 ? 3 ?

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

Page 26: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP : Inizializzazione (8)

• Step 8:– B emette un messaggio

verso A, C e E

A B C

D E

3

2

5

1

6

4

B AddressMetric

A B C D E1 0 1 2 1

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

Page 27: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP : Guasto di un ramo (1)

• Condizione iniziale– rete a regime – guasto del ramo AB

• Metrica– Distanza

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

Page 28: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP : Guasto di un ramo (2)

• Step 1– Messaggio di A verso D

– Messaggio di B verso C ed E

A B C

D E

3

2

5

xxxx

6

4A

DestinazioneDistanza

A 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 Einf 1 0 2 1

Link 2 2 local 5 5

DDestinazione

DistanzaA B C D E1 inf 2 0 1

Link 3 3 6 local 6

EDestinazione

DistanzaA B C D Einf 1 1 1 0

Link 4 4 5 6 local

Routing Table

A AddressMetric

A B C D E0 inf inf 1 inf

B AddressMetric

A B C D Einf 0 1 inf 1

Page 29: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP : Guasto di un ramo (3)

• Step 2– Messaggio di C verso B, E

– Messaggio di D verso A, E

– Messaggio di E verso B, D, E

A B C

D E

3

2

5

xxxx

6

4

ADestinazione

DistanzaA B C D E0 inf 3 1 2

Link local 1 3 3 3

BDestinazione

DistanzaA B C D Einf 0 1 2 1

Link 1 local 2 4 4

CDestinazione

DistanzaA B C D Einf 1 0 2 1

Link 2 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

C AddressMetric

A B C D Einf 1 0 2 inf

D AddressMetric

A B C D E1 inf 2 0 1

E AddressMetric

A B C D Einf 1 1 1 0

Page 30: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP : Guasto di un ramo (4)

• Step 3– Messaggio di A verso D

– Messaggio di B verso E, C

– Messaggio di D verso A, E

– Messaggio di E verso B, C, D

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

A AddressMetric

A B C D E0 inf 3 1 2

D AddressMetric

A B C D E1 2 2 0 1

E AddressMetric

A B C D E2 1 1 1 0

B AddressMetric

A B C D Einf 0 1 2 1

Page 31: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP : Conteggio all’infinito (1)

• Uno dei problemi di RIP è il cosiddetto “conteggio all’infinito” che accade quando– una rete diviene irrangiugibile (guasto di un link)– le metriche non sono unitarie

A B

C

D

1

11

10

1

Rete Destinazione 1

• Metriche per la rete di destinazione– Nodo D Metrica 1 Diretto– Nodo B Metrica 2 Router D– Nodo C Metrica 3 Router B– Nodo A Metrica 3 Router B

Page 32: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP : Conteggio all’infinito (2)

• Se il link BD si guasta (metrica infinita):– tutte i cammini transiteranno attraverso il nodo C

– la convergenza sarà molto lenta

– il tempo di convergenza dipende dal valore della metrica del ramo CD

• Il meccanismo è il seguente:– Il nodo B si accorge immediatamente del guasto

– I nodi A e C mandano messaggi RIP di aggiornamento della via verso D indicando implicitamente il transito da B

– Il nodo B crede erroneamente che esista una via verso D attraverso A o C

– L’instradamento converge solo dopo che il conteggio ha raggiunto il valore del peso del link CD

• RIP usa la metrica massima uguale a 16

Page 33: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio RIP : Conteggio all’infinito (3)

D Diretto 1

Nodo Next hop Metr.

B ----

C B 3

A B 3

Step 1

D Diretto 1

Nodo Next hop Metr.

B C 4

C A 4

A C 4

Step 2

D Diretto 1

Nodo Next hop Metr.

B C 5

C A 5

A C 5

Step 3

D Diretto 1

Nodo Next hop Metr.

B C 6

C A 6

A C 6

Step 4

D Diretto 1

Nodo Next hop Metr.

B C 12

C D 11

A C 12

Step 10

Page 34: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

RIP: Split Horizon

• Ha lo scopo di evitare gli effetti del conteggio all’infinito

• Nella seguente situazione di routing non ha senso che

– B tenti di raggiungere X attraverso A– A annunci a B la propria distanza da X

• Un nodo emette verso i nodi adiacenti messaggi differenziati secondo una delle seguenti regole– omettendo le informazioni sui cammini che passano sul link su cui si

emette il messaggio (simple split horizon)– ponendo a la metrica dei cammini che passano sul link su cui si

emette il messaggio (split horizon with poisonous reverse)

A B X

Page 35: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

RIP: Triggered Updates

• La tecnica Split horizon with poisonous reverse interrompe i loop che coinvolgono due router– Sono tuttavia possibili loop con tre o più nodi

• A crede di avere un cammino attraverso B• B crede di avere un cammino attraverso C• C crede di avere un cammino attraverso A

• Rimedio– Ogni volta che una tabella di routing viene modificata, il nodo emette

verso i nodi adiacenti messaggi di aggiornamento – Si riduce il tempo di convergenza, poiché elimina l’attesa dello

scadimento del time-out di emissione

Page 36: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

RIP (Versione 1)

• Formato compatibile con i messaggi Berkeley Software Distribution (BSD) UNIX

• Un messaggio RIP è incapsulato in una unità dati UDP

• Pacchetto Request

– è emesso da un router per chiedere ad un nodo vicino l’invio della distance vector table o di una parte di essa

• Pacchetto Response

– è 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)

Page 37: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

RIP (Versione 1)

• Il formato massimo di un messaggio RIP è di 512 bytes– massimo 25 blocchi per messaggio – in caso di un numero maggiore di 25 indirizzi da aggiornare si

utilizzano messaggi RIP multipli

• Non supporta la tecnica della subnet mask– un router deve conoscere la struttura degli indirizzi

• La metrica usata è la distanza (intero compreso da 1 a 16)– il valore 16 indica infinito

• Se per 180 s un indirizzo di rete non è rinfrescato viene rimosso dalla routing table del router

• In caso di variazioni consecutive dello stato dei link i messaggi RIP sono emessi con intervallo da 1 a 5 s

Page 38: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Formato pacchetto RIP (Versione 1)

• Header– Command

• request• response

– Version• Block

– IP address• rete, sottorete o host

– Metric• distanza dalla rete

indicata nell’IP addressAddress Identifier 0

IP Address N00

Metric for address N

Command Version 0Address Identifier 0

IP Address 100

Metric for address 1Address Identifier 0

IP Address 200

Metric for address 2A

dd

ress

1d

ista

nce

Ad

dre

ss 2

dis

tan

ceF

ino

a 2

5ad

dre

sses

Page 39: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

RIP (Versione 2)

• Estende le funzionalità di RIP-1– può essere utilizzato in reti di media dimensione– supporta la tecnica di subnetting variabile o supernetting

(CIDR)– è compatibile con RIP-1– router di diverso tipo possono coesistere in una stessa rete

• Le metrica utilizzata è identica a quella di RIP-1– distanza (intero da 1 a 16)– il valore 16 indica infinito

• RIP-2 utilizza i byte inutilizzati nel formato dei pacchetti RIP-1

Page 40: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Formato pacchetto RIP (Versione 2)

– Route Tag• gestisce l’interoperabilità con altri

protocolli di routing (es. EGP)

– IP address• rete, sottorete o host

– Subnet Mask• specifica come interpretare i bit

dell’indirizzo

– Next Hop• indica quale è il next hop router a

cui il router emittente il messaggio RIP invierà i pacchetti diretti all’indirizzo specificato

– Metric• distanza della rete indicata nell’IP

address dal router emittente

Address Identifier Route TagIP Address NSubnet Mask

Next HopMetric for address N

Command Version Routing DomainAddress Identifier Route Tag

IP Address 1Subnet Mask

Next HopMetric for address 1

Address Identifier Route TagIP Address 2Subnet Mask

Next HopMetric for address 2

Ad

dre

ss 1

dis

tan

ceA

dd

ress

2d

ista

nce

Fin

o a

25

add

ress

es

Page 41: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Link State Routing

• I protocolli “Link State” sono adatti a reti di grandi dimensioni

• Principi base:– i router hanno la responsabilità di contattare i router vicini e

acquisire la loro identità (pacchetti Hello)– i router emettono i link state packets (LSP) che contengono la

lista delle reti connesse al router (vicini) ed i loro costi associati– gli LSP sono trasmessi a tutti gli altri router (flooding)– tutti i router hanno lo stesso insieme di dati e quindi possono

costruire la stessa mappa della rete (database topologicodatabase topologico)– le mappe di rete sono utilizzate per determinare i cammini

migliori e quindi l’instradamento

Page 42: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Link State Routing

• Gli LSP sono emessi– quando un router contatta un nuovo router vicino– quando un link si guasta– quando il costo di un link varia– periodicamente ogni fissato intervallo di tempo

• La rete trasporta gli LSP mediante la tecnica del flooding– un LSP è rilanciato da un router su tutte le sue interfacce tranne

quella da cui è stato ricevuto– gli LSP trasportano dei riferimenti temporali (time stamp) o numeri

di sequenza per• evitare il rilancio di pacchetti già rilanciati

• consentire un corretto riscontro dal ricevente

Page 43: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Tecnica del “Flooding”

• Assicura che tutti i router di una rete– riescano a costruire un database contenente lo stato della rete

– abbiano le stesse informazioni sullo stato dei link

• Alla ricezione di un LSP:– un router esamina i campi di un LSP: link identifier, metrica, time stamp o

numero di sequenza

– se il dato non è contenuto nel database, viene memorizzato e l’LSP è rilanciato su tutte le interfacce del router tranne quella di ricezione

– se il dato ricevuto è più recente di quello contenuto nel database, il suo valore è memorizzato e l’LSP è rilanciato su tutte le interfacce del router tranne quella di ricezione

– se il dato ricevuto è più vecchio di quello contenuto nel database, viene rilanciato un LSP con il valore contenuto nel database esclusivamente sull’interfaccia di arrivo dell’LSP

– se i due dati sono della stessa età non viene eseguita alcuna operazione

Page 44: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Tecnica del “Flooding”

• La tecnica del flooding ha i seguenti vantaggi– esplora tutti i possibili cammini tra origine e destinazione– è estremamente affidabile e robusta– almeno una copia di ogni LSP seguirà la via a minor costo

• Dall’altro lato, il traffico generato dipende dalle dimensioni della rete e può essere molto elevato

Page 45: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

(replicato su ogni router)

A B/2 D/5 a/1

B A/2 C/2 b/1

C B/2 D/4 E/3

D A/5 F/6 G/7 C/4

E C/3 G/2

F D/6 c/1

G D/7 E/2 d/1 e/1

A B/2 D/5 a/1

B A/2 C/2 b/1

C B/2 D/4 E/3

D A/5 F/6 G/7 C/4

E C/3 G/2

F D/6 c/1

G D/7 E/2 d/1 e/1

LSP Database

Costo

A

D

F

C

E

B

G

a

b

c

d

e

2

54

7 3

2

6

1

1

1

1

1

2

LSP database

Page 46: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Ogni router calcola indipendentemente le sue tabelle di routing applicando alla mappa della rete l'algoritmo di Dijkstra o SPF (Shortest Path First)

Tabella di routing di Aa

A

D

F

C

E

B

G

b

c

d

e

2

5

3

2

6

1

1

1

1

1

2

Dest via costoa diretto 1b B 3c D 12d B 10e B 10B diretto 2C B 4D diretto 5E B 7F D 11G B 9

Dest via costoa diretto 1b B 3c D 12d B 10e B 10B diretto 2C B 4D diretto 5E B 7F D 11G B 9

Tabella di routing

Page 47: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Vantaggi:Può gestire reti di grandi dimensioniHa una convergenza rapidaDifficilmente genera loop, e comunque è in grado di identificarli e interromperli facilmenteFacile da capire: ogni nodo ha la mappa della rete

Svantaggi:Molto complesso da realizzare (la prima implementazione ha richiesto a Digital 5 anni)

Link State: caratteristiche

Page 48: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Open Shorthest Path First (OSPF)Open Shorthest Path First (OSPF)

• E’ un protocollo di tipo link-statelink-state che supera le limitazioni del protocollo RIP

• Consente una maggiore velocità di convergenza

• Algoritmo:

– inizialmente ogni router determina il costo dei rami uscenti

– invia questi dati a tutti i router della rete (tecnica flooding)

– continua a monitorare il costo dei propri rami

– in caso di variazionein caso di variazione del costo di un ramo, il router invia il nuovo valore del costo di quel ramo a tutti i router

• Ogni nodo conosce quindi lo stato dell’intera rete e può usare localmente l’algoritmo di Dijkstra

Page 49: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

OSPF : Topologia della Rete (1/2)OSPF : Topologia della Rete (1/2)

• Ogni router mantiene un database che riflette i dati aggiornati sulla topologia della rete (Link State Link State Database o Database topologicoDatabase 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

Page 50: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

OSPF: Topologia della Rete (2/2)OSPF: Topologia della Rete (2/2)

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

2

7

5

6

6

1

1

4

12

1

3

21

6

8

10

N12 N13 N14

N12

N15

Rete8

88

2

9

N6

R1

R2

R4

R3 R6

R5

R7

R10

R8

R11

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 2Grafo

8

H1

2

Page 51: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

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

Page 52: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

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

R8

R11

R9

R12

N1

N2

N3

N4

N6

N7

N8

N11

N9

N10

3

3

6 8

7

2

6

1

3

1

4

1

3

10 2

8

8

9

2

N12

N13

N14

N12

N15

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 8

N12 R10 10N13 R5 14N14 R5 14N15 R10 17

N11 R10 14H1 R10 21

Spanning Tree e Routing Table in R6

Page 53: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

OSPF: Costruzione delleTabelle di Routing

OSPF: Costruzione delleTabelle di Routing

• Nodi vicini si riconoscono attraverso messaggi di “Hello”

• Una volta riconosciutisi, instaurano rapporti di adiacenza

• Nodi adiacenti si scambiano le informazioni sulla topologia dell’intera rete in loro possesso

• A regime tutti i nodi hanno una visione completa (ed uguale) della topologia di tutta la rete (Database TopologicoDatabase Topologico)

• A partire dal database topologico ogni router costruisce la propria tabella di routing

Page 54: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

OSPF: Costruzione delleTabelle di Routing

OSPF: Costruzione delleTabelle di Routing

Ogni routercalcola i percorsi a

costo più basso

Algoritmo SPF(Dijkstra)

C

DA

B

1(15)

2(25)

3(15)

4(5)

5(10)

Link ID (Metrica)

Database TopologicoFrom To Link Costo

A B 1 15A C 2 25B A 1 15B C 3 10B D 4 5C A 2 25C B 3 10C D 5 10D B 4 5D C 5 10

Routing Table for ADest Cost Next HopB 15 BC 25 CD 20 B

Page 55: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio OSPF (1/3)

A B C

D E

3

2

5

1

6

4A

DestinazioneDistanza

A 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

Page 56: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio OSPF (2/3)

• 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 E

inf 0 1 inf 1Link 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

Page 57: Part A - Internetworking: routing IP. Sommario Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo

Esempio OSPF (3/3)

A B C

D E

3

2

5

xxxx

6

4

A LinkMetric

1Inf B Link

Metric1

Inf

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