Re: [tcpm] draft-tcpm-fastopen: interaction with ECN

Bob Briscoe <bob.briscoe@bt.com> Wed, 23 April 2014 13:33 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 B0A4A1A03A7 for <tcpm@ietfa.amsl.com>; Wed, 23 Apr 2014 06:33:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.873
X-Spam-Level:
X-Spam-Status: No, score=-2.873 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RP_MATCHES_RCVD=-0.272, 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 tathT5AKKTHr for <tcpm@ietfa.amsl.com>; Wed, 23 Apr 2014 06:33:48 -0700 (PDT)
Received: from hubrelay-by-04.bt.com (hubrelay-by-04.bt.com [62.7.242.140]) by ietfa.amsl.com (Postfix) with ESMTP id D17451A0362 for <tcpm@ietf.org>; Wed, 23 Apr 2014 06:33:47 -0700 (PDT)
Received: from EVMHR01-UKBR.domain1.systemhost.net (193.113.108.40) by EVMHR04-UKBR.bt.com (10.216.161.36) with Microsoft SMTP Server (TLS) id 8.3.297.1; Wed, 23 Apr 2014 14:33:39 +0100
Received: from EPHR01-UKIP.domain1.systemhost.net (147.149.196.177) by EVMHR01-UKBR.domain1.systemhost.net (193.113.108.40) with Microsoft SMTP Server (TLS) id 8.3.297.1; Wed, 23 Apr 2014 14:33:38 +0100
Received: from bagheera.jungle.bt.co.uk (132.146.168.158) by EPHR01-UKIP.domain1.systemhost.net (147.149.196.177) with Microsoft SMTP Server id 14.2.347.0; Wed, 23 Apr 2014 14:33:37 +0100
Received: from BTP075694.jungle.bt.co.uk ([10.111.229.177]) by bagheera.jungle.bt.co.uk (8.13.5/8.12.8) with ESMTP id s3NDXXtZ012337; Wed, 23 Apr 2014 14:33:34 +0100
Message-ID: <201404231333.s3NDXXtZ012337@bagheera.jungle.bt.co.uk>
X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9
Date: Wed, 23 Apr 2014 14:33:32 +0100
To: Yuchung Cheng <ycheng@google.com>
From: Bob Briscoe <bob.briscoe@bt.com>
In-Reply-To: <CAK6E8=f+XawCxdMCnDztOJbqwfCd_UE25SjeZ8fD9eJtX=0X1Q@mail.g mail.com>
References: <201404101602.s3AG28nH001717@bagheera.jungle.bt.co.uk> <655C07320163294895BBADA28372AF5D2A2684@FR712WXCHMBA15.zeu.alcatel-lucent.com> <201404160110.s3G1A8j5002032@bagheera.jungle.bt.co.uk> <CAK6E8=f+XawCxdMCnDztOJbqwfCd_UE25SjeZ8fD9eJtX=0X1Q@mail.gmail.com>
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/-zXDPLfXsa-LVHD2B--yeg_QChQ
Cc: "draft-tcpm-fastopen@tools.ietf.org" <draft-tcpm-fastopen@tools.ietf.org>, tcpm IETF list <tcpm@ietf.org>
Subject: Re: [tcpm] draft-tcpm-fastopen: interaction with ECN
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: Wed, 23 Apr 2014 13:33:51 -0000

Yuchung,

Thx. I hadn't realised you had already checked for ECN interactions.

I do not agree with saying no-one should cache anything other than
what's mentioned in the RFC.

