Re: [quicwg/base-drafts] ECN verification text (#2752)

Magnus Westerlund <> Tue, 23 July 2019 15:29 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 6F71E1203F7 for <>; Tue, 23 Jul 2019 08:29:47 -0700 (PDT)
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 t1fUqKvMnB0R for <>; Tue, 23 Jul 2019 08:29:45 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 677D212042D for <>; Tue, 23 Jul 2019 08:29:45 -0700 (PDT)
Date: Tue, 23 Jul 2019 08:29:44 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=pf2014; t=1563895784; bh=9owrDVe1/6FFmgteo9stOEAw7JNsiLGvJvwnz8coIGQ=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=tS7SDsS9yqpQ9keorJ1HqxbIZOoh3aTLrWJsSVFWwQ+3LsHtnZHXORzs3ntjE7BRd 7sKhbX+6wDvLa2gtpfcPATXQ1dgehfvAmf/Xd433BQ1TpLvpSWSPBrQFdtK7M61BA5 YLVlGOOGpfi/dCt6EQ4MnAY+4e/6Mdd1ePysIcGE=
From: Magnus Westerlund <>
Reply-To: quicwg/base-drafts <>
To: quicwg/base-drafts <>
Cc: Subscribed <>
Message-ID: <quicwg/base-drafts/pull/2752/review/>
In-Reply-To: <quicwg/base-drafts/pull/>
References: <quicwg/base-drafts/pull/>
Subject: Re: [quicwg/base-drafts] ECN verification text (#2752)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5d3727e878d23_1d5b3fc1c4ecd964476561"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: gloinul
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: Tue, 23 Jul 2019 15:29:55 -0000

gloinul commented on this pull request.

>  If verification fails, then the endpoint ceases setting ECT codepoints in
 subsequent IP packets with the expectation that either the network path or the
 peer does not support ECN.
-If an endpoint sets ECT codepoints on outgoing IP packets and encounters a
-retransmission timeout due to the absence of acknowledgments from the peer (see
-{{QUIC-RECOVERY}}), or if an endpoint has reason to believe that an element on
-the network path might be corrupting ECN codepoints, the endpoint MAY cease
-setting ECT codepoints in subsequent packets.  Doing so allows the connection to
-be resilient to network elements that corrupt ECN codepoints in the IP header or
-drop packets with ECT or CE codepoints in the IP header.
+If an ECT codepoint set is not dropped or corrupted by a network device, then a
+received packet contains either the codepoint sent by the peer or the Congestion
+Experienced (CE) codepoint set by a network device that is experiencing
+Upon successful verification, an endpoint continues to set ECT codepoints in
+subsequent packets with the expectation that the path is ECN-capable.

Yes, to prevent spurious ECN disablement one should have a number of packets spread over time so that a single burst loss can't be the cause for the loss so that probability is low. So, the downside of the above algorithm is that to get low probability you may have several retransmission of the handshake. From an ECN perspective an implementation could mark a single packet per RTT and not give up testing until 10 RTTs has past. That would have a low probability for spurious disablement. 

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