Unità massima di trasmissione
Da Wikipedia, l'enciclopedia libera.
In italiano Unità massima di trasmissione, in inglese Maximum Transmission Unit (MTU) indica le dimensioni massime in byte di un pacchetto dati che può essere inviato attraverso un protocollo di comunicazione. Tale parametro è di solito associato alle interfacce di comunicazione quali schede di rete o porte seriali.
Se un router deve trasmettere un pacchetto su una interfaccia che ha un MTU inferiore alla dimensione del pacchetto, il protocollo Internet effettua automaticamente la frammentazione, ovvero divide il pacchetto in due o più pacchetti più piccoli. I frammenti del pacchetto originale sono contrassegnati così il protocollo IP di destinazione è in grado di riassemblare i pacchetti nell'originale.
Un qualsiasi router lungo il cammino potrebbe dover frammentare un pacchetto, e l'host di destinazione dovrà ricostruire il pacchetto originale dai frammenti.
Il concetto di MTU si riferisce alla dimensione del pacchetto IP. IP viene trasportato nella gran parte dei casi su ethernet, che ha normalmente un carico pagante massimo di 1500 byte, a cui si aggiungono 14 byte di intestazione ethernet. La MTU tipica su Internet è quindi di 1500 byte. Di questi, 20 sono normalmente occupati dall'header IP. Se viene utilizzato il protocollo TCP, questo occupa normalmente altri 20 byte per i propri header. Il carico pagante (segmento) di un pacchetto TCP è quindi tipicamente di 1460 byte. TCP possiede un meccanismo per negoziare il "Maximum Segment Size" (dimensione massima del segmento, o MSS). Normalmente, MSS = MTU - 40.
[modifica] Evitare la frammentazione
La frammentazione consente a IP di lavorare correttamente su una rete composta di collegamenti con MTU eterogenea, ma è una operazione onerosa per i router e per l'host che riceve i pacchetti frammentati, quindi si cerca di evitarla quando possibile.
Viene detto "MTU del cammino" il più piccolo MTU di uno qualsiasi dei collegamenti che compongono il "cammino" dall'indirizzo della fonte a quello di destinazione. Visto in un altro modo, l'MTU del cammino è il più grosso valore dell'MTU che può attraversare il "cammino" senza essere ulteriormente frammentato.
L'RFC 1191 descrive "La scoperta dell'MTU del cammino", una tecnica per determinare il cammino MTU tra due host IP, così che quella frammentazione possa essere evitata. Un host invia pacchetti IP di dimensioni che aumentano gradualmente, con il bit DF (Don't Fragment --- Non Frammentare) settato a uno. Se un router lungo il cammino ha bisogno di frammentare il pacchetto, ma questo ha il bit DF a uno, il router lo abbandona, e manda un pacchetto ICMP di tipo "datagramma troppo grosso" all'indirizzo sorgente per segnalare il problema. L'host sorgente in questo modo "impara" il più grosso MTU che può passare attraverso quel cammino senza frammentarsi.
Sfortunatamente un numero crescente di reti bloccano tutto il traffico ICMP (per prevenire attacchi di tipo DoS -Denial of Service), e questo impedisce alla scoperta del cammino MTU di funzionare. Il sintomo di questa situazione è che una connessione funziona fino a quando deve trasmettere pochi pacchetti per volta, ma si blocca quando viene inviato un grosso blocco di dati in una volta sola (per esempio con IRC un client potrebbe vedere fino al "nospoof ping" ma non ottenere risposta dopo di esso, poiché il grosso numero di messaggi di benvenuto blocca la connessione ). Inoltre, sulla rete Internet, il "cammino" dall'indirizzo sorgente a quello di destinazione potrebbe cambiare nel tempo, come risposta a vari eventi (bilanciamento del carico, congestione, ecc..) - e di conseguenza potrebbe cambiare L'MTU del cammino, a volte ripetutamente, durante una trasmissione. Questo potrebbe portare a ulteriori perdite di pacchetti, mentre l'host trova il nuovo MTU sicuro.
Sulle più moderne reti ethernet LAN, l'MTU è di 1500 byte. Sistemi come il PPPoE lo riducono, causando l'attivazione della scoperta del cammino MTU, con la possibilità di rendere alcuni siti mal configurati dietro a un firewall inaccessibili. Ci sono sistemi possibili per evitare questo a seconda della parte di rete che si controlli, che includono cambiare il MSS nel pacchetto iniziale che stabilisce la connessione TCP col proprio firewall.
Alcuni sistemi IBM (come gli XSeries) che supportano i vecchi protocolli Ethernet potrebbero richiedere che il valore sia settato a 1492 per operare su una tipica LAN moderna.
[modifica] Collegamenti esterni
- (EN) RFC 1191
- (EN) Scoperta del cammino MTU e filtraggio ICMP
- (EN) Dimensioni MTU di default
- (EN) Come settare il valore MSS nel TCP usando le tabelle ip
- (EN) LA scoperta del valore MTU tramite il ping e come settarlo in Windows