The Linksys router and MTU limitation.
Ah thank you rmucker I will bookmark this thread because I need to add support with linksys routers with that firmware in my upcoming release..
Head webcheese and geek guru @ http://www.cablenut.com
Thanks, cablenut. It tooks days of work (off and on, of course) with multiple responders to gather as much data as we could. Then we just sorted it all out. We even packet sniffed before and after the Linky just to make sure. I am pretty confident this is the real scoop.
I think from dannjr.'s post that Ugate is pulling the same stuff. I have NO idea as to their reasoning behind this. I am sure you are aware that Linksys simply denies this is occuring... They wash their hands of our questions.
I think from dannjr.'s post that Ugate is pulling the same stuff. I have NO idea as to their reasoning behind this. I am sure you are aware that Linksys simply denies this is occuring... They wash their hands of our questions.
I think I know why UGate did it. They had problems with UDP packet corruption before this new firmware the MTU/MSS was the only variable that changes. I on cable get 1476MTU/1436MSS with the new firmware.
Head webcheese and geek guru @ http://www.cablenut.com
-
- Regular Member
- Posts: 406
- Joined: Tue Oct 17, 2000 12:00 am
- Location: Thunder Bay, Ontario, Canada
I know this is a bit off topic but I cracked open my Linksys after getting real ticked off with it dropping my uploads all the time and here is what I found. I'll post there later tonight if I get a chance to crack it open once again (I am using it right now though..*cough*).
http://www.dslreports.com/forum/remark,457028;root=equip,16;mode=flat
maybe this is part of the cause of the MTU limitation with the Linksys BEFSr41 and 11. Damn ISA bus still lives inside this router...

http://www.dslreports.com/forum/remark,457028;root=equip,16;mode=flat
maybe this is part of the cause of the MTU limitation with the Linksys BEFSr41 and 11. Damn ISA bus still lives inside this router...