For example, at one stage we (me, Mirja, Richard ?) were proposing 
that the timestamp on the SYN could be used to negotiate timestamp 
precision (and other stuff I can't recall at the moment).

If caching a particular item of negotiated connection state X will 
save negotiation delay, and a SYN on a resumed TFO connection can 
re-declare X rather than re-negotiating it, then a valid TFO cookie 
would save negotiation delay in a case where X would be useful on the 
SYN but would normally have to wait for the next round.

Note: even tho the cookie wouldn't need to contain X itself, a valid 
cookie would prove that this client had talked to the server before, 
which may be sufficient proof.

If we are going to say "don't cache anything else", I suggest we say 
"SHOULD NOT cache anything else" and say why. Then for cases where 
the reasons don't apply, we are not stopping people being innovative.

Possible reasons against caching are case-dependent:
* SACK: Negotiation adds no delay because SACK on SYN is irrelevant.
* Window scale: Could save negotiation delay by allowing window 
scaling from the previous session to be meaningful on both SYNs (with data).
* Timestamp: Adds no delay because TS should be on the SYN anyway.
* ECN: An ECT SYN is likely to be discarded by security boxes.
* etc etc.

* In all cases, the client may communicate with a different replica 
of the server that does not have the same config as the original 
server. However, for some features this might be very unlikely.


Apologies that this reply is a bit vague. I'm on holiday, but I 
didn't want to hold up this draft going to the IESG.



Bob



At 23:02 22/04/2014, Yuchung Cheng wrote:
>On Tue, Apr 15, 2014 at 6:09 PM, Bob Briscoe <bob.briscoe@bt.com> wrote:
> >
> > Michael,
> >
> > It was only advice about what not to cache. I didn't intend it as 
> a suggestion for experimentation. And it doesn't have to be 
> normative text (see the non-normative suggestion below).
> >
> >
> > 
> /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
> > Append new para to end of "4.1.3 Client Cookie Handling"
> >
> > "A client is unlikely to find it useful to cache the result of a 
> successful ECN negotiation for a subsequent connection. Attempting 
> to resume a connection with a SYN that is ECN-capable at the IP 
> layer is likely to risk discard by security devices, and a 
> consequent timeout. Initializing ECN separately for each connection 
> using the procedure in Section 6.1.1 of [RFC3168] should introduce 
> no worse risk of delay.
> > "
> >
> > Additional Informative Reference:
> >
> > [RFC3168]
> > 
> /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
> >
> > This doesn't warrant holding up the draft now. If the authors 
> want to incorporate this para while dealing with RFC Editor 
> comments later, it would be up to them. They might not consider it 
> necessary at all, but on balance I think it would be.
>
>I am neutral about adding this part. But if we do edit this part, I'd
>prefer we explicitly suggest against caching anything other than
>what's mentioned in the RFC. So that covers ECN bit, sack, timestamp,
>etc. The fast open cache is supposed to cache information only for
>fastopen. nothing else.
>
>I want to note that the WG did ask about potential ECN
>interoperability issues (Orlando mtg?). After that meeting I did go
>over the ECN RFC and didn't find anything obvious.
>
>
> >
> >
> > Bob
> >
> >
> > At 18:42 11/04/2014, Scharf, Michael (Michael) wrote:
> >>
> >> Bob,
> >>
> >> Indeed, the WGLC for draft-tcpm-fastopen has completed... I am 
> about to forward the document to the AD.
> >>
> >> Apparently, right now, draft-tcpm-fastopen does not comment on 
> ECN at all, and I am not aware of any past discussion in TCPM.
> >>
> >> Thus, my initial thinking would be that if ECN should be 
> addressed in this document, it could be mentioned in section 7 as a 
> topic for further experimentation - instead of adding normative 
> text late in the process.
> >>
> >> Thoughts from the community (and the authors) would be welcome - 
> but please recall that we are really past WGLC and I'd like to move 
> the document forward within the next couple of days.
> >>
> >> Michael
> >>
> >>
> >>
> >> > -----Original Message-----
> >> > From: tcpm [mailto:tcpm-bounces@ietf.org] On Behalf Of Bob Briscoe
> >> > Sent: Thursday, April 10, 2014 6:02 PM
> >> > To: ycheng@google.com
> >> > Cc: draft-tcpm-fastopen@tools.ietf.org; tcpm IETF list
> >> > Subject: [tcpm] draft-tcpm-fastopen: interaction with ECN
> >> >
> >> > Yuchung,
> >> >
> >> > In draft-tcpm-fastopen, you may be able to get away with saying
> >> > nothing about this, but..
> >> >
> >> > 1) Just in case someone thinks it would be clever for a TFO client to
> >> > resume use of ECN on a subsequent SYN, it may be best to clarify that:
> >> > "TFO does not allow a subsequent connection to reuse the ECN
> >> > capability negotiated in a previous connection. If TCP endpoints
> >> > negotiate the use of ECN, they MUST apply the initialization rules
> >> > (Section 6.1.1 of [RFC3168]) separately for each connection."
> >> >
> >> >
> >> > 2) You might also want to recommend using RFC 5562 (ECN on SYN-ACK),
> >> > just to give developers a tick-list of RFCs to use. However, if you
> >> > plan to quickly move TFO on from experimental status, make sure you
> >> > just say this 'for information', rather than as a normative
> >> > reference, because 5562 is experimental.
> >> >
> >> >
> >> >
> >> > I know this is my second comment after WGLC, but I thought it best to
> >> > say something. (I was just getting the capability negotiation logic
> >> > in Accurate ECN to interwork with TFO, when I realised this issue
> >> > applied to classic ECN too.)
> >> >
> >> >
> >> > Bob
> >> >
> >> >
> >> > ________________________________________________________________
> >> > Bob Briscoe,                                                  BT
> >> >
> >> > _______________________________________________
> >> > tcpm mailing list
> >> > tcpm@ietf.org
> >> > https://www.ietf.org/mailman/listinfo/tcpm
> >
> >
> > ________________________________________________________________
> > Bob Briscoe,                                                  BT

________________________________________________________________
Bob Briscoe,                                                  BT