Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

36
Reti di Calcolat ori Andrea Frosini 1 Reti di Calcolatori a.a. 2005/06 Lezione 15

Transcript of Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Page 1: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 1

Reti di Calcolatoria.a. 2005/06

Lezione 15

Page 2: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 2

Nel modello di riferimento:

Application

Transport

Network

Data Link

Fisico

Page 3: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 3

Indirizzi IP

Ciascun host in Internet è identificato da un indirizzo IP costituito da:

• l’indirizzo della rete (network address) in cui è l’host

• l’indirizzo dell’host (host address) all’interno della rete di cui fa parte

I router in Internet hanno un indirizzo IP per ciascuna interfaccia di rete: ad esempio,un router che collega due LAN possiede due indirizzi IP (uno per ciascuna scheda direte)

Un indirizzo IP è l’identificatore di una interfaccia di rete, non di un calcolatore

Gli indirizzi IP sono globali ed assegnati, al giorno d’oggi, da varie organizzazionicoordinate da una autorità internazionale chiamata ICANN (Internet Corporation forAssigned Names and Numbers). Il braccio operativo di ICANN è chiamato IANA (Internet Assigned Numbers Authority)

Page 4: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 4

Ciascun indirizzo IP è costituito da 32 bit (4 byte)

In genere sono rappresentati con la dotted decimal notation: quattro numeri decimali che rappresentano il valore dei quattro byte dell’indirizzo

Ad esempio, l’indirizzo (in binario)

10100000 01010000 00011011 00000001

è rappresentato come

160.80.27.1

Dotted Decimal Notation

Page 5: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 5

Schema del formato degli indirizzi IP

Page 6: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 6

• Classe A da 1.0.0.0 a 126.255.255.255: contiene gli indirizzi di 126 reti con circa 16 milioni di host in ciascuna rete

• Classe B da 128.0.0.0 a 191.255.255.255: contiene gli indirizzi di 16382 reti con circa 65500 host in ciascuna rete

• Classe C da 192.0.0.0 a 223.255.255.255: contiene gli indirizzi di circa 2 milioni di reti con 254 host in ciascuna rete

• Classe D da 224.0.0.0 a 239.255.255.255: contiene gli indirizzi multicast che permettono di inviare un pacchetto a diversi host contemporaneamente

• Classe E da 240.0.0.0 a 255.255.255.255: indirizzi riservati per future estensioni

Formato degli indirizzi IP

Page 7: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 7

• Un indirizzo IP in cui l’host address è composto da tutti 0 fa riferimento all’interarete indicata dal network address

Ad esempio, l’indirizzo 160.80.0.0 è l’indirizzo della rete 160.80.

• Un indirizzo IP in cui l’host address è composto da tutti 1 è un indirizzo dibroadcast per tutti gli host nella rete indicata dal network address

Ad esempio, un pacchetto con indirizzo 160.80.255.255 è destinato a tuttigli host nella rete 160.80.

• L’indirizzo 255.255.255.255 è il limited broadcast: il pacchetto è destinato atutti gli host nella rete locale a cui appartiene l’host sorgente

Indirizzi IP speciali I

Page 8: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 8

• L’indirizzo 0.0.0.0 significa questo host: può essere usato solo durante

l’inizializzazione di un host e mai come indirizzo destinazione

• Un indirizzo IP avente network address nullo e host address non nullo indica un host

sulla stessa rete a cui appartiene l’host sorgente: può essere usato solo durante

l’inizializzazione di un host

• Gli indirizzi 127.xxx.yyy.zzz sono riservati per il loopback: i pacchetti non vengono

inviati ad una interfaccia di rete, ma gestiti come se fossero pacchetti entranti nell’host

sorgente

Indirizzi IP speciali II

Page 9: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 9

Limitazioni del formato degli indirizzi IP

I principali difetti degli indirizzi IP sono strutturali:

• la rete a cui appartiene l’host è codificata nell’indirizzo: un host non può cambiare di posizione su Internet e mantenere lo stesso indirizzo IP (portatili, computer palmari,...)

