8. IP: Instradamento dei datagrammi



Documenti analoghi
4. Indirizzi Internet

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

3. Introduzione all'internetworking

16. Router Trasparenti e Indirizzamento a Sottoreti

Reti di calcolatori. Lezione del 10 giugno 2004

ARP e instradamento IP

Università degli Studi di Pisa Dipartimento di Informatica. NAT & Firewalls

Instradamento IP A.A. 2005/2006. Walter Cerroni. IP: instradamento dei datagrammi. Routing : scelta del percorso su cui inviare i dati

Indirizzamento, Routing e Forwarding per reti IP. Andrea Detti rev. 01

Sicurezza nelle reti

Gestione degli indirizzi

VPN CIRCUITI VIRTUALI

Reti di Calcolatori. Il software

Determinare la grandezza della sottorete

Gestione degli indirizzi

Protocolli di Comunicazione

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella

IP (Internet Protocol) sta al livello 2 della scala Tcp/Ip o al livello 3 della scala ISO/OSI. Un indirizzo IP identifica in modo logico (non fisico

Routing Dinamico EIGRP con Manual Summarization e Default Route 16/12/2014 Autore Roberto Bandiera

Topologia delle reti. Rete Multipoint: ogni nodo è connesso agli altri tramite nodi intermedi (rete gerarchica).

INDIRIZZI IP ARCHITETTURA GENERALE DEGLI INDIRIZZI IP FORME DI INDIRIZZI IP CINQUE FORME DI INDIRIZZI IP

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Parte II Lezione 5

Argomenti della lezione

Access Control List (I parte)

COMPLESSO SCOLASTICO INTERNAZIONALE GIOVANNI PAOLO II. Pianificazione di reti IP (subnetting)

10. Stratificazione dei protocolli

Reti di Calcolatori

Protocollo IP e collegati

TEST DI RETI DI CALCOLATORI I (9400N) anno 1999/2000

Progetto di RHS MicroAODV per Reti di Sensori A.A. 2007/2008

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

RoutingInternet Protocol. Algoritmi di instradamento di tipo Distance vector

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori I

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

5. Traduzione degli indirizzi di rete in indirizzi fisici: ARP

GLI APPARATI PER L INTERCONNESSIONE DI RETI LOCALI 1. Il Repeater 2. L Hub 2. Il Bridge 4. Lo Switch 4. Router 6

Dispositivi di rete. Ripetitori. Hub

Dal protocollo IP ai livelli superiori

Laboratorio di reti Relazione N 5 Gruppo 9. Vettorato Mattia Mesin Alberto

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori a.a. 2009/10

Calcolatrice IP Online

L'indirizzo IP. Prof.ssa Sara Michelangeli

Reti diverse: la soluzione nativa

SWITCH. 100 Mb/s (UTP cat. 5E) Mb/s SWITCH. (UTP cat. 5E) 100 Mb/s. (UTP cat.

Internet. Introduzione alle comunicazioni tra computer

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Venerdì 18 Febbraio 2005, ore 9.30

Svantaggi della Commutazione di Circuito. Commutazione di Pacchetto. Struttura di un Pacchetto

Linux User Group Cremona CORSO RETI

Forme di indirizzamento

Reti di Telecomunicazione Lezione 8

INTRODUZIONE ALLE RETI: UN APPROCCIO PRATICO

Apparecchiature di Rete

GLI INDIRIZZI DELL INTERNET PROTOCOL (IP ADDRESS) 2. Fondamenti sugli indirizzi dell Internet Protocol 2. Struttura di un indirizzo IP 2

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Mercoledì 14 Settembre 2005, ore 9.00

Cenni di programmazione distribuita in C++ Mauro Piccolo

Informatica per la comunicazione" - lezione 8 -

L Inoltro e l Instradamento

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori (a.a. 2010/11)

Livello di Rete. Prof. Filippo Lanubile. Obiettivo

Multicast e IGMP. Pietro Nicoletti

CitySoftware PROTOCOLLO. Info-Mark srl

Gli indirizzi dell Internet Protocol. IP Address

Livello di Rete. Gaia Maselli

Architettura degli Elaboratori 2

RETI DI COMPUTER Reti Geografiche. (Sez. 9.8)

INVIO SMS

Il modello TCP/IP. Sommario

Reti di Calcolatori. Lezione 2

9. IP: Messaggi di errore e di controllo (ICMP)

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Martedì 15 Novembre 2005

Interconnessione di reti

UDP. Livello di Trasporto. Demultiplexing dei Messaggi. Esempio di Demultiplexing

CAPITOLO 7 - SCAMBIO DI MESSAGGI

Le reti. Introduzione al concetto di rete. Classificazioni in base a

Laurea in INFORMATICA

Reti di Calcolatori IL LIVELLO RETE

Indirizzamento privato e NAT

Networking e Reti IP Multiservizio

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

RETI E SOTTORETI. Copyright 2010 Marco Salatin Pagina 1

Protocollo ICMP, comandi ping e traceroute

Firewall e NAT A.A. 2005/2006. Walter Cerroni. Protezione di host: personal firewall

Gate Manager. Come accedere alla rete di automazione da un PC (Rete cliente) COME ACCEDERE ALLA RETE DI AUTOMAZIONE DA UN PC (RETE CLIENTE)...

Il livello 3 della pila ISO/OSI. Il protocollo IP e il protocollo ICMP

ARCHITETTURA DI RETE FOLEGNANI ANDREA

Guida di Pro PC Secure

network subnet host Classe A poche reti di dimensioni molto grandi 127

Lo scenario: la definizione di Internet

2) Completare la tabella di instradamento (routing table) del router RA

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento

Indirizzo IP. Come si distinguono? Indirizzo IP : Network address : Host address: : 134

Internet e protocollo TCP/IP

Piano di gestione della qualità

Informazioni Generali (1/2)

Reti diverse: la soluzione nativa

Lezione 1 Introduzione

Cos'è una vlan. Da Wikipedia: Una LAN virtuale, comunemente

Elementi sull uso dei firewall

IP Mobility. Host mobili

Transcript:

8. IP: Instradamento dei datagrammi 8.1. Introduzione L'instradamento è la terza funzione fondamentale di un servizio di comunicazione di livello rete 8.2. L'instradamento in una internet Instradamento (routing) = il processo di scelta di un cammino attraverso le varie sottoreti che costituiscono l'internet; router = qualunque macchina che prende questa scelta (non confondere con multihomed) Alcune sottoreti (per esempio quelle geografiche) possono svolgere una funzione analoga al loro interno: questa livello di instradamento interno non è visibile a (e non disturba) IP Difficoltà: macchine con più di una interfaccia carico della rete diversità della lunghezza dei datagrammi tipo di servizio richiesto dai datagrammi In genere il software è molto semplice e si basa (al meglio) sul cammino più corto Pagina 8.1

Anche le macchine che non sono router partecipano, in modo semplificato, al processo di instradamento Verso alcune destinazioni Verso altre destinazioni G 1 G 2 Host Figura 8.1 L'IP che esegue su Host deve decidere se inviare un pacchetto non locale a G 1 o a G 2. Ancora di più deve farlo un host multihomed I router sono macchine la cui finalità è quella di fare instradamento. In molti siti si usano macchine "normali" multihomed general purpose come router. Il software di IP tradizionalmente è sempre in grado di eseguire instradamento Definizione più ristretta: instradamento è il processo di scelta di un cammino, facendo passare un pacchetto da una rete ad un'altra 8.3. Consegna diretta e indiretta Instradamento diretto = consegna di un pacchetto da una macchina direttamente ad un'altra (quindi sono connesse ad una stessa sottorete) Instradamento indiretto = consegna di un pacchetto da una macchina ad un'altra che non è connessa da una sottorete comune alle due. Quindi occorre passare attraverso almeno un router Pagina 8.2

8.3.1. Consegna attraverso una singola sottorete Non coinvolge router. Il mittente incapsula il datagramma in una trama fisica, lega l'indirizzo IP all'indirizzo fisico hardware del destinatario, invia la trama direttamente alla macchina destinazione Come si scopre che è sulla stessa rete fisica? Dal netid della destinazione, che è uguale al netid di una delle sottoreti a cui il mittente è connesso. Notare: Tutte le macchine su una sottorete fisica hanno lo stesso netid, e due sottoreti fisiche distinte hanno netid diversi 8.3.2. Instradamento indiretto (instradamento vero e proprio) Il mittente deve scegliere un router a cui affidare il resto dell'instradamento. Dopo aver fatto questa scelta, incapsula il datagramma nella trama fisica per la sottorete su cui si trova il router, e invia la trama al router. Notare: il pacchetto IP inviato al router contiene l'indirizzo IP del destinatario, non quello del router!!! Domande importanti: Come fa il mittente a sapere quale router scegliere? Come fa un router a scegliere un altro router per inoltrare il pacchetto? Come fa un router a "imparare" nuove strade? Pagina 8.3

8.4. Table-driven IP routing Ogni implementazione di IP è guidata da una tabella di instradamento IP che memorizza informazioni sulle possibile destinazioni e sul modo di raggiungerle. Cosa ci deve essere in questa tabella? Se dovesse contenere tutte le possibili destinazioni, non si potrebbe tenerla aggiornata non si avrebbe sufficiente memoria Vorremmo che le macchine prendessero decisioni sulla base di informazione minimale usare solo la parte netid degli indirizzi IP Contiene coppie (N, G) dove N = network id di una rete destinazione G = indirizzo IP del prossimo router nel cammino verso tale destinazione. Notare: non è descritto l'intero cammino, ma solo il prossimo passo! Contiene solo indirizzi di router direttamente raggiungibili Rete 10.0.0.0 10.0.0.5 F 20.0.0.5 Rete 20.0.0.0 Per raggiungere macchine su questa rete 20.0.0.6 30.0.0.6 G Figura 8.2(a) Rete 30.0.0.0 40.0.0.7 H 30.0.0.7 Rete 40.0.0.0 Instradare a questo indirizzo 20.0.0.0 Consegna diretta 30.0.0.0 Consegna diretta 10.0.0.0 20.0.0.5 40.0.0.0 30.0.0.7 Figura 8.2(b): Tabella di routing per G Pagina 8.4

Le tabelle di routing dipendono dal numero delle reti e non degli host Crescono solo quando si aggiunge una rete all'internet Solo il router finale può scoprire se la macchina destinazione esiste oppure no (occorre definire metodi di segnalazione degli errori!) Il traffico verso una rete destinazione segue sempre la stessa strada, indipendentemente dalle condizioni della internet Se esistono più cammini verso una destinazione, ne viene usato uno solo. Se vi è un guasto su questo cammino, cade la connettività anche se ci sarebbero cammini alternativi I cammini nelle due direzione fra due reti possono essere diversi (i router devono cooperare perché la comunicazione bidirezionale sia sempre possibile) 8.5. Strade di default Per tenere basso il numero di righe delle tabelle è comodo il concetto di default router: se non si trova nessun cammino nella tabella di routing, il pacchetto viene inviato ad un particolare router. Particolarmente utile per gli host 8.6. Strade specifiche per host L'instradamento per un particolare host destinazione, invece che per la rete destinazione, è utile per trattare in modo particolare certi host Pagina 8.5

8.7. L'algoritmo di routing Route_IP_Datagram (datagram, routing_table) Extract destination IP address, I D, from datagram Compute IP destination network, I N if I N matches any directly connected network send datagram to destination over that network else if I D appears as host-specific route route datagram as specified in table else if I N appears in routing table route datagram as specified in table else if a default route has been specified route datagram to default router else declare routing error 8.8. Instradamento con IP address L'instradamento IP non modifica il datagramma originale, e in particolare non cambia gli indirizzi IP destinazione e sorgente Ogni volta che è stato calcolato il next hop address, cioè l'indirizzo del prossimo router, il software dell'interfaccia prescelta lega l'indirizzo IP all'indirizzo fisico. Non è inefficiente? Occorrerebbe memorizzare nelle routing table indirizzi fisici. Non si fa per le seguenti ragioni: Pagina 8.6

ESAME O AGGIORNAMENTO DELLE ROUTE DATAGRAMMA DA INSTRADARE ROUTING TABLE ROUTING ALGORITMO IN IP SOFTWARE IP address used Physical address used Confine degli indirizzi DATAGRAMMA DA INVIARE + NEXT HOP ADDRESS 1. La routing table fornisce un confine pulito fra il software IP che instrada e il software di livello superiore che manipola/scopre le strade 2. Il software IP deve creare una astrazione al di sopra delle reti fisiche 3. L'indirizzo fisico di un router può cambiare 4. Tutto il software delle parti alte deve solo lavorare su indirizzi IP Pagina 8.7

8.9. Gestione dei datagrammi entranti Instradamento non riguarda solo i pacchetti uscenti Host 1. Controllare se il datagramma arrivato è destinato a questo host: inoltrare al livello superiore giusto (Quale è? Come fa a scoprirlo?) 2. Se non è destinato a questo host, scartare il datagramma (gli host non devono instradare!) Router 1. Controllare se il datagramma arrivato è destinato a questo router: inoltrare al livello superiore giusto. In genere sono pacchetti di test o di gestione del router 2. Se non è destinato a questo router, decrementare time-to-live (se non positivo scartare!), calcolare il nuovo checksum, e instradare con l'algoritmo di instradamento Determinare se il pacchetto è indirizzato a questa macchina non è così semplice: La macchina può avere più interfacce e quindi più indirizzi Deve accettare i broadcast con limited broadcast o directed broadcast Come vedremo, subnetting e multicast rendono il riconoscimento ancora più pesante Pagina 8.8

Perché scartare i pacchetti non destinati alla macchina se non si è router? 1. Se la macchina ha ricevuto un pacchetto non destinato a lei, c'è un errore da qualche parte meglio segnalarlo perché venga corretto 2. L'instradamento provoca traffico addizionale e ruba CPU alla macchina (che non è destinata a questa funzione) 3. Errori semplici possono causare un caos: ad es. se ogni host instradasse un pacchetto ricevuto via broadcast (cosa succederebbe?) 4. I router oltre a instradare segnalano errori: se ogni host mandasse errori il mittente sarebbe bombardato! Inoltre, come vedremo, propagano messaggi che verificano la correttezza delle tabelle di routing (vedremo): se gli host non lo facessero si potrebbero creare anomalie 8.10. Impostare le tabelle di routing Chiaramente, tutto dipende dalla correttezza delle tabelle di routing: mettere le route "a mano" è possibile ma produce facilmente errori Vedremo come si può fare a mantenerle corrette usando un protocollo di routing Pagina 8.9

8.11. Conclusioni Abbiamo così visto le tre funzioni importanti che un servizio di comunicazione di rete deve fornire: 1. un indirizzamento uniforme e globale 2. una funzione consegna di pacchetti che includa frammentazione e riassemblaggio de pacchetti per rendersi indipendenti dalle caratteristiche fisiche delle sottoreti attraversate 3. instradamento fra le sottoreti che costituiscono l'internet, dalla rete sorgente alla rete destinazione: i datagrammi viaggiano attraverso l'internet, da un router ad un altro, fino a che possono essere consegnati direttamente attraverso un sottorete fisica Pagina 8.10