+e sono presenti varie centinaia di parametri, molti dei quali non sono neanche
+documentati; nel nostro caso ci limiteremo ad illustrare quelli più
+significativi.
+
+Si tenga presente infine che se è sempre possibile utilizzare il filesystem
+\texttt{/proc} come sostituto di \func{sysctl}, dato che i valori di nodi e
+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}, dove sono presenti dei file che non
+corrispondono a nessun nodo 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 presenti i file
+corrispondenti ai parametri generici di \textit{sysctl} validi per tutti i
+socket. Quelli descritti anche nella pagina di manuale, accessibile con
+\texttt{man 7 socket} sono i seguenti:
+
+\begin{basedescript}{\desclabelwidth{2.2cm}\desclabelstyle{\nextlinelabel}}
+\item[\procrelfile{/proc/sys/net/core}{rmem\_default}] imposta la dimensione
+ di default del buffer di lettura (cioè per i dati in ingresso) dei socket.
+\item[\procrelfile{/proc/sys/net/core}{rmem\_max}] imposta la dimensione
+ massima che si può assegnare al buffer di ingresso dei socket attraverso
+ l'uso dell'opzione \const{SO\_RCVBUF}.
+\item[\procrelfile{/proc/sys/net/core}{wmem\_default}] imposta la dimensione
+ di default del buffer di scrittura (cioè per i dati in uscita) dei socket.
+\item[\procrelfile{/proc/sys/net/core}{wmem\_max}] imposta la dimensione
+ massima che si può assegnare al buffer di uscita dei socket attraverso l'uso
+ dell'opzione \const{SO\_SNDBUF}.
+\item[\procrelfile{/proc/sys/net/core}{message\_cost},
+ \procrelfile{/proc/sys/net/core}{message\_burst}] contengono le impostazioni
+ del \itindex{bucket~filter} \textit{bucket filter} che controlla l'emissione
+ di messaggi di avviso da parte del kernel per eventi relativi a problemi
+ sulla rete, imponendo un limite che consente di prevenire eventuali attacchi
+ di \itindex{Denial~of~Service~(DoS)} \textit{Denial of Service} usando i
+ log.\footnote{senza questo limite un attaccante potrebbe inviare ad arte un
+ traffico che generi intenzionalmente messaggi di errore, per saturare il
+ sistema dei log.}
+
+ Il \itindex{bucket~filter} \textit{bucket filter} è un algoritmo generico
+ che permette di impostare dei limiti di flusso su una quantità\footnote{uno
+ analogo viene usato nel \itindex{netfilter} \textit{netfilter} per imporre
+ dei limiti sul flusso dei pacchetti.} senza dovere eseguire medie
+ temporali, che verrebbero a dipendere in misura non controllabile dalla
+ dimensione dell'intervallo su cui si media e dalla distribuzione degli
+ eventi;\footnote{in caso di un picco di flusso (il cosiddetto
+ \textit{burst}) il flusso medio verrebbe a dipendere in maniera esclusiva
+ dalla dimensione dell'intervallo di tempo su cui calcola la media.} in
+ questo caso si definisce la dimensione di un ``\textsl{bidone}'' (il
+ \textit{bucket}) e del flusso che da esso può uscire, la presenza di una
+ dimensione iniziale consente di assorbire eventuali picchi di emissione,
+ l'aver fissato un flusso di uscita garantisce che a regime questo sarà il
+ valore medio del flusso ottenibile dal \textit{bucket}.
+
+ I due valori indicano rispettivamente il flusso a regime (non sarà inviato
+ più di un messaggio per il numero di secondi specificato da
+ \texttt{message\_cost}) e la dimensione iniziale per in caso di picco di
+ emissione (verranno accettati inizialmente fino ad un massimo di
+ \texttt{message\_cost/message\_burst} messaggi).
+
+\item[\procrelfile{/proc/sys/net/core}{netdev\_max\_backlog}] numero massimo
+ di pacchetti che possono essere contenuti nella coda di ingresso generale.
+
+\item[\procrelfile{/proc/sys/net/core}{optmem\_max}] lunghezza massima dei
+ dati ancillari e di controllo (vedi sez.~\ref{sec:net_ancillary_data}).
+\end{basedescript}
+
+Oltre a questi nella directory \texttt{/proc/sys/net/core} si trovano altri
+file, la cui documentazione dovrebbe essere mantenuta nei sorgenti del kernel,
+nel file \texttt{Documentation/networking/ip-sysctl.txt}; la maggior parte di
+questi però non è documentato:
+\begin{basedescript}{\desclabelwidth{2.2cm}\desclabelstyle{\nextlinelabel}}
+\item[\procrelfile{/proc/sys/net/core}{dev\_weight}] blocco di lavoro
+ (\textit{work quantum}) dello scheduler di processo dei pacchetti.
+
+% TODO da documentare meglio
+
+\item[\procrelfile{/proc/sys/net/core}{lo\_cong}] valore per l'occupazione
+ della coda di ricezione sotto la quale si considera di avere una bassa
+ congestione.
+
+\item[\procrelfile{/proc/sys/net/core}{mod\_cong}] valore per l'occupazione
+ della coda di ricezione sotto la quale si considera di avere una congestione
+ moderata.
+
+\item[\procrelfile{/proc/sys/net/core}{no\_cong}] valore per l'occupazione
+ della coda di ricezione sotto la quale si considera di non avere
+ congestione.
+
+\item[\procrelfile{/proc/sys/net/core}{no\_cong\_thresh}] valore minimo
+ (\textit{low water mark}) per il riavvio dei dispositivi congestionati.
+
+ % \item[\procrelfile{/proc/sys/net/core}{netdev\_fastroute}] è presente
+ % soltanto quando si è compilato il kernel con l'apposita opzione di
+ % ottimizzazione per l'uso come router.
+
+\item[\procrelfile{/proc/sys/net/core}{somaxconn}] imposta la dimensione
+ massima utilizzabile per il \textit{backlog} della funzione \func{listen}
+ (vedi sez.~\ref{sec:TCP_func_listen}), e corrisponde al valore della
+ costante \const{SOMAXCONN}; il suo valore di default è 128.
+
+\end{basedescript}
+
+
+\subsection{I valori di controllo per il protocollo IPv4}
+\label{sec:sock_ipv4_sysctl}
+
+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) o a fianco
+dello stesso (come ARP).
+
+I file che consentono di controllare le caratteristiche specifiche del
+protocollo IP in quanto tale, che sono descritti anche nella relativa pagina
+di manuale accessibile con \texttt{man 7 ip}, sono i seguenti:
+\begin{basedescript}{\desclabelwidth{2.2cm}\desclabelstyle{\nextlinelabel}}
+
+\item[\procrelfile{/proc/sys/net/ipv4}{ip\_default\_ttl}] imposta il valore di
+ default per il campo TTL (vedi sez.~\ref{sec:IP_header}) di tutti i
+ pacchetti uscenti, stabilendo così il numero massimo di router che i
+ pacchetti possono attraversare. Il valore può essere modificato anche per il
+ singolo socket con l'opzione \const{IP\_TTL}. Prende un valore intero, ma
+ dato che il campo citato è di 8 bit hanno senso solo valori fra 0 e 255. Il
+ valore di default è 64, e normalmente non c'è nessuna necessità di
+ modificarlo.\footnote{l'unico motivo sarebbe per raggiungere macchine
+ estremamente ``{lontane}'' in termini di \textit{hop}, ma è praticamente
+ impossible trovarne.} Aumentare il valore è una pratica poco gentile, in
+ quanto in caso di problemi di routing si allunga inutilmente il numero di
+ ritrasmissioni.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{ip\_forward}] abilita l'inoltro dei
+ pacchetti da una interfaccia ad un altra, e può essere impostato anche per
+ la singola interfaccia. Prende un valore logico (0 disabilita, diverso da
+ zero abilita), di default è disabilitato.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{ip\_dynaddr}] abilita la riscrittura
+ automatica degli indirizzi associati ad un socket quando una interfaccia
+ cambia indirizzo. Viene usato per le interfacce usate nei collegamenti in
+ dial-up, il cui indirizzo IP viene assegnato dinamicamente dal provider, e
+ può essere modificato. Prende un valore intero, con 0 si disabilita la
+ funzionalità, con 1 la si abilita, con 2 (o con qualunque altro valore
+ diverso dai precedenti) la si abilità in modalità \textsl{prolissa}; di
+ default la funzionalità è disabilitata.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{ip\_autoconfig}] specifica se
+ l'indirizzo IP è stato configurato automaticamente dal kernel all'avvio
+ attraverso DHCP, BOOTP o RARP. Riporta un valore logico (0 falso, 1 vero)
+ accessibile solo in lettura, è inutilizzato nei kernel recenti ed eliminato
+ a partire dal kernel 2.6.18.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{ip\_local\_port\_range}] imposta
+ l'intervallo dei valori usati per l'assegnazione delle porte effimere,
+ permette cioè di modificare i valori illustrati in
+ fig.~\ref{fig:TCP_port_alloc}; prende due valori interi separati da spazi,
+ che indicano gli estremi dell'intervallo. Si abbia cura di non definire un
+ intervallo che si sovrappone a quello delle porte usate per il
+ \itindex{masquerading} \textit{masquerading}, il kernel può gestire la
+ sovrapposizione, ma si avrà una perdita di prestazioni. Si imposti sempre un
+ valore iniziale maggiore di 1024 (o meglio ancora di 4096) per evitare
+ conflitti con le porte usate dai servizi noti.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{ip\_no\_pmtu\_disc}] permette di
+ disabilitare per i socket \const{SOCK\_STREAM} la ricerca automatica della
+ \itindex{Maximum~Transfer~Unit} \textit{Path MTU} (vedi
+ sez.~\ref{sec:net_lim_dim} e sez.~\ref{sec:sock_ipv4_options}). Prende un
+ valore logico, e di default è disabilitato (cioè la ricerca viene eseguita).
+
+ In genere si abilita questo parametro quando per qualche motivo il
+ procedimento del \itindex{Maximum~Transfer~Unit} \textit{Path MTU discovery}
+ fallisce; dato che questo può avvenire a causa di router\footnote{ad
+ esempio se si scartano tutti i pacchetti ICMP, il problema è affrontato
+ anche in sez.~1.4.4 di \cite{FwGL}.} o interfacce\footnote{ad esempio se i
+ due capi di un collegamento \textit{point-to-point} non si accordano sulla
+ stessa MTU.} mal configurate è opportuno correggere le configurazioni,
+ perché disabilitare globalmente il procedimento con questo parametro ha
+ pesanti ripercussioni in termini di prestazioni di rete.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{ip\_always\_defrag}] fa si che tutti i
+ pacchetti IP frammentati siano riassemblati, anche in caso in successivo
+ immediato inoltro.\footnote{introdotto con il kernel 2.2.13, nelle versioni
+ precedenti questo comportamento poteva essere solo stabilito un volta per
+ tutte in fase di compilazione del kernel con l'opzione
+ \texttt{CONFIG\_IP\_ALWAYS\_DEFRAG}.} Prende un valore logico e di default
+ è disabilitato. Con i kernel dalla serie 2.4 in poi la deframmentazione
+ viene attivata automaticamente quando si utilizza il sistema del
+ \itindex{netfilter} \textit{netfilter}, e questo parametro non è più
+ presente.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{ipfrag\_high\_thresh}] indica il limite
+ massimo (espresso in numero di byte) sui pacchetti IP frammentati presenti
+ in coda; quando questo valore viene raggiunta la coda viene ripulita fino al
+ valore \texttt{ipfrag\_low\_thresh}. Prende un valore intero.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{ipfrag\_low\_thresh}] soglia bassa
+ (specificata in byte) a cui viene riportata la coda dei pacchetti IP
+ frammentati quando si raggiunge il valore massimo dato da
+ \texttt{ipfrag\_high\_thresh}. Prende un valore intero.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{ip\_nonlocal\_bind}] se abilitato rende
+ possibile ad una applicazione eseguire \func{bind} anche su un indirizzo che
+ non è presente su nessuna interfaccia locale. Prende un valore logico e di
+ default è disabilitato.
+
+ Questo può risultare utile per applicazioni particolari (come gli
+ \textit{sniffer}) che hanno la necessità di ricevere pacchetti anche non
+ diretti agli indirizzi presenti sulla macchina, ad esempio per intercettare
+ il traffico per uno specifico indirizzo che si vuole tenere sotto
+ controllo. Il suo uso però può creare problemi ad alcune applicazioni.
+
+% \item[\texttt{neigh/*}] La directory contiene i valori
+% TODO trattare neigh/* nella parte su arp, da capire dove sarà.
+
+\end{basedescript}
+
+I file di \texttt{/proc/sys/net/ipv4} che invece fanno riferimento alle
+caratteristiche specifiche del protocollo TCP, elencati anche nella rispettiva
+pagina di manuale (accessibile con \texttt{man 7 tcp}), sono i seguenti:
+\begin{basedescript}{\desclabelwidth{2.2cm}\desclabelstyle{\nextlinelabel}}
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_abort\_on\_overflow}] indica al
+ kernel di azzerare le connessioni quando il programma che le riceve è troppo
+ lento ed incapace di accettarle. Prende un valore logico ed è disabilitato
+ di default. Questo consente di recuperare le connessioni se si è avuto un
+ eccesso dovuto ad un qualche picco di traffico, ma ovviamente va a discapito
+ dei client che interrogano il server. Pertanto è da abilitare soltanto
+ quando si è sicuri che non è possibile ottimizzare il server in modo che sia
+ in grado di accettare connessioni più rapidamente.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_adv\_win\_scale}] indica al kernel
+ quale frazione del buffer associato ad un socket\footnote{quello impostato
+ con \procrelfile{/proc/sys/net/ipv4}{tcp\_rmem}.} deve essere utilizzata
+ per la finestra del protocollo TCP\footnote{in sostanza il valore che
+ costituisce la \itindex{advertised~window} \textit{advertised window}
+ annunciata all'altro capo del socket.} e quale come buffer applicativo per
+ isolare la rete dalle latenze dell'applicazione. Prende un valore intero
+ che determina la suddetta frazione secondo la formula
+ $\texttt{buffer}/2^\texttt{tcp\_adv\_win\_scale}$ se positivo o con
+ $\texttt{buffer}-\texttt{buffer}/2^\texttt{tcp\_adv\_win\_scale}$ se
+ negativo. Il default è 2 che significa che al buffer dell'applicazione
+ viene riservato un quarto del totale.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_app\_win}] indica la frazione
+ della finestra TCP che viene riservata per gestire l'overhaed dovuto alla
+ bufferizzazione. Prende un valore valore intero che consente di calcolare la
+ dimensione in byte come il massimo fra la \itindex{Maximum~Segment~Size}
+ MSS e $\texttt{window}/2^\texttt{tcp\_app\_win}$. Un valore nullo significa
+ che non viene riservato nessuno spazio; il valore di default è 31.
+
+% vecchi, presumibilmente usati quando gli algoritmi di congestione non erano
+% modularizzabili
+% \item[\texttt{tcp\_bic}]
+% \item[\texttt{tcp\_bic\_low\_window}]
+% \item[\texttt{tcp\_bic\_fast\_convergence}]
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_dsack}] abilita il supporto,
+ definito nell'\href{http://www.ietf.org/rfc/rfc2884.txt}{RFC~2884}, per il
+ cosiddetto \textit{Duplicate SACK}.\footnote{si indica con SACK
+ (\textit{Selective Acknowledgement}) un'opzione TCP, definita
+ nell'\href{http://www.ietf.org/rfc/rfc2018.txt}{RFC~2018}, usata per dare
+ un \textit{acknowledgement} unico su blocchi di pacchetti non contigui,
+ che consente di diminuire il numero di pacchetti scambiati.} Prende un
+ valore logico e di default è abilitato.
+% TODO documentare o descrivere che cos'è il Duplicate SACK o
+% mettere riferimento nelle appendici
+
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_ecn}] abilita il meccanismo della
+ \textit{Explicit Congestion Notification} (in breve ECN) nelle connessioni
+ TCP. Prende valore logico che di default è disabilitato. La \textit{Explicit
+ Congestion Notification} \itindex{Explicit~Congestion~Notification} è un
+ meccanismo che consente di notificare quando una rotta o una rete è
+ congestionata da un eccesso di traffico,\footnote{il meccanismo è descritto
+ in dettaglio nell'\href{http://www.ietf.org/rfc/rfc3168.txt}{RFC~3168}
+ mentre gli effetti sulle prestazioni del suo utilizzo sono documentate
+ nell'\href{http://www.ietf.org/rfc/rfc2884.txt}{RFC~2884}.} si può così
+ essere avvisati e cercare rotte alternative oppure diminuire l'emissione di
+ pacchetti (in modo da non aumentare la congestione).
+
+ Si tenga presente che se si abilita questa opzione si possono avere dei
+ malfunzionamenti apparentemente casuali dipendenti dalla destinazione,
+ dovuti al fatto che alcuni vecchi router non supportano il meccanismo ed
+ alla sua attivazione scartano i relativi pacchetti, bloccando completamente
+ il traffico.
+% TODO documentare o descrivere che cos'è l'Explicit Congestion Notification o
+% mettere riferimento nelle appendici
+
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_fack}] abilita il supporto per il
+ \textit{TCP Forward Acknowledgement}, un algoritmo per il controllo della
+ congestione del traffico. Prende un valore logico e di default è abilitato.
+
+% TODO documentare o descrivere che cos'è il TCP Forward Acknowledgement o
+% mettere riferimento nelle appendici
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_fin\_timeout}] specifica il numero
+ di secondi da passare in stato \texttt{FIN\_WAIT2} nell'attesa delle
+ ricezione del pacchetto FIN conclusivo, passati quali il socket viene
+ comunque chiuso forzatamente. Prende un valore intero che indica i secondi
+ e di default è 60.\footnote{nei kernel della serie 2.2.x era il valore
+ utilizzato era invece di 120 secondi.} L'uso di questa opzione realizza
+ quella che in sostanza è una violazione delle specifiche del protocollo TCP,
+ ma è utile per fronteggiare alcuni attacchi di
+ \itindex{Denial~of~Service~(DoS)} \textit{Denial of Service}.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_frto}] abilita il supporto per
+ l'algoritmo F-RTO, un algoritmo usato per la ritrasmissione dei timeout del
+ protocollo TCP, che diventa molto utile per le reti wireless dove la perdita
+ di pacchetti è usualmente dovuta a delle interferenze radio, piuttosto che
+ alla congestione dei router. Prende un valore logico e di default è
+ disabilitato.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_keepalive\_intvl}] indica il
+ numero di secondi che deve trascorrere fra l'emissione di due successivi
+ pacchetti di test quando è abilitata la funzionalità del \textit{keepalive}
+ (vedi sez.~\ref{sec:sock_options_main}). Prende un valore intero che di
+ default è 75.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_keepalive\_probes}] indica il
+ massimo numero pacchetti di \textit{keepalive} (vedi
+ sez.~\ref{sec:sock_options_main}) che devono essere inviati senza ricevere
+ risposta prima che il kernel decida che la connessione è caduta e la
+ termini. Prende un valore intero che di default è 9.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_keepalive\_time}] indica il numero
+ di secondi che devono passare senza traffico sulla connessione prima che il
+ kernel inizi ad inviare pacchetti di pacchetti di
+ \textit{keepalive}.\footnote{ha effetto solo per i socket per cui si è
+ impostata l'opzione \const{SO\_KEEPALIVE} (vedi
+ sez.~\ref{sec:sock_options_main}.} Prende un valore intero che di default
+ è 7200, pari a due ore.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_low\_latency}] indica allo stack
+ TCP del kernel di ottimizzare il comportamento per ottenere tempi di latenza
+ più bassi a scapito di valori più alti per l'utilizzo della banda. Prende un
+ valore logico che di default è disabilitato in quanto un maggior utilizzo
+ della banda è preferito, ma esistono applicazioni particolari in cui la
+ riduzione della latenza è più importante (ad esempio per i cluster di
+ calcolo parallelo) nelle quali lo si può abilitare.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_max\_orphans}] indica il numero
+ massimo di socket TCP ``\textsl{orfani}'' (vale a dire non associati a
+ nessun file descriptor) consentito nel sistema.\footnote{trattasi in genere
+ delle connessioni relative a socket chiusi che non hanno completato il
+ processo di chiusura.} Quando il limite viene ecceduto la connessione
+ orfana viene resettata e viene stampato un avvertimento. Questo limite viene
+ usato per contrastare alcuni elementari attacchi di \textit{denial of
+ service}. Diminuire il valore non è mai raccomandato, in certe condizioni
+ di rete può essere opportuno aumentarlo, ma si deve tenere conto del fatto
+ che ciascuna connessione orfana può consumare fino a 64K di memoria del
+ kernel. Prende un valore intero, il valore di default viene impostato
+ inizialmente al valore del parametro del kernel \texttt{NR\_FILE}, e viene
+ aggiustato a seconda della memoria disponibile.
+
+% TODO verificare la spiegazione di connessione orfana.
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_max\_syn\_backlog}] indica la
+ lunghezza della coda delle connessioni incomplete, cioè delle connessioni
+ per le quali si è ricevuto un SYN di richiesta ma non l'ACK finale del
+ \itindex{three~way~handshake} \textit{three way handshake} (si riveda quanto
+ illustrato in sez.~\ref{sec:TCP_func_listen}).
+
+ Quando questo valore è superato il kernel scarterà immediatamente ogni
+ ulteriore richiesta di connessione. Prende un valore intero; il default, che
+ è 256, viene automaticamente portato a 1024 qualora nel sistema ci sia
+ sufficiente memoria (se maggiore di 128Mb) e ridotto a 128 qualora la
+ memoria sia poca (inferiore a 32Mb).\footnote{si raccomanda, qualora si
+ voglia aumentare il valore oltre 1024, di seguire la procedura citata
+ nella pagina di manuale di TCP, e modificare il valore della costante
+ \texttt{TCP\_SYNQ\_HSIZE} nel file \texttt{include/net/tcp.h} dei sorgenti
+ del kernel, in modo che sia $\mathtt{tcp\_max\_syn\_backlog} \ge
+ \mathtt{16*TCP\_SYNQ\_HSIZE}$, per poi ricompilare il kernel.}
+
+\item[\procrelfile{/proc/sys/net/ipv4}{tcp\_max\_tw\_buckets}] indica il
+ numero massimo di socket in stato \texttt{TIME\_WAIT} consentito nel
+ sistema. Prende un valore intero di default è impostato al doppio del valore
+ del parametro \texttt{NR\_FILE}, ma che viene aggiustato automaticamente a
+ seconda della memoria presente. Se il valore viene superato il socket viene
+ chiuso con la stampa di un avviso; l'uso di questa funzionalità consente di
+ prevenire alcuni semplici attacchi di \textit{denial of service}.
+