I was suffering from the most peculiar problem with my internet connection this week. The symptoms were:

  1. Uploading files by FTP always got stuck at 32 KB (exactly 32768 bytes)
  2. Submitting large portions of text into forms, like on forums and blog comments failed. This also caused the inability to post to this blog from my PC
  3. Some websites (for example mail.yahoo.com) and programs (for example the World Community Grid agent) worked badly

The problem was solved today after a call to my ISP's support, after I completely gave up trying to figure out what's wrong.

It had to do with a bad MTU setting in my wireless router. It was set to 1500, while my ISP uses 1400. When I changed it to 1400, things began working. This also explains why I had no such problem from the other computer connected to the same network - a Thinkpad laptop. Its internal settings probably had the MTU locally set at 1400.

So, what is MTU?

MTU is an acronym standing for Maximum Transmission Unit. In computer networking, it refers to the size (in bytes) of the largest packet that a given layer of a communications protocol can pass onwards. The MTU may be fixed by standards (as is the case with Ethernet, where it is 1500 bytes) or decided at connect time (as is usually the case with point-point serial links). A higher MTU brings higher bandwidth efficiency. However large packets can block up a slow interface for some time, increasing the lag on other packets.

So, I've learned something :-)