Está en la página 1de 3

Introduccin al MTU

Junio 2014

Introduccin al MTU
Qu es el MTU?
Clculo del MTU
Encontrar el MTU bajo Windows
Modificar el MTU bajo Windows
Encontrar el valor MTU bajo Linux
Modificar el MTU bajo Linux

Qu es el MTU?
El MTU (Maximum Transmission Unit o Unidad mxima de transferencia en espaol) es un
parmetro que indica el tamao mximo que debe tener un datagrama para que sea transmitido
por una interfaz IP sin que necesite ser fragmentado en unidades ms pequeas. El MTU debe
ser superior al datagrama ms grande que deseemos transmitir para que no sea fragmentado.
Dicho de otro modo, el MTU expresa el tamao mximo (en bytes) de un paquete que puede ser
transmitido de una sola vez. Algunos valores del MTU: Para Ethernet: 1500 bytes. Para PPPoE:
1492 bytes Para RTC: 576 bytes

Clculo del MTU


La transmisin de una trama est determinada por su cuerpo (=MMS=maximum segment size),
que determina el mayor segmento de informacin TCP que puede ser transmitido, y la cabecera
(header en ingls). Es decir: MTU=MSS + TCP/IP headers Supongamos que: MSS=MTU-40 <-40 para la cabecera (20 bytes IP y 20 bytes TCP) Los paquetes no son fragmentados No hay
paquetes perdidos Tamao de los paquetes / velocidad Supongamos una transferencia de datos
de 1, 500,000 bytes utilizando diferentes tamaos de paquetes a travs de una lnea T1 (rtc)
(T1=1, 544,000 bits/sec) siguiendo la frmula: (MSS + header) * 8 bits/byte --------------------------------- = latencia 1, 544,000 bits/seg Vamos a calcular la latencia de la transmisin utilizando
diferentes valores de MTU: Si el MTU = 1500, entonces: (1460+40) * 8 / 1, 544,000 = 7.772 ms Si
el MTU = 576, entonces: (536+40) * 8 / 1, 544,000 = 2.924 ms En 10 veces, obtenemos 77,72 ms
para el MTU a 1500, y 29,24 ms para el 576. Por lo tanto cuantos ms paquetes haya, mayor

ser el tiempo de transferencia Utilicemos la misma formula para una transmisin de 1 mb. 1MB
= 1024 KB = 1, 048,576 bytes. Si el MTU = 1500, entonces: (1460+40) * 8 / 1, 544,000 = 7.772
ms 1 MB / MSS = 1, 048,576 bytes / 1460 = 718.2, o sea 719 paquetes para transferir 1 MB. Es
decir, para transferir 1Mb: 719 paquetes * 7.772 ms (por vez) = 5588.068 ms, 5.588 segundos.
Si transferimos 1 MB 10 veces (definidos por la cabecera), esto nos tomar tericamente: (1er
paquete* 10 bucles * 7.772ms delay) + 718 * 7.772 = 5.658 segundos. Si el MTU = 576,
entonces: (536+40) * 8 / 1, 544,000 = 2.924 ms 1 MB / MSS = 1, 048,576 bytes / 536 = 1956.3, o
sea 1957 paquetes para transferir 1 MB. Para transferir 1 MB: 1957 paquetes * 2.924 ms (por
vez)= 5722.268 ms, 5.722 segundos por vez. Si transferimos este 1 MB 10 veces: (1er paquete
*10 veces * 2.924ms) + 1956 * 2.924 = 5.748 sec. La diferencia se debe a que cuanto mayor sea
el tamao de los paquetes, el tamao de la cabecera ser relativamente menor. Por lo tanto para
transferir 1MB, si utilizamos un MTU de 1500 entonces habr 719*40 = 28,760 bytes para la
cabecera, mientras que para un MTU de 576, obtenemos 1957*40=78,280, es decir ms de
49,520 bytes de cabecera transferidos a cada Megabyte. Para nuestro ejemplo de 10
repeticiones, no es considerable, pero para las transferencias realizadas a diario Adems, la
mayora de mdems utiliza un tamao de cabecera mayor, y otras latencias asociadas que no
hemos tomado en cuenta en este ejemplo.

Encontrar el MTU bajo Windows


Para encontrar el MTU, debemos acceder a la lnea de comandos (Inicio > Ejecutar > escribir
cmd). Una vez en la lnea de comandos, haremos pruebas de ping, precisando el tamao de los
paquetes que deseamos probar: ping -f -l (tamao del paquete -28) (IP de nuestro servidor) la
opcin -f permite hacer la prueba obligando a los routers encontrados a no fragmentar el
paquete la opcin l enva el tamao del paquete Restamos 28 al tamao del paquete que
vamos a probar, correspondiente a la cabecera de este paquete Debemos hacer la prueba
apuntando a una direccin IP de una pgina web. Por ejemplo: ping -f -l 1372 192.168.0.1 - Si la
respuesta a la solicitud es: Respuesta desde 192.168.0.1: bytes = 1372.... Respuesta desde
192.168.0.1: bytes = 1372.... Respuesta desde 192.168.0.1: bytes = 1372.... Respuesta desde
192.168.0.1: bytes = 1372.... En este caso el tamao del paquete permite una transferencia sin
fragmentacin, por lo tanto podemos probar con un valor ms grande. Cuando obtengamos el
mensaje El paquete debe ser fragmentado, pero parametrado DF, es porque el tamao del
paquete es demasiado grande.

Modificar el MTU bajo Windows


Una vez que hayamos determinado el MTU optimo, tenemos dos maneras de modificar el valor
MTU. Una de ellas y la ms fcil es utilizando el programa DR TCP. Descrgalo haciendo clic
Aqu y luego haz clic en telecharger, la pgina est en francs pero el programa est en ingls y
es gratis. Una vez instalado, en el campo MTU deberemos indicar el valor encontrado la prueba
que hicimos en la lnea de comandos y agregar 28 para la cabecera.

Encontrar el valor MTU bajo Linux


Tan solo hay que ejecutar este comando con permisos de root, en el que nombre_interfaz
deber ser remplazado por el nombre de la interfaz de red de destino:

ifconfig nombre_interfaz | grep -Eo "MTU:[0-9]+"

Modificar el MTU bajo Linux


El comando ifconfig nos permite modificar el mtu bajo Linux, para ello debemos poseer permisos
de root y utilizar la siguiente sintaxis:
ifconfig nombre_interfaz mtu valor_mtu
Ejemplo: cambiar el MTU de la interfaz eth0 a 1500
ifconfig eth0 mtu 1500
Este documento intitulado Introduccin al MTU de Kioskea (es.kioskea.net) esta puesto a diposicin bajo la
licencia Creative Commons. Puede copiar, modificar bajo las condiciones puestas por la licencia, siempre que esta
nota sea visible.

También podría gustarte