Livello di Rete: Router, formato dei datagrammi, frammentazione

Documenti analoghi
Livello di Rete. Gaia Maselli Parte di queste slide sono state prese dal materiale associato ai libri:

Reti di Calcolatori:

Indirizzamento IPv4. Indirizzamento IP

Livello di Rete. Gaia Maselli Parte di queste slide sono state prese dal materiale associato ai libri:

Livello rete. Piano di controllo. Introduzione: Piano dei dati e piano di controllo Architettura di un router IP: Internet Protocol

Parte II: Reti di calcolatori Lezione 14

Parte II: Reti di calcolatori Lezione 16 (40)

Reti di Calcolatori I

Internet Protocol Cenni introduttivi

Capitolo 4 Livello di rete

Reti a commutazione di pacchetti I dati vengono divisi in pacchetti I pacchetti vengono spediti singolarmente sulla rete

Livello di trasporto:

1) (commutazione pacchetto, prodotto banda-ritardo) 2) (frammentazione, commutazione di pacchetto) 3) (Selective Repeat)

Reti di calcolatori. Lezione del 17 giugno 2004

Le Reti Informatiche

Livello di Rete: Routing multicast IPv6

Livello di trasporto: meccanismi trasferimento dati affidabile, TCP

Corso di. Reti di Telecomunicazioni a.a

IPv6: aspetti generali

Corso di Reti di Calcolatori (Docente Luca Becchetti)

Le Reti Informatiche

Reti di Calcolatori e Laboratorio - Compito del 12 Gennaio 2012

Fondamenti di Internet e Reti. Antonio Capone, Matteo Cesana, Ilario Filippini, Guido Maier

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE

Internet Control Message Protocol (ICMP)

TCP/IP: summary. Lorenzo Cavallaro, Andrea Lanzi

Commutazione di pacchetto

