Per risolvere questo problema sono possibili varie soluzioni ed ad esempio dai
kernel 2.5 è stata introdotta la struttura dei
-\itindex{Linux~Security~Modules} \textit{Linux Security Modules} che han
+\itindex{Linux~Security~Modules~(LSM)} \textit{Linux Security Modules} che han
permesso di aggiungere varie forme di \itindex{Mandatory~Access~Control~(DAC)}
\textit{Mandatory Access Control} (MAC), in cui si potessero parcellizzare e
controllare nei minimi dettagli tutti i privilegi e le modalità in cui questi
\label{sec:sock_resolver}
\itindbeg{resolver} La risoluzione dei nomi è associata tradizionalmente al
-servizio del \itindex{Domain~Name~Service} \textit{Domain Name Service} che
-permette di identificare le macchine su internet invece che per numero IP
+servizio del \itindex{Domain~Name~Service~(DNS)} \textit{Domain Name Service}
+che permette di identificare le macchine su internet invece che per numero IP
attraverso il relativo \textsl{nome a dominio}.\footnote{non staremo ad
entrare nei dettagli della definizione di cosa è un nome a dominio, dandolo
per noto, una introduzione alla problematica si trova in \cite{AGL} (cap.~9)
\item[\sysctlrelfiled{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 è
+ Congestion Notification} \itindex{Explicit~Congestion~Notification~(ECN)}
+ è 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
\item[\sysctlrelfiled{net/ipv4}{tcp\_tw\_recycle}] abilita il riutilizzo
rapido dei socket in stato \texttt{TIME\_WAIT}. Prende un valore logico e di
default è disabilitato. Non è opportuno abilitare questa opzione che può
- causare problemi con il NAT.\footnote{il
- \itindex{Network~Address~Translation} \textit{Network Address Translation}
- è una tecnica, impiegata nei firewall e nei router, che consente di
- modificare al volo gli indirizzi dei pacchetti che transitano per una
- macchina, Linux la supporta con il \textit{netfilter}.}
+ causare problemi con il NAT.\footnote{la
+ \itindex{Network~Address~Translation~(NAT)} \textit{Network Address
+ Translation} (abbreviato in NAT) è una tecnica, impiegata nei firewall e
+ nei router, che consente di modificare al volo gli indirizzi dei pacchetti
+ che transitano per una macchina, Linux la supporta con il
+ \textit{netfilter}.}
\item[\sysctlrelfiled{net/ipv4}{tcp\_tw\_reuse}] abilita il riutilizzo
dello stato \texttt{TIME\_WAIT} quando questo è sicuro dal punto di vista
in questo stato lasciando attiva una connessione ormai conclusa; la risposta è
che non deve essere fatto, ed il motivo cercheremo di spiegarlo adesso.
-\itindex{Maximum~Segment~Lifetime}
+\itindbeg{Maximum~Segment~Lifetime~(MSL)}
Come si è visto nell'esempio precedente (vedi fig.~\ref{fig:TCP_conn_example})
\texttt{TIME\_WAIT} è lo stato finale in cui il capo di una connessione che
esegue la chiusura attiva resta prima di passare alla chiusura definitiva
TTL (da \textit{time to live}) non è propriamente un limite sul tempo, sulla
sua base si può stimare che un pacchetto IP non possa restare nella rete per
più un certo numero di secondi, che costituisce la MSL.
+\itindend{Maximum~Segment~Lifetime~(MSL)}
Ogni realizzazione del TCP deve scegliere un valore per la MSL;
l'\href{http://www.ietf.org/rfc/rfc1122.txt}{RFC~1122} raccomanda 2 minuti,