\subsection{L'uso di \func{ioctl} per i socket IP}
\label{sec:sock_ioctl_IP}
+Oltre alle caratteristiche che si possono impostare per i socket generici, ci
+sono operazioni specifiche valide per i socket IP, e per gli altri
+protocolli.
\subsection{L'uso di \func{ioctl} per i socket TCP e UDP}
\section{La gestione con \func{sysctl} ed il filesystem \texttt{/proc}}
\label{sec:sock_sysctl_proc}
-
Come ultimo argomento di questo capitolo tratteremo l'uso della funzione
\func{sysctl} (che è stata introdotta nelle sue funzionalità generiche in
sez.~\ref{sec:sys_sysctl}) per quanto riguarda le sue capacità di effettuare
impostazioni relative alle proprietà dei socket. Dato che le stesse
funzionalità sono controllabili direttamente attraverso il filesystem
-\texttt{/proc}, tratteremo anche di quest'ultimo.
+\texttt{/proc}, le tratteremo attraverso i file presenti in quest'ultimo.
impostano proprietà (o valori di default) validi a livello dell'intero
sistema, e cioè per tutti i socket.
-
Le opzioni disponibili per le proprietà della rete, nella gerarchia dei valori
impostabili con \func{sysctl}, sono riportate sotto il nodo \texttt{net}, o,
se acceduti tramite l'interfaccia del filesystem \texttt{/proc}, sotto
sottonodi di quest'ultima sono mappati come file e directory sotto
\texttt{/proc/sys/}, non è vero il contrario, ed in particolare Linux consente
di impostare alcuni parametri o leggere lo stato della rete a livello di
-sistema sotto \texttt{/proc/net}.
+sistema sotto \texttt{/proc/net}, dove sono presenti dei file che non
+corrispondono a nessun nodi di \func{sysctl}.
+
\subsection{I valori di controllo per i socket generici}
\label{sec:sock_gen_sysctl}
-Nella directory \texttt{/proc/sys/net/core} sono disponibili i parametri
-generici validi per tutti i socket, quelli descritti anche nella rispettiva
-pagina di manuale, accessibile con \texttt{man 7 socket}. Essi sono:
+Nella directory \texttt{/proc/sys/net/core} sono presenti i file
+corrispondenti ai parametri generici validi per tutti i socket. Quelli
+descritti anche nella pagina di manuale, accessibile con \texttt{man 7 socket}
+sono i seguenti:
\begin{basedescript}{\desclabelwidth{3.2cm}\desclabelstyle{\nextlinelabel}}
\item[\texttt{rmem\_default}] imposta la dimensione di default del buffer di
controllo (vedi sez.~\ref{sec:net_ancillary_data}).
\end{basedescript}
+Oltre a questi si trovano alcuni ulteriori file, la cui documentazione si
+trova nel file ...
+
+\begin{basedescript}{\desclabelwidth{3.2cm}\desclabelstyle{\nextlinelabel}}
+\item[\texttt{dev\_weight}]
+
+\item[\texttt{lo\_cong}]
+
+\item[\texttt{mod\_cong}]
+
+\item[\texttt{no\_cong}]
+\item[\texttt{no\_cong\_thresh}]
-\subsection{I valori di controllo per i socket IP}
+\item[\texttt{somaxconn}]
+
+\end{basedescript}
+
+
+\subsection{I valori di controllo per il protocollo IPv4}
\label{sec:sock_gen_sysctl}
-Nella directory \texttt{/proc/sys/net/ipv4} sono disponibili i parametri per i
-socket IPv4, descritti anche nella rispettiva pagina di manuale, accessibile
-con \texttt{man 7 ip}. Essi sono:
+Nella directory \texttt{/proc/sys/net/ipv4} sono presenti i file che
+corrispondono ai parametri dei socket che usano il protocollo IPv4, relativi
+quindi sia alle caratteristiche di IP, che a quelle degli altri protocolli che
+vengono usati all'interno di quest'ultimo (come ICMP, TCP e UDP). Nella
+stessa directory sono presenti altri file che consentono anche di gestire le
+altre funzionalità generiche dei vari protocolli.
+
+I file che consentono di controllare le caratteristiche specifiche del
+protocollo IP in quanto tale, descritti anche nella pagina di manuale
+accessibile con \texttt{man 7 ip}, sono i seguenti:
\begin{basedescript}{\desclabelwidth{3.2cm}\desclabelstyle{\nextlinelabel}}
\item[\texttt{ip\_default\_ttl}] imposta il valore di default per il campo TTL
\end{basedescript}
+
+I parametri specifiv
+
+
% LocalWords: socket sez dotted decimal resolver Domain Name Service cap DNS
% LocalWords: client fig LDAP Lightweight Access Protocol NIS Information Sun
% LocalWords: like netgroup Switch Solaris glibc libc uclib NSS tab shadow uid