LIVELLO DI RETE
Il livello di rete prende i segmenti dal livello di trasporto nell’host mittente. Sul lato mittente, incapsula i
segmenti in datagrammi. Sul lato destinatario, invece, consegna i segmenti al livello di trasporto. I
protocolli del livello di rete si trovano negli host e nei router che esamina i campi di intestazione in tutti i
datagrammi IP che lo attraversano. Lo scopo del livello di rete è quello di spostare pacchetti da un host ad
un altro tramite due funzioni:
- Inoltro (forwarding): trasferisce i pacchetti dall’input di un router all’output del router appropriato
- Instradamento (routing): determina il percorso seguito dai pacchetti dall’origine alla destinazione
Per inoltrare i datagrammi il router estrae dal datagramma un valore utilizzato come indice nella tabella
d’inoltro (forwarding table), questo valore indica su quale interfaccia d’uscita deve essere inviato il
pacchetto. In base al protocollo il valore può essere l’indirizzo di destinazione o la connessione a cui
appartiene. Una terza funzione importante in qualche architettura a livello di rete è l’impostazione della
connessione. I router vengono coinvolti instaurando una connessione con gli host prima che i datagrammi
fluiscano. Questa connessione può essere a livello di trasporto quando avviene tra due processi, oppure a
livello di rete quando avviene tra due host. Esistono due tipi di servizi per il canale che trasporta i
datagrammi dal mittente al destinatario:
- Servizi per un singolo datagramma: consegna garantita con un ritardo inferiore a 40 msec
- Servizi per un flusso di datagrammi: consegna in ordine, minima ampiezza di banda garantita,
restrizioni sul lasso di tempo tra la trasmissione di due pacchetti consecutivi
Il protocollo di rete IP segue la filosofia best effort inoltre garantisce che farà tutto il possibile per portare a
termine l’operazione e non garantisce affatto che l'operazione verrà compiuta, né in che modo.
Asynchronous Transfer Mode (ATM) è un protocollo di rete di livello 2 del modello ISO-OSI, una modalità di
trasferimento a commutazione di circuito virtuale e trasmissione di cella che incapsula i dati in unità, dette
celle, di lunghezza fissa anziché in pacchetti a lunghezza variabile. Offre due modelli di servizi:
- Per il traffico telefonico
- Per dati a raffica
Le reti possono offrire servizi con e senza connessioni:
- Le reti a datagramma offrono solo il servizio senza connessioni
- Le reti a circuito virtuale (VC) mettono a disposizione solo il servizio con connessione
Nelle reti a circuito virtuale il percorso tra origine e destinazione si comporta in modo analogo a un circuito
telefonico. Il pacchetto di un circuito virtuale ha un numero VC nella propria intestazione che può essere
diverso su ogni collegamento. Ogni router sostituisce il numero VC con un nuovo numero. Un circuito
virtuale consiste in un percorso tra gli host origine e destinazione, dei numeri VC uno per ciascun
collegamento e delle righe nella tabella d’inoltro in ciascun router. Il pacchetto di un circuito virtuale ha un
numero VC nella propria intestazione che cambia su tutti i collegamenti lungo un percorso, un nuovo
numero VC viene rilevato dalla tabella d’inoltro. I protocolli di segnalazione permettono l’invio di messaggi
di segnalazione usati dai sistemi terminali per avviare o concludere un circuito virtuale. I router della rete a
datagramma non conservano informazioni sullo stato dei circuiti virtuali, qui i pacchetti vengono inoltrati
utilizzando l’indirizzo dell’host destinatario attraversando una serie di router. Le funzioni principali di un
router sono: eseguire i protocolli/algoritmi d’instradamento, inoltrare i datagrammi dai collegamenti in
ingresso a quelli in uscita. Le funzioni d’inoltro specificano in che modo i router trasferiscono i dati dal
collegamento di ingresso al collegamento di uscita. Un generico router possiede quattro componenti: porte
di ingresso, struttura di commutazione, processore di instradamento, porte d’uscita. La commutazione in
memoria è implementata sin dalla prima generazione di router. Erano tradizionali calcolatori e la
commutazione era effettuata sotto il controllo della CPU: il pacchetto veniva copiato nella memoria del
processore e poi trasferito dalle porte d’ingresso a quelle d’uscita con una frequenza inferiore a B/2. La
commutazione tramite BUS presenta delle porte in ingresso che trasferiscono direttamente un pacchetto
alle porte d’uscita su un bus condiviso. La larghezza di banda della commutazione è limitata da quella del
bus. La commutazione attraverso una rete d’interconnessione supera il limite di banda di un singolo bus
condiviso che opta per una frammentazione dei pacchetti IP a lunghezza variabile in celle di lunghezza fissa.
Sulla porta di uscita il router svolge le seguenti azioni:
- 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
Se la struttura di commutazione non è sufficientemente rapida nel trasferire i pacchetti, si può verificare un
accodamento. Se le code diventano troppo lunghe, i buffer si possono saturare e quindi causare una
perdita di pacchetti. Blocco in testa alla fila: un pacchetto nella coda d’ingresso deve attendere il
trasferimento in quanto risulta bloccato da un altro pacchetto in testa alla fila. L’unità massima di
trasmissione (MTU) è la massima quantità di dati che un frame a livello di collegamento può trasportare. I
datagrammi IP grandi vengono frammentati in diagrammi più piccoli i quali verranno riassemblati solo una
volta raggiunta la destinazione, questi sono ordinati grazie ai bit dell’intestazione IP. Gli indirizzi IP sono
degli identificatori numerici a 32 bit associati in modo univoco ad una scheda di rete o NIC (Network
Interface Card). L’interfaccia è il confine tra host e collegamento fisico, a ciascuna interfaccia è associato un
indirizzo IP. Ogni interfaccia di host e router di Internet ha un indirizzo IP univoco. La notazione decimale
puntata è una rappresentazione più leggibile dei 32 bit, consiste dei quattro numeri decimali interi
codificati nei quattro byte ed è usato in quasi tutte le comunicazioni uomo macchina. Una sottorete per il
protocollo IP è una rete che interconnette le interfacce degli host e l’interfaccia di un router, queste
vengono chiamate anche reti IP. Una sottorete è una rete isolata i cui punti terminali sono collegati
all’interfaccia di un host o di un router. Una strategia per l’assegnazione degli indirizzi Internet prende il
nome di CIDR ovvero Classless InterDomain Routing, qui l’indirizzo IP viene diviso in due parti e mantiene
la forma decimale puntata a.b.c.d/x, dove la x indica il numero di bit nella prima parte dell’indirizzo. Un
amministratore di rete per ottenere un blocco di indirizzi IP da usare in una sottorete deve contattare il
proprio ISP. Nel caso del provider Fly-By-Night decide di dividere il proprio blocco di indirizzi in otto blocchi
uguali e contigui, da assegnare a 8 organizzazioni diverse. Per far sì che un ISP possa ottenere un blocco di
indirizzi useremo l’ICANN o Internet Corporation for Assigned Names and Numbers che gestisce i server
DNS radice e, successivamente, assegna e risolve dispute sui nomi di dominio. Per assegnare un indirizzo IP
a un host ci sono diverse strategie: manualmente o tramite DHCP (Dynamic Host Configuration Protocol)
che permette a un host di ottenere un indirizzo IP in modo automatico. Windows/Linux possiedono degli
utili strumenti per la gestione delle reti o degli host, i più comuni sono:
- ipconfig
- ping
- tracert
- netstat
- nslookup
Per collegarsi alla rete wifi bisognerebbe verificare l’indirizzo IP del dispositivo sulla rete oppure verificare la
comunicazione con altri dispositivi all’interno della rete e per fare questo possiamo utilizzare il comando
ipconfig nel prompt dei comandi. Il comando ping è utilizzato per verificare lo stato della connessione del
proprio host verso una destinazione indicando se è stata restituita una risposta dalla destinazione e quanto
tempo è trascorso prima di riceverla. Il tracert è un comando che può essere utilizzato per rilevare il
percorso seguito da un pacchetto IP per giungere alla relativa destinazione, utile per scoprire il punto in cui
il pacchetto si è interrotto. Per prima cosa invia pacchetti echo ICMP alla destinazione, successivamente
utilizza i valori TTL diminuiti di 1 ad ogni inoltro, quando il TTL di un pacchetto raggiunge lo zero il router lo
invia di nuovo un messaggio ICMP al computer di origine. Il netstat permette di vedere lo stato delle
connessioni instaurate sul computer locale e fornisce le seguenti informazioni:
- Il nome del protocollo (TCP o UDP)
- L’indirizzo locale e la porta utilizzata
- L’indirizzo remoto e la porta utilizzata
- Lo stato della connessione TCP
Il comando nslookup consente di effettuare delle query ad un server DNS per la risoluzione di indirizzi IP
dagli Hostname o viceversa, funziona in due modalità:
- Modalità interattiva: permette di effettuare più query e visualizza i singoli risultati e risulta
abilitato in modo automatico quando il comando non è seguito da argomenti
- Modalità non interattiva: abilitato ogni qualvolta si specifica un hostname
Il router abilitato alla NAT nasconde i dettagli della rete domestica al mondo esterno in quanto non li fa
apparire all’esterno come router ma come un unico dispositivo con un unico indirizzo IP. Il protocollo NAT
può supportare più di 60.000 connessioni simultanee con un solo indirizzo IP sul lato WAN. Un host che
possiede un indirizzo privato ed una porta privata non possono accettare connessioni dal mondo esterno
ed è per questo che si farà uso dell’UPnP (Universal Plug and Play) che è un servizio di attraversamento del
NAT. L’Internet Control Message Protocol (ICMP) viene usato da host e router per scambiarsi informazioni
a livello di rete, questi messaggi avranno un campo tipo e un campo codice. Uno degli ultimi indirizzi IP è
l’IPv6 che ha un’intestazione a 40 byte e una lunghezza fissa e non è consentita la frammentazione. Un
indirizzo IPv6 ha un formato dei datagrammi descrivibile in questo modo:
- Priorità di flusso: attribuisce priorità a determinati datagrammi di un flusso
- Etichetta di flusso: identifica i pacchetti che appartengono a flussi particolari
- Intestazione successiva: identifica il protocollo cui verranno consegnati i contenuti del datagramma
La rappresentazione degli indirizzi IPv6 è costituita da parole di 16 bit in esadecimale separate dai due
punti. Altre no
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
-
Appunti Reti di calcolatori
-
Appunti programma Reti di calcolatori
-
Reti di telecomunicazioni
-
Reti dei calcolatori - Sintesi