X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=tcpsock.tex;h=7261246389bdf1e8ac4b3f8fb13b51d263fdfa93;hp=a82be2a8942abc3dc381fed7f3f719c4497e15e8;hb=b52f6b91fcc6e0bc4a1522462f61f5f62e684bfe;hpb=fca834b08d79d8c024956a598d06ff36d8817d9f diff --git a/tcpsock.tex b/tcpsock.tex index a82be2a..7261246 100644 --- a/tcpsock.tex +++ b/tcpsock.tex @@ -125,10 +125,14 @@ varr \subsection{Le opzioni TCP.} \label{sec:TCP_TCP_opt} -Ciascun segmento SYN contiene in genere delle opzioni per il protocollo TCP -(le cosiddette \textit{TCP options}, che vengono inserite fra l'header e i -dati) che servono a comunicare all'altro capo una serie di parametri utili a -regolare la connessione. Normalmente vengono usate le seguenti opzioni: +Ciascun segmento SYN contiene in genere delle opzioni per il protocollo TCP, +le cosiddette \textit{TCP options},\footnote{da non confondere con le opzioni + dei socket TCP che tratteremo in sez.~\ref{sec:sock_tcp_udp_options}, in + questo caso si tratta delle opzioni che vengono trasmesse come parte di un + pacchetto TCP, non delle funzioni che consentono di impostare i relativi + valori.} che vengono inserite fra l'header e i dati, e che servono a +comunicare all'altro capo una serie di parametri utili a regolare la +connessione. Normalmente vengono usate le seguenti opzioni: \begin{itemize} \item \textit{MSS option}, dove MMS sta per \itindex{Maximum~Segment~Size} @@ -136,7 +140,7 @@ regolare la connessione. Normalmente vengono usate le seguenti opzioni: connessione annuncia all'altro il massimo ammontare di dati che vorrebbe accettare per ciascun segmento nella connessione corrente. È possibile leggere e scrivere questo valore attraverso l'opzione del socket - \const{TCP\_MAXSEG} (vedi sez.~\ref{sec:TCP_TCP_opt}). + \const{TCP\_MAXSEG} (vedi sez.~\ref{sec:sock_tcp_udp_options}}). \item \textit{window scale option}, il protocollo TCP implementa il controllo di flusso attraverso una \itindex{advertised~window} \textit{advertised @@ -158,7 +162,9 @@ regolare la connessione. Normalmente vengono usate le seguenti opzioni: inserendola anche lui nel suo SYN di risposta dell'apertura della connessione.} per la connessione corrente (espresso come numero di bit cui spostare a sinistra il valore della finestra annunciata inserito nel - pacchetto). + pacchetto). Con Linux è possibile impostare questo valore a livello di + sistema con una opportuna \textit{sysctl} (vedi + sez.~\ref{sec:sock_ipv4_sysctl}). \item \textit{timestamp option}, è anche questa una nuova opzione necessaria per le connessioni ad alta velocità per evitare possibili corruzioni di dati