Re: [tcpm] 793bis update

Joe Touch <touch@isi.edu> Mon, 23 February 2015 19:53 UTC

Return-Path: <touch@isi.edu>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C82EE1A6EF9 for <tcpm@ietfa.amsl.com>; Mon, 23 Feb 2015 11:53:56 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.21
X-Spam-Level:
X-Spam-Status: No, score=-4.21 tagged_above=-999 required=5 tests=[BAYES_50=0.8, RCVD_IN_DNSWL_HI=-5, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4BK_zdpRf0-z for <tcpm@ietfa.amsl.com>; Mon, 23 Feb 2015 11:53:55 -0800 (PST)
Received: from vapor.isi.edu (vapor.isi.edu [128.9.64.64]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 57EFF1A1DBC for <tcpm@ietf.org>; Mon, 23 Feb 2015 11:53:55 -0800 (PST)
Received: from [128.9.160.252] (pen.isi.edu [128.9.160.252]) (authenticated bits=0) by vapor.isi.edu (8.13.8/8.13.8) with ESMTP id t1NJqwlW002661 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Mon, 23 Feb 2015 11:52:58 -0800 (PST)
Message-ID: <54EB8517.9030805@isi.edu>
Date: Mon, 23 Feb 2015 11:52:55 -0800
From: Joe Touch <touch@isi.edu>
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0
MIME-Version: 1.0
To: Wesley Eddy <wes@mti-systems.com>, "tcpm@ietf.org" <tcpm@ietf.org>
References: <54D51FEF.9080607@mti-systems.com>
In-Reply-To: <54D51FEF.9080607@mti-systems.com>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Transfer-Encoding: 7bit
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Archived-At: <http://mailarchive.ietf.org/arch/msg/tcpm/V9pmavZXK0WxjsJxxuDDDiZF4gY>
Subject: Re: [tcpm] 793bis update
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 23 Feb 2015 19:53:56 -0000

Hi, Wes,

Sorry for the delay in responding. I had a few thoughts, below.

Joe

On 2/6/2015 12:11 PM, Wesley Eddy wrote:
> FYI - I posted an update to the proposed RFC793bis (still an individual,
> not a working group draft):
> http://tools.ietf.org/html/draft-eddy-rfc793bis-05
>
> The main goals in this revision was to introduce a section on
> segmentation of data and place into that section the normative
> content from RFCs that updated 793 and cover the MSS & PMTU
> topics.

The section is useful, but I think also ignores a few key issues that 
would be useful to highlight:

- there's a tension between sending "as large as possible" and a few 
other goals:

	- sending as few short segments as possible

	- avoiding delays to the stream, esp. when the user data
	is NOT always available (i.e., when TCP has to wait)

- "as large as possible" is nearly never a useful goal; it's a 
consequence of some other goal

	The goal is often either performance or fate-sharing.

	Performance argues for larger packets, but the benefit
	decreases as the size increases. Further, there are some
	sizes that, while bigger, are not always better (e.g.,
	1025 bytes can be worse than 1024, even when both fit
	in a segment, due to data alignment on copy).

	Fate sharing argues for smaller packets because TCP
	is not always aware of fragmentation/reassembly at lower
	layers (the degenerate case being AAL5 over ATM, but there
	are other examples). So just because the next-layer down
	has a given MTU, does NOT automatically make that MTU a goal.

- TCP's default MSS has other rules

	I thought there was a rule about being on the same subnet
	and using the interface as the starting MSS.

- I thought TCP SHOULD also support PLMTUD, not just PMTUD.
	
	The difference should be discussed in more detail than given in
	sec 3.7.2.

- Regarding:
    o  TCPhdrsize is the size of the fixed TCP header; this is normally
       20, but may be larger if TCP options are to be sent.

	If TCPhdrsize is the size of the fixed TCP header then it is
	ALWAYS 20. And TCP headers almost always have options.

	I think you may have intended:

	TCPhdrsize is the size of the TCP header and any options;
	this is 20 in the (rare) case that no options are present.

- Regarding:
    o  IPoptionsize is the size of any IP options that TCP will pass to
       the IP layer with the current message.

	TCP doesn't pass options. That happens as a result of settings
	to the socket.

- it would be useful, IMO, to highlight the relationship between TCP 
segment boundaries and user data

	I.e., that TCP guarantees NO such boundary coherence.

Joe