Re: [quicwg/base-drafts] An example ECN validation algorithm (#3320)

Martin Thomson <> Wed, 08 January 2020 05:23 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id D4D08120025 for <>; Tue, 7 Jan 2020 21:23:24 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -7.999
X-Spam-Status: No, score=-7.999 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_IMAGE_ONLY_32=0.001, 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 6JrBHADNDPCP for <>; Tue, 7 Jan 2020 21:23:23 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 76F5E120018 for <>; Tue, 7 Jan 2020 21:23:23 -0800 (PST)
Date: Tue, 07 Jan 2020 21:23:22 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=pf2014; t=1578461002; bh=kbuWwycKqjM/yHy3aDwe+sSuzxtm7ayejbUfUYITCcU=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=0/oWsJGsGbJSe7veWklvHdHHW3ayIWvr/RG0pC6Bg/mF01gdzB/u/yEZWuUG/yYwM BHuB15seQmF9ldlJLjCNg73oqeXgOXHzISYgeq8abGarMumNZxgn5c9acweqQ+taGb tWp5qj1L/1mGeDhTCvx95fMCJ1Xq+8omyAu3lXjw=
From: Martin Thomson <>
Reply-To: quicwg/base-drafts <>
To: quicwg/base-drafts <>
Cc: Subscribed <>
Message-ID: <quicwg/base-drafts/pull/3320/review/>
In-Reply-To: <quicwg/base-drafts/pull/>
References: <quicwg/base-drafts/pull/>
Subject: Re: [quicwg/base-drafts] An example ECN validation algorithm (#3320)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5e15674a70588_52a13f98bd6cd96093919"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: martinthomson
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, 08 Jan 2020 05:23:25 -0000

martinthomson commented on this pull request.

> +the effect of packets sent prior to starting testing, though it is necessary for
+a sender to remember what markings were used for every packet that is
+acknowledged; see {{ecn-ack}}.
+The testing period runs for a number of packets or round trip times as
+determined by the endpoint.  During this time, packets sent are marked with
+ECT(0).  The goal is to limit the duration of the testing period, but to ensure
+that enough marked packets are sent that it is likely that ECN counts will
+provide a clear indication of how the path treats marked packets.
+<!-- Do we need a more concrete recommendation here?  For instance, I might say
+"Endpoints could test with packets that amount to between 1 to 2 times the
+initial congestion window over a period between 1 to 2 times the estimated RTT."
+After the testing period ends, the ECN state for the path becomes "unknown".

Though Mirja will disagree, this algorithm is extremely conservative, consistent with the existing test, and it disables ECT markings after this period in case there is a black hole.  I suspect that some implementations will just always mark and that's cool, but that's somewhat simpler, I think.  In that case, the algorithm is "mark unless validation on that path has recently failed".

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