On the passive measurability of QUIC

Brian Trammell (IETF) <ietf@trammell.ch> Thu, 01 June 2017 13:42 UTC

Return-Path: <ietf@trammell.ch>
X-Original-To: quic@ietfa.amsl.com
Delivered-To: quic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4750612EC93 for <quic@ietfa.amsl.com>; Thu, 1 Jun 2017 06:42:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.919
X-Spam-Level:
X-Spam-Status: No, score=-1.919 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, 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 oTIfx8Rjc49r for <quic@ietfa.amsl.com>; Thu, 1 Jun 2017 06:42:19 -0700 (PDT)
Received: from capri.iway.ch (capri.iway.ch [212.25.24.45]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8E97F12EC8F for <quic@ietf.org>; Thu, 1 Jun 2017 06:42:19 -0700 (PDT)
Received: from gozo.iway.ch (localhost [127.0.0.1]) by localhost (Postfix) with ESMTP id 5F7B5340CAF for <quic@ietf.org>; Thu, 1 Jun 2017 15:42:18 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1]) by localhost (ACF/7408.8760); Thu, 1 Jun 2017 15:42:18 +0200 (CEST)
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 for <quic@ietf.org>; Thu, 1 Jun 2017 15:42:18 +0200 (CEST)
Received: from [94.247.222.80] (account ietf@trammell.ch HELO [10.11.33.5]) by switchplus-mail.ch (CommuniGate Pro SMTP 6.1.14) with ESMTPSA id 19398842 for quic@ietf.org; Thu, 01 Jun 2017 15:42:18 +0200
From: Brian Trammell <ietf@trammell.ch>
X-Pgp-Agent: GPGMail
Content-Type: multipart/signed; boundary="Apple-Mail=_77F2BE9A-7A02-4D75-B039-1EC2BBB177F8"; protocol="application/pgp-signature"; micalg="pgp-sha512"
Subject: On the passive measurability of QUIC
Date: Thu, 01 Jun 2017 15:42:18 +0200
Message-Id: <FCCAC281-BC7B-4E4B-AC34-9517FD336A65@trammell.ch>
To: QUIC WG <quic@ietf.org>
Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\))
X-Mailer: Apple Mail (2.3124)
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/po3np0w-331lqLOzXTcBWg7jQYE>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Main mailing list of the IETF QUIC working group <quic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic>, <mailto:quic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic/>
List-Post: <mailto:quic@ietf.org>
List-Help: <mailto:quic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic>, <mailto:quic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Jun 2017 13:42:21 -0000

Greetings, all,

Here's a second, longer list of requirements questions I think we should ask directly:


"To what extent should the design of QUIC support passive measurement of QUIC flows?" [1]


There is one measurement task specifically called out in the text on manageability in our charter: "the ability to export information about flows for accounting purposes". To the extent that this process can map IP addresses to accountable entities, this is trivially supported by layering on top of UDP and IP. Accounting processes may additionally seek to classify traffic as QUIC or not-QUIC, which they can do as of -03 if they observe the 1-RTT handshake (or, simply, make the assumption that udp/443 is always HTTP over QUIC). Which leads to the first related subquestion:

1. "Should QUIC packets / flows be distinguishable from non-QUIC flows on the wire?"

Other accounting processes, of course, will want to classify applications atop QUIC, but I won't even ask that question. It's precluded by our charter: TLS over TCP (without STARTTLS) does not expose any application-layer protocol identification, except via server port number.

Determining which other measurement primitives we want to support, IMO, requires a survey to determine which are actually used in network operations. Within IPPM and LMAP, the metrics that get the most attention are packet loss, latency, jitter, and throughput. I also asked a vendor of IPFIX collecting devices which passive TCP measurement information elements are most often exported by passive measurement boxes, and loss/retransmission and RTT were at the top of the list. So, two more subquestions:

2. "Should end-to-end latency of QUIC flows be measurable by observation?"

and

3. "Should end-to-end packet loss, or reactions to loss, of QUIC flows be measurable by observation?

Related to loss, but not yet widely deployed or measured, is explicit congestion notification. We anticipate growth in ECN deployment related to widespread and growing client- and server-default negotiation of ECN for TCP, and as such, I'd add the following related question:

4. "Should end-to-end congestion, indicated by explicit congestion notification, or reactions thereto, of QUIC flows be measurable by observation?"

Passive measurement today is done by inference on information non-optionally exposed by the transport stack. We have the opportunity to change that with QUIC. Following the priniciples in [1], I'd therefore ask the following final question:

5. "What level of control over observer capability should be available to end users, application developers, and application and transport protocol implementors?"


As with the spoofing question, it'd be useful IMO to try and stay off mechanisms for now, and to focus on desirability, and what cost we're willing to pay (and not to pay) for these properties of measurability.


Thanks, cheers,

Brian

- - -

[1] Way too much background on this in a paper in the April 2017 ACM CCR (I'm a coauthor); arXiv version at https://arxiv.org/abs/1612.02902 -- the principles described there are IMO useful to guide thinking about any measurability we do build into the protocol.