[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [lwip-users] Jumbo frame questions
From: |
Bill Auerbach |
Subject: |
RE: [lwip-users] Jumbo frame questions |
Date: |
Wed, 6 Feb 2008 14:39:02 -0500 |
> Kieran Mansley
> Sent: Tuesday, February 05, 2008 10:24 AM
> To: Mailing list for lwIP users
> Subject: RE: [lwip-users] Jumbo frame questions
>
> There may be a bug here, but I think it's just you're hoping the lwIP
> has a feature that it doesn't have: path MTU discovery. Normally if you
> try and send a packet with a larger MTU than some piece of the network
> can't handle it will either fragment it (if it's allowed) or drop it and
> send an ICMP message back to the sender. I expect that lwIP does
> nothing with this ICMP message. This could be construed a bug
> (especially if we also set the DF - Don't Fragment - bit in the header)
> but could also be seen as a property of lwIP being "lightweight".
>
> For the avoidance of confusion:
> MSS = largest TCP payload
> MTU = largest IP packet (i.e. MSS + IP and TCP headers).
> Frame size = largest ethernet frame (i.e. MTU + ethernet headers etc)
> i.e. You may need to adjust your MSS settings as it looks like you're
> giving it the values you want for the MTU or frame size.
This may be a big part of my problem. I was trying to configure off of one
#define to build either Jumbo or normal lwIP.
If I have
#define PKTSIZE 1514
And
netif-mtu = PKTSIZE - 14;
And
TCP_MSS (PKTSIZE - 54)
This gets me an MTU of 1500 and MSS of 1460. This works much better now.
This works now with the PC's Ethernet controller at 1514 or 9000. I know
you say it's not supposed to, but I do see frames over 1514 in WireShark and
I can still access our LAN and WAN.
Thank you for setting me straight on these 3 values.
What are the reason(s) you wouldn't set MTU and MSS based on the packet size
as I have done?
Bill