Re: [quicwg/base-drafts] are flow control frames really idempotent? (#1612)

Martin Thomson <> Tue, 31 July 2018 23:52 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 25BAE130E96 for <>; Tue, 31 Jul 2018 16:52:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -6.11
X-Spam-Status: No, score=-6.11 tagged_above=-999 required=5 tests=[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, T_DKIMWL_WL_HIGH=-0.01] 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 nKlAbhoKa5rf for <>; Tue, 31 Jul 2018 16:52:32 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 1E82C128CF3 for <>; Tue, 31 Jul 2018 16:52:32 -0700 (PDT)
Date: Tue, 31 Jul 2018 16:52:31 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=pf2014; t=1533081151; bh=QCkO8+GbUJF9yIXr/77pvGofWsL70A/5rRCCvZnLbGk=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=fiIPkCO45XWp+FwvEBZZxiOO/rxYWAJRME7kvmRhNHkrTOCvxFXtRuyUIafI4uYP6 pYLCLquwCzaPj2adc1qGkf+kYHVDZOeuysfqfZb90JV36dCxaQkCdcYhtKik7v2gIL cW6RWQXavvtZ2707bdh5cVXEYOQ7Ez2efmrWE3ls=
From: Martin Thomson <>
Reply-To: quicwg/base-drafts <>
To: quicwg/base-drafts <>
Cc: Subscribed <>
Message-ID: <quicwg/base-drafts/issues/1612/>
In-Reply-To: <quicwg/base-drafts/issues/>
References: <quicwg/base-drafts/issues/>
Subject: Re: [quicwg/base-drafts] are flow control frames really idempotent? (#1612)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5b60f63f50249_6e7e3ff0daad45c02217c5"; 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.27
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, 31 Jul 2018 23:52:34 -0000

Yes, we generally couple a *MAY result in an error* text with a MUST for the peer (because a MAY is always a MUST in the sense that it mandates tolerance).  In this case, we're saying MUST NOT go backwards, coupled with a MUST NOT generate an error if the peer doesn't comply.  That was explicitly to enable the sort of thing that @marten-seemann and @dtikhonov do, even if that is maybe slightly objectionable to the purists.

I think that the fix is as follows:

> A receiver cannot renege on an advertisement; that is, once a receiver advertises an offset, advertising a smaller offset has no effect. A sender MUST ignore any flow control offset that does not increase maximum (stream) data.

Would that work for people?

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