Re: [tcpm] New Version Notification for draft-touch-tcpm-tcp-edo-01.txt

Olivier Bonaventure <Olivier.Bonaventure@uclouvain.be> Fri, 30 May 2014 17:53 UTC

Return-Path: <olivier.bonaventure@uclouvain.be>
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 70BF11A0452 for <tcpm@ietfa.amsl.com>; Fri, 30 May 2014 10:53:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.301
X-Spam-Level:
X-Spam-Status: No, score=-4.301 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001] 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 1Cb3yatCzjxQ for <tcpm@ietfa.amsl.com>; Fri, 30 May 2014 10:53:36 -0700 (PDT)
Received: from smtp6.sgsi.ucl.ac.be (smtp.sgsi.ucl.ac.be [130.104.5.67]) by ietfa.amsl.com (Postfix) with ESMTP id 09BF21A036A for <tcpm@ietf.org>; Fri, 30 May 2014 10:53:36 -0700 (PDT)
Received: from mbpobo.local (host-212-68-230-69.brutele.be [212.68.230.69]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: obonaventure@smtp6.sgsi.ucl.ac.be) by smtp6.sgsi.ucl.ac.be (Postfix) with ESMTPSA id 411E91834B5; Fri, 30 May 2014 19:53:27 +0200 (CEST)
X-DKIM: Sendmail DKIM Filter v2.8.3 smtp6.sgsi.ucl.ac.be 411E91834B5
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=uclouvain.be; s=selucl; t=1401472407; bh=CixPznpyFDzREwJ0Fjg6+m2Wr3M+DYi/oKpwdPl5wPI=; h=Message-ID:Date:From:Reply-To:MIME-Version:To:CC:Subject: References:In-Reply-To:Content-Type:Content-Transfer-Encoding; b=fy42vtrfoC2WyPQAJqNbDeZ9GHD4K40pXqgvugmp9SFB9FMepvhjbb2XEkYRNi6TE 2fVh4f164NY2T3zk4nFiRIB7EKO8DIlrDFvzQ24+/rNgF0He9KvzfG9Iq2wi6pSdCg /cX8OvSF8SQNNMIG5u/uwngj98GCmT+B/GmThAyo=
Message-ID: <5388C597.2030202@uclouvain.be>
Date: Fri, 30 May 2014 19:53:27 +0200
From: Olivier Bonaventure <Olivier.Bonaventure@uclouvain.be>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Thunderbird/24.5.0
MIME-Version: 1.0
To: Joe Touch <touch@isi.edu>, David Borman <dab@weston.borman.com>, Bob Briscoe <bob.briscoe@bt.com>
References: <20140425221257.12559.43206.idtracker@ietfa.amsl.com> <2586_1398464386_535ADF82_2586_915_1_535ADF56.9050106@isi.edu> <CF8D8E25-E435-4199-8FD6-3F7066447292@iki.fi> <5363AF84.8090701@mti-systems.com> <5363B397.8090009@isi.edu> <CAO249yeyr5q21-=e6p5azwULOh1_jUsniZ6YPcDYd69av8MMYw@mail.gmail.com> <DCC98F94-EA74-4AAA-94AE-E399A405AF13@isi.edu> <655C07320163294895BBADA28372AF5D2CFE36@FR712WXCHMBA15.zeu.alcatel-lucent.com> <20140503122950.GM44329@verdi> <655C07320163294895BBADA28372AF5D2D009E@FR712WXCHMBA15.zeu.alcatel-lucent.com> <201405221710.s4MHAY4S002037@bagheera.jungle.bt.co.uk> <537E3ACD.5000308@isi.edu> <1AD79820-22C1-4500-84D1-1383F264D68C@weston.borman.com> <201405231213.s4NCDa5P005525@bagheera.jungle.bt.co.uk> <6391C448-A917-4E66-9B73-CB840B193FD7@weston.borman.com> <537F7EE4.4080101@isi.edu>
In-Reply-To: <537F7EE4.4080101@isi.edu>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-Virus-Scanned: clamav-milter 0.97.7-exp at smtp-6.sipr-dc.ucl.ac.be
X-Virus-Status: Clean
X-Sgsi-Spamcheck: SASL authenticated,
X-SGSI-MailScanner-ID: 411E91834B5.AFF5B
X-SGSI-MailScanner: Found to be clean
X-SGSI-From: olivier.bonaventure@uclouvain.be
X-SGSI-Spam-Status: No
Archived-At: http://mailarchive.ietf.org/arch/msg/tcpm/jB8v4revNDR6yaa-B9wAzR1pwDQ
Cc: "tcpm@ietf.org" <tcpm@ietf.org>
Subject: Re: [tcpm] New Version Notification for draft-touch-tcpm-tcp-edo-01.txt
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: Olivier.Bonaventure@uclouvain.be
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: Fri, 30 May 2014 17:53:37 -0000

David, Joe, Bob,

>> What is impossible is to expand the option space in the initial SYN
>> packet and maintain 100% backwards compatibility with the following
>> restrictions:
>>     1) No additional packets are sent, just the initial SYN
>>     2) There is no a priori knowledge as to whether or not the remote
>> host understands expanded option space.
>
> I would pose the conditions as follows:
>
>      1) is robust to packet loss, reordering, and alternate paths
>          any assumption of "back to back" packets isn't
>
>      2) does not negatively impact legacy hosts
>          e.g., dual-stack/multiple SYN approaches fail here when
>          a legacy system is trying to connect to an updated one
>          (which has to wait to see if the updated SYN will show)
>
>      3) succeeds through basic NAT/NAPTs
>          anything that uses a nonstandard checksum will fail
>          to support the extended space
>
>      4) addresses new connections to hosts not previously contacted
>          it's trivial to retain state across sequences of
>          connections, as per RFC 2140.


Let me make two rough proposals that could be worth being explored or at 
least documented.

1. The TCP option space is limited, but not the IPv6 destination options 
in the IPv6 header. One possibility to extend the TCP option space, 
notably (but not only) in the SYN would be to place part of the TCP 
option inside an IPv6 destination option. Given that the IPv6 
destination option is only limited by the IPv6 packet size, we are safe 
for the long term and the solution seems to be clean.

  This approach has two limitations :

  - It is a violation of the layering principle since the receiving host 
needs to provide the content of the IPv6 destination option to the TCP 
stack.

  - It only works with IPv6 and does not work with IPv4. In the short 
term, IPv4 support is mandatory, but in the long term IPv6 support is 
clearly more important.


2. TCP assumes that the client proposes the TCP extensions and the 
server selects the ones that it supports. In practice, measurements show 
that the TCP stack running on servers is usually upgraded after the 
stack running on clients. It might be interesting to allow the client to 
insert in the SYN a special option that indicates that it would accept 
new options proposed in the SYN+ACK (or perhaps later). These options 
proposed in the SYN+ACK would be confirmed in the third ACK.


If one of these solutions does not seems completely crazy, I can write a 
more detailed proposal to see how it would work in practice


Olivier