• l’indirizzo IP è l’identificatore di una scheda di rete, non di un host: se un calcolatore ha più di una interfaccia di rete non esiste un identificatore univoco

• la suddivisione in classi degli indirizzi IP è troppo rigida: ad esempio, cosa succede se una organizzazione a cui è stato dato un indirizzo di classe A ha bisogno di più di un network address? Oppure se in una rete di classe C vengono installati più di 254 calcolatori?

Page 10: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 10

IP routing tradizionale

La procedura di routing (instradamento) dei pacchetti IP è molto semplice, in quanto nell’indirizzo IP di un pacchetto è codificato il numero della rete alla quale appartiene l’host destinazione

Ogni router possiede una tabella di routing aggiornata staticamente (nel caso delle reti più piccole) o dinamicamente

La tabella di routing in genere determina i percorsi verso intere reti, non verso singoli host. Infatti da ciascun indirizzo IP è sempre possibile determinare la classe (A, B, C) e ricavare quindi il numero della rete

La tabella di routing può però contenere, se necessario, informazioni su come raggiungere gli host appartenenti alle reti collegate direttamente al router

Page 11: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 11

La tabella di routing contiene:

• per ciascuna rete broadcast collegata direttamente al router, un singolo record con l’indicazione dell’interfaccia di rete (NIC) verso la rete

• per ciascun host collegato al router ma non facente parte di una rete broadcast, un record con l’indicazione dell’interfaccia di rete (NIC) da utilizzare per raggiungerlo

• un numero variabile di record per reti non collegate direttamente al router, insieme con l’indicazione di un router adiacente a cui i pacchetti devono essere inviati

• un record per un router adiacente di default, a cui inviare i pacchetti destinati a reti sconosciute

La tabella di routing tradizionale

Page 12: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 12

La rigida divisione in classi degli indirizzi IP è un grosso problema. Ad esempio, gli indirizzi di classe B (reti di media dimensione) sono esauriti da tempo

Una delle soluzioni consiste in una estensione del protocollo tradizionale: il subnet addressing (od anche subnetting)

L’indirizzo IP non viene più suddiviso in network address e host address, ma in:

• internet part: corrisponde al vecchio network address, ed è la porzione dell’indirizzo che viene interpretata dai router all’esterno della propria internetwork “locale”

• local part: è suddivisa nel numero di una rete all’interno della internetwork locale, ed in un numero di host nella rete

Subnet addressing

Page 13: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 13

All’interno di ciascuna internetwork locale è necessario adottare un unico formato per la local part dell’indirizzo IP

A tale scopo si utilizza una maschera di subnet (subnet mask)

E’ un numero di 32 bit, in cui:

• i bit 1 indicano i bit che codificano i numeri di network

• i bit 0 indicano i bit che codificano il numero di host

La maschera si codifica in genere con la dotted decimal notation

Maschera della subnet

Page 14: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 14

Se in una internetwork si utilizza la maschera 255.255.255.0, l’indirizzo IP 160.80.27.1 rappresenta:

255.255.255.0 1111111111111111 11111111 00000000

160.80.27.1 1010000001010000 00011011 00000001

• 160.80: indirizzo di rete di classe B

• 27: indirizzo della rete nella internetwork locale

• 1: indirizzo dell’host nella rete

Si potrebbero avere perciò 256 subnet nella internetwork locale, e 254 host in ciascuna subnet

Se la maschera fosse invece 255.255.252.0, l’indirizzo della subnet sarebbe 24 e l’indirizzo dell’host sarebbe 769; si avrebbero al massimo 64 subnet e 1022 host in ciascuna subnet

Esempio di subnetting

Page 15: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 15

Il subnet addressing complica la procedura di routing dei pacchetti

Ogni record della tabella di routing ha 3 campi principali:

• un network address

• una maschera di subnet

• l’indirizzo IP di un router (raggiungibile con un hop)

