Calcolatore da MTU a MSS
Dati di input
| MTU | 1.500 B |
|---|---|
| Intestazione IP | 20 B |
| Intestazione TCP | 20 B |
Calcolatore da MTU a MSS
Ricava la dimensione massima del segmento (MSS) di TCP da una MTU di percorso sottraendo le intestazioni IP e TCP, e scopri quale quota di ogni pacchetto trasporta payload reale.
Dati di input
Dimensioni dei pacchetti
Risultati
Inserisci un valore per visualizzare i risultati.
Dimensione massima del segmento
Efficienza del payload
Da MTU a MSS
La dimensione massima del segmento (MSS) è il più grande blocco di dati applicativi che TCP inserisce in un singolo pacchetto. Si ricava dall'unità massima di trasmissione (MTU) del percorso — il più grande pacchetto IP che il collegamento può trasportare — riservando spazio per le intestazioni IP e TCP. Impostare bene il MSS mantiene i pacchetti integri: un valore troppo grande forza la frammentazione o, peggio, una perdita di pacchetti silenziosa, mentre un valore troppo piccolo spreca capacità in overhead di intestazione. Questo calcolatore determina il MSS e l'efficienza del payload risultante a partire da tre conteggi di byte.
La formula
MSS=MTU−HIP−HTCP E=MTUMSSdove è l'unità massima di trasmissione in byte, è la dimensione dell'intestazione IP, è la dimensione dell'intestazione TCP ed è l'efficienza del payload — la quota di ogni pacchetto di dimensione massima che trasporta dati reali anziché intestazioni.
Le dimensioni delle intestazioni sono gli unici elementi variabili. Un'intestazione IPv4 semplice è di 20 byte e un'intestazione TCP semplice è di 20 byte, quindi su un percorso Ethernet standard le due insieme costano 40 byte per pacchetto. IPv6 usa un'intestazione fissa più grande di 40 byte, e opzioni TCP come timestamp e conferma selettiva (SACK) possono aggiungere qualche byte in più.
Esempio svolto. Un percorso Ethernet standard con IPv4:
MSS=1500−20−20=1460 byte E=15001460=0,9733=97,3%Quindi 1460 byte di ogni pacchetto da 1500 byte trasportano payload, e circa il 2,7% è consumato dalle intestazioni IP e TCP. Passare a IPv6 con la stessa MTU di 1500 byte costa 20 byte di intestazione aggiuntivi, facendo scendere il MSS a 1440 byte e l'efficienza al 96,0%.
Perché il MSS è importante
TCP annuncia il proprio MSS all'altra estremità durante l'handshake SYN all'inizio di ogni connessione. Ciascun lato si impegna a non inviare mai un segmento più grande del valore ricevuto, così nessuna estremità produce un pacchetto che il percorso non può trasportare. Quando il MSS è dimensionato correttamente per la MTU più piccola lungo il tragitto, ogni segmento viaggia intatto e TCP funziona a piena efficienza.
I problemi compaiono quando un pacchetto è più grande di quanto un collegamento possa trasportare. Il router lo frammenta — suddividendo un pacchetto in più parti, il che aggiunge overhead e lavoro di riassemblaggio — oppure, se il flag «non frammentare» è impostato, lo scarta e lo segnala con un messaggio ICMP. Se quel messaggio ICMP viene filtrato da un firewall, il mittente continua a ritrasmettere un pacchetto sovradimensionato che non arriva mai, e la connessione si blocca. Questo guasto è noto come buco nero della MTU di percorso.
Intestazioni e valori di MTU comuni
Il MSS dipende interamente dalla MTU e da quali intestazioni si applicano. Alcuni valori ricorrono spesso:
| Percorso | MTU (byte) | Intestazioni IP + TCP | MSS (byte) |
|---|---|---|---|
| Ethernet, IPv4 | 1500 | 20 + 20 | 1460 |
| Ethernet, IPv6 | 1500 | 40 + 20 | 1440 |
| PPPoE (DSL), IPv4 | 1492 | 20 + 20 | 1452 |
| Trame jumbo, IPv4 | 9000 | 20 + 20 | 8960 |
I tunnel come VPN, GRE e IPsec avvolgono ogni pacchetto nelle proprie intestazioni esterne, il che riduce la MTU disponibile per il pacchetto interno. È per questo che le connessioni VPN annunciano spesso un MSS ben inferiore a 1460, e per cui i router «limitano» frequentemente il MSS — riscrivendo al ribasso il valore annunciato — per mantenere il traffico attraverso un collegamento incapsulato.
Efficienza del payload e MTU più grandi
Poiché il costo dell'intestazione è fisso per pacchetto, una MTU più grande ripartisce quel costo su più payload e aumenta l'efficienza. Una MTU di 1500 byte dà il 97,3% di efficienza con intestazioni IPv4; una trama jumbo da 9000 byte la spinge oltre il 99,5%. Pacchetti più grandi significano anche meno pacchetti al secondo per lo stesso throughput, il che alleggerisce il carico di elaborazione per pacchetto su router, firewall e schede di rete. Le trame jumbo sono perciò comuni nei data center e sulle reti di archiviazione, dove ogni dispositivo del percorso può essere configurato per la MTU più grande.
Calcolatori correlati
Per trasformare una dimensione di pacchetto in un tasso di pacchetti per una data velocità del collegamento, usa il calcolatore Calcolatore di pacchetti al secondo. Per stimare quanto tempo serve a spostare un file una volta nota la velocità del payload, vedi il calcolatore Calcolatore del tempo di trasferimento dati. Per la pianificazione di sottoreti e indirizzi sulla stessa rete, il calcolatore Calcolatore di sottorete (CIDR) è un valido complemento.
Domande frequenti (FAQ)
Qual è la differenza tra MTU e MSS?
La MTU (unità massima di trasmissione) è il più grande pacchetto IP che un collegamento può trasportare, intestazioni comprese. Il MSS (dimensione massima del segmento) è il più grande payload TCP che entra in quel pacchetto, quindi esclude le intestazioni IP e TCP. Con una MTU di 1500 byte e intestazioni IPv4 e TCP di 20 byte, il MSS è 1500 − 20 − 20 = 1460 byte. TCP annuncia il proprio MSS durante l'handshake della connessione.
Perché 1500 è la MTU predefinita?
1500 byte è la dimensione di payload standard di Ethernet, e poiché Ethernet domina le reti di accesso cablate e Wi-Fi, la maggior parte dei percorsi internet si assesta su una MTU di 1500 byte da estremo a estremo. Alcuni collegamenti trasportano meno: le connessioni PPPoE usano spesso 1492 byte, e i tunnel (VPN, GRE, IPsec) sottraggono il proprio incapsulamento, lasciando 1400 byte o meno per il pacchetto interno.
Come le trame jumbo modificano il MSS?
Le trame jumbo portano la MTU a circa 9000 byte, una scelta comune nei data center e nelle reti di archiviazione. Con una MTU di 9000 byte e 40 byte di intestazioni IPv4 più TCP, il MSS sale a 8960 byte. Ogni pacchetto trasporta allora molto più payload rispetto al suo costo fisso di intestazione, il che migliora l'efficienza e riduce il numero di pacchetti che l'hardware deve elaborare per una data quantità di dati.
Che cos'è il Path MTU Discovery e perché è importante?
Il Path MTU Discovery (PMTUD) consente alle estremità di trovare la MTU più piccola lungo un percorso così da dimensionare i pacchetti ed evitare la frammentazione.
Si basa sui messaggi ICMP «frammentazione necessaria»; quando i firewall bloccano quei messaggi, il PMTUD fallisce silenziosamente e i pacchetti grandi vengono scartati, causando connessioni bloccate: un «buco nero della PMTU». La soluzione abituale consiste nel ridurre il MSS annunciato, o nel limitarlo (clamping) su un router.
Da provare dopo
Calcolatore di pacchetti al secondo
Calcola quanti pacchetti al secondo un collegamento può trasportare a partire dalla sua velocità di trasmissione, dalla dimensione dei pacchetti e dall'eventuale overhead di framing per pacchetto. Mostra perché i pacchetti piccoli limitano un collegamento veloce molto prima di raggiungere la velocità nominale.
Calcolatore del tempo di trasferimento dati
Stima quanto dura un trasferimento dati reale a partire dalla quantità di dati, dalla velocità del collegamento e dall'overhead del protocollo. Tiene conto della differenza tra la velocità nominale di un collegamento e il suo throughput utilizzabile.