Varie correzioni da Fabio Rossi, e relative aggiunte nei ringrazimenti per
[gapil.git] / netlayer.tex
index baeb06ab3b144268afa841a372d5d296db5e9dbe..8926bfc3a4e635d8937f18f8a4ee13492b715ab3 100644 (file)
@@ -23,26 +23,27 @@ possa essere necessario per capirne meglio il funzionamento dal punto di vista
 della programmazione.
 
 Data la loro prevelenza il capitolo sarà sostanzialmente incentrato sui due
-protocolli principali esistenti su questo livello: l'\textit{Internet
-  Protocol} IP (che più propriamente si dovrebbe chiamare IPv4) ed la sua
-nuova versione denominata IPv6.
+protocolli principali esistenti su questo livello: il protocollo IP, sigla che
+sta per \textit{Internet Protocol}, (ma che più propriamente si dovrebbe
+chiamare IPv4) ed la nuova versione di questo stesso protocollo, denominata
+IPv6.
 
 
 \section{Il protocollo IP}
 \label{sec:ip_protocol}
 
 L'attuale \textit{Internet Protocol} (IPv4) viene standardizzato nel 1981
-dall'\href{http://www.ietf.org/rfc/rfc719.txt}{RFC~719}; esso nasce per
+dall'\href{http://www.ietf.org/rfc/rfc791.txt}{RFC~791}; esso nasce per
 disaccoppiare le applicazioni della struttura hardware delle reti di
 trasmissione, e creare una interfaccia di trasmissione dei dati indipendente
 dal sottostante substrato di rete, che può essere realizzato con le tecnologie
-più disparate (Ethernet, Token Ring, FDDI, etc.).
+più disparate (Ethernet, Token Ring, FDDI, ecc.).
 
 
 \subsection{Introduzione}
 \label{sec:IP_intro}
 
-Il compito di IP è pertanto quello di trasmettere i pacchetti da un computer
+Il compito principale di IP è quello di trasmettere i pacchetti da un computer
 all'altro della rete; le caratteristiche essenziali con cui questo viene
 realizzato in IPv4 sono due:
 
@@ -69,10 +70,10 @@ centrale (la IANA, \textit{Internet Assigned Number Authority}) che assegna i
 numeri di rete alle organizzazioni che ne fanno richiesta; è poi compito di
 quest'ultime assegnare i numeri dei singoli host.  
 
-Per venire incontro alle diverse esigenze gli indirizzi di rete sono stati
-originariamente organizzati in \textit{classi}, (rappresentate in
-tab.~\ref{tab:IP_ipv4class}), per consentire dispiegamenti di reti di
-dimensioni diverse.
+Per venire incontro alle diverse esigenze gli indirizzi di rete erano stati
+originariamente organizzati all'interno delle cosiddette \textit{classi},
+(rappresentate in tab.~\ref{tab:IP_ipv4class}), per consentire dispiegamenti
+di reti di dimensioni diverse.
 
 
 \begin{table}[htb]
@@ -147,9 +148,10 @@ dimensioni diverse.
 \label{tab:IP_ipv4class}
 \end{table}
 
-Le classi usate per il dispiegamento delle reti sono le prime tre; la classe D
-è destinata al (non molto usato) \textit{multicast} mentre la classe E è
-riservata per usi sperimentali e non viene impiegata.
+Le classi usate per il dispiegamento delle reti su quella che comunemente
+viene chiamata \textit{Internet} sono le prime tre; la classe D è destinata al
+(non molto usato) \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
@@ -201,6 +203,49 @@ indirizzi di rete da inserire nelle tabelle di instradamento dei router.
 
 
 
+\subsection{L'intestazione di IP}
+\label{sec:IP_header}
+
+
+Il campo TOS definisce il cosiddetto \textit{Type of Service}; questo permette
+di definire il tipo di traffico contenuto nei pacchetti, e può essere
+utilizzato dai router per dare diverse priorità in base al valore assunto da
+questo campo. 
+
+\begin{table}[!htb]
+  \centering
+  \footnotesize
+  \begin{tabular}[c]{|l|l|}
+    \hline
+    \textbf{Costante} & \textbf{Significato} \\
+    \hline
+    \hline
+    \const{IPTOS\_LOWDELAY}   & minimizza i ritardi per il traffico
+                                interattivo. \\
+    \const{IPTOS\_THROUGHPUT} & ottimizza la trasmissione per il massimo
+                                flusso di dati.\\
+    \const{IPTOS\_RELIABILITY}& ottimizza per l'affidabilità della
+                                trasmissione. \\
+    \const{IPTOS\_MINCOST}    & usato per dati di riempimento, dove non
+                                interessa se c'è una bassa velocità di
+                                trasmissione.\\
+    \hline
+  \end{tabular}
+  \caption{Le costanti che definiscono alcuni valori standard per il campo TOS
+    da usare come argomento \param{optval} per l'opzione \const{IP\_TOS}.} 
+  \label{tab:IP_TOS_values}
+\end{table}
+
+
+
+\subsection{Le opzioni di IP}
+\label{sec:IP_options}
+
+
+
+
+
+
 \section{Il protocollo IPv6}
 \label{sec:ipv6_protocol}
 
@@ -216,7 +261,7 @@ dall'\href{http://www.ietf.org/rfc/rfc719.txt}{RFC~719}; esso nasce per
 disaccoppiare le applicazioni della struttura hardware delle reti di
 trasmissione, e creare una interfaccia di trasmissione dei dati indipendente
 dal sottostante substrato di rete, che può essere realizzato con le tecnologie
-più disparate (Ethernet, Token Ring, FDDI, etc.).
+più disparate (Ethernet, Token Ring, FDDI, ecc.).
 
 
 \subsection{I motivi della transizione}
@@ -1096,7 +1141,7 @@ Le estensioni definite al momento sono le seguenti:
 \end{itemize}
 
 La presenza di opzioni è rilevata dal valore del campo \textit{next header}
-che indica qual'è l'intestazione successiva a quella di IPv6; in assenza di
+che indica qual è l'intestazione successiva a quella di IPv6; in assenza di
 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