Upload
gianmarco-di-carlo
View
216
Download
2
Embed Size (px)
Citation preview
4-1
Routing in Internet
Crediti
Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© 1996-2003 All Rights Reserved)
4-2
Routing in Internet La “Big” Internet consiste di Autonomous Systems
(AS) interconnessi tra loro: Due livelli di routing:
Intra-AS: amministratore di rete sceglie algoritmo di routing Inter-AS: unico e standard per inter-AS routing: BGP
Inter-AS (exterior gateway) routers
Intra-AS (interior gateway) routers
4-3
Intra-AS Routing
Detti anche Interior Gateway Protocols (IGP) I protocolli di routing Intra-AS più utilizzati:
RIP: Routing Information Protocol
OSPF: Open Shortest Path First
IGRP: Interior Gateway Routing Protocol (Cisco proprietary)
4-4
RIP ( Routing Information Protocol)
Algoritmo di tipo Distance Vector Incluso nella Distribuzione BSD-UNIX nel 1982 RFC 1058 (v1), RFC 2453 (v2) Metrica di costo: numero di hop (max = 15 hop)
Distance vectors: scambiati tra i vicini ogni 30 s. via RIP Response Message (definito anche RIP advertisement)
Ogni RIP advertisement: elenca fino a 25 destinazioni di reti all’interno dell’AS
4-5
RIP: Esempio
Destination Network Next Router Num. of hops to dest. w A 2
y B 2 z B 7
x -- 1…. …. ....
w x y
z
A
C
D B
Routing table in D
4-6
RIP: Esempio
Destination Network Next Router Num. of hops to dest. w A 2
y B 2 z B A 7 5
x -- 1…. …. ....Routing table in D
w x y
z
A
C
D B
Dest Next hops w - - x - - z C 4 …. … ...
Advertisementfrom A to D
4-7
RIP: Caduta di un link e recovery Se nessun “avviso” (advertisement) ricevuto entro
180 s. --> vicino/link dichiarato irraggiungilbile percorsi attraverso il vicino invalidati nuovi avvisi inviati ai vicini (ancora
raggiungibili) vicini a loro volta inviano nuovi avvisi (se le
tabelle sono cambiate) l’informazione sulla caduta di un link si
propaga velocemnte per l’intera rete poison reverse usato per evitare percorsi ciclici
(distanza infinita = 16 hops)
4-8
RIP: Processamento tabelle di routing Routing tables del RIP gestite da un processo
a livello applicazione chiamato routed (daemon)
Avvisi inviati in pacchetti UDP, ripetuti periodicamente
physical
link
network routing (IP) table
Transprt (UDP)
routed
physical
link
network (IP)
Transprt (UDP)
routed
routingtable
4-9
RIP: Esempio tabella di routing
Router: giroflee.eurocom.fr
Tre reti (LAN) di classe C attaccate Il router conosce solo i percorsi alle LAN attaccate Default router usato per tutte le altre destinazioni Route multicast address: 224.0.0.0 Interfaccia di loopback (per debugging)
Destination Gateway Flags Ref Use Interface -------------------- -------------------- ----- ----- ------ --------- 127.0.0.1 127.0.0.1 UH 0 26492 lo0 192.168.2. 192.168.2.5 U 2 13 fa0 193.55.114. 193.55.114.6 U 3 58503 le0 192.168.3. 192.168.3.5 U 2 25 qaa0 224.0.0.0 193.55.114.6 U 3 0 le0 default 193.55.114.129 UG 0 143454
4-10
OSPF (Open Shortest Path First)
“Open”: disponibile a tutti (v2 in RFC 2178) Usa algoritmo Link State
disseminazione del LS mappa topologica completa ad ogni nodo calcolo dei percorsi per mezzo dell’algoritmo di Dijkstra
Router invia info su LS ogni volta che c’è una variazione (costo o stato) od ogni 30 minuti
Avvisi inviati all’intero AS (via broadcast) trasportati in messaggi OSPF (protocollo 89)
direttamente su IP (piuttosto che su TCP o UDP)
4-11
Miglioramenti in OSPF (non in RIP)
Sicurezza: tutti i messaggi OSPF autenticati (per prevenire intrusioni maliziose)
Percorsi Multipli con lo stesso costo (solo un percorso in RIP)
Per ogni link, metriche di costo multiple per differenti TOS (es., costo link satellite posto “low” per best effort, “high” per real time)
Supporto integrato per routing uni- e multicast: Multicast OSPF (MOSPF) usa stesso DB di OSPF
OSPF gerarchico in domini estesi
4-12
OSPF gerarchico
4-13
OSPF gerarchico (cont.)
Gerarchia a due livelli: area, backbone. Avviso su link-state solo all’interno dell’area ogni nodo ha topologia dettagliata dell’area;
conosce solamente la direzione (shortest path) alle reti nelle altre aree
Internal router: esegue solo instradamento intra-AS
Area border router: “riassume” le distanze alle reti della propria area, informa gli altri Area Border router
Backbone router: esegue OSPF routing limitatamente al backbone
Boundary router: connette agli altri AS
4-14
Inter-AS routing in Internet: BGP
Figure 4.5.2-new2: BGP use for inter-domain routing
AS2 (OSPF
intra-AS routing)
AS1 (RI P intra-AS
routing) BGP
AS3 (OSPF intra-AS
routing)
BGP
R1 R2
R3
R4
R5
4-15
Inter-AS routing in Internet: BGP
BGP (Border Gateway Protocol): lo standard de facto
Path Vector protocol: simile al Distance Vector protocol ogni Border Gateway invia in broadcast ai vicini
(peers) l’intero percorso (cioè la sequenza degli AS) alla destinazione
BGP instrada verso le reti (AS) non verso i singoli host
Es., Router X può inviare per la destinazione Z (tipo 128.119.40/24)
• il suo percorso : Path (X,Z) = X,Y1,Y2,Y3,…,Z• l’identità del prossimo router lungo il percorso
4-16
Inter-AS routing in Internet: BGP
Ipotesi: router X invia il suo percorso al pari router W W può o no selezionare il percorso offerto da X
motivi: costo, policy (non instradare attraverso AS dei competitori), prevenzione dei loop
Se W seleziona percorso suggerito da X allora:Path (W,Z) = w, Path (X,Z)
N.B. X può controllare il traffico entrante controllando i percorsi da ”suggerire” ai pari: es. se non si vuole instradare traffico verso Z -
> non suggerire alcun percorso verso Z
4-17
BGP: controllo dell’instradamento
Figure 4.5-BGPnew: a simple BGP scenario
A
B
C
W X
Y
legend:
customer network:
provider network
A,B,C sono reti dei provider X,W,Y sono clienti (dei network providers) X è dual-homed: attaccato a due reti
X non vuole instradare da B via X a C .. allora X non informerà B del percorso verso C
4-18
BGP: controllo dell’instradamento
Figure 4.5-BGPnew: a simple BGP scenario
A
B
C
W X
Y
legend:
customer network:
provider network
A “avvisa” B del percorso AW B “avvisa” X del percorso BAW Dovrebbe B “avvisare” C del percorso BAW?
No! B non “guadagna” dall’instradare CBAW poichè nè W nè C sono clienti di B
B vuole forzare C a instradare verso W via A B vuole instradare solo a/da i suoi clienti!
4-19
BGP: Operazioni
D: Cosa fa un router BGP? Riceve e filtra le informazioni ricevute tramite gli
annunci dei vicini direttamente collegati Seleziona il percorso
Per instradare verso la destinazione X, quale percorso (dei vari percorsi suggeriti) verrà scelto?
Politica di instradamento (non specificata in BGP)
Invia annunci sui percorsi ai vicini
4-20
BGP: messaggi
Messaggi BGP scambiati usando TCP (port 179) Messaggi BGP:
OPEN: apre connessioneTCP con il pari e autentica il sender
UPDATE: annuncia nuovo percorso (o rimuove uno esistente)
KEEPALIVE mantiene la connessione attiva in asenza di UPDATE; funziona da ACK alla richiesta di OPEN
NOTIFICATION: informa su errori del messaggio precedente; utilizzato anche per chiudere la connessione
4-21
Perchè routing differente per Intra- e Inter-AS? Policy: Inter-AS: ogni AS vuole pieno controllo sul traffico
instradato, su chi instrada attraverso la sua rete Intra-AS: amministrazione singola, nessuna
decisione politica necessaria
Scalabilità: Inter-AS: fondamentale Intra-AS: meno vincolante
routing gerarchico salva la dimensione delle tabelle, riduce traffico di update
Performance: Inter-AS: policy può influire più delle prestazioni Intra-AS: può focalizzarsi sulle prestazioni