La tabella contiene sempre un record per ciascuna rete connessa direttamente al router, ed un record per il router di default

La tabella può anche contenere record per reti non direttamente connesse al router

Routing con subnetting I

Page 16: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 16

Per ricavare l’indirizzo del router a cui va inviato un pacchetto destinato all’host con

indirizzo IP D:

per ciascun record della tabella di routing con maschera di subnet M, indirizzo di rete N e indirizzo di router R:

– calcola l’AND logico (bit a bit) tra D e M

– se il risultato è uguale a N, invia il pacchetto a R (o direttamente all’host se è in una rete connessa direttamente al router)

– se il risultato non è uguale a N, continua con il prossimo record della tabella

I record della tabella sono analizzati cominciando da quelli con le maschere più

lunghe (maggior numero di bit ‘1’)

Il record per il router di default è sempre analizzato per ultimo

Routing con subnetting II

Page 17: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 17

Esempio di routing con subnetting

Page 18: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 18

Poiché gli indirizzi IP scarseggiano, molte aziende usano un singolo indirizzo IP per tutti i calcolatori della internetwork interna per mezzo di un meccanismo chiamato Network Address Translation (NAT), od anche IP Masquerading

Funziona soltanto con pacchetti IP che trasportano pacchetti di livello Transport appartenenti al protocollo TCP oppure al protocollo UDP

Infatti, sfrutta i numeri di porta propri dei protocolli TCP e UDP, che sono memorizzati in opportuni campi dei pacchetti di livello Transport

A tutti i calcolatori della internetwork interna viene assegnato un diverso indirizzo IP in una delle seguenti tre zone: 10.0.0.0:8, 172.16.0.0:12, e 192.168.0.0:16 (questi indirizzi sono riservati per il NAT)

Tutta la internetwork è collegata ad Internet tramite un unico router che opera anche come dispositivo NAT; l’interfaccia di rete verso Internet è identificata dall’indirizzo IP ufficiale dell’azienda

Network Address Translation

Page 19: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 19

Per ogni pacchetto IP in uscita dall’internetwork, il dispositivo NAT:

• Sostituisce l’indirizzo IP del mittente con l’indirizzo IP ufficiale• Sovrascrive il numero di porta mittente nel pacchetto Transport con un identificatore del calcolatore mittente• Memorizza in una tabella l’indirizzo IP interno, il numero di porta mittente originario,e l’identificatore del calcolatore• Inoltra il pacchetto

Per ogni pacchetto IP in entrata sull’internetwork, il dispositivo NAT compie l’operazione inversa:

• Legge l’identificatore memorizzato come numero di porta destinatario nel pacchettoTransport, e determina l’indirizzo IP interno ed il numero di porta originale• Sostituisce il numero di porta destinatario nel pacchetto Transport, e sostituiscel’indirizzo IP destinatario nel pacchetto IP• Inoltra il pacchetto sulla internetwork

Inoltro dei pacchetti con NAT

Page 20: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 20

Altri protocolli del livello Network di IPS

Oltre al protocollo IP, che è utilizzato per la trasmissione dei datagram, il livello Network di IPS definisce diversi altri protocolli, tra cui:

• Internet Control Message Protocol

• Address Resolution Protocol

• Reverse Address Resolution Protocol, Bootstrap Protocol e Dynamic Host Configuration Protocol

• Open Shortest Path First

• Border Gateway Protocol

Page 21: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 21

Il protocollo ICMP (Internet Control Message Protocol) è utilizzato per lo scambio di messaggi tra i router IP; questi messaggi sono incapsulati in normali pacchetti IP RFC 792 e l’archivio on-line di IANA definisce vari tipi di messaggi ICMP, tra cui:

• DESTINATION UNREACHABLE (destinazione non raggiungibile): impossibile localizzare un host destinazione, oppure non esiste un percorso valido

• TIME EXCEEDED (tempo scaduto): un pacchetto è stato scartato perché il suo TTL è stato azzerato

