Re: [quicwg/base-drafts] QUIC lacks on-path exposure of packet loss (#3189)

Alexandre Ferrieux <> Wed, 06 November 2019 20:49 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 8FB521200FF for <>; Wed, 6 Nov 2019 12:49:53 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -8
X-Spam-Status: No, score=-8 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id Ki27OhjabUAA for <>; Wed, 6 Nov 2019 12:49:51 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 2F410120072 for <>; Wed, 6 Nov 2019 12:49:50 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id 52A6BC61E1F for <>; Wed, 6 Nov 2019 12:49:49 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=pf2014; t=1573073389; bh=Vfi6l2m8E/K6oFHGyOfpoEhn8oI0cIxzkz2P4MiS1TE=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=NbvWApSVWrDePa8pAr3YtHxhVCb4bsoH6AYuhbXa5/NUCIC2bvWF4cMZzedOn3qNE ggfSXfs+lk2EIvd8bQBy+YDmKdjiUdgTPvkVFIW3O7kDt8XgN8pur0IaFT3fwznYcr Yp6pjgNyWz6hb9h4DPI1cW3NAn4hDpoPA3Laoz7g=
Date: Wed, 06 Nov 2019 12:49:49 -0800
From: Alexandre Ferrieux <>
Reply-To: quicwg/base-drafts <>
To: quicwg/base-drafts <>
Cc: Subscribed <>
Message-ID: <quicwg/base-drafts/issues/3189/>
In-Reply-To: <quicwg/base-drafts/issues/>
References: <quicwg/base-drafts/issues/>
Subject: Re: [quicwg/base-drafts] QUIC lacks on-path exposure of packet loss (#3189)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5dc331ed43ce6_42993fb19c8cd95c879e3"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: ferrieux
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
Archived-At: <>
X-Mailman-Version: 2.1.29
List-Id: Notification list for GitHub issues related to the QUIC WG <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 06 Nov 2019 20:49:54 -0000


Re "okay, let's stick with the metric we know": there is a bit more do be said. In real-world, heterogeneous/not-too-modern networks, we are essentially stuck in a pre-ECN world; there, even the smartest of congestion control algorithms must end up interpreting some loss patterns as congestion, and sometimes, wrongly.

Re privacy analysis: indeed this is what we are explicitly asking for. But using the Spin Bit as a reference to infer the amount of work needed is not really appropriate I think, as the very nature of the exposed signal is entirely different.

Re using the bits differently: you'll surely remember that, as an early admirer of the sheer beauty of the VEC, I certainly have no preconceptions against the principle. However:

1. As Marcus' research showed, it turns out that observer-side denoising does the job reasonably well, with a definition of "reasonably" that led to the current consensus, a one-bit Spin Bit.

2. Firsthand experience with debugging in the aforementioned real-life networks in several countries and varied multi-stakeholder scenarii tells that loss is *much* harder to locate than latency (see this Issue's introductory text for details). 

3. No, dropping one of the bits is not an option: the key feature of the method is *dichotomy*, meaning we need to somehow convey measurements about either side of the observer. And any ECN-based "trick" to emulate Q and carry only L is, again, predicated on the availability of ECN-capable layer 3 on the uninterrupted path.

As a result, I believe that the Spin+Q+L combination is, given a 3-bit budget, the best compromise to support network troubleshooting.

You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub: