Per capire le caratteristiche di IPv6 partiamo dall'intestazione usata dal
protocollo per gestire la trasmissione dei pacchetti; in
-\tabref{tab:IP_ipv6head} è riportato il formato dell'intestazione di IPv6 da
-confrontare con quella di IPv4 in \tabref{tab:IP_ipv4head}. La spiegazione del
+\figref{fig:IP_ipv6head} è riportato il formato dell'intestazione di IPv6 da
+confrontare con quella di IPv4 in \figref{fig:IP_ipv4_head}. La spiegazione del
significato dei vari campi delle due intestazioni è riportato rispettivamente
in \tabref{tab:IP_ipv6field} e \tabref{tab:IP_ipv4field})
-\begin{table}[htb]
- \footnotesize
- \begin{center}
- \begin{tabular}{@{\vrule}p{16mm}@{\vrule}p{16mm}@{\vrule}p{16mm}
- @{\vrule}p{16mm}@{\vrule}p{16mm}@{\vrule}p{16mm}
- @{\vrule}p{16mm}@{\vrule}p{16mm}@{\vrule} }
- \multicolumn{8}{@{}c@{}}{0\hfill 15 16\hfill 31}\\
- \hline
- \centering version&\centering priority&
- \multicolumn{6}{@{}p{96mm}@{\vrule}}{\centering flow label} \\
- \hline
- \multicolumn{4}{@{\vrule}p{64mm}@{\vrule}}{\centering payload length} &
- \multicolumn{2}{@{}p{32mm}@{\vrule}}{\centering next header} &
- \multicolumn{2}{@{}p{32mm}@{\vrule}}{\centering hop limit}\\
- \hline
- \multicolumn{8}{@{\vrule}c@{\vrule}}{} \\
- \multicolumn{8}{@{\vrule}c@{\vrule}}{
- source} \\
- \multicolumn{8}{@{\vrule}c@{\vrule}}{
- IP address} \\
- \multicolumn{8}{@{\vrule}c@{\vrule}}{} \\
- \hline
- \multicolumn{8}{@{\vrule}c@{\vrule}}{} \\
- \multicolumn{8}{@{\vrule}c@{\vrule}}{
- destination} \\
- \multicolumn{8}{@{\vrule}c@{\vrule}}{
- IP address} \\
- \multicolumn{8}{@{\vrule}c@{\vrule}}{} \\
- \hline
- \end{tabular}
- \caption{L'intestazione o \textit{header} di IPv6}
- \label{tab:IP_ipv6head}
- \end{center}
-\end{table}
+% \begin{table}[htb]
+% \footnotesize
+% \begin{center}
+% \begin{tabular}{@{\vrule}p{16mm}@{\vrule}p{16mm}@{\vrule}p{16mm}
+% @{\vrule}p{16mm}@{\vrule}p{16mm}@{\vrule}p{16mm}
+% @{\vrule}p{16mm}@{\vrule}p{16mm}@{\vrule} }
+% \multicolumn{8}{@{}c@{}}{0\hfill 15 16\hfill 31}\\
+% \hline
+% \centering version&\centering priority&
+% \multicolumn{6}{@{}p{96mm}@{\vrule}}{\centering flow label} \\
+% \hline
+% \multicolumn{4}{@{\vrule}p{64mm}@{\vrule}}{\centering payload length} &
+% \multicolumn{2}{@{}p{32mm}@{\vrule}}{\centering next header} &
+% \multicolumn{2}{@{}p{32mm}@{\vrule}}{\centering hop limit}\\
+% \hline
+% \multicolumn{8}{@{\vrule}c@{\vrule}}{} \\
+% \multicolumn{8}{@{\vrule}c@{\vrule}}{
+% source} \\
+% \multicolumn{8}{@{\vrule}c@{\vrule}}{
+% IP address} \\
+% \multicolumn{8}{@{\vrule}c@{\vrule}}{} \\
+% \hline
+% \multicolumn{8}{@{\vrule}c@{\vrule}}{} \\
+% \multicolumn{8}{@{\vrule}c@{\vrule}}{
+% destination} \\
+% \multicolumn{8}{@{\vrule}c@{\vrule}}{
+% IP address} \\
+% \multicolumn{8}{@{\vrule}c@{\vrule}}{} \\
+% \hline
+% \end{tabular}
+% \caption{L'intestazione o \textit{header} di IPv6}
+% \label{tab:IP_ipv6head}
+% \end{center}
+% \end{table}
+
+\begin{figure}[htb]
+ \centering
+ \includegraphics[width=10cm]{img/ipv6_head}
+ \caption{L'intestazione o \textit{header} di IPv6.}
+ \label{fig:IP_ipv6head}
+\end{figure}
+
Come si può notare l'intestazione di IPv6 diventa di dimensione fissa, pari a
40 byte, contro una dimensione (minima, in assenza di opzioni) di 20 byte per
Abbiamo già anticipato in \secref{sec:IP_ipv6over} uno dei criteri principali
nella progettazione di IPv6 è stato quello di ridurre al minimo il tempo di
processamento dei pacchetti da parte dei router, un confronto con
-l'intestazione di IPv4 (vedi \secref{tab:IP_ipv4head}) mostra le seguenti
+l'intestazione di IPv4 (vedi \figref{fig:IP_ipv4_head}) mostra le seguenti
differenze:
\begin{itemize}
\item è stato introdotto un nuovo campo \textit{flow label}, che viene usato,
insieme al campo \textit{priority} (che recupera i bit di precedenza del
campo \textit{type of service}) per implementare la gestione di una
- ``qualità di servizio'' (vedi Sez.~\ref{sec:IP_ipv6_qos}) che permette di
+ ``qualità di servizio'' (vedi \secref{sec:IP_ipv6_qos}) che permette di
identificare i pacchetti appartenenti a un ``flusso'' di dati per i quali si
può provvedere un trattamento speciale.
\end{itemize}
-\begin{table}[htb]
- \footnotesize
+
+\begin{figure}[htb]
\centering
- \begin{tabular}{@{\vrule}p{16mm}@{\vrule}p{16mm}@{\vrule}p{16mm}
- @{\vrule}p{16mm}@{\vrule}p{16mm}@{\vrule}p{16mm}
- @{\vrule}p{16mm}@{\vrule}p{16mm}@{\vrule} }
- \multicolumn{8}{@{}c@{}}{0\hfill 15 16\hfill 31}\\
- \hline
- \centering version&
- \centering head length&
- \multicolumn{2}{@{}p{32mm}@{\vrule}}{\centering type of service} &
- \multicolumn{4}{@{}p{64mm}@{\vrule}}{\centering total length} \\
- \hline
- \multicolumn{4}{@{\vrule}p{64mm}@{\vrule}}{\centering identification} &
- \multicolumn{4}{@{}p{64mm}@{\vrule}}{\parbox{11mm}{\centering flag} \vrule
- \parbox{52mm}{\centering fragment offset}}\\
- \hline
- \multicolumn{2}{@{\vrule}p{32mm}@{\vrule}}{\centering TTL}&
- \multicolumn{2}{@{}p{32mm}@{\vrule}}{\centering protocol}&
- \multicolumn{4}{@{}p{64mm}@{\vrule}}{\centering header checksum} \\
- \hline
- \multicolumn{8}{@{\vrule}c@{\vrule}}{
- source IP address} \\
- \hline
- \multicolumn{8}{@{\vrule}c@{\vrule}}{
- destination IP address} \\
- \hline
- \multicolumn{8}{@{\vrule}c@{\vrule}}{} \\
- \multicolumn{8}{@{}p{128mm}@{}}{
- \centering options (if any)} \\
- \multicolumn{8}{@{\vrule}c@{\vrule}}{} \\
- \hline
- \end{tabular}
- \caption{L'intestazione o \textit{header} di IPv4}
-\label{tab:IP_ipv4head}
-\end{table}
+ \includegraphics[width=10cm]{img/ipv4_head}
+ \caption{L'intestazione o \textit{header} di IPv4.}
+ \label{fig:IP_ipv4_head}
+\end{figure}
\begin{table}[htb]
\footnotesize
attribuzione degli indirizzi per i fornitori di servizi nell'ambito del/i
paese coperto dal registro nazionale con le modalità viste in precedenza.
Una tale ripartizione andrà effettuata all'interno dei soliti 56~bit come
-mostrato in \ntab.
+mostrato in \tabref{tab:IP_ipv6_uninaz}.
\begin{table}[htb]
\centering
Un indirizzo \textit{site-local} invece è usato per l'indirizzamento
all'interno di un sito che non necessita di un prefisso globale; la struttura
-è mostrata in \ntab, questi indirizzi iniziano sempre per
-\texttt{FEC0} e non devono venire ritrasmessi dai router all'esterno del sito
-stesso; sono in sostanza gli equivalenti degli indirizzi riservati per reti
-private definiti su IPv4.
-Per entrambi gli indirizzi il campo \textit{Interface Id} è un
-identificatore che deve essere unico nel dominio in cui viene usato, un modo
-immediato per costruirlo è quello di usare il MAC-address delle schede di
-rete.
+è mostrata in \tabref{tab:IP_ipv6_sitelocal}, questi indirizzi iniziano sempre
+per \texttt{FEC0} e non devono venire ritrasmessi dai router all'esterno del
+sito stesso; sono in sostanza gli equivalenti degli indirizzi riservati per
+reti private definiti su IPv4. Per entrambi gli indirizzi il campo
+\textit{Interface Id} è un identificatore che deve essere unico nel dominio in
+cui viene usato, un modo immediato per costruirlo è quello di usare il
+MAC-address delle schede di rete.
\begin{table}[!h]
\centering
di compatibilità.
Un primo tipo sono gli indirizzi \textit{IPv4 mappati su IPv6} (mostrati in
-\ntab), questo sono indirizzi unicast che vengono usati per consentire ad
-applicazioni IPv6 di comunicare con host capaci solo di IPv4; questi sono ad
-esempio gli indirizzi generati da un DNS quando l'host richiesto supporta solo
-IPv4; l'uso di un tale indirizzo in un socket IPv6 comporta la generazione di
-un pacchetto IPv4 (ovviamente occorre che sia IPv4 che IPv6 siano supportati
-sull'host di origine).
+\tabref{tab:IP_ipv6_map}), questo sono indirizzi unicast che vengono usati per
+consentire ad applicazioni IPv6 di comunicare con host capaci solo di IPv4;
+questi sono ad esempio gli indirizzi generati da un DNS quando l'host
+richiesto supporta solo IPv4; l'uso di un tale indirizzo in un socket IPv6
+comporta la generazione di un pacchetto IPv4 (ovviamente occorre che sia IPv4
+che IPv6 siano supportati sull'host di origine).
\begin{table}[!htb]
\centering
\label{sec:IP_ipv6_multicast}
Gli indirizzi \textit{multicast} sono usati per inviare un pacchetto a un
-gruppo di interfacce; l'indirizzo identifica uno specifico gruppo di
-multicast e il pacchetto viene inviato a tutte le interfacce di detto gruppo.
+gruppo di interfacce; l'indirizzo identifica uno specifico gruppo di multicast
+e il pacchetto viene inviato a tutte le interfacce di detto gruppo.
Un'interfaccia può appartenere ad un numero qualunque numero di gruppi di
multicast. Il formato degli indirizzi \textit{multicast} è riportato in
-\ntab:
+\tabref{tab:IP_ipv6_multicast}:
\begin{table}[htb]
\centering
transitorio.
\item \textsl{scop} è un numero di quattro bit che indica il raggio di
validità dell'indirizzo, i valori assegnati per ora sono riportati in
- \ntab.
+ \tabref{tab:IP_ipv6_multiscope}.
\end{itemize}
opzioni questa sarà l'intestazione di un protocollo di trasporto del livello
superiore, per cui il campo assumerà lo stesso valore del campo
\textit{protocol} di IPv4, altrimenti assumerà il valore dell'opzione
-presente; i valori possibili sono riportati in \ntab.
+presente; i valori possibili sono riportati in \tabref{tab:IP_ipv6_nexthead}.
\begin{table}[htb]
\begin{center}
Il calcolo dei dati di autenticazione viene effettuato alla sorgente su una
versione speciale del pacchetto in cui il numero di salti nell'intestazione
-principale è settato a zero, così come le opzioni che possono essere
+principale è impostato a zero, così come le opzioni che possono essere
modificate nella trasmissione, e l'intestazione di routing (se usata) è posta
ai valori che deve avere all'arrivo.