• PARAMETER PROBLEM (parametro non valido): un campo dell’header di un pacchetto contiene un valore illegale

• REDIRECT: un router ritiene che un pacchetto sia stato inviato a lui per errore

• ECHO e ECHO REPLY: utilizzati per controllare se un router od un host sono raggiungibili; ad ogni “request” si risponde con un “reply”

• TIMESTAMP e TIMESTAMP REPLY: come ECHO e ECHO REPLY, ma la replica contiene alcuni timestamp che consentono la misurazione del tempo di trasmissione

Internet Control Message Protocol

Page 22: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 22

A livello Data Link, la destinazione dei frame è individuata dall’indirizzo hardware delle schede di rete

A livello Network la destinazione è individuata da un indirizzo IP

E’ necessario avere un meccanismo che permetta di collegare questi indirizzi tra loro

Il protocollo ARP (Address Resolution Protocol) del livello Network:

• serve per derivare dall’indirizzo IP dell’host di destinazione l’indirizzo hardware della sua scheda di rete

• utilizza i servizi del livello Data Link per spedire un pacchetto ARP

E’ definito dall’RFC 826

Il protocollo RARP (Reverse ARP) consente, al contrario, di derivare l’indirizzo hardware di un host dal suo indirizzo IP

Il protocollo ARP I

Page 23: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 23

Se un host A vuole conoscere l’indirizzo hardware associato all’indirizzo IP di B:

• A invia un pacchetto ARP con l’indirizzo IP di B incapsulato in un frame broadcast

• solo B risponde al frame broadcast, indirizzando un pacchetto ARP ad A contenente l’indirizzo hardware associato al proprio indirizzo IP

• A inserisce temporaneamente l’indirizzo hardware in una tabella (cache ARP), in modo da non ripetere l’operazione nel prossimo futuro

Ottimizzazioni:

• il pacchetto ARP di A contiene l’indirizzo hardware e l’indirizzo IP di A, in modo da evitare una ulteriore richiesta ARP da parte di B

• tutti i calcolatori che ricevono frame broadcast con pacchetti ARP, estraggono le informazioni contenute e le memorizzano nella cache ARP

Il protocollo ARP II

Page 24: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 24

Si supponga che un router R1 riceva un pacchetto IP originato da un host A e destinato ad un host B remoto. Allora:

• R1 determina (consultando la tabella di routing) l’indirizzo IP di un router R2 al quale deve essere inoltrato il pacchetto IP; determina anche l’interfaccia di rete N che permette di raggiungere R2

• R1 consulta la cache ARP cercando il record relativo all’indirizzo IP di R2; se tale record non esiste, invia un pacchetto di richiesta ARP con un frame broadcast sull’interfaccia di rete N

• dopo aver determinato l’indirizzo hardware (Data Link) di R2, R1 incapsula il pacchetto IP in un frame con destinazione R2, e lo trasmette sull’interfaccia N

• R2 riceve il pacchetto IP, e ripete l’intero processo

Nota bene: gli indirizzi IP di R1 e R2 non sono scritti nel pacchetto IP da inoltrare!

Inoltro dei pacchetti IP da parte di router su rete broadcast

Page 25: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 25

Il protocollo DHCP (Dynamic Host Configuration Protocol, definito in RFC 1541, 2131e 2132) fornisce parametri di configurazione agli host Internet. Consta di due parti: un protocollo per comunicare tali parametri dal server DHCP agli host ed un sistema di allocazione degli indirizzi di rete. Un server DHCP ha a disposizione un gruppo di indirizzi IP che possono essereassegnati liberamente ai client che ne fanno richiesta:

• E’ possibile assegnare ad un determinato client (indirizzo hardware) uno specificoindirizzo IP• E’ possibile anche assegnare ad ogni client che ne fa richiesta un indirizzo IPscelto liberamente in un gruppo di indirizzi a disposizione del server• Gli indirizzi IP possono essere dati in prestito (leasing): l’assegnazione di un indirizzo IP ha un tempo limite, dopo il quale l’indirizzo viene considerato nuovamente libero ed assegnabile, a meno che il client prima della scadenza non rinnovi la richiesta

