Re: [Tsvwg] minimum TCP MSS
David Borman <dab@cray.com> Tue, 04 November 2003 03:45 UTC
Received: from optimus.ietf.org (ietf.org [132.151.1.19] (may be forged)) by ietf.org (8.9.1a/8.9.1a) with ESMTP id WAA12624 for <tsvwg-archive@odin.ietf.org>; Mon, 3 Nov 2003 22:45:22 -0500 (EST)
Received: from localhost.localdomain ([127.0.0.1] helo=www1.ietf.org) by optimus.ietf.org with esmtp (Exim 4.20) id 1AGs7r-0003oZ-Rg for tsvwg-archive@odin.ietf.org; Mon, 03 Nov 2003 22:45:04 -0500
Received: (from exim@localhost) by www1.ietf.org (8.12.8/8.12.8/Submit) id hA43j3X4014657 for tsvwg-archive@odin.ietf.org; Mon, 3 Nov 2003 22:45:03 -0500
Received: from localhost.localdomain ([127.0.0.1] helo=www1.ietf.org) by optimus.ietf.org with esmtp (Exim 4.20) id 1AGs7q-0003o9-LO; Mon, 03 Nov 2003 22:45:02 -0500
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org) by optimus.ietf.org with esmtp (Exim 4.20) id 1AGo4d-0000zU-Vm for tsvwg@optimus.ietf.org; Mon, 03 Nov 2003 18:25:28 -0500
Received: from ietf-mx (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id SAA03193 for <tsvwg@ietf.org>; Mon, 3 Nov 2003 18:25:15 -0500 (EST)
Received: from ietf-mx ([132.151.6.1]) by ietf-mx with esmtp (Exim 4.12) id 1AGo4a-0000Sq-00 for tsvwg@ietf.org; Mon, 03 Nov 2003 18:25:25 -0500
Received: from mail1.cray.com ([136.162.0.111]) by ietf-mx with esmtp (Exim 4.12) id 1AGo4a-0000SC-00 for tsvwg@ietf.org; Mon, 03 Nov 2003 18:25:24 -0500
Received: from relayb.mw.cray.com (relayb.us.cray.com [192.168.252.110]) by mail1.cray.com (8.12.10/8.12.10/gw-1.2) with ESMTP id hA3NOeGE007479; Mon, 3 Nov 2003 17:24:41 -0600 (CST)
Received: from saffron.us.cray.com (saffron.mw.cray.com [172.31.27.14]) by relayb.mw.cray.com (8.12.10/8.12.10/hub-1.3) with ESMTP id hA3NOdd0022972; Mon, 3 Nov 2003 17:24:39 -0600 (CST)
Received: from [172.31.18.222] (restive [172.31.18.222]) by saffron.us.cray.com (8.12.10/8.12.8/badger-1.4) with ESMTP id hA3NOdW6589483; Mon, 3 Nov 2003 17:24:39 -0600 (CST)
In-Reply-To: <3FA69A3F.6A5406CB@hp.com>
References: <BAY2-F546n0ssrAX0VQ0000a101@hotmail.com> <20031101221628.A18706@openss7.org> <3FA69A3F.6A5406CB@hp.com>
Mime-Version: 1.0 (Apple Message framework v606)
Content-Type: text/plain; charset="US-ASCII"; format="flowed"
Message-Id: <D245BB18-0E54-11D8-BADF-000A95D7D4C0@cray.com>
Content-Transfer-Encoding: 7bit
Cc: tsvwg@ietf.org
From: David Borman <dab@cray.com>
Subject: Re: [Tsvwg] minimum TCP MSS
Date: Mon, 03 Nov 2003 17:24:07 -0600
To: Rick Jones <rick.jones2@hp.com>
X-Mailer: Apple Mail (2.606)
X-Cray-VirusStatus: clean
Content-Transfer-Encoding: 7bit
Sender: tsvwg-admin@ietf.org
Errors-To: tsvwg-admin@ietf.org
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.0.12
Precedence: bulk
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
On Nov 3, 2003, at 12:11 PM, Rick Jones wrote:
> It is my understanding that there is no minimum MSS specified for TCP
> (well, one
> byte is perhaps implicit in TCP being a byte stream rather than a bit
> stream...), although some TCP _implementations_ may have settings to
> reject
> connections advertising an MSS less than some value.
> Again, unless I am getting beyond my knowledge, 536 is the _default_
> MSS - the
> MSS that TCP should assume when it does not send or see an MSS option
> in the SYN
> or SYN|ACK segment.
Yes, see RFC 1122, section 4.2.2.6
>
> I _suspect_ but cannot quote chapter and verse to confirm, that 536
> stems from
> the requirement that a conforming IP stack must be able to reassemble
> IP
> datagram fragments into IP datagrams of at least 576 bytes. That is the
> "minimum, maximum IP datagram size" an IP stack must support, not a
> minimum MTU.
> (IIRC, the minimum IPv4 MTU is 68 bytes, and 12XX for v6)
For IPv4, RFC 791 defines the minimum IP packet size as 68 bytes. On
page 25:
Every internet module must be able to forward a datagram of 68
octets without further fragmentation. This is because an internet
header may be up to 60 octets, and the minimum fragment is 8 octets.
Every internet destination must be able to receive a datagram of 576
octets either in one piece or in fragments to be reassembled.
So, avoiding any IP fragmentation, that puts the minimum TCP MSS at 28
bytes. But since every IP must be able to receive a 576 byte packet,
either as a single piece or in fragments, that's how the TCP default
MSS of 536 is derived.
> If TCP "knows" that the "minimum, maximum IP datagram size" is 576,
> then it
> "knows" that using an MSS of 536 (576 less 20 bytes of TCP header and
> 20 bytes
> of IP header, options may vary :) means that its traffic has at least a
> snowball's chance of getting through.
TCP MSS doesn't include IP or TCP options, it's the underlying MTU
minus the fixed IP and TCP headers. Senders need to adjust down the
amount of TCP data based on any IP or TCP options that it is inserting.
> rick jones
David Borman, dab@cray.com
_______________________________________________
tsvwg mailing list
tsvwg@ietf.org
https://www1.ietf.org/mailman/listinfo/tsvwg
- [Tsvwg] minimum TCP MSS Van Dang
- Re: [Tsvwg] minimum TCP MSS Brian F. G. Bidulock
- Re: [Tsvwg] minimum TCP MSS Rick Jones
- Re: [Tsvwg] minimum TCP MSS Joe Touch
- Re: [Tsvwg] minimum TCP MSS David Borman