Principali differenze tra IPv4 e IPv6 nelle reti

Principali differenze tra IPv4 e IPv6 nelle reti

Come è noto dalla letteratura, IPv4 e IPv6 sono sostanzialmente due protocolli diversi. La diversità nasce dal bisogno di rispondere a problematiche nuove, che non potevano essere implementate in maniera semplice e diretta modificando o semplicemente integrando il vecchio protocollo. Per chiarire meglio questo concetto occorre dire che IPv4 è già stato adattato per supportare molti aspetti moderni del networking; ma spesso si tratta di soluzioni incomplete o transitorie.
Per fare un confronto diretto, che spieghi le differenze nei particolari, si analizzeranno i due datagram, cioè la struttura di ciascun pacchetto IP. IPv6 contiene moltissime novità, soprattutto dal punto di vista delle extension header. Non tutte queste possibilità saranno analizzate, ma solo quelle che si avvicinano di più alle vecchie funzionalità v4, oppure che servono per spiegare altri argomenti inerenti a questa tesi.

In primo luogo trattiamo un confronto sulle lunghezze delle header IPv4 e IPv6. La header IPv4 era lunga almeno 20 byte, mentre la header IPv6 è di almeno 40 byte. Questo significa che il livello IP il nuovo protocollo introduce un overheading all’incirca doppio rispetto a prima. Tutto ciò dovrebbe portare a una certa riduzione delle performance di trasmissione in quanto l’allungamento di venti byte nel pacchetto porta ad una riduzione dei dati trasportabili (su rete ethernet) del cinque percento nel caso migliore. A quanto sembra questo overheading non ha in realtà particolari effetti negativi sulle performance, addirittura la struttura migliorata della header consentirebbe di migliorare il forwarding, con i conseguenti vantaggi derivanti dal tempo di switching del pacchetto.
La prima cosa che si nota confrontando i due datagram, è la lunghezza imponente degli indirizzi IPv6. Questi indirizzi occupano circa l’ottanta percento della header. Nella header IPv4, gli indirizzi erano parte molto meno significativa del datagram.
A causa di questo allungamento degli indirizzi, si è cercato di semplificare al massimo la parte restante, quindi sono stati eliminati alcuni campi e alcune funzioni del livello Network.
Per questo, ad esempio, è stato eliminato il campo che specificava la lunghezza della header. Questo campo, infatti, non è più necessario, visto che la sua lunghezza minima è nota, e il meccanismo di estensione della header è stato modificato in maniera conveniente.

Uno degli scopi più importanti di questi ritocchi riguarda il fatto che in questo modo i router intermedi sono più liberi di modificare i pacchetti in transito, a seconda della loro convenienza, senza dover tutte le volte ricalcolare il Checksum.
Altresì, l’eliminazione della funzionalità di frammentazione sui router intermedi, rende gli stessi meno complessi, e quindi migliora i tempi di elaborazione di ciascun pacchetto.
Alcune estensioni della Header sono state pensate proprio per l’interazione con i router intermedi. La documentazione ufficiale IETF consiglia vivamente di mettere queste header in prima posizione rispetto alle altre header, così possono essere lette prima ancora di aver ricevuto il pacchetto completamente, provvedendo così all’invio immediato sull’interfaccia successiva (cut throught).

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: www.vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *