What Is MTU?
MTU means Maximum Transmission Unit. In other words, it's the size of each package of data that is sent across the Internet from your computer to the ISP. So, whether you're sending a 10MB file or a 10KB e-mail, the information sent back and forth between you and your Service Provider will usually be the same size. This is not something you generally have control over or even have to worry about, unless something goes wrong.
Maximum of course, implies that packets can be smaller. Take a file that's 30,347 bytes in size, as an example. That's not an even number, so while the first 20 or so packets will be same size (1500 x 20 = 30,000), there will be some data left over. That last packet will be considerably smaller. This is an oversimplification of the process and somewhat erroneous, but it's enough to understand the basic concept.
The fact that you're reading this means that you've probably been directed here from one of the other connectivity troubleshooting pages. Either that, or your just curious about MTU. So, let's discuss the standards. The two most common values for MTU are 1500 and 1492. Cable Internet providers usually use 1500 and PPPoE (DSL) providers usually use 1492. Of course, there are always exceptions to the rule.
What Is Impacted By MTU?
Actually, everything can be impacted by it, but if your connection is working and only some things are problematic, like those mentioned below, then MTU is one possible cause.
There are a few services that can be dramatically impacted by MTU size. The first is a VPN (Virtual Private Network). The reason for this, is that you've created an encrypted network within a network. As such, your VPN connection has some overhead that uses up part of those 1492 or 1500 bytes of data. Having improper MTU settings can fragment those packets and cause a number of problems.
If you work for a government or a company which allows you access to your office network even when you're away from the office, then you are likely using a VPN. Usually, you have to run a special program or go to a website and sign in before you can gain that access.
Unfortunately, IT departments often don't even understand their own VPN software well enough and run into frequent problems with it, especially when setting up a new connection for an employee, with an ISP they haven't yet encountered.
Slow speeds, miscellaneous websites not working, intermittent connections only when using your VPN and even some e-mail issues are examples of problems you can experience. Keep in mind that no ISP bares any responsibility for a VPN connection, unless they actually provided it, and few if any, do. So, the responsibility for supporting VPN's falls squarely in the laps of those who set them up. In other words, it's a non-supported issue for your ISP. However, lots of people use them, so they are a reality of today's Internet. Therefore, if your Internet connection works great, except when using your VPN, then the software may be misconfigured and MTU is just about the only setting that you can personally have any control over, which may help minimize or eliminate the issues.
Voice over IP service, or VoIP can also be dramatically affected by MTU and for the same reason. It's basically another sub-carrier on the Internet of a private network, only this one provides phone service. So, robotic voices, echo, long pauses and broken conversations can all be a result of MTU issues. Before you go calling your VoIP provider though and yelling at them about MTU, this is only one possibility in a myriad array of things that can cause the same problems. In fact, I'm not even going to try to address VoIP in this troubleshooting. I just wanted you to be aware that it's a possibility.
Finally, we come to Secure Websites, which are easily recognized by https:// in the address bar, as opposed to simply http:// . Some browsers will also show a lock icon in the address bar to indicate that you're on a secure site.
If you have problems logging in or using some or all Secure Websites, but everything else works fine, MTU is one possible problem. Hotmail.com is one site known to give people grief. Again, this is only one possible cause of that type of issue. You won't really know until you go through all of the troubleshooting.
However, you can also troubleshoot Secure Websites on the Browser troubleshooting page.
How Do I Diagnose An MTU Problem & What Do I Do Next?
Did you read all of that? I apologize if you did. It's pretty dry material, but maybe you gleaned some knowledge from it. Now, let's get down to business and actually do some more troubleshooting.
If you're using a router, then MTU will be covered in Router troubleshooting. I'm not going to cover that again here. Otherwise, let's continue.
Find Out Your MTU The Old School Way
The other method uses a program that does all the work for you. While this method takes longer, you can be sure of the results and have something to provide your IT department or ISP, if they ask.
Let's open up a DOS prompt again. Click Start, All Programs, Accessories, Command Prompt.
When DOS opens, type the following command and hit Enter.
ping www.google.ca -f -l 1500
You will now get some results that typically look like this:
Pinging www.l.google.com [74.125.226.20] with 1500 bytes of data:
Packet needs to be fragmented but DF set.
Packet needs to be fragmented but DF set.
Packet needs to be fragmented but DF set.
Packet needs to be fragmented but DF set.Ping statistics for 74.125.226.20:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
Don't panic. This doesn't mean that you don't have a connection. It means that your MTU size is not operating at 1500. So, we try another size. A general rule to follow is to decrease the value by 8 bytes at a time. Therefore, 1492 is next.
Note: DSL services and all providers utilizing PPPoE usually require an MTU of 1492 because they have a slightly larger overhead for managing their network; 8 bytes worth.
Retype the command, but this time use 1492. Keep going until you find results that look similar to the example below. I'll save you the time of messing with your calculator. The subsequent values are: 1484, 1476, 1468, 1460, 1452, 1444 and 1436. Stop there. If you haven't found a valid packet size by the time you reach 1436, something is probably amiss.
Note: If you're using a VPN, keep in mind that you will get different results from inside the VPN than you will when you're not using it. Make note of both values and let your IT department know what they are. It will help them diagnose the issue.
Pinging www.l.google.com [74.125.226.51] with 1460 bytes of data:
Reply from 74.125.226.51: bytes=1460 time=22ms TTL=58
Reply from 74.125.226.51: bytes=1460 time=22ms TTL=58
Reply from 74.125.226.51: bytes=1460 time=22ms TTL=58
Reply from 74.125.226.51: bytes=1460 time=21ms TTL=58Ping statistics for 74.125.226.51:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 21ms, Maximum = 22ms, Average = 21ms
As you can see in the example above, my MTU works at 1460, but at work, our connection uses 1468. Each provider is different. Ask your ISP what yours should be. A level 1 technician at your ISP won't likely know this answer, but most level 2 technicians will.
We're not quite done. Once you get a value that works without fragmentation, back up. It's like a game of hi-low. On my connection, 1460 was the highest value divisible by 8 that worked, but that isn't necessarily my exact MTU. So, now I'm going to roll back a bit. I try 1464 and it works, I try 1466 and it doesn't. So my highest possible MTU is 1464.
Why is it such an odd number? Well, the process of pinging actually creates some overhead itself, 28 bytes worth for the ICMP packet identifier and the header containing IP information. When you add that 28 bytes of data onto my results, we get an end value of 1492.
So, what good is this information? Well, I need to know what my MTUbold text should be in order to determine if this is a problem by itself. In my example, chances are pretty good that my MTU is fine. I can say that because I was able to find a valid packet size that did not result in broken data, without having to go to a ridiculously low number. In fact, because my adjusted MTU size is 1492, it is probably safe to assume that my MTU is configured properly. There are technicians that will likely cringe at those statements, but in practice it's true far more often than not.
If however, you get all the way down to 1436 and never find a valid packet size, then there might be something wrong. It's possible some software has adjusted your MTU or that you need to optimize your connection. Normally, this would require you to edit your Registry, but that's not a route through which I'm willing to guide you. Instead, we have a software solution available that will accomplish the same thing. So, continue on to the easy method.
The Easy Method
Warning: Grab a pen and paper to write down your settings before you change anything, in case you need to undo it at some point. Whenever you actually apply changes in this program it asks you if you want to make a backup, which of course, you do. You can restore these at a later date by utilizing the File menu. You can also Import and Export settings, if you so choose. However, it's always a good idea to keep a written copy of it, just in case the backup gets lost or damaged.
For this next part you're going to need to grab a copy of this program: TCP Optimizer.
This program doesn't need to install. It's a single file executable, so you can just click it and select Run or Open in your browser to get started. Once it's running it should be fairly self-explanatory:
Check Your Current Settings:
- At the bottom of the window, make sure that the dot for Choose settings is set to Current.
- Now, look at the MTU setting and write that down.
- If things ever get really messed up, you can always select the option for Windows Default and Apply those in order to make your connection usable again.
If You Have A VPN:
- VPN software usually installs it's own Network Adapter. It's a software component that mimics a physical network card. You will likely need to record the current settings for that by selecting it from the drop-down box, as well.
- You can also adjust it separately. The name should be fairly obvious. It will likely include VPN or the name of the actual software you use to connect in it's description like this: VPN Tunneling Adapter.
Adjust Your Settings:
- Slide the Connection Speed ruler at the top of the window across the bar to the value closest to your advertised connection speed. You will see the results in the line above the slider, as you move it.
- Now, look at the Network Adapter selection. The correct Ethernet controller should already be in the drop-down box. If not, you might have to select it.
Next, do only one of the following:
DSL (PPPoE):
- If you're on DSL, which is high speed Internet through your phone lines, or use any ISP that requires a PPPoE connection, then move the dot at the bottom to Custom, place a checkmark in the PPPoE box in the middle of the window, on the right side, below MTU. Now move the dot at the bottom to Optimal and press Apply changes. Notice that the MTU value is set to 1492, which is the default value for PPPoE and you never likely want to adjust that to anything else.
All Other Connections:
- Move the dot at the bottom from Current to Optimal and make note of what the program recommends you use for MTU. Write this down as well, in case you need to undo the changes at some point and press Apply changes.
By default the program will make a backup. Do yourself a favour and don't disable that. It will show you the changes you're making and ask you before continuing. Once it's done it will also ask to reboot your system, for the new settings to take affect. Let it do so.
On the MTU/Latency tab, press the button labeled Largest MTU and wait for the results. The program will go through various tests in order to find your actual MTU size and recommend what MTU you should configure Windows to use, as a result.
If you've followed the "Old School" method above you will already know that my current connection is utilizing an MTU of 1464. This program explains why. After all of it's tests are run, in a fraction of the time it would take you to manually do the same thing, it provided me with the following results:
The largest possible non-fragmented packet is 1464 (1492 - 28 ICMP & IP headers).
You can set your MTU to 1492
So, now I can go back to the General Settings and adjust my MTU to 1492.
Warning: There are a lot of other options in this program that you will not likely need to worry about. Selecting Custom at the bottom will let you adjust any of the settings on the General and Advanced screens. Do so at your own risk.
You're done.
By this point in the process you've either determined your MTU and optimized it with TCP Optimizer, or you've determined that your current MTU results are suspicious. If you were able to optimize your MTU, hopefully the issues that you were seeing prior to this exercise have now disappeared. If not, return to the previous page and continue on with your troubleshooting.
If your MTU is suspect, you've recorded whatever results you do have in order to provide them to your ISP.
If you were troubleshooting a VPN connection, then you've recorded the results both when using the VPN software and when not using it, so that you can provide these to your IT department.