Internet interconnette reti di tipo diverso (wireless, fibra ottica, satellitare, …).
Il livello di rete lo ritroviamo nei sistemi periferici e in tutti gli elementi della rete.
Il compito principale dei router e del livello di rete e quello di instradare i pacchetti verso il prossimo router e quello di scegliere il percorso più adatto in base ad alcuni criteri.
Il livello di rete deve determinare il percorso che i pacchetti devono seguire. Questo viene fatto attraverso algoritmi di instradamento.
I pacchetti che giungono ad un router devono essere inoltrati su un altro collegamento, quindi verso un altro router.
Con inoltro intenderemo l'azione del router di trasferire i pacchetti da un'interfaccia di ingresso a quella di uscita.
Con instradamento intenderemo, invece il processo globale di rete che determina i percorsi dei pacchetti nel loro viaggio dalla sorgente alla destinazione.
Per inoltrare i pacchetti i router utilizzano delle tabelle di inoltro che indicano verso quale uscita (fisica) deve essere diretto un pacchetto, una volta giunto nel router.
Come vengono configurate le tabelle di inoltro nei router? Questo è un argomento cruciale che evidenzia l'importante iterazione tra piano di controllo (instradamento) e piano dei dati (inoltro).
Come di vede in figura, l'algoritmo di instradamento, determina i valori inseriti nella tabella di inoltro dei router. In questo esempio l'algoritmo di instradamento è implementato in ogni router, che quindi svolge sia la funzione di inoltro che di instradamento. Successivamente vedremo che le funzioni di instradamento comunicano tra di loro per compilare le tabelle di inoltro, tali comunicazioni avvengono attraverso messaggi di un protocollo di instradamento, tratteremo questi argomenti nel capitolo 5.
La soluzione che abbiamo visto sopra (funzione di instradamento implementata in ciascun router) è stata utilizzata dalle aziende produttrici di router fino a poco tempo fa. La figura in basso mostra un approccio alternativo, in cui un controller remoto, separato fisicamente dai router, calcola e distribuisce le tabelle di inoltro a tutti i router. In questo caso la componente di instradamento è separata fisicamente dai router, rispetto all'approccio analizzato prima: il dispositivo di instradamento effettua solo l'inoltro, mentre il controller remoto calcola e distribuisce le tabelle di inoltro. La figura mostra dunque il cuore del software-defined networking (SDN), nel quale la rete ha una componente software che calcola e distribuisce tabelle di inoltro.
Il livello di trasporto può fare affidamento del livello di rete per il recapito del pacchetto a destinazione? I pacchetti saranno consegnati con lo stesso ordine con cui sono stati spediti? La rete offre riscontri sulla congestione? La risposta a tali domande dipende dal modello di servizio, che definisce le caratteristiche del trasporto end-to-end di pacchetti tra host di origine e di destinazione. Consideriamo alcuni servizi che il livello di rete potrebbe offrire:
Si tratta, ovviamente di una lista parziale.
Il livello di rete di internet mette a disposizione un solo servizio noto come best effort delivery. Con questo servizio non c'è garanzia che i pacchetti vengano ricevuti con lo stesso ordine con cui sono stati inviati, non c'è garanzia sul ritardo end-to-end, non c'è garanzia sulla banda minima garantita. Potrebbe sembrare che best effort delivery sia un modo per dire nessun servizio. In effetti una rete che non consegna alcun pacchetto a destinazione rispetterebbe tale definizione. Altre architetture di rete hanno definito e implementato modelli di servizi che vanno oltre il best effort (massimo sforzo, massimo impegno). Nonostante ciò il modello di servizio best effort si è dimostrato più efficiente e funzionale.
In questo capitolo vedremo le componenti del piano dei dati del livello di rete. Analizzeremo le operazioni hardware interne di un router: elaborazione dei pacchetti in ingresso/uscita, struttura di commutazione interna del router, l'accodamento e lo scheduling dei pacchetti. Ad un certo punto vedremo l'inoltro tradizionale (basato sull'IP di destinazione specificato nell'intestazione del datagramma) con IP. Vedremo i protocolli IPv4 e IPv6. Vedremo l'inoltro generalizzato, in cui i pacchetti vengono mandati verso un uscita tenendo conto di più campi dell'intestazione (non solo basandosi sull'indirizzo IP di destinazione), tale forma di inoltro è una componente chiave di un moderno piano dei dati, che comprende il piano dei dati nelle rete SDN.
Con commutatore di pacchetto (packet switch o semplicemente switch) ci riferiamo ad un generico dispositivo che si occupa del trasferimento dei pacchetti da un interfaccia in ingresso a quella in uscita, in base al valore dei campi di intestazione del pacchetto.
Alcuni commutatori di pacchetti, chiamati commutatori a livello di collegamento stabiliscono l'inoltro in relazione al valore del campo del frame a livello di collegamento. Altri chiamati router, prendono decisioni di inoltro basandosi sul valore nel campo a livello di rete. I router sono dispositivi a livello di rete. In questo campitolo non ci concentriamo sul livello di rete, dunque useremo il tempo router anziché switch.
Navigazione: