Materiale sui socket.
[gapil.git] / tcpsock.tex
index 485f36f0be956b66ddef6942654ddce9b42dfc35..ff3a21885d591e032775433b3210ca42022191c9 100644 (file)
@@ -42,7 +42,7 @@ significato di alcuni dei vari \textsl{stati} ad essa associati.
 \itindbeg{three~way~handshake} 
 Il processo che porta a creare una connessione TCP è chiamato \textit{three
   way handshake}; la successione tipica degli eventi (e dei
-\textsl{segmenti}\footnote{Si ricordi che il segmento è l'unità elementare di
+\textsl{segmenti}\footnote{si ricordi che il segmento è l'unità elementare di
   dati trasmessa dal protocollo TCP al livello successivo; tutti i segmenti
   hanno un header che contiene le informazioni che servono allo \textit{stack
     TCP} (così viene di solito chiamata la parte del kernel che implementa il
@@ -149,7 +149,7 @@ connessione.  Normalmente vengono usate le seguenti opzioni:
   sez.~\ref{sec:tcp_protocol_xxx}) con la quale ciascun capo della
   comunicazione dichiara quanto spazio disponibile ha in memoria per i dati.
   Questo è un numero a 16 bit dell'header, che così può indicare un massimo di
-  65535 byte;\footnote{Linux usa come massimo 32767 per evitare problemi con
+  65535 byte;\footnote{in Linux il massimo è 32767 per evitare problemi con
     alcune implementazioni che usano l'aritmetica con segno per implementare
     lo stack TCP.} ma alcuni tipi di connessione come quelle ad alta velocità
   (sopra i 45Mbit/sec) e quelle che hanno grandi ritardi nel cammino dei
@@ -187,6 +187,7 @@ vengono anche dette \textit{long fat pipe options} dato che questo 
 che viene dato alle connessioni caratterizzate da alta velocità o da ritardi
 elevati. In ogni caso Linux supporta pienamente entrambe le opzioni.
 
+
 \subsection{La terminazione della connessione}
 \label{sec:TCP_conn_term}
 
@@ -684,7 +685,7 @@ ci si porr
   \item[\errcode{ENOTSOCK}] il file descriptor non è associato ad un socket.
   \item[\errcode{EACCES}] si è cercato di usare una porta riservata senza
     sufficienti privilegi.
-  \item[\errcode{EADDRNOTAVAIL}] Il tipo di indirizzo specificato non è
+  \item[\errcode{EADDRNOTAVAIL}] il tipo di indirizzo specificato non è
     disponibile.
   \item[\errcode{EADDRINUSE}] qualche altro socket sta già usando l'indirizzo.
   \end{errlist}
@@ -965,12 +966,12 @@ kernel, compreso Linux 2.0, che mostrano le differenze fra diverse
 implementazioni.
 
 In Linux il significato di questo valore è cambiato a partire dal kernel 2.2
-per prevenire l'attacco chiamato \textit{syn flood}. Questo si basa
-sull'emissione da parte dell'attaccante di un grande numero di pacchetti SYN
-indirizzati verso una porta, forgiati con indirizzo IP fasullo\footnote{con la
-  tecnica che viene detta \textit{ip spoofing}.} così che i SYN$+$ACK vanno
-perduti e la coda delle connessioni incomplete viene saturata, impedendo di
-fatto ulteriori connessioni.
+per prevenire l'attacco chiamato \index{SYN~flood} \textit{SYN flood}. Questo
+si basa sull'emissione da parte dell'attaccante di un grande numero di
+pacchetti SYN indirizzati verso una porta, forgiati con indirizzo IP
+fasullo\footnote{con la tecnica che viene detta \textit{ip spoofing}.} così
+che i SYN$+$ACK vanno perduti e la coda delle connessioni incomplete viene
+saturata, impedendo di fatto ulteriori connessioni.
 
 Per ovviare a questo il significato del \param{backlog} è stato cambiato a
 indicare la lunghezza della coda delle connessioni complete. La lunghezza
@@ -1044,11 +1045,11 @@ funzione 
   \item[\errcode{EAGAIN} o \errcode{EWOULDBLOCK}] il socket è stato impostato
     come non bloccante (vedi sez.~\ref{sec:file_noblocking}), e non ci sono
     connessioni in attesa di essere accettate.
-  \item[\errcode{EPERM}] Le regole del firewall non consentono la connessione.
+  \item[\errcode{EPERM}] le regole del firewall non consentono la connessione.
   \item[\errcode{ENOBUFS}, \errcode{ENOMEM}] questo spesso significa che
     l'allocazione della memoria è limitata dai limiti sui buffer dei socket,
     non dalla memoria di sistema.
-  \item[\errcode{EINTR}] La funzione è stata interrotta da un segnale.
+  \item[\errcode{EINTR}] la funzione è stata interrotta da un segnale.
   \end{errlist}
   Inoltre possono essere restituiti gli errori di rete relativi al nuovo
   socket, diversi a secondo del protocollo, come: \errval{EMFILE},