The Linksys router and MTU limitation.
OK, we at least have an understanding of HOW and WHAT the Linky is doing to your MTU. The WHY part is anyone's guess.
The Linkysys router has a built-in function to limit the MSS field in both outgoing and incoming SYN and SYN,ACK packets. The major limitation occurs in users with PPPoE-based DSL. However, all users of firmware versions ABOVE 1.35 will suffer SOME degree of MTU limitation.
It is logical for the Linksys router to have SOME limitation to MSS for routers that are using PPPoE. This is because the Windows DEFAULT MSS value of 1460 leads to packets that are 1500 bytes in size (obviously excluding MAC headers).
If the router is resposible for the PPPoE, then it must add an 8-byte "PPPoE wrapper" to the packet. Since Ethernet is limited to packets of 1500, if the MSS is 1460, there is NO ROOM for the PPPoE wrapper. [TCP and IP headers take up 20 bytes each.]
However, we feel the DEGREE of limitation of the MTU size by Linksys is *excessive*. Additionally, the reason for limiting MSS/MTU on connections without PPPoE is very unclear.
The limitations in packet size are imposed by *overwriting the MSS fields in the packets with the SYN bit set as they pass through the Linksys router*. Below, "MTU" can be equated with packet size.
These are our findings:
Non-PPPoE connections:
1) Firmware less than 1.36 -- no limitation in packet size.
2) Firmware 1.36 and above, MTU is limited to 1476. (MSS is overwritten to be 1436).
For PPPoE connections:
1) Firmware less than 1.36 -- IF "MaxMTU" is over 1492, MTU is limited to *1362* (MSS is overwritten to 1322). Otherwise, no limitation.
2) Firmware 1.36 and above -- two levels of MTU limitations are imposed:
a) If "MaxMTU" is over 1492, MTU is limited to *1362* (MSS is overwritten to be 1322).
b) If "MaxMTU" is between 1476 and 1493, MTU is limited to 1476 (MSS is overwritten to be 1436).
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
OK, so what are you supposed to do with your computer??
For Cable or non-PPPoE DSL:
There is little you need to do. If having the highest MTU is your goal, then you should choose a firmware earlier than 1.36. You need to weigh this against any benefits that can be attributed to the newer firmware.
For DSL w/ PPPoE:
1) You need to set your NIC's MaxMTU to 1492. Failure to do this will lead to unnecessarily small packets -- your up and down MTU's will be cut to 1362.
This is probably the best argument I have ever seen for adjusting your MTU.
2) If having the highest MTU is your goal, then you should choose a firmware earlier than 1.36. You need to weigh this against any benefits that can be attributed to the newer firmware.
3) You will have NO control over what your UPload MTU is. The Tweak Test (www.dslreports.com/tweaks) will continue to show that your "Max sized data packet" is 1362.
4) It is DESIRABLE for the Tweak Test to say, "(Which is less than your advertised MSS)". This implies you have set your MTU correctly and have maximized your download packet size.
_________________________________________________________________________
I hope this is helpful.
The Linkysys router has a built-in function to limit the MSS field in both outgoing and incoming SYN and SYN,ACK packets. The major limitation occurs in users with PPPoE-based DSL. However, all users of firmware versions ABOVE 1.35 will suffer SOME degree of MTU limitation.
It is logical for the Linksys router to have SOME limitation to MSS for routers that are using PPPoE. This is because the Windows DEFAULT MSS value of 1460 leads to packets that are 1500 bytes in size (obviously excluding MAC headers).
If the router is resposible for the PPPoE, then it must add an 8-byte "PPPoE wrapper" to the packet. Since Ethernet is limited to packets of 1500, if the MSS is 1460, there is NO ROOM for the PPPoE wrapper. [TCP and IP headers take up 20 bytes each.]
However, we feel the DEGREE of limitation of the MTU size by Linksys is *excessive*. Additionally, the reason for limiting MSS/MTU on connections without PPPoE is very unclear.
The limitations in packet size are imposed by *overwriting the MSS fields in the packets with the SYN bit set as they pass through the Linksys router*. Below, "MTU" can be equated with packet size.
These are our findings:
Non-PPPoE connections:
1) Firmware less than 1.36 -- no limitation in packet size.
2) Firmware 1.36 and above, MTU is limited to 1476. (MSS is overwritten to be 1436).
For PPPoE connections:
1) Firmware less than 1.36 -- IF "MaxMTU" is over 1492, MTU is limited to *1362* (MSS is overwritten to 1322). Otherwise, no limitation.
2) Firmware 1.36 and above -- two levels of MTU limitations are imposed:
a) If "MaxMTU" is over 1492, MTU is limited to *1362* (MSS is overwritten to be 1322).
b) If "MaxMTU" is between 1476 and 1493, MTU is limited to 1476 (MSS is overwritten to be 1436).
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
OK, so what are you supposed to do with your computer??
For Cable or non-PPPoE DSL:
There is little you need to do. If having the highest MTU is your goal, then you should choose a firmware earlier than 1.36. You need to weigh this against any benefits that can be attributed to the newer firmware.
For DSL w/ PPPoE:
1) You need to set your NIC's MaxMTU to 1492. Failure to do this will lead to unnecessarily small packets -- your up and down MTU's will be cut to 1362.
This is probably the best argument I have ever seen for adjusting your MTU.
2) If having the highest MTU is your goal, then you should choose a firmware earlier than 1.36. You need to weigh this against any benefits that can be attributed to the newer firmware.
3) You will have NO control over what your UPload MTU is. The Tweak Test (www.dslreports.com/tweaks) will continue to show that your "Max sized data packet" is 1362.
4) It is DESIRABLE for the Tweak Test to say, "(Which is less than your advertised MSS)". This implies you have set your MTU correctly and have maximized your download packet size.
_________________________________________________________________________
I hope this is helpful.
Well I'm just guessin your out of town so here goes..
First you have to remember that setting your machine to 1500 on DSL isn't wise web page ugly is all I'll say..
Forcing the MTU to 1500 is forcing the router into LAN managment something has to give so it drops your machines capability down to 1362 on a sniff since the PPPoE adapter is just that an adapter it wont like the setting... Well heres the sniffs one at 1500 the other at 1492 have fun with it..
Bottem line DSLR is still wrong... At least they should give you a plugin for your machine for with or without a router...
Just an opinion
First you have to remember that setting your machine to 1500 on DSL isn't wise web page ugly is all I'll say..
Forcing the MTU to 1500 is forcing the router into LAN managment something has to give so it drops your machines capability down to 1362 on a sniff since the PPPoE adapter is just that an adapter it wont like the setting... Well heres the sniffs one at 1500 the other at 1492 have fun with it..

