Finding the largest MTU, by EXPERIMENT
The best value for MTU is that value just before your packets get fragmented. How do you find that out? By using Ping at an command prompt.
Windows 2000/XP/7 users:
Go to Start/ Programs/ Accessories/ Command Prompt and type the following:
ping -f -l 1472 http://www.dslreports.com
(That is a dash lower case "L," not a dash "1." Also note the spaces in between the sections.)
Linux users:
ping -s 1472 http://www.dslreports.com
OS X users:
ping -D -s 1472 http://www.dslreports.com
Linux and OS X commands are case sensitive.
Press Enter. Then reduce 1472 by 10 until you no longer get the "packet needs to be fragmented" error message. Then increase by 1 until you are 1 less away from getting the "packet need to be fragmented" message again.
Add 28 more to this (since you specified ping packet size, not including IP/ICMP header of 28 bytes), and this is your MaxMTU.
Note:If you can ping through with the number at 1472, you are done! Stop right there. Add 28 and your MaxMTU is 1500.
~~~~~~~~~~~~~~~~~~~~~~~~~~~
For PPPoE, your MaxMTU should be no more than 1492 to allow space for the 8 byte PPPoE "wrapper," but again, experiment to find the optimal value. For PPPoE, the stakes are high: if you get your MTU wrong, you may not just be sub-optimal, things like UPLOADING or web pages may stall or not work at all!
~~~~~~~~~~~~~~~~~~~~~~~~~~~
(TCP, IP, MTU and MSS magic numbers)
40
1500 The biggest-sized IP packet that can normally traverse the Internet without getting fragmented. Typical MTU for non-PPPoE, non-VPN connections.
1492 The maximum MTU recommended for Internet PPPoE implementations.
1472 The maximum ping data payload before fragmentation errors are received on non-PPPoE, non-VPN connections.
1460 TCP Data size (MSS) when MTU is 1500 and not using PPPoE.
1464 The maximum ping data payload before fragmentation errors are received when using a PPPoE-connected machine.
1452 TCP Data size (MSS) when MTU is 1492 and using PPPoE.
576 Typically recommended as the MTU for dial-up type applications, leaving 536 bytes of TCP data.
48 The sum of IP, TCP and PPPoE headers.
The sum of IP and TCP headers.
28 The sum of IP and ICMP headers.
as per http://www.dslreports.com/faq/695