Re: [tcpm] Comments on draft-zimmermann-tcpm-echo-option

"Scheffenegger, Richard" <rs@netapp.com> Mon, 20 July 2015 09:50 UTC

Return-Path: <rs@netapp.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 50F651A1A34 for <tcpm@ietfa.amsl.com>; Mon, 20 Jul 2015 02:50:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.911
X-Spam-Level:
X-Spam-Status: No, score=-6.911 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, 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 GI6LGbh00M5f for <tcpm@ietfa.amsl.com>; Mon, 20 Jul 2015 02:50:29 -0700 (PDT)
Received: from mx141.netapp.com (mx141.netapp.com [216.240.21.12]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C6ED21A1A55 for <tcpm@ietf.org>; Mon, 20 Jul 2015 02:50:29 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="5.15,507,1432623600"; d="scan'208";a="57810434"
Received: from hioexcmbx06-prd.hq.netapp.com ([10.122.105.39]) by mx141-out.netapp.com with ESMTP; 20 Jul 2015 02:49:29 -0700
Received: from HIOEXCMBX05-PRD.hq.netapp.com (10.122.105.38) by hioexcmbx06-prd.hq.netapp.com (10.122.105.39) with Microsoft SMTP Server (TLS) id 15.0.1076.9; Mon, 20 Jul 2015 02:49:29 -0700
Received: from HIOEXCMBX05-PRD.hq.netapp.com ([::1]) by hioexcmbx05-prd.hq.netapp.com ([fe80::1438:d6b8:afb:4959%21]) with mapi id 15.00.1076.000; Mon, 20 Jul 2015 02:49:29 -0700
From: "Scheffenegger, Richard" <rs@netapp.com>
To: Pasi Sarolahti <pasi.sarolahti@iki.fi>, "tcpm@ietf.org Extensions" <tcpm@ietf.org>
Thread-Topic: [tcpm] Comments on draft-zimmermann-tcpm-echo-option
Thread-Index: AQHQwsPSkjkK11efxkqPFxzwQJzibp3kGyJw
Date: Mon, 20 Jul 2015 09:49:28 +0000
Message-ID: <553710a93aa94ff19a5fb28eac42168a@hioexcmbx05-prd.hq.netapp.com>
References: <CF4CD7A0-AFE9-426D-B085-D9A088D75E3B@iki.fi>
In-Reply-To: <CF4CD7A0-AFE9-426D-B085-D9A088D75E3B@iki.fi>
Accept-Language: de-AT, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.122.56.79]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <http://mailarchive.ietf.org/arch/msg/tcpm/jL14KvmU0VtRc7PvpgP5z6jPJS8>
Subject: Re: [tcpm] Comments on draft-zimmermann-tcpm-echo-option
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: <https://mailarchive.ietf.org/arch/browse/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, 20 Jul 2015 09:50:31 -0000

Hi,

> * it would be nice to have a few examples in the intro about how this
> could be used. I gather you are planning a separate document for spurious
> timeouts, and separate document is good, but some motivating examples also
> here would not harm.

Certainly; SYN Cookies (drafted by Bob) is another example that needs the different semantics.


> * It is required that at most one Echo option is included per segment. Is
> there any reason to limit the number of options? I couldn't immediately
> see why having multiple instances of the option would cause problems, or
> could it?


Yes, there are issues with that, and they are plentiful. The easy way out was to side-step this, and only allow (just as with every other TCP option so far) only a single instance of the option, and only reflect the option most recently observed by the receiver.

Issues include, but are not limited to
o) semantics
o) ordering
o) meddleboxes
o) receiver state
o) implementation issues


> * "A TCP sender MAY send an empty TCP Echo option with Length=2 on the
> SYN..." - this would not have to be limited just to SYNs, right? Can't think
> of any useful reason for sending empty echo pings mid-connection (some
> sort of diagnostics, perhaps?), but can't see any reason to disallow that
> either. Also, it might be helpful clarification to note that when ExID is
> used, length will be different.

We did not want this document to specify a full in-session negotiation protocol - as that problem has been discussed on the list earlier, it's a hard issue and beyond the scope of what we want to achive with this draft.


> * "it is NOT RECOMMENDED to send easily decipherable data in the clear as
> data in the TCP Echo option..." - I don't think this recommendation is
> necessary. Depends on the intended use, I guess. There are other ways for
> encrypting TCP header when that is needed.

Even when only the receiver can decode (or make educated guesses about) the contents of a field that is supposed to be immutable, it has shown issues in the past (reference early cubic implementations, that could be persuaded to give very large shares of bandwidth to a receiver that slightly modifies the TCP timestamp echo value). We also believe that this recommendation (not even a SHOULD or MUST) is in-line with RFC7258. 

 
> Will send some additional editorial nits to authors directly...

Thanks, we'll fix these in the next revision.

Best regards,
  Richard