In Digital Networks, MTU(Maximum Transfer Unit) is the parameter that decides the largest datagram transferred without being fragmented through the network. Below is an introduction to MTU as well as an explanation on how to calculate it. Also, find out its value in Windows and Linux and how to change them.
The Maximum Transmission Unit (MTU) (maximum size of transfer unit) is a parameter that determines the longest datagram can be transmitted by an IP interface without needing to be fragmented into smaller units. The MTU should be larger than the largest datagram you want to convey without being fragmented. More simply, the MTU defines the maximum size (in bytes) of the packet that can be transmitted at once.
Values for different Internet protocols:
Each transmission frame is defined by the body (= MMS = maximum segment size), which defines the largest segment of TCP information that can be transmitted, and the header:
Either a transfer of information of 1500000 bytes using different size of packets through a T1 line (CTS) (T1 = 1544000 bits / sec) as follows:
(MSS + header) * 8 bits / byte
---------------------------------- = Latency
1,544,000 bits / sec.
By using different values of MTU, one can calculate the latency of transmission:
At 10 loops, we get 77.72 ms for the MTU to 1500, and 29.24 ms for the 576.
Summarizing, the more packets there are, the longer the transfer.
1 MByte / MSS = 1048576 bytes / 1460 = 718.2, so 719 packages to transfer 1 MByte.
To transfer 1Mbyte: 719 ms 7772 * packets (always loop) = 5588.068 ms, or 5588 seconds.
If we transfer our 1 MByte in 10 loops (defined by the header), we will ideally:
1 MByte / MSS = 1048576 bytes / 536 = 1956.3, therefore 1957 packets to transfer 1 MByte.
To transfer 1 MByte: 1957 packets * 2924 ms (always loop) = 5722.268 ms, or 5722 seconds per loop.
To transfer 1Mbyte, if one uses an MTU to 1500 then there is 719 * 40 = 28,760 bytes for the header, while the MTU to 576, we get 1957 * 40 = 78,280, more than 49,520 bytes of 'header sent Mbyte each. For our example of 10 loops, it is not considerable, but on the daily transfers ...
Most modems use a larger header, and we do not take into account such other latencies that may be associated.
To find the maximum MTU, it should be in the command prompt (Start> Run> "cmd")/bold>. Once in the command prompt (black page), it is necessary to test ping indicating the size of packages to test:
The<bold>-f option allows you to take the test by requiring routers encountered not fragment the packet.
The-l option sends the packet size.
Removing 28 to the packet size to be tested corresponds to the header of this package.
We must take the test to an IP. For the sake of an Internet browser, it is better to take a Web address/<bold>.
<bold>ping-f-l 1372 192.168.0.1
- If the answer to the query is:
Reply from 192.168.0.1: bytes = 1372 ....
Reply from 192.168.0.1: bytes = 1372 ....
Reply from 192.168.0.1: bytes = 1372 ....
Reply from 192.168.0.1: bytes = 1372 ....
Here the packet size allows transporting without fragmentation. One can test a higher value. When you get the message: "The package must be fragmented but DF set", the packet size is too large.
Once you have determined the optimal MTU, there are two ways of changing the value of MTU. I mention here the easiest to implement via a software calledDrTCP:
Once installed, you have a "MTU" box<bold>, where you must enter the value of the test under DOS by adding 28 for the header.
Just run this command as root with <bold>name_interfaceFind the value of the MTU on Linux
to replace with the name of the network interface concerned:
interface_name ifconfig | grep-Eo "MTU: [0-9] +"
In root with the ifconfig command that changes the MTU on Linux with the following syntax:
interface_name ifconfig mtu value_mtu
ifconfig eth0 mtu 1500