Per i più curiosi: http://cdc.roma2.infn.it/supporto/dhcp.html

Il protocollo DHCP

Page 26: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 26

In Internet ogni AS è gestito da una singola autorità, che può scegliere liberamente l’algoritmo di routing da adottare all’interno dell’AS

• Il routing all’interno di ciascun AS è gestito da un algoritmo interior gateway protocol (o IGP); ad esempio:

– RIP (Routing Information Protocol), di tipo distance vector (oggi quasi scomparso)

– OSPF (Open Shortest Path First), di tipo link state

• Il routing tra gli AS è gestito da un algoritmo exterior gateway protocol (o EGP)

– EGP era anche il nome del primo algoritmo utilizzato in Internet, oggi abbandonato

– BGP (Border Gateway Protocol), essenzialmente di tipo distance vector

Protocolli di routing per Internet

Page 27: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 27

Limitazioni del protocollo IP

La versione attuale del protocollo IP (numero 4) è oramai superata tecnologicamente:

• lo spazio di indirizzi IP è praticamente esaurito

• Internet è ormai più commerciale che accademica, quindi serve più sicurezza

• portatili, cellulari (WAP) e computer palmari spingono verso un modello in cui gli host si muovono dinamicamente nello spazio

• in futuro ogni televisore potrebbe essere un nodo Internet che offre programmi interattivi (video on demand)

Page 28: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 28

Per superare le limitazioni del protocollo IP versione 4, la IETF ha cominciato a lavorare nel 1990 alla nuova versione del protocollo IP (numero 6)

La nuova versione (RFC 2460–2466) è chiamata IPv6 (in precedenza, il tentativo di definire un nuovo protocollo era conosciuto come IP Next Generation, IPng)

Idealmente, il nuovo protocollo:

• supporta miliardi di host, anche assegnando gli indirizzi in modo inefficiente

• riduce la dimensione delle tabelle di routing

• semplifica il protocollo per aumentare la velocità dei router

• fornisce maggiore sicurezza tramite meccanismi di autenticazione e crittografia

• prende in considerazione il tipo di servizio del traffico, particolarmente il traffico real-time

Internet Protocol version 6 I

Page 29: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 29

• migliora il supporto per la trasmissione di tipo multicast

• permette ad un host di muoversi senza cambiare il proprio indirizzo

• il protocollo è aperto: può evolversi in futuro restando compatibile con le precedenti versioni

• coesiste pacificamente con la versione 4 del protocollo IP

Anche se non tutti questi obiettivi sono stati completamente raggiunti, IPv6 rappresenta una decisiva evoluzione rispetto a IPv4

Internet Protocol version 6 II

Page 30: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 30

Formato del pacchetto IPv6

Page 31: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 31

• Version (4 bit): numero di versione del protocollo IP (ossia 6)

• Traffic class (8 bit): distingue pacchetti aventi diversi requisiti di trasmissione in tempo reale

• Flow label (20 bit): utilizzato quando vogliamo predeterminate caratteristiche di qualità del servizio

• Payload length (16 bit): lunghezza del pacchetto escludendo i primi 40 byte della testata

• Next header (8 bit): indica quale sub-header opzionale segue questa testata, oppure il protocollo di livello Transport al quale appartengono i dati che seguono questo header

• Hop limit (8 bit): un contatore TTL decrementato ad ogni hop; quando si azzera il pacchetto viene scartato

• Source address (128 bit): l’indirizzo IPv6 dell’host sorgente

• Destination address (128 bit): l’indirizzo IPv6 dell’host destinazione

L’header IPv6

Page 32: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 32

Facoltativamente, un pacchetto IP può contenere uno o più extension header tra i seguenti:

• Hop per hop: informazioni varie per i router (supporto per jumbogrammi)

