Re: [quicwg/base-drafts] Fix to ECN section regarding validation (#2113)

Benjamin Saunders <notifications@github.com> Wed, 12 December 2018 02:19 UTC

Return-Path: <noreply@github.com>
X-Original-To: quic-issues@ietfa.amsl.com
Delivered-To: quic-issues@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3BE3F130F70 for <quic-issues@ietfa.amsl.com>; Tue, 11 Dec 2018 18:19:11 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.46
X-Spam-Level:
X-Spam-Status: No, score=-9.46 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.46, 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_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=github.com
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 agH0JsTZcnQJ for <quic-issues@ietfa.amsl.com>; Tue, 11 Dec 2018 18:19:09 -0800 (PST)
Received: from out-2.smtp.github.com (out-2.smtp.github.com [192.30.252.193]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 960E8129C6B for <quic-issues@ietf.org>; Tue, 11 Dec 2018 18:19:09 -0800 (PST)
Date: Tue, 11 Dec 2018 18:19:08 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1544581148; bh=2ZyVTunHNQuIncB6rLK8pDN01g8MIM2tzWfP9ihTt0I=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=LyZQE//vT5KJrb76XkgyGO6VwJNkMeDrfg6Nb4+7JEZQDtLwVx9ZX2VnhAzOzWPhP olg6plw3LwkHa0ucnAbYqIdM62FQWcDDz4fBOqtlRw4/TR7SfEUppR8za34GeBf+Zl bYukM25XYW6UMSU2G/pJMdloubEVSafFggNd0pUI=
From: Benjamin Saunders <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4ab853cc9d30ba762cdc66e6acbd7d8b565e1111c7892cf000000011828321c92a169ce173be661@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/pull/2113/review/183985779@github.com>
In-Reply-To: <quicwg/base-drafts/pull/2113@github.com>
References: <quicwg/base-drafts/pull/2113@github.com>
Subject: Re: [quicwg/base-drafts] Fix to ECN section regarding validation (#2113)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5c10701cb3d4d_35b53f8a548d45b4270725"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: Ralith
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address: quic-issues@ietf.org
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/rhSKzOpG90YtytV8xauTaZRPFMY>
X-BeenThere: quic-issues@ietf.org
X-Mailman-Version: 2.1.29
List-Id: Notification list for GitHub issues related to the QUIC WG <quic-issues.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic-issues/>
List-Post: <mailto:quic-issues@ietf.org>
List-Help: <mailto:quic-issues-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 12 Dec 2018 02:19:11 -0000

Ralith commented on this pull request.

It would also be helpful to briefly mention that the local reference count is maintained (by copying verified ECN blocks from ACKs?)

>  
 * The total increase in ECT(0), ECT(1), and CE counters reported in the ACK
   frame MUST be at least the total number of QUIC packets newly acknowledged in
-  this ACK frame.
+  this ACK frame. Detects if the network remark ECT(0), ECT(1) or CE to

```suggestion
  this ACK frame. Detects if the network remarks ECT(0), ECT(1) or CE to
```

>  
 * The total increase in ECT(0), ECT(1), and CE counters reported in the ACK
   frame MUST be at least the total number of QUIC packets newly acknowledged in
-  this ACK frame.
+  this ACK frame. Detects if the network remark ECT(0), ECT(1) or CE to
+  Not-ECT.
+
+If a sender receives an ACK that contains no new acknowledgments, for example
+due to reordering of the ACKs, then ECN counter comparison SHOULD NOT be
+performed. Also if sender do not have state to determine if a particular PSN

```suggestion
performed. If the sender does not have state to determine if a particular PSN
```

>  
 * The total increase in ECT(0), ECT(1), and CE counters reported in the ACK
   frame MUST be at least the total number of QUIC packets newly acknowledged in
-  this ACK frame.
+  this ACK frame. Detects if the network remark ECT(0), ECT(1) or CE to
+  Not-ECT.
+
+If a sender receives an ACK that contains no new acknowledgments, for example
+due to reordering of the ACKs, then ECN counter comparison SHOULD NOT be
+performed. Also if sender do not have state to determine if a particular PSN
+is newly acknowledge or not, then the comparison SHOULD NOT be performed.

The implication here seems to be that an implementation should retain extra state to distinguish between a packet that is deemed lost but not yet acknowledged and a packet that was previously acknowledged. Is that intended?

If these two cases are instead conflated, e.g. by forgetting about sent packets once either acknowledged or deemed lost, then at worst the number of newly acknowledged packets in an ACK would sometimes be under-counted, and a verification with a higher rate of false positives seems preferable to going to extra effort to decide to skip verification outright.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/2113#pullrequestreview-183985779