Talk:Maximum segment size
Why MSS is needed at all?
It would be nice if the article could point out why an MSS value is necessary, since we already have an MTU and a PMTU; isn't the MSS redundant? 195.56.53.118 22:32, 2 November 2006 (UTC)
Error in article: header size is 40 bytes for IPv4
Per section 18.4 of TCP/IP Illustrated Volume 1, headers total 40 bytes with IPv4. 20 bytes for IP, 20 bytes for TCP, so MSS should be MTU-40.
I've never contributed to Wikipedia, and I don't know anything about IPv6, so I can't say whether that part of the article is accurate or not, so I haven't made an edit. — Preceding unsigned comment added by Tomlogic (talk • contribs) 22:38, 7 November 2006 (UTC)
Comments on the above
I'm pretty sure that MTU is a parameter used by the IP stack software or something else at about that level. It says, in effect "If you encounter an outbound packet larger than this, fragment it." MSS is a parameter used by the program actually generating messages that says "block your message into chunks no larger than this so we don't have to fragment it later". I think MSS might apply only to TCP whereas MTU applies to UDP and any other data scheme that uses IP. PMTU is an algorithm/technique that is used to dynamically determine the maxmum usable MTU for a link.
It does seem to me also that one article with a couple of links could probably handle all three concepts.
Yes, I believe that the TCP header is almost always 40 bytes. It's the 'almost' that troubles me. See [1] and search for the phrase "TCP options expanding the header". TCP options?
I considering getting back into working on Wikipedia after a lapse of several years. But it's a vastly different (and better) resource than it was back when there were only a few thousand articles and the objective was to get credible content. I don't plan to start up by tinkering with articles on subjects that I possibly don't understand all that well. I'll check back in a month or so and see where this stands 72.92.156.173 14:00, 23 November 2006 (UTC)
MSS is TCP-specific
The article should point out that MSS is a TCP term; it starts by defining it as some general thing between "communication devices", then slips over to talk about TCP as if it was a special case. (Or has the term been generalized, and I've missed it?) JöG (talk) 11:52, 24 March 2009 (UTC)
MSS vs MTU
If you put MSS and MTU into the correct layers it becomes much clearer. MTU is the maximum physical amount of data that can be moved in one piece on layer 2, usually limited by hardware.
Since layer 3 (IP) employs layer 2 and is in turn used by layer 4 (TCP), both of these must not transmit more data than can be physically transported. For TCP's layer 4 this amount is MSS = MTU - overhead (2x20 bytes for IPv4 over Ethernet).
Sometimes however hardware restrictions do not directly apply, so MSS is a matter of arbitration (e.g. PPP). -- Zac67 (talk) 20:08, 18 August 2009 (UTC)
Too much detail
I think this is excessive detail, so I moved it to talk:
TCP and IPv4 headers are 20 bytes long each, whereas an IPv6 header is 40 bytes long, so the MSS is equal to MTU minus 40 when using IPv4, and MTU minus 60 when using IPv6 (typical MTU for Ethernet is 1500 bytes).