%% netlayer.tex
%%
-%% Copyright (C) 2000-2012 Simone Piccardi. Permission is granted to
+%% Copyright (C) 2000-2015 Simone Piccardi. Permission is granted to
%% copy, distribute and/or modify this document under the terms of the GNU Free
%% Documentation License, Version 1.1 or any later version published by the
%% Free Software Foundation; with the Invariant Sections being "Un preambolo",
Le classi di indirizzi usate per il dispiegamento delle reti su quella che
comunemente viene chiamata \textit{Internet} sono le prime tre; la classe D è
-destinata al \itindex{multicast} \textit{multicast} mentre la classe E è
-riservata per usi sperimentali e non viene impiegata.
+destinata al \textit{multicast} mentre la classe E è riservata per usi
+sperimentali e non viene impiegata.
Come si può notare però la suddivisione riportata in
tab.~\ref{tab:IP_ipv4class} è largamente inefficiente in quanto se ad un
utente necessita anche solo un indirizzo in più dei 256 disponibili con una
classe A occorre passare a una classe B, che ne prevede 65536,\footnote{in
- realtà i valori esatti sarebbero 254 e 65536, una rete con a disposizione
+ realtà i valori esatti sarebbero 254 e 65534, una rete con a disposizione
$N$ bit dell'indirizzo IP, ha disponibili per le singole macchine soltanto
$@^N-2$ numeri, dato che uno deve essere utilizzato come indirizzo di rete e
- uno per l'indirizzo di \itindex{broadcast} \textit{broadcast}.} con un
-conseguente spreco di numeri.
+ uno per l'indirizzo di \textit{broadcast}.} con un conseguente spreco di
+numeri.
Inoltre, in particolare per le reti di classe C, la presenza di tanti
indirizzi di rete diversi comporta una crescita enorme delle tabelle di
supportare una gerarchia con più livelli di indirizzamento, un numero di
nodi indirizzabili molto maggiore e una auto-configurazione degli indirizzi
\item l'introduzione un nuovo tipo di indirizzamento, l'\textit{anycast} che
- si aggiungono agli usuali \textit{unicast} e \itindex{multicast}
- \textit{multicast}
+ si aggiungono agli usuali \textit{unicast} e \textit{multicast}
\item la semplificazione del formato dell'intestazione, eliminando o rendendo
opzionali alcuni dei campi di IPv4, per eliminare la necessità di
riprocessare la stessa da parte dei router e contenere l'aumento di
quello di IPv6 sono le seguenti:
\begin{itemize}
-\item il \itindex{broadcast} \textit{broadcasting} non è previsto in IPv6, le
- applicazioni che lo usano dovono essere reimplementate usando il
- \itindex{multicast} \textit{multicasting} (vedi
+\item il \textit{broadcasting} non è previsto in IPv6, le applicazioni che lo
+ usano dovono essere reimplementate usando il \textit{multicasting} (vedi
sez.~\ref{sec:IP_ipv6_multicast}), che da opzionale diventa obbligatorio.
\item è stato introdotto un nuovo tipo di indirizzi, gli \textit{anycast}.
\item i router non possono più frammentare i pacchetti lungo il cammino, la
frammentazione di pacchetti troppo grandi potrà essere gestita solo ai
capi della comunicazione (usando un'apposita estensione vedi
sez.~\ref{sec:IP_ipv6_extens}).
-\item IPv6 richiede il supporto per il \itindex{Maximum~Transfer~Unit}
+\item IPv6 richiede il supporto per il \itindex{Maximum~Transfer~Unit~(MTU)}
\textit{path MTU discovery} (cioè il protocollo per la selezione della
massima lunghezza del pacchetto); seppure questo sia in teoria opzionale,
senza di esso non sarà possibile inviare pacchetti più larghi della
\label{sec:IP_ipv6_addr_arch}
Come per IPv4 gli indirizzi sono identificatori per una singola (indirizzi
-\textit{unicast}) o per un insieme (indirizzi \itindex{multicast}
-\textit{multicast} e \textit{anycast}) di interfacce di rete.
+\textit{unicast}) o per un insieme (indirizzi \textit{multicast} e
+\textit{anycast}) di interfacce di rete.
Gli indirizzi sono sempre assegnati all'interfaccia, non al nodo che la
ospita; dato che ogni interfaccia appartiene ad un nodo quest'ultimo può
interfacce. A una interfaccia possono essere associati anche più indirizzi.
IPv6 presenta tre tipi diversi di indirizzi: due di questi, gli indirizzi
-\textit{unicast} e \itindex{multicast} \textit{multicast} hanno le stesse
-caratteristiche che in IPv4, un terzo tipo, gli indirizzi \textit{anycast} è
-completamente nuovo. In IPv6 non esistono più gli indirizzi
-\itindex{broadcast} \textit{broadcast}, la funzione di questi ultimi deve
-essere reimplementata con gli indirizzi \itindex{multicast}
-\textit{multicast}.
+\textit{unicast} e \textit{multicast} hanno le stesse caratteristiche che in
+IPv4, un terzo tipo, gli indirizzi \textit{anycast} è completamente nuovo. In
+IPv6 non esistono più gli indirizzi \textit{broadcast}, la funzione di questi
+ultimi deve essere reimplementata con gli indirizzi \textit{multicast}.
Gli indirizzi \textit{unicast} identificano una singola interfaccia: i
pacchetti mandati ad un tale indirizzo verranno inviati a quella interfaccia,
gli indirizzi \textit{anycast} identificano un gruppo di interfacce tale che
un pacchetto mandato a uno di questi indirizzi viene inviato alla più vicina
(nel senso di distanza di routing) delle interfacce del gruppo, gli indirizzi
-\itindex{multicast} \textit{multicast} identificano un gruppo di interfacce
-tale che un pacchetto mandato a uno di questi indirizzi viene inviato a tutte
-le interfacce del gruppo.
+\textit{multicast} identificano un gruppo di interfacce tale che un pacchetto
+mandato a uno di questi indirizzi viene inviato a tutte le interfacce del
+gruppo.
In IPv6 non ci sono più le classi ma i bit più significativi indicano il tipo
di indirizzo; in tab.~\ref{tab:IP_ipv6addr} sono riportati i valori di detti
costituiscono quello che viene chiamato il \textit{format prefix} ed è sulla
base di questo che i vari tipi di indirizzi vengono identificati. Come si
vede questa architettura di allocazione supporta l'allocazione di indirizzi
-per i provider, per uso locale e per il \itindex{multicast}
-\textit{multicast}; inoltre è stato riservato lo spazio per indirizzi NSAP,
-IPX e per le connessioni; gran parte dello spazio (più del 70\%) è riservato
-per usi futuri.
+per i provider, per uso locale e per il \textit{multicast}; inoltre è stato
+riservato lo spazio per indirizzi NSAP, IPX e per le connessioni; gran parte
+dello spazio (più del 70\%) è riservato per usi futuri.
Si noti infine che gli indirizzi \textit{anycast} non sono riportati in
tab.~\ref{tab:IP_ipv6addr} in quanto allocati al di fuori dello spazio di
\end{table}
L'utilizzo del campo di \textit{scope} e di questi indirizzi predefiniti serve
-a recuperare le funzionalità del \itindex{broadcast} \textit{broadcasting} (ad
-esempio inviando un pacchetto all'indirizzo \texttt{FF02:0:0:0:0:0:0:1} si
-raggiungono tutti i nodi locali).
+a recuperare le funzionalità del \textit{broadcasting} (ad esempio inviando un
+pacchetto all'indirizzo \texttt{FF02:0:0:0:0:0:0:1} si raggiungono tutti i
+nodi locali).
\itindend{multicast}
indirizzo globale.
La procedura di configurazione è la seguente: all'avvio tutti i nodi IPv6
-iniziano si devono aggregare al gruppo di \itindex{multicast}
-\textit{multicast} \textit{all-nodes} programmando la propria interfaccia per
-ricevere i messaggi dall'indirizzo \textit{multicast} \texttt{FF02::1} (vedi
+iniziano si devono aggregare al gruppo di \textit{multicast}
+\textit{all-nodes} programmando la propria interfaccia per ricevere i messaggi
+dall'indirizzo \textit{multicast} \texttt{FF02::1} (vedi
sez.~\ref{sec:IP_ipv6_multicast}); a questo punto devono inviare un messaggio
ICMP \textit{Router solicitation} a tutti i router locali usando l'indirizzo
-\itindex{multicast} \textit{multicast} \texttt{FF02::2} usando come sorgente
-il proprio indirizzo link-local.
+\textit{multicast} \texttt{FF02::2} usando come sorgente il proprio indirizzo
+link-local.
Il router risponderà con un messaggio ICMP \textit{Router Advertisement} che
fornisce il prefisso e la validità nel tempo del medesimo, questo tipo di