Re: [tsvwg] I-D Action: draft-ietf-tsvwg-transport-encrypt-04.txt

"Brian Trammell (IETF)" <ietf@trammell.ch> Mon, 25 February 2019 13:49 UTC

Return-Path: <ietf@trammell.ch>
X-Original-To: tsvwg@ietfa.amsl.com
Delivered-To: tsvwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BF09F130EED for <tsvwg@ietfa.amsl.com>; Mon, 25 Feb 2019 05:49:02 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 FqokS5CQ6SqU for <tsvwg@ietfa.amsl.com>; Mon, 25 Feb 2019 05:48:59 -0800 (PST)
Received: from gozo.iway.ch (gozo.iway.ch [IPv6:2001:8e0:40:325::36]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BE8F6128CB7 for <tsvwg@ietf.org>; Mon, 25 Feb 2019 05:48:58 -0800 (PST)
Received: from gozo.iway.ch (localhost [127.0.0.1]) by localhost (Postfix) with ESMTP id 19AA1341C87; Mon, 25 Feb 2019 14:48:56 +0100 (CET)
X-Iway-Path: 0
Received: from localhost (localhost [127.0.0.1]) by localhost (ACF/3959.21717); Mon, 25 Feb 2019 14:48:55 +0100 (CET)
Received: from switchplus-mail.ch (switchplus-mail.ch [212.25.8.236]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by gozo.iway.ch (Postfix) with ESMTPS; Mon, 25 Feb 2019 14:48:55 +0100 (CET)
Received: from [145.14.214.39] (account ietf@trammell.ch HELO [10.11.33.78]) by switchplus-mail.ch (CommuniGate Pro SMTP 6.2.12) with ESMTPSA id 84282526; Mon, 25 Feb 2019 14:48:55 +0100
Content-Type: text/plain; charset=utf-8
Mime-Version: 1.0 (1.0)
From: "Brian Trammell (IETF)" <ietf@trammell.ch>
X-Mailer: iPhone Mail (16D57)
In-Reply-To: <CALx6S37DBmWpW_PDzm8P_X70qCGiHcFz=8DY5ZUhUk1dWgXgNQ@mail.gmail.com>
Date: Mon, 25 Feb 2019 14:48:54 +0100
Cc: Ruediger.Geib@telekom.de, Gorry Fairhurst <gorry@erg.abdn.ac.uk>, tsvwg <tsvwg@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <20263617-DF1D-42FB-91E7-3AEC476D31DD@trammell.ch>
References: <155052226474.25978.1700439564007128149@ietfa.amsl.com> <CALx6S34o08DY-v-1S59VAerwpnf3wD6puNGe-Jq90aswYdK8Xw@mail.gmail.com> <5C6C3F9C.1070601@erg.abdn.ac.uk> <CALx6S35WuRra0njfY=HOCaF8v9ampkTG612nbjKwid=CHQNumQ@mail.gmail.com> <072547E4-D84D-4313-BEEE-0CB66A3C6A1C@csperkins.org> <LEJPR01MB0460F9AB6E2113F4CBF246EA9C7D0@LEJPR01MB0460.DEUPRD01.PROD.OUTLOOK.DE> <CALx6S37RjKafmj9V3CifCDVSTK7Xz+kWfJGmAbq6udWHJzTGxQ@mail.gmail.com> <LEJPR01MB0460EF67D703C8340A976DF39C7D0@LEJPR01MB0460.DEUPRD01.PROD.OUTLOOK.DE> <CALx6S34BbkeMumZ5-D2N9GOJ=bx=n-m6TGR0CVqU9iWVc0rH0w@mail.gmail.com> <LEJPR01MB046097E5E99F79B9F9A2C97A9C7E0@LEJPR01MB0460.DEUPRD01.PROD.OUTLOOK.DE> <CALx6S34ZFFO8uzFAt5aQ+ACTUXwH1t5jChewvxNuROpnPqdOjA@mail.gmail.com> <LEJPR01MB04609B9A82FC9FE960D445449C7F0@LEJPR01MB0460.DEUPRD01.PROD.OUTLOOK.DE> <CALx6S37DBmWpW_PDzm8P_X70qCGiHcFz=8DY5ZUhUk1dWgXgNQ@mail.gmail.com>
To: Tom Herbert <tom@herbertland.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/ZixV1StXnSogFjFZxtZu46vtRmA>
Subject: Re: [tsvwg] I-D Action: draft-ietf-tsvwg-transport-encrypt-04.txt
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tsvwg/>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 25 Feb 2019 13:49:03 -0000

hi Tom, all,

We’re way down the rabbit hole here, but you seem to be placing a lot of faith in the deployability of v6 HBH based signaling. Last I checked the story here was pretty bleak: most routers slow-path these (because silicon to handle HBH on the fast path is not economical to ship) so most networks block it. The replacement cycles for kit that does this is tied to capex depreciation (timescales in decades). Admittedly I last looked into this when we were putting together PLUS (so three-four years ago), which would do most of what you’re talking about here in a transport-independent way (and in general I think this goal is a good one). 

Has anything changed here? If not, what’s the transition plan for working v6 HBH?

Thanks, cheers,

Brian

Sent from my iPhone

> On 22 Feb 2019, at 17:32, Tom Herbert <tom@herbertland.com>; wrote:
> 
>> On Thu, Feb 21, 2019 at 11:33 PM <Ruediger.Geib@telekom.de>; wrote:
>> 
>> 
>> 
>> [TH]  The RTT and other information can only be extracted from transport layer headers under very specific circumstances (header has the right fields, transport header is visible and in cleartext, intermediate devices can parse the transport layer protocol, etc.).
>> 
>> [RG] Agree. By chance TCP allows to determine RTT within the network. RTT monitoring allows network providers optimize router buffers and supports QoE estimates. I'm out for simple solutions. My take is, IETF should provide hints to transport  protocol designers. If transport protocol features are impacted by network properties, then allow the network to detect these. Transport depending on determination of the bandwidth delay product is impacted network features. Classic TCP shows (by chance) that exposing RTT information is feasible and it is beneficial for endpoints as well as for network providers.
>> 
>> [RG] As general guidance I suggest: if a new transport protocol depends on bandwidth delay product optimization then expose the relevant information by design to those partys in your chain operation, which may impact the bandwidth-delay-product.
>> 
>> [TH] If you want a win-win than provide a solution that works with all protocols, promotes security, minimizes effort, and ends protocol ossification. I don't see that this draft proposes anything resembling such a solution.. The idea seems to be that transport protocol designers should consider purposely sending some fields in the clear.
>> Okay, but what exactly are the requirements? How is it simple if this needs to be done independently for every transport protocol? What are the realities of that to be feasible? Is the requirements and assumption that all transport protocols have to provide the same information as TCP? What about network mechanisms that want to modify fields like the receive window-- how does that work robustly in other transport protocols?
>> 
>> [RG] Requirements: see above. I don't advocate to recommend RTT communication exactly like it is done for TCP - I'm open for discussion between involved experts. I prefer a single recommended approach. As you note yourself, "works with all protocols" and "independently for every transport" - the networks of today can't do per transport protocol or per flow optimization. Fast forwarding and some generic filter edge policies, that's it. Measurements for QoS based QoE estimation and RTT are done passive. I'm not aware of any approach distinguishing transport protocols down to every detail (UDP, TCP, the latter TLS or not and QUIC ... ). Router buffer dimensioning isn't done per transport protocol. A commercial provider network is optimized to service the majority of the users fairly well. "Corner cases" are all those transport protocols which have a share of, say, a low single digit percentage in a commercial network.
>> 
>> [TH] What about network mechanisms that want to modify fields like the receive window-- how does that work robustly in other transport protocols?
>> 
>> [RG] Above I talk about passive measurements. Here you talk about a kind of active communication between routers and of transport protocols (if I get you right - I got no expertise). To me, you mix things which need to be discussed separately. If routers are to support transport features actively, mechanisms need to be standardized to a high degree. Let's take ECN is an example. Two well defined IP layer bits. It took years to switch from the early standardized interpretation to experimental ones. I think, well defined fields and a simple general standard support are the only way to enable routers to communicate information to transport protocols (apart for communicating by "packet drop").
>> 
> Ruediger,
> 
> Yes, ECN is good example of an IP layer mechanism that carries
> information of interest to various transport layer protocols. A router
> can set ECN with no regard to the transport or payload so the
> mechanism works with TCP, QUIC, SCTP, etc. But, ECN bits are in the IP
> header and there really are no reserved bits in either IPv4 or IPv6
> headers and no bits that can be easily repurposed for other uses
> (people have tried, there have been several proposals to repurpose
> bits in the IPv6 flow label for instance).
> 
> The correct solution is put the exposed transport information, or more
> generally host to network signals, in an extensible lower protocol
> (i.e. in the network layer). In IPv6 that would be Hop-by-Hop options.
> For IPv4, it's a little more difficult to find a good solution, some
> sort of shim header might work (SPUD was proposed for that). The third
> high order bit of Hop-by-Hop options indicates whether the option can
> be modified in-flight and non-modifiable data can be authenticated so
> it is robust. There are other considerations such as ensuring that
> signals can't be spoofed to gain an unfair advantage and that exposed
> data might need to be scoped somehow (for instance I might be willing
> to share information with my local provider, but not to the whole
> Internet).
> 
> Tom
> 
>> Regards, Ruediger
>> 
>> 
>> -----Ursprüngliche Nachricht-----
>> Von: Tom Herbert <tom@herbertland.com>;
>> Gesendet: Donnerstag, 21. Februar 2019 16:46
>> An: Geib, Rüdiger <Ruediger.Geib@telekom.de>;
>> Cc: Gorry Fairhurst <gorry@erg.abdn.ac.uk>;; tsvwg <tsvwg@ietf.org>;
>> Betreff: Re: [tsvwg] I-D Action: draft-ietf-tsvwg-transport-encrypt-04.txt
>> 
>>> On Wed, Feb 20, 2019 at 11:46 PM <Ruediger.Geib@telekom.de>; wrote:
>>> 
>>> To find a definition for bulk usage transport and set apart corner
>>> cases (like tunnels, SCTP and so on),
>> 
>> I still don't understand what "corner case" means with respect to standard IETF protocols. Can you please define this? What are the requirments for a protocol being a corner case on the Internet or not?
>> Who makes this determination?
>> 
>>> please have a read into state-of-the-art QoE estimation research. There's ample literature on that. In the recent years, QoE research is mostly based on the evaluation of several thousand flows. In many cases captured by commodity terminals connected to consumer Internet products.
>>> 
>>> TCP or QUIC measure RTT by design. As we all know, RTT can easily be measured by evaluating transport protocol information, if exposed. This information helps to optimize provider networks.  What you recommend is to add an extra header to have a surrogate RTT measurement (if standardisation works out well, IOAM isn't  commodity network feature). I prefer simple solutions. The RTT information can be extracted from the transport layer, as we all know.
>> 
>> No, we don't all know that. The RTT and other information can only be extracted from transport layer headers under very specific circumstances (header has the right fields, transport header is visible and in cleartext, intermediate devices can parse the transport layer protocol, etc.).
>>> 
>>> The solutions you advocate result in monitoring strategies requiring
>>> monitoring applications on consumer terminals. To me, that threatens
>>> security of those consumers willing to support such an
>> 
>> Applications are already heavily monitored as endpoints. The information that can be gathered about an application from some random point in the network is extremely limited. Application developers rely on the data collected at endpoints to make their decisions. The only time we need drill down to see what is happening in the network is when we see particular networks are messing things up (for instance, when we noticed that some  network devices we're drop SYNs with data when TFO was being developed).
>> 
>>> approach more that exposing some network related information in transport headers. IOAM is an approach which might work some day. QoS and QoE monitoring based on applications in consumer terminals is deployed today. I expect the latter to spread, and to spread faster, the less network related information is exposed to network operators.
>>> 
>>> I don't think that TCP/IP is the one and only and I don't think that things never change, as I'm changing them myself. I prefer to create win-win solution based on solutions which are as simple as possible. In my experience solutions with these properties work best.
>> 
>> If you want a win-win than provide a solution that works with all protocols, promotes security, minimizes effort, and ends protocol ossification. I don't see that this draft proposes anything resembling such a solution. The idea seems to be that transport protocol designers should consider purposely sending some fields in the clear.
>> Okay, but what exactly are the requirements? How is it simple if this needs to be done independently for every transport protocol? What are the realities of that to be feasible? Is the requirements and assumption that all transport protocols have to provide the same information as TCP? What about network mechanisms that want to modify fields like the receive window-- how does that work robustly in other transport protocols?
>> 
>> Tom
>> 
>>> 
>>> Regards,
>>> 
>>> Ruediger
>>> 
>>> 
>>> 
>>> -----Ursprüngliche Nachricht-----
>>> Von: Tom Herbert <tom@herbertland.com>;
>>> Gesendet: Mittwoch, 20. Februar 2019 18:00
>>> An: Geib, Rüdiger <Ruediger.Geib@telekom.de>;
>>> Cc: Gorry Fairhurst <gorry@erg.abdn.ac.uk>;; tsvwg <tsvwg@ietf.org>;
>>> Betreff: Re: [tsvwg] I-D Action:
>>> draft-ietf-tsvwg-transport-encrypt-04.txt
>>> 
>>>> On Wed, Feb 20, 2019 at 8:07 AM <Ruediger.Geib@telekom.de>; wrote:
>>>> 
>>>> I've been describing the general state of the art of QoE measurements based on network QoS parameters. I've been picking TCP as an example. The change from unencrypted TCP transport to TLS is a fair example how to increase the difficulties to judge QoE based on network QoS parameters. QUIC has been encrypted from start on.
>>>> 
>>> Okay, TCP was just an example. So if I'm using another protocol like SCTP, QUIC, TCP in a tunnel then how do I get the same features and network services like plain TCP/IP gets?
>>> 
>>>> Please briefly describe how to reliably determine per packet end-to-end RTT as could be done by TCP Ack screening replacing the latter by IOAM. I didn't follow IOAM closely. Is that generally possible by now or does it depend on options which have to be supported by equipment owned by different stakeholders?
>>>> 
>>> Connection oriented protocols, like TCP and QUIC, track RTT per flow.
>>> If this information is interesting to the network it can be provided in HBH option. IOAM should carry a variant usable for RTT measurement.
>>> 
>>>> Network QoS based QoE estimation us done for the mass market, if a network provider serves it. SCTP and tunnels and the like are corner case transport options. Further, I don't recollect that research cared too much about different TCP dialects.
>>> 
>>> I do not know what "corner case transport options" are. Can you please define that term?
>>> 
>>>> 
>>>> I don't think the approach to have a single solution to monitor all transport options is feasible.
>>> 
>>> It's not the intent to expose all transport options. As an application and transport protocol developer I am only willing to expose information to the network in plaintext that is absolutely necessary for viable communications, not one bit more than that. I have no interest in exposing everything just on the off chance that some random device in the network might find it useful. I may be willing to provide specific pieces of information if I know how it will be used and an who will use it. This is the reallly the only resonable security model for my users.
>>> 
>>>> It will likely be too generic to provide useful input if it works end-to-end or it will be too specific to work end-to-end in a majority of cases, I guess. It's also a little hard to understand why an extra overhead should to be attached to a packet if the same information could be exposed within existing packet headers. I'm not talking about breaking consumer privacy here.
>>> 
>>> Again, by "existing packet headers" you are implying that plain TCP/IP is the the only thing that exists and needs to be supported. If the Internet is to move evolve, we need to get beyond this limited view.
>>> 
>>> Tom
>>> 
>>>> 
>>>> Regards,
>>>> 
>>>> Ruediger
>>>> 
>>>> -----Ursprüngliche Nachricht-----
>>>> Von: Tom Herbert <tom@herbertland.com>;
>>>> Gesendet: Mittwoch, 20. Februar 2019 16:34
>>>> An: Geib, Rüdiger <Ruediger.Geib@telekom.de>;
>>>> Cc: Gorry Fairhurst <gorry@erg.abdn.ac.uk>;; tsvwg <tsvwg@ietf.org>;
>>>> Betreff: Re: [tsvwg] I-D Action:
>>>> draft-ietf-tsvwg-transport-encrypt-04.txt
>>>> 
>>>>> On Wed, Feb 20, 2019 at 4:51 AM <Ruediger.Geib@telekom.de>; wrote:
>>>>> 
>>>>> I support Colin's view. Estimation of application QoE based on lower layer QoS measurements in general benefits from transport layer information. As an example, IP layer performance measurements are insufficient to estimate streaming QoE. QoE estimation based on TCP/TLS is challenging already.  As far as I can judge, the result is that QoE monitoring solutions which are based on applications running on consumer equipment are promoted. To gain representative data, the number of involved active receivers must be sufficiently high in any network section to be monitored.
>>>> 
>>>> That reflects the myopic view of some network operators that TCP is the only protocol you'll ever need. Or more specifically, that the world is compose of simple TCP over IP packets without options. It discounts the possibility of using SCTP, QUIC, DCCP, UDP applications, etc. or at least the possiblility for using them with advanced network services like measurement monitoring that need transport layer info.
>>>> Furthermore, a TCP packet that is encpasulated or encrypted in a tunnel won't be visible to the network anyone, so that case doesn't get the good service as well.
>>>> 
>>>> If QoE, receive window manipulation, timing packet in a flow, etc.
>>>> is important and potentially valuable to users then that's great.
>>>> But please, consider how to make these a generic protocol so that
>>>> ALL transport protocols, ALL use cases of TCP, and in the end ALL
>>>> users can take advantage of these features. The best answer is put
>>>> the necessary transport information in Hop-by-Hop or modifiable
>>>> Hop-by-Hop options. As an example, see
>>>> https://tools.ietf.org/html/draft-ioametal-ippm-6man-ioam-ipv6-optio
>>>> ns
>>>> -01 which would provide in-situ OAM for IPv6 regardless of transport
>>>> protocol being carried.
>>>> 
>>>> Tom
>>>> 
>>>>> 
>>>>> I welcome content encryption. I personally doubt that consumer security is improved by applications on consumer devices which "call home". To me, finding a reasonable balance between commodity network provider concerns like flow QoS based QoE estimation and encryption of contents would be helpful, if security is the concern.
>>>>> 
>>>>> Regards,
>>>>> 
>>>>> Ruediger
>>>>> 
>>>>> -----Ursprüngliche Nachricht-----
>>>>> Von: tsvwg <tsvwg-bounces@ietf.org>; Im Auftrag von Colin Perkins
>>>>> Gesendet: Mittwoch, 20. Februar 2019 13:18
>>>>> An: Tom Herbert <tom@herbertland.com>;
>>>>> Cc: Gorry Fairhurst <gorry@erg.abdn.ac.uk>;; tsvwg <tsvwg@ietf.org>;
>>>>> Betreff: Re: [tsvwg] I-D Action:
>>>>> draft-ietf-tsvwg-transport-encrypt-04.txt
>>>>> 
>>>>>>> On 19 Feb 2019, at 18:10, Tom Herbert <tom@herbertland.com>; wrote:
>>>>>> …
>>>>>> Conversely, the draft floats the idea of purposely not
>>>>>> encrypting certain fields of a transport header for the purposes
>>>>>> that intermediate devices can parse them. What is the deployment
>>>>>> experience of that? What transport protocols been retrofitted that do that?
>>>>> 
>>>>> Secure RTP is one example, where the payload is encrypted but the headers are left in the clear. One of the main motivations for that was to support hop-by-hop RTP/UDP/IP header compression, but it also allows middleboxes to monitor flow QoE.
>>>>> 
>>>>> 
>>>>> --
>>>>> Colin Perkins
>>>>> https://csperkins.org/
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>