Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
Part A - Internetworking: routing IP
2
Sommario Algoritmi adattativi Introduzione
Algoritmi di routing distance vector Algoritmi di routing Link State Packet Routing gerarchico IP: Autonomous System IP: protocolli di Routing Glossario termini Bibliografia-Sitografia Introduzione Tecniche di instradamento Indirizzi L'instradamento Neighbor greetings L'internetworking multiprotocollo Il livello Network Algoritmi di instradamento Algoritmi statici
3
Architettura di un Router
Processo/i di Routing Tabella di Routing Processo di Forwarding L A N W A N
4
Tabella di routing Network # Interface Next Hop Metric Age Source
/24 Ethernet0 [170/304793] 02:03:50 D /26 Ethernet0 [110/9936] 02:03:50 O Ethernet0 [120/3] 00:00:20 R /24 Ethernet0 C /16 Ethernet0 [110/8506] 01:03:50 O /24 Ethernet0 [120/2] 00:00:15 R / 0 Serial0 [1] S
5
Algoritmi di routing Statico Dinamico
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
6
Routing statico e dinamico
Zona della rete in cui è utilizzato routing dinamico
7
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
8
Mappa dei Protocolli di Routing
IP Routing Protocols Interior Gateway Protocol ( intra - Autonomous System) Exterior Gateway Protocol ( inter - Autonomous Systems) Distance Vector Protocol RIP OSPF IS-IS Link State Protocol BGP
9
Autonomous system (AS) 1
IGP ed EGP Autonomous system (AS) 1 Internal Router Internal Router IGP Internal Router AS Border Router EGP Autonomous system 2 Autonomous system 3
10
Struttura di Internet INTERNET Router SUBNETS Host
11
Gli “Autonomous Systems” o “Sistemi Autonomi”
AS 2 RIP RIP AS 1 BGP-4 AS 4 BGP-4 OSPF BGP-4 BGP-4 IGRP AS 3
12
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 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
13
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)
14
Distance Vector 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 attiva riceve 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
15
Distance Vector costo = 15 costo = 10 costo = 5 5 4 10 6 30 7 15 Ra Rb
2 5 4 10 6 30 7 15 R Ra Rb Rc Rd 1 3 20 8 R2 R1 R4 45 25 costo = 10 costo = 15 costo = 5 60 R3
16
Distance Vector: caratteristiche
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
17
Routing Information Protocol (RIP)
RIP appartiene alla categoria dei Distance Vector Routing Protocols 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
18
RIP: 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)
19
Esempio RIP: Inizializzazione (1)
Destinazione Distanza B C D E ? Link local Routing Table A B C D E 3 2 5 1 6 4 Condizione iniziale Routing table vuote Metrica Distanza
20
Esempio RIP: Inizializzazione (2)
Destinazione Distanza B C D E ? Link local 1 3 Routing Table A B C D E 3 2 5 1 6 4 Step 2: A emette un messaggio verso B e D A Address Metric ---
21
Esempio RIP: Inizializzazione (3)
Destinazione Distanza B C D E 1 ? Link local 2 3 4 Routing Table A B C D E 3 2 5 1 6 4 Step 3: B emette un messaggio verso A, C e E B Address Metric A --- 1
22
Esempio RIP : Inizializzazione (4)
Destinazione Distanza B C D E 1 ? Link local 3 2 4 6 Routing Table A B C D E 3 2 5 1 6 4 Step 4: D emette un messaggio verso A e E D Address Metric A --- 1
23
Esempio RIP : Inizializzazione (5)
Destinazione Distanza B C D E 1 ? Link local 3 2 4 6 Routing Table A B C D E 3 2 5 1 6 4 Step 5: A emette un messaggio verso B e D A Address Metric B --- D 1
24
Esempio RIP : Inizializzazione (6)
Destinazione Distanza B C D E 1 ? Link local 3 2 4 5 6 Routing Table A B C D E 3 2 5 1 6 4 Step 6: C emette un messaggio verso B e E C Address Metric A B --- 2 1
25
Esempio RIP : Inizializzazione (7)
Destinazione Distanza B C D E 1 ? Link local 3 2 4 5 6 Routing Table A B C D E 3 2 5 1 6 4 Step 7: E emette un messaggio verso B, C e D E Address Metric A B C D 2 1
26
Esempio RIP : Inizializzazione (8)
Destinazione Distanza B C D E 1 2 Link local 3 4 5 6 Routing Table A B C D E 3 2 5 1 6 4 Step 8: B emette un messaggio verso A, C e E B Address Metric A C D E 1 2
27
Esempio RIP : Guasto di un ramo (1)
Destinazione Distanza B C D E inf 1 Link local 3 2 4 5 6 Routing Table A B C D E 3 2 5 xxxx 6 4 Condizione iniziale rete a regime guasto del ramo AB Metrica Distanza
28
Esempio RIP : Guasto di un ramo (2)
Destinazione Distanza B C D E inf 1 Link local 3 2 4 5 6 Routing Table A B C D E 3 2 5 xxxx 6 4 Step 1 Messaggio di A verso D Messaggio di B verso C ed E A Address Metric B C D E inf 1 B Address Metric A C D E inf 1
29
Esempio RIP : Guasto di un ramo (3)
B C D E 3 2 5 xxxx 6 4 A Destinazione Distanza B C D E inf 3 1 2 Link local 4 5 6 Routing Table Step 2 Messaggio di C verso B, E Messaggio di D verso A, E Messaggio di E verso B, D, E C Address Metric A B D E inf 1 2 D Address Metric A B C E 1 inf 2 E Address Metric A B C D inf 1
30
Esempio RIP : Guasto di un ramo (4)
Destinazione Distanza B C D E 3 1 2 Link local 4 5 6 Routing Table 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 A Address Metric B C D E inf 3 1 2 B Address Metric A C D E inf 1 2 D Address Metric A B C E 1 2 E Address Metric A B C D 2 1
31
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 10 Rete Destinazione 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
32
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
33
Esempio RIP : Conteggio all’infinito (3)
D Diretto 1 Nodo Next hop Metr. B ---- C 3 A Step 1 D Diretto 1 Nodo Next hop Metr. B C 4 A Step 2 D Diretto 1 Nodo Next hop Metr. B C 5 A Step 3 D Diretto 1 Nodo Next hop Metr. B C 6 A Step 4 D Diretto 1 Nodo Next hop Metr. B C 12 11 A Step 10
34
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
35
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
36
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)
37
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
38
Formato pacchetto RIP (Versione 1)
Header Command request response Version Block IP address rete, sottorete o host Metric distanza dalla rete indicata nell’IP address Address Identifier IP Address N Metric for address N Command Version IP Address 1 Metric for address 1 IP Address 2 Metric for address 2 Address 1 distance Address 2 Fino a 25 addresses
39
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
40
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 Tag IP Address N Subnet Mask Next Hop Metric for address N Command Version Routing Domain IP Address 1 Metric for address 1 IP Address 2 Metric for address 2 Address 1 distance Address 2 Fino a 25 addresses
41
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 topologico) le mappe di rete sono utilizzate per determinare i cammini migliori e quindi l’instradamento
42
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
43
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
44
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
45
LSP database Costo LSP Database A B/2 D/5 a/1 B A/2 C/2 b/1
F C E B G a b c d e 2 5 4 7 3 6 1 LSP Database 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 (replicato su ogni router)
46
Tabella di routing Ogni router calcola indipendentemente le sue tabelle di routing applicando alla mappa della rete l'algoritmo di Dijkstra o SPF (Shortest Path First) a A D F C E B G b c d e 2 5 3 6 1 Tabella di routing di A Dest via costo a diretto 1 b B 3 c D 12 d B 10 e B 10 B diretto 2 C B 4 D diretto 5 E B 7 F D 11 G B 9
47
Link State: caratteristiche
Vantaggi: Può gestire reti di grandi dimensioni Ha una convergenza rapida Difficilmente genera loop, e comunque è in grado di identificarli e interromperli facilmente Facile da capire: ogni nodo ha la mappa della rete Svantaggi: Molto complesso da realizzare (la prima implementazione ha richiesto a Digital 5 anni)
48
Open Shorthest Path First (OSPF)
E’ un protocollo di tipo link-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 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
49
OSPF : Topologia della Rete (1/2)
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
50
OSPF: Topologia della Rete (2/2)
N11 N3 N4 N6 N7 N8 N9 N1 N2 N10 R2 R3 R1 R6 R4 R5 R7 R10 R9 R11 R8 H1 R12 3 1 8 7 6 2 5 4 10 N12 N13 N14 N15 Rete 9 N6 R1 R2 R4 R3 R6 R5 R7 R10 R8 R11 R9 R12 N1 N2 N3 N4 N7 N8 N11 N9 N10 3 1 8 6 7 5 4 2 10 Grafo H1
51
OSPF: 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
52
Spanning Tree e Tabelle di Routing
3 6 8 7 2 1 4 10 9 N12 N13 N14 N15 H1 Ogni router calcola lo spanning tree a partire dal grafo rappresentativo della rete mediante l’algoritmo di Dijkstra Spanning Tree e Routing Table in R6 Destin. N. H. Dist. N1 R3 10 N2 N3 7 N4 8 R1 N6 R10 N7 12 N8 N.H. N9 11 N10 13 R5 6 R7 N12 N13 14 N14 N15 17 N11 H1 21
53
OSPF: Costruzione delle Tabelle 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 Topologico) A partire dal database topologico ogni router costruisce la propria tabella di routing
54
OSPF: Costruzione delle Tabelle di Routing
1(15) 2(25) 3(15) 4(5) 5(10) Link ID (Metrica) Database Topologico Ogni router calcola i percorsi a costo più basso Algoritmo SPF (Dijkstra) Routing Table for A
55
Database Topologico (link bidirezionali)
Esempio OSPF (1/3) A Destinazione Distanza B C D E 1 2 Link local 3 4 5 6 Routing Table A B C D E 3 2 5 1 6 4 Database Topologico (link bidirezionali) Da A link B 1 D 3 C 2 E 4 6 5 Dist
56
Esempio OSPF (2/3) Routing Table A Guasto del ramo AB Destinazione
Distanza B C D E inf 1 Link local 3 2 4 5 6 Routing Table Guasto del ramo AB A B C D E 3 2 5 xxxx 6 4
57
Esempio OSPF (3/3) A Routing Table A B Database Topologico
Destinazione Distanza B C D E 3 1 2 Link local 4 5 6 Routing Table A B C D E 3 2 5 xxxx 6 4 A Link Metric 1 Inf B Link Metric 1 Inf Database Topologico Da A link B 1 D 3 C 2 E 4 6 5 Dist Inf
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.