• Destination: informazioni aggiuntive relative alla destinazione (attualmente non utilizzata)

• Routing: lista di router da utilizzare (simile all’opzione loose source routing di IPv4)

• Fragment: gestione dei frammenti del datagramma (contiene identificatore di datagramma, posizione del frammento nel datagramma originale e bit che indica se il frammento è seguito da altri frammenti)

• Autenticazione: verifica dell’identità del trasmittente

• Carico utile cifrato: informazioni relative al contenuto cifrato

Extension header

Page 33: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 33

Indirizzi IPv6 I

Nei 16 byte dell’indirizzo IPv6 si possono codificare

2128 = 340 282 366 920 938 463 463 374 607 431 768 211 456

identificatori diversi, ossia 700 000 miliardi di miliardi per metro quadro di superficie del globo. Speriamo che siano sufficienti!

I bit iniziali di un indirizzo IPv6 indicano l’utilizzo dell’indirizzo stesso; le sequenze di bit iniziali fino ad oggi assegnate sono:

0000 0000 Riservato (contiene gli indirizzi IPv4 compatibili)

0000 001 Riservato per assegnazioni NSAP (protocolli ISO)

0000 010 Riservato per assegnazioni IPX (protocolli Novell)

001 Indirizzi unicast e aggregabili (classi A, B e C di IPv4)

1111 1110 10 Indirizzi da usare su una linea locale

1111 1110 11 Indirizzi da usare in un sito locale

1111 1111 Indirizzi di tipo multicast (classe D di IPv4)

Page 34: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 34

Indirizzi IPv6 II

La rappresentazione degli indirizzi IPv6 è costituita da parole di 16 bit in esadecimale

separate da “ : ”:

47CD:0000:0000:0000:0022:1234:A456:0124

Un indirizzo con un gran numero di zeri contigui può essere scritto in modo compatto omettendo i campi che valgono zero:

47CD::0022:1234:A456:0124

Un indirizzo IPv6 avente i primi 96 bit nulli rappresenta un indirizzo IPv4

::A050:5001 equivale a ::160.80.80.1

Alcuni indirizzi IPv6 codificano indirizzi IPv4 assegnati alla stessa interfaccia di rete:

::FFFF:A050:5001 codifica 160.80.80.1

Page 35: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 35

Confronto tra i pacchetti IPv6 e IPv4

• Il campo Protocol in IPv4 è stato inserito come caso particolare di Next header in IPv6

• Il campo Options in IPv4 è stato sostituito da header aggiuntivi dopo l’header principale; l’header seguente è indicato da Next header

• Niente campi relativi alla frammentazione: ogni host e router IPv6 deve funzionare con pacchetti di almeno 1280 byte; se un router non riesce a inviare un pacchetto troppo lungo invia un messaggio d’errore all’host sorgente, che frammenterà il pacchetto utilizzando un header aggiuntivo

• E’ scomparso il campo Checksum: per motivi di efficienza i router non effettuano alcun controllo d’errore sulla testata (il controllo è comunque svolto dai livelli superiori)

• Usando un extension header, è possibile creare pacchetti di dimensione enorme (jumbogrammi, cioè datagrammi di dimensione superiore a 65535 byte); sono utili per linee ad altissima velocità tra supercalcolatori

Page 36: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.

Reti di Calcolatori Andrea Frosini 36

Transizione da IPv4 a IPv6

La transizione da IPv4 a IPv6 sarà graduale: isole IPv6 di dimensione sempre maggiore si fonderanno insieme, fino a coprire l’intera Internet

Come trasportare pacchetti IPv6 in reti che ancora utilizzano IPv4?

• tunneling: il pacchetto IPv6 è incapsulato in un pacchetto IPv4, che è inviato per mezzo del tunnel ad un router od ad un host in grado di funzionare sia con IPv4 che con IPv6

• dual stack operation: tutti i nodi IPv6 possono eseguire sia IPv6 che IPv4, a seconda del campo Version all’interno dei pacchetti