Re: [tcpm] More TCP option space in a SYN: draft-briscoe-tcpm-syn-op-sis-02

Bob Briscoe <bob.briscoe@bt.com> Thu, 25 September 2014 09:56 UTC

Return-Path: <bob.briscoe@bt.com>
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 9EF2E1A6F27 for <tcpm@ietfa.amsl.com>; Thu, 25 Sep 2014 02:56:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.387
X-Spam-Level:
X-Spam-Status: No, score=-3.387 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RP_MATCHES_RCVD=-0.786, 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 71VqdtR9Xt1C for <tcpm@ietfa.amsl.com>; Thu, 25 Sep 2014 02:56:44 -0700 (PDT)
Received: from hubrelay-rd.bt.com (hubrelay-rd.bt.com [62.239.224.99]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7C49D1A1BEE for <tcpm@ietf.org>; Thu, 25 Sep 2014 02:56:44 -0700 (PDT)
Received: from EVMHR02-UKBR.domain1.systemhost.net (193.113.108.41) by EVMHR68-UKRD.bt.com (10.187.101.23) with Microsoft SMTP Server (TLS) id 8.3.348.2; Thu, 25 Sep 2014 10:56:42 +0100
Received: from EPHR02-UKIP.domain1.systemhost.net (147.149.100.81) by EVMHR02-UKBR.domain1.systemhost.net (193.113.108.41) with Microsoft SMTP Server (TLS) id 8.3.348.2; Thu, 25 Sep 2014 10:56:41 +0100
Received: from bagheera.jungle.bt.co.uk (132.146.168.158) by EPHR02-UKIP.domain1.systemhost.net (147.149.100.81) with Microsoft SMTP Server id 14.3.181.6; Thu, 25 Sep 2014 10:56:37 +0100
Received: from BTP075694.jungle.bt.co.uk ([10.215.130.93]) by bagheera.jungle.bt.co.uk (8.13.5/8.12.8) with ESMTP id s8P9uae9013452; Thu, 25 Sep 2014 10:56:36 +0100
Message-ID: <201409250956.s8P9uae9013452@bagheera.jungle.bt.co.uk>
X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9
Date: Thu, 25 Sep 2014 10:56:35 +0100
To: Joe Touch <touch@isi.edu>
From: Bob Briscoe <bob.briscoe@bt.com>
In-Reply-To: <542344DA.9020905@isi.edu>
References: <201409222045.s8MKjZdD002071@bagheera.jungle.bt.co.uk> <542344DA.9020905@isi.edu>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"; format="flowed"
X-Scanned-By: MIMEDefang 2.56 on 132.146.168.158
Archived-At: http://mailarchive.ietf.org/arch/msg/tcpm/ggvmj6HdonQBYfqf621WsaOfkmQ
Cc: tcpm IETF list <tcpm@ietf.org>
Subject: Re: [tcpm] More TCP option space in a SYN: draft-briscoe-tcpm-syn-op-sis-02
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: Thu, 25 Sep 2014 09:56:47 -0000

Joe,

At 23:25 24/09/2014, Joe Touch wrote:
>Hi, Bob (et al.),
>
>It's good to have a more detailed description of the proposal.
>
>I still find a dual-SYN solution untenable, though, as it has been for
>other upgrade paths in the past (e.g., IPv6).

That's why I prefer syn-op-sis because it only uses 2 SYNs for transition.

I've included a new section on ways to use only 1 SYN during 
transition (building a white-list) and ultimately moving to 1 SYN in 
the future, only falling back to the legacy SYN in series rather than 
parallel if you hit a legacy listener.

The other two in tcp-syn-ext-opt have to be 2-SYN for ever.

>Also, I don't particularly think that putting the options at the end of
>the segment serves any useful purpose other than to make this option
>handle the option space in a different way than the default DO header field.

That's the architectural point.
There's also a tactical point. It should get through every middlebox.

>I'm glad to hear what others think and agree that an unbiased comparison
>of the approaches would be a useful place to for the discussion to start...

Yes, I'm already repeating myself - you're right we need wider opinions.



Bob


>Joe
>
>On 9/22/2014 7:55 AM, Bob Briscoe wrote:
> > Joe,
> >
> > I've just posted a revision here:
> > <http://tools.ietf.org/html/draft-briscoe-tcpm-syn-op-sis-02>
> >
> > * I've taken more care to explain it. It was a bit terse before. So it's
> > ready for the list to review properly now.
> >
> > It would be useful if someone wrote a comparison with the other ideas on
> > how to do this, including the ones we wrote jointly and SLO, LOIC and
> > DBormam's 4-way HS. Better someone independent of all the authors does
> > this. But I want to get syn-op-sis right first, a comparison won't be
> > much use until its stable.
> >
> >
> > The underlying idea is still the same. The reasons I've updated it are
> > many (the change log taken from the appendix is pasted at the end of
> > this email for convenience).
> >
> > * Mainly I've articulated that all these approaches that add TCP options
> > after the Data Offset are not just hacks to get more space; they add a
> > new architectural capability to TCP - a distinction between TCP options
> > that might be relevant to middleboxes, and ones that are only for the
> > destination (a bit like destopt in IPv6 - needing to specify which TCP
> > options are for the destination only is ironic but necessary).
> >
> > * I've also realised that this approach will ultimately return to a
> > single SYN solution, whereas both the ideas in
> > draft-touch-tcpm-tcp-syn-ext-opt will always require two SYNs.
> >
> >
> >
> > Bob
> >
> > Pasted from the change log:
> >
> >    From briscoe...-01 to briscoe...-02:
> >
> >       Technical changes:
> >
> >       *  Defined the client behaviour dependent on which response
> >          arrives first.
> >
> >       *  Allowed retransmission of either SYN or SYN-U if no response
> >          from either.
> >
> >       *  Redefined EOO as an offset from the end of the packet, not from
> >          the beginning of the payload.
> >
> >       *  Added section on Migration to a Single Handshake.  Reworded
> >          dual handshake so that it is not mandatory for the client to
> >          send dual SYNs simultaneously; only the relation between the
> >          SYNs and the response to either is mandatory, while parallel
> >          SYNs is purely for latency reduction.
> >
> >       *  Added rules for writing TCP options, i.e. i) options like TFO
> >          MUST NOT be located in the TCP header and ii) add no-ops to
> >          align on 4-octet boundary.
> >
> >       *  Added rules for forwarding TCP options, i.e. only the
> >          destination looks for TCP options after the Data Offset, not
> >          middleboxes.
> >
> >       *  Moved the Explicit Handshake variant (SYN-L) into the body from
> >          the appendix, and recommended the choice could be down to
> >          implementers or apps.  Included section on corner cases.
> >
> >       *  Introduced more normative language throughout the Protocol
> >          Spec.
> >
> >       Editorial changes:
> >
> >       *  Added temporary motivation section
> >
> >       *  Added confusible terminology to Terminology section.
> >
> >       *  Divided protocol spec into sub-sections.
> >
> >       *  Handshake table: Clarified that the two columns under each
> >          server represent separate threads, that may run on separate
> >          servers, without co-ordination.  Represented message
> >          dependencies in the alignment of the rows.
> >
> >       *  Explained the table.
> >
> >       *  Explained why a legacy server won't ever pass SYN-U to the app.
> >
> >       *  More precisely described loss as 'not arrived before a
> >          timeout', and explained the tradeoff between latency and extra
> >          TCP options.
> >
> >       *  Gave reasoning for locating TCP options in three groups.
> >
> >       *  Acknowledged Rob Hancock for the architectural idea of hiding
> >          an extension to a protocol in the layer above.
> >
> >       *  Appendix about protocol alternatives now only presents the SYN-
> >          UD alternative, given the implicit/explicit handshake choice
> >          has been moved to the body.
> >
> >       *  Rewrote appendix about comparing the choices to treat the two
> >          pairs of choices separately, rather than discussing all four
> >          combinations of pairs of choices.
> >
> > ________________________________________________________________
> > Bob Briscoe,                                                  BT

________________________________________________________________
Bob Briscoe,                                                  BT