MUST use normative language (Re: draft-ietf-httpbis-http2 feedback)
Eliot Lear <lear@cisco.com> Wed, 31 July 2013 17:40 UTC
Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7917521F9D82 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 31 Jul 2013 10:40:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.615
X-Spam-Level:
X-Spam-Status: No, score=-9.615 tagged_above=-999 required=5 tests=[AWL=0.983, BAYES_00=-2.599, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Qg6jYQKBjjGO for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 31 Jul 2013 10:39:55 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id 48F4721E808D for <httpbisa-archive-bis2Juki@lists.ietf.org>; Wed, 31 Jul 2013 10:39:54 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1V4aM1-0006pP-Fk for ietf-http-wg-dist@listhub.w3.org; Wed, 31 Jul 2013 17:38:29 +0000
Resent-Date: Wed, 31 Jul 2013 17:38:29 +0000
Resent-Message-Id: <E1V4aM1-0006pP-Fk@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <lear@cisco.com>) id 1V4aLq-0006oc-6D for ietf-http-wg@listhub.w3.org; Wed, 31 Jul 2013 17:38:18 +0000
Received: from ams-iport-2.cisco.com ([144.254.224.141]) by lisa.w3.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.72) (envelope-from <lear@cisco.com>) id 1V4aLp-0000hn-6t for ietf-http-wg@w3.org; Wed, 31 Jul 2013 17:38:18 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=5668; q=dns/txt; s=iport; t=1375292297; x=1376501897; h=message-id:date:from:mime-version:to:cc:subject: references:in-reply-to; bh=4R7rA26WUNte6PeKqnBvCx3bjoS8aMT+u98RnoKLe5Y=; b=BaNVSk66NUBgICqLLH0EFGRDCsKKE3+UsSpW6WHE1nvr2hFkwaa/RD19 tlRRJqScbbFJmoWuK/C/2gM8+p2HZITEBH3tuMZxpViWo8Ub+N7zA+UqA sz40Ny/VK9qttb0pyBtwV4MBewMlR6Jk4PNXOIfXpKQ8NRp/v/6G5w1nB g=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AisFANJK+VGQ/khR/2dsb2JhbABbgwY1g2CFXbJBgnWBGRZ0giQBAQEEI1UBEA8KCgkWCwICCQMCAQIBKxoGDQEHAQGIDKdnkVCOSoE9B4JlgSYDl1+RTYMWOoEt
X-IronPort-AV: E=Sophos; i="4.89,788,1367971200"; d="scan'208,217"; a="85318072"
Received: from ams-core-1.cisco.com ([144.254.72.81]) by ams-iport-2.cisco.com with ESMTP; 31 Jul 2013 17:37:50 +0000
Received: from mctiny.local ([10.61.171.45]) by ams-core-1.cisco.com (8.14.5/8.14.5) with ESMTP id r6VHblTq010232 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 31 Jul 2013 17:37:48 GMT
Message-ID: <51F94B6C.3050505@cisco.com>
Date: Wed, 31 Jul 2013 19:37:48 +0200
From: Eliot Lear <lear@cisco.com>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Amos Jeffries <squid3@treenet.co.nz>
CC: ietf-http-wg@w3.org
References: <51F8DA31.20903@gmx.de> <51F92362.6020900@treenet.co.nz>
In-Reply-To: <51F92362.6020900@treenet.co.nz>
X-Enigmail-Version: 1.5.2
Content-Type: multipart/alternative; boundary="------------090503060804060400000003"
Received-SPF: pass client-ip=144.254.224.141; envelope-from=lear@cisco.com; helo=ams-iport-2.cisco.com
X-W3C-Hub-Spam-Status: No, score=-14.0
X-W3C-Hub-Spam-Report: AWL=0.128, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-1.507, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5
X-W3C-Scan-Sig: lisa.w3.org 1V4aLp-0000hn-6t b86f89ac0a4f71e83b7642e810d58d80
X-Original-To: ietf-http-wg@w3.org
Subject: MUST use normative language (Re: draft-ietf-httpbis-http2 feedback)
Archived-At: <http://www.w3.org/mid/51F94B6C.3050505@cisco.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/19017
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>
Dear colleagues, On 7/31/13 4:46 PM, Amos Jeffries wrote: > On 31/07/2013 9:34 p.m., Julian Reschke wrote: >> Questions: >> > <snip> >> >> 5.2.2 >> >> "Deployments with constrained resources (for example, memory) MAY >> employ flow control to limit the amount of memory a peer can consume. >> Note, however, that this can lead to suboptimal use of available >> network resources if flow control is enabled without knowledge of the >> bandwidth-delay product (see [RFC1323])." >> >> s/MAY/can/ >> > > I took this as being intentionally normative language. One participant > MAY use the feature therefore all participante MUST implement support > just in case it happens. With "can" there is no normative requirement > on the other participants to implement anything regarding flow > control, which would lead to harm for the participant needing it. I have two problems with the above and one overarching concern that really needs to be addressed. First, the above text is taken out of context. Flow control windows MUST always be obeyed by the sender. It says so right in the previous paragraph. Second, if you don't agree with the above, changing "MAY" to "can" doesn't get around the fact that you're giving advice to implementers on the use of flow control, and yet that advice would be wrong because it could be ignored by senders. This is, in other words, a distinction without a difference. And this brings me to my general concern. Stop running away from normative language. This WG is writing a specification that is intended to be very widely deployed. It is intended to supplant the most widely deployed application protocol ever, and therefore interoperability and deterministic behavior is important. So is the use of standard well-known normative terms. They are carefully defined with specific meanings that are well known that most programmers understand. They are *so* well known that many standards organizations have adopted them. Lastly, these words are contained in a voluntary standard. If you don't follow them, the IETF believes that you may have an interoperability, performance, or security problem, and in some cases you might cause problems for others. Eliot
- draft-ietf-httpbis-http2 feedback Julian Reschke
- Re: draft-ietf-httpbis-http2 feedback Amos Jeffries
- "MAY employ flow control", was: draft-ietf-httpbi… Julian Reschke
- Re: "MAY employ flow control", was: draft-ietf-ht… Fred Akalin
- MUST use normative language (Re: draft-ietf-httpb… Eliot Lear
- Re: MUST use normative language (Re: draft-ietf-h… cowwoc
- Re: MUST use normative language (Re: draft-ietf-h… Julian Reschke
- Re: MUST use normative language (Re: draft-ietf-h… Yoav Nir
- Re: MUST use normative language (Re: draft-ietf-h… Eliot Lear
- Re: MUST use normative language (Re: draft-ietf-h… Amos Jeffries