Sommario. Il modello TCP/IP. Introduzione al modello TCP/IP. Imbustamento in OSI. TCP/IP e OSI Applicazione (telnet, ftp, smtp,...

Capitolo 4 Livello di rete

Formato del datagramma IP

La rete Internet. La Rete Logica. Vincenzo Eramo R 2 R 3 R 4 R 1 R 5. I terminali della rete sono denominati Host

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori (a.a. 2011/12)

RETI DI CALCOLATORI 9 CFU

Corso di Reti di Telecomunicazioni. Giovanni Schembra. Trasmissione trame su canale broadcast

Un caso estremo per gli algoritmi di routing: Reti Mobili Ad Hoc (MANET)

Livello di Rete. Gaia Maselli

Corso di Alfabetizzazione Informatica

Marco Listanti. INFOCOM Dept

Marco Listanti. Strato di rete. INFOCOM Dept

Internet. b c. pp2. eth3

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

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

Un semplice commutatore a pacchetto

Titolo della presentazione

Capitolo 4 Livello di rete

Reti di Calcolatori. Master "Bio Info" Reti e Basi di Dati Lezione 3

Lezione n.3 LIVELLO TRASPORTO

Configurazione delle interfacce di rete

Avvertenza: Si usi lo spazio dopo ogni quesito per lo svolgimento. Includere fogli aggiuntivi solo se strettamente necessario.

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Corso di Laurea in Informatica Esame di Reti Prof. Panzieri frame con source address uguale a MAC_UNI X X X X X

Capitolo 4 Livello di rete

Reti di Calcolatori IL LIVELLO RETE

Reti di Calcolatori:

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Lunedì 20 Febbraio 2006

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

Reti di Calcolatori e Laboratorio verifica intermedia 10/2/2011

Programma del corso

Livello di Rete: IPv6, Algoritmi di instradamento

Plazzotta Marco Sistemi e Reti Protocolli a livello di rete

ESERCIZI SVOLTI. Eserczio

IP Routing Silvano GAI Mario Baldi Pietro Nicoletti Le slide sono coperte da copyright il loro uso senza fini di lucro e' concesso dagli autori

Introduzione alle reti (con particolare riferimento a Internet)

IL LIVELLO RETE IN INTERNET Protocollo IP

III - 2. Il Livello Rete. Corso di RETI DI CALCOLATORI (9 CFU) a.a II anno / II semestre. Il Livello Rete.

Le Reti Informatiche

Architetture di Internet esercizi livello Applicazione

Formato del datagram IP

Si dara' in questa sezione una breve spiegazione su cosa e' il multicast. E' una tecnica usata su reti TCP/IP, nata dalla necessita'

4b. Esercizi sul livello di Rete Inoltro in IP

IL LIVELLO RETE IN INTERNET Protocollo IP

Parte II Lezione 2 (26)

Terminologia e concetti fondamentali La struttura di Internet (hardware e software):

FONDAMENTI DI RETI E TELECOMUNICAZIONI

Livello di trasporto: meccanismi trasferimento dati affidabile

Fondamenti di Internet e Reti

Il protocollo IP (Internet Protocol)

Lo strato di Trasporto

Reti di Calcolatori 1

La mobilità dei nodi può modificare dinamicamente i cammini e il routing dei nodi

INTERNET PROTOCOL RFC 791

Reti di calcolatori TCP/IP. Slide a cura di Simon Pietro Romano

Una definizione di rete

Capitolo 9 Strato di Rete in Internet. Baccarelli, Cordeschi, Patriarca, Polli

Docenti Marco Cirrito, Lorenzo De Carli. Disciplina. OBIETTIVI MINIMI (necessari al passaggio alla classe successiva)

Capitolo 4 - parte 2. Corso Reti ed Applicazioni Mauro Campanella

Servizi del livello trasporto, protocollo UDP, intro a TCP

Il livello Network del TCP/IP. Il protocollo IP (versione 4)

Reti di calcolatori l e Internet: Un approccio top-down. 4 a edizione Jim Kurose, Keith Ross 4-1

Prefazione all edizione italiana Descrizione dei contenuti. PARTE I Introduzione e modelli 1. Capitolo 1 Introduzione 3

TCP/IP: elemento unificante

Il livello Rete in Internet

Parte II: Reti di calcolatori Lezione 18 (42)

Formato del Datagram IP. Utilizzo del Type of Service. Formato del Datagram IP (I word) Prof. Vincenzo Auletta. Version HLEN. Type of Service (TOS)

Commutazione di circuito

Appello 18 Luglio Importante: usare lo spazio dopo ogni esercizio per le risposte. Esercizio 1 Esercizio 2 Esercizio 3 Domande Laboratorio

Si consideri il problema 1 del capitolo 1 del libro (4 edizione). Si chiede di rappresentare il protocollo tramite un automa a stati finiti esteso.

Introduzione (parte II)

Transcript:

Livello di Rete: Router, formato dei datagrammi, frammentazione Gaia Maselli maselli@di.uniroma1.it Queste slide sono un adattamento delle slide fornite dal libro di testo e pertanto protette da copyright. All material copyright 1996-2007 J.F Kurose and K.W. Ross, All Rights Reserved 2-1

Livello di rete Routing, forwarding, gestione connessione Reti a circuito virtuale e a datagramma Che cosa si trova all interno di un router? Protocollo Internet (IP) Formato dei datagrammi Indirizzamento IPv4 ICMP IPv6 4-2

Livello di rete Routing, forwarding, instaurazione connessione Reti a circuito virtuale Decisione di forwarding si basa sul numero di circuito Reti a datagramma (Internet) Decisione di forwarding si basa sull indirizzo IP di destinazione Che cosa si trova all interno di un router? Protocollo Internet (IP) Formato dei datagrammi frammentazione 4-3

Architettura del router Due funzioni chiave: Far girare i protocolli/algoritmi d instradamento (RIP, OSPF, BGP) Inoltro di datagrammi dai collegamenti in ingresso a quelli in uscita. (Struttura di commutazione) 4-4

Funzioni del router messaggio M Applicazione segmento H t M Trasporto datagramma H n H t M Rete frame H l H n H t M Collegamento Router Fisico 4-5

Porte d ingresso Livello fisico: ricezione a livello di bit (terminazione elettrica) Livello di collegamento: Es. Ethernet Commutazione decentralizzata: Determina la porta d uscita dei pacchetti utilizzando le informazioni della tabella d inoltro (c è una copia della tabella memorizzata nella porta di ingresso) Obiettivo: completare l elaborazione allo stesso tasso della linea (evitare colli di bottiglia) Accodamento: se il tasso di arrivo dei datagrammi è superiore a quello di inoltro Una volta determinata la porta di uscita il pacchetto verrà inoltrato alla struttura di 4-6 commutazione

Porte di ingresso in una workstation Nel caso di workstation o server che funzionano da router (quindi dispositivi non dedicati al routing) il processore di instradamento è proprio la CPU della workstation la porta di ingresso coincide con la scheda di rete (es. Ethernet) 4-7

Ricerca nella tabella di inoltro Deve essere veloce (possibilmente stesso tasso della linea) per evitare accodamenti Tabella implementata in una struttura ad albero Ogni livello dell albero corrisponde a un bit dell indirizzo di destinazione Per cercare un indirizzo si comincia dalla radice dell albero Se 0 allora sottoalbero di sinistra Se 1 allora sottoalbero di destra Ricerca in N passi dove N è il numero di bit nell indirizzo Argomento molto studiato, per approfondiment Survey and taxonomy of IP address lookup algorithms, IEEE Newtork 2001 4-8

Tre tecniche di commutazione 4-9

Commutazione in memoria Prima generazione di router: Erano tradizionali calcolatori e la commutazione era effettuata sotto il controllo diretto della CPU. Il pacchetto veniva copiato nella memoria del processore. I pacchetti venivano trasferiti dalle porte d ingresso a quelle d uscita con una frequenza totale inferiore a B/2, dove B è il numero di pacchetti che si possono scrivere o leggere in memoria Porta d ingresso Memoria Porta d uscita Bus 4-10

Commutazione tramite bus Le porte d ingresso trasferiscono un pacchetto direttamente alle porte d uscita su un bus condiviso, senza intervento del processore di instradamento. Si può trasferire un solo pacchetto alla volta I pacchetti che arrivano e trovano il bus occupato vengono accodati alla porta di ingresso Contesa per il bus: la larghezza di banda della commutazione è limitata da quella del bus. Cisco 5600 opera con bus da 32 Gbps: è sufficiente per router che operano in reti d accesso o in quelle aziendali 4-11

Commutazione attraverso rete d interconnessione Supera il limite di banda di un singolo bus condiviso. Un crossbar switch è una rete d interconnessione che consiste di 2n bus che collegano n porte d ingresso a n porte d uscita Tendenza attuale: frammentazione dei pacchetti IP a lunghezza variabile in celle di lunghezza fissa (riassemblati nella porta di uscita). Switch Cisco 12000: usano una rete d interconnessione che raggiunge i 60 Gbps nella struttura di commutazione. 4-12

Porte d uscita Funzionalità di accodamento: quando la struttura di commutazione consegna pacchetti alla porta d uscita a una frequenza che supera quella del collegamento uscente. Schedulatore di pacchetti: stabilisce in quale ordine trasmettere i pacchetti accodati. 4-13

Dove si verifica l accodamento? Sia nelle porte di ingresso che nelle porte di uscita Velocità di commutazione: frequenza alla quale tale struttura può trasferire i pacchetti dalle porte di ingresso a quelle di uscita Accodamento nelle porte di ingresso quando la struttura di commutazione ha una velocità inferiore a quello delle porte di ingresso (per non avere accodamento la velocità di coomutazione dovrebbe essere n*velocità della linea di ingresso) Accodamento nelle porte di uscita Quando la struttura di commutazione ha un rate superiore alla porta di uscita Quando troppi pacchetti vanno sulla stessa porta di uscita 4-14

Accodamento su porte di ingresso Oltre alla velocità inferiore della struttura di commutazione Blocco in testa alla fila (HOL: head-of-the-line blocking): un pacchetto nella coda d ingresso deve attendere il trasferimento (anche se la propria destinazione è libera) in quanto risulta bloccato da un altro pacchetto in testa alla fila. Se le code diventano troppo lunghe, i buffer si possono saturare e quindi causare una perdita di pacchetti! 4-15

Accodamento sulle porte di uscita Se la struttura di commutazione non è sufficientemente rapida nel trasferire i pacchetti, si può verificare un accodamento. Se troppi pacchetti vanno sulla stessa uscita Se le code diventano troppo lunghe, i buffer si possono saturare e quindi causare una perdita di pacchetti! 4-16

Quale deve essere la capacità dei buffer? La regola spannometrica della RFC 3439 diceva che la quantità di buffering dovrebbe essere uguale a una media del tempo di andata e ritorno (RTT ad esempio 250 msec) per la capacità del collegamento C Es.: C = collegamento da 10 Gps: buffer 2.5 Gbit Attuali raccomandazioni dicono che la quantità di buffering necessaria per N flussi è: RTT. C N 4-17

Schedulatore di pacchetti Quando vi sono più pacchetti accodati sulle porte di uscita lo schedulatore di pacchetti deve stabilire in quale ordine trasmetterli First come first served (FCFS) Accodamento equo ponderato (weighted fair queuing, WFQ): ripartisce equamente il collegamento uscente tra diverse connessioni che hanno pacchetti accodati per la trasmissione Nel caso di coda piena ci sono politiche che stabiliscono se Scartare il pacchetto in arrivo (drop tail) Rimuoverne uno far quelli già in coda Gestione attiva della coda (AQM, active queue management) 4-18

Gestione attiva della coda Politiche per comunicare al mittente un segnale di congestione prima che la coda sia piena Random Early Detection (RED) Mantiene una media ponderata della lunghezza della coda in output Due soglie: min e max Lunghezza media < min pacchetti ammessi in coda Lunghezza media > max pacchetti marcati e scartati Lunghezza [min, max] pacchetti marcati e eliminati con probabilità dipendendente dalla lunghezza della coda 4-19

Livello di rete Introduzione Reti a circuito virtuale e a datagramma Che cosa si trova all interno di un router? Protocollo Internet (IP) Formato dei datagrammi Indirizzamento IPv4 ICMP IPv6 4-20

Protocollo Internet (IP): inoltro e indirizzamento in Internet Uno sguardo al livello di rete Internet: Livello di trasporto: TCP, UDP Livello di rete Protocolli di instradamento Selezione di percorso RIP, OSPF, BGP Tabella d inoltro Protocollo IP Convenzioni di indirizzamento Formato dei datagrammi Convenzioni di manipolazione dei pacchetti Protocollo ICMP Notifica degli errori Segnalazioni del router Livello di collegamento Livello fisico 4-21

Livello di rete Introduzione Reti a circuito virtuale e a datagramma Che cosa si trova all interno di un router? Protocollo Internet (IP) Formato dei datagrammi Indirizzamento IPv4 ICMP IPv6 4.5 Algoritmi di instradamento Stato del collegamento Vettore distanza Instradamento gerarchico 4.6 Instradamento in Internet RIP OSPF BGP 4.7 Instradamento broadcast e multicast 4-22

Formato dei datagrammi Numero di versione Lunghezza dell intestazione Tipo di servizio Tempo di vita (si decrementa ogni volta che viene elaborato dal router) Protocollo di livello superiore I datagrammi che trasportano segmenti TCP hanno 40 byte d intestazione: 20 di intestaz. IP+ 20 di intestaz. TCP ver Lungh. Intest. Identificatore a 16 bit Tempo di vita residuo Tipo di servizio 32 bit Protoc. di livello sup. flag Lunghezza Checksum dell intestazione Indirizzo IP origine (32 bit) Dati (contiene il segmento a livello di trasporto, TCP o UDP) Spiazzamento di framm. a 13 bit Indirizzo IP destinazione (32 bit) Campi opzionali Lunghezza del datagramma (byte) Identificatore, flag, Spiazzamento di frammentazione Es.: timestamp, registrazione dei percorsi, elenco dei router 4-23

Formato dei datagrammi Numero di versione: consente al router la corretta interpretazione del datagramma IPv4 IPv6 Lunghezza dell intestazione: poichè un datagramma IP può contenere un numero variabile di opzioni (incluse nell intestazione), questi bit indicano dove inizia il campo dati. (Intestazione senza opzione = 20 byte) Tipo di servizio: serve per distinguere diversi datagrammi con requisiti di qualità del servizio diverse Lunghezza del datagramma: rappresenta la lunghezza totale del datagramma IP inclusa l intestazione (in byte). In genere non superiore ai 1500 byte. 4-24

Formato dei datagrammi Identificatore, spostamento laterale di frammentazione: questi tre campi servono per gestire la frammentazione dei pacchetti Tempo di vita: o time to live (TTL) è incluso per assicurare che I datagrammi non restino in circolazione per sempre nella rete (in caso per esempio di instradamento ciclico). Il campo viene decrementato a ogni hop e il datagramma viene eliminato in caso il suo TTL = 0 Protocollo: indica il protocollo a livello di trasporto al quale va passato il datagramma. Questo campo è utilizzato solo quando il datagramma raggiunge la destinazione finale. 6: TCP 17: UDP 4-25

Formato dei datagrammi Checksum dell intestazione: consente ai router di rilevare errori sui datagrammi ricevuti Calcolata solo sull intestazione Checksum UDP/TCP è calcolata su intero segmento TCP può girare su un protocollo diverso, quale ATM Indirizzi IP di origine e destinazione: inseriti dall host che crea il datagramma (dopo aver effettuato una ricerca DNS) Opzioni: campi che consentono di estendere l intestazione IP Dati: il campo dati contiene il segmento di trasporto da consegnare alla destinazione può trasportare altri tipi di dati, quali I messaggi ICMP. 4-26

Frammentazione dei datagrammi IP L unità massima di trasmissione (MTU) è la massima quantità di dati che un frame a livello di collegamento può trasportare. Differenti tipi di link, differenti MTU. Datagrammi IP grandi vengono suddivisi ( frammentati ) in datagrammi IP più piccoli. Un datagramma viene frammentato. I frammenti saranno riassemblati solo una volta raggiunta la destinazione I frammenti devono essere riassemblati prima di raggiungere il livello di trasporto I bit dell intestazione IP sono usati per identificare e ordinare i frammenti Riassemblaggio Frammentazione: ingresso: un datagramma grande uscita: 3 datagrammi più piccoli 4-27

Bit nell intestazione per la frammentazione Quando un host di destinazione riceve una serie di datagrammi dalla stessa origine deve individuare i frammenti determinare quando ha ricevuto l ultimo stabilire come debbano essere riassemblati Identificazione: identificativo associato a ciascun datagramma al momento della creazione (unico per tutti i frammenti) Flag: indica frammenti intermedi (1) o ultimo frammento (0) Offset (Spostamento laterale): specifica l ordine del frammento all interno del datagramma originario 4-28

Frammentazione e riassemblaggio 20 byte intestazione 3980 byte di carico IP ID: 777 4-29

Frammentazione e riassemblaggio In totale vengo trasferiti 40 byte in più: ci sono due header aggiuntivi!!! 4-30

Frammentazione e riassemblaggio IP Esempio Datagramma di 4000 byte MTU = 1500 byte 1480 byte nel campo dati Lunghez. =4000 ID =x Lunghez. =1500 Lunghez. =1500 Flag =0 ID =x ID =x Spiazz. =0 Un datagramma IP grande viene frammentato in datagrammi IP più piccoli. Flag =1 Flag =1 Spiazz. =0 Spiazz. =185 Spiazzamento = 1480/8 Lunghez. =1040 ID =x Flag =0 Spiazz. =370 4-31