Bottem line DSLR is still wrong... At least they should give you a plugin for your machine for with or without a router...
Just an opinion
Personally I don't want to argue it either but if your on PPPoE.. your settings in the machine should reflect your connection type...
At least when someone posts somthing like this
* Please wait .. collecting data
* Some tests failed.
* Your RWIN 8192 is too low
* Recommendations end.
* Detail..
TCPopts hex string is 0204052a01010402
Max Segment Size is 1322
* Your MTU is set ok
SACK Permitted (RFC2018)
Ping stability 81 77 79 78 79 80 78 77 78 78
* Quick packet-loss tested ok
DefaultRcvWindow (RWIN) is 8192
Your RWIN limits you @78.5ms to 834kbps
Your RWIN limits you @200ms to 327kbps
Your Path MTU Discovery is ON
Max sized data packet from you 1362
* End
We know how to tell them again and again how to set there machine with PPPoE through a router...
That was an example of a win98SE machine untweaked with a fresh install.
Now I can play with it hehehehehe
At least when someone posts somthing like this
* Please wait .. collecting data
* Some tests failed.
* Your RWIN 8192 is too low
* Recommendations end.
* Detail..
TCPopts hex string is 0204052a01010402
Max Segment Size is 1322
* Your MTU is set ok
SACK Permitted (RFC2018)
Ping stability 81 77 79 78 79 80 78 77 78 78
* Quick packet-loss tested ok
DefaultRcvWindow (RWIN) is 8192
Your RWIN limits you @78.5ms to 834kbps
Your RWIN limits you @200ms to 327kbps
Your Path MTU Discovery is ON
Max sized data packet from you 1362
* End
We know how to tell them again and again how to set there machine with PPPoE through a router...
That was an example of a win98SE machine untweaked with a fresh install.
Now I can play with it hehehehehe

I have a Linksys router with firmware revision 1.36. When I use a ping -f -l [packet size] command to determine my largest non-fragmented packet size I get 1472. The "Advanced Registry Tweaks" section of this web site tells me I should set my MaxMTU to 1500 based on these results. Now according to what I read in this thread, a MaxMTU of 1500 may be a problem for the Linksys router with firmware rev. 1.36 and higher. Do I need to lower my MaxMTU setting or does my largest non-fragmented packet size of 1472 indicate that my router doesn't have the MTU limitation you are discussing in this thread? 

Roger- It would depend on whether or not you are using PPPoE. It does NOT sound like you are -- at least you did not mention it.
If you have to use PPPoE, then you need to set the MaxMTU of your NIC to 1492 in order to recieve the largest size packets. If you choose 1500, Linksys will "punish" you and cut your incoming packets to 1362.
No matter what, you will frequently have OUTgoing packets that are limited to 1362 -- in reality it will completely depend on the server to which you are connecting.
[ 02-16-2001: Message edited by: rmrucker ]
If you have to use PPPoE, then you need to set the MaxMTU of your NIC to 1492 in order to recieve the largest size packets. If you choose 1500, Linksys will "punish" you and cut your incoming packets to 1362.
No matter what, you will frequently have OUTgoing packets that are limited to 1362 -- in reality it will completely depend on the server to which you are connecting.
[ 02-16-2001: Message edited by: rmrucker ]