Re: deprecating Postel's principle- considered harmful

Barry Leiba <barryleiba@computer.org> Tue, 07 May 2019 20:29 UTC

Return-Path: <barryleiba@gmail.com>
X-Original-To: ietf@ietfa.amsl.com
Delivered-To: ietf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 09D4D1201E6; Tue, 7 May 2019 13:29:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.65
X-Spam-Level:
X-Spam-Status: No, score=-1.65 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
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 p9O9sWxQpcwc; Tue, 7 May 2019 13:29:33 -0700 (PDT)
Received: from mail-it1-f177.google.com (mail-it1-f177.google.com [209.85.166.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E8C811201DE; Tue, 7 May 2019 13:29:32 -0700 (PDT)
Received: by mail-it1-f177.google.com with SMTP id p18so462318itm.1; Tue, 07 May 2019 13:29:32 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=hG3Xf7lMeg/BSY1BFOxOXckVadeTG+UB35ggZEpK0jM=; b=I2j5nP3ZUp+aKjxhcvC/lKU+GOfjbhpU7tDxJqyAB7UN4Qc6+9tQfOKH4K8xxHJTtw i00zjVQExFyBLCOR4izBeeH8umFw9ZAreamBtTd8fL+waEnjlwap/j08jfbgggQIpq4/ M1tpR3FmhVYE+5zQSscN2Tdrlu+92no8dHmpofAcfWGOX6ZF4UgTsEJYB+0d24V/4aex HwzsisgsGcaF73dBdAnICMlDi2n5Hucor5SshV1GIQutlAE37Rm2zoCpu4I9Wdxr0s25 5DYiv56HPyBH9Rw+aURcOd2zliQYzinImYnecFeQraqK161HG3kkJnNfyghZgp3oVvJI 6GOA==
X-Gm-Message-State: APjAAAVx8ykzF/svIlK3pqXfnI+doyU+f7IMk3iLR3OEFIWF1LY6eknh CJ14f6FaGrTeoC3dndReQY6PYU+eHnPab5a1Ljs=
X-Google-Smtp-Source: APXvYqwBit/eqar1TpiZz0J+VAEwMP+zKUDpfTLRQiISChpOxVnEru0xLveC4FepoNs8iTpPQuyMwJt0UeX1E6lDelc=
X-Received: by 2002:a05:6638:29a:: with SMTP id c26mr23365788jaq.140.1557260971547; Tue, 07 May 2019 13:29:31 -0700 (PDT)
MIME-Version: 1.0
References: <F64C10EAA68C8044B33656FA214632C89F024CD3@MISOUT7MSGUSRDE.ITServices.sbc.com>
In-Reply-To: <F64C10EAA68C8044B33656FA214632C89F024CD3@MISOUT7MSGUSRDE.ITServices.sbc.com>
From: Barry Leiba <barryleiba@computer.org>
Date: Tue, 07 May 2019 16:29:36 -0400
Message-ID: <CALaySJJDHg5j9Z7+noS=YXoNROqdsbJ6coEECtLtbJ6fWJ3xsQ@mail.gmail.com>
Subject: Re: deprecating Postel's principle- considered harmful
To: "BRUNGARD, DEBORAH A" <db3546@att.com>
Cc: "iab@iab.org" <iab@iab.org>, "architecture-discuss@ietf.org" <architecture-discuss@ietf.org>, "ietf@ietf.org" <ietf@ietf.org>, The IESG <iesg@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/ietf/DonZT7bHDDw-6ZMw9wPyAGiMfrc>
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: IETF-Discussion <ietf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf>, <mailto:ietf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ietf/>
List-Post: <mailto:ietf@ietf.org>
List-Help: <mailto:ietf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 07 May 2019 20:29:35 -0000

I think the questions Deborah raises are layer-dependent, and it's
likely that I agree with Martin more than Deborah does exactly because
Martin and I live at the same layers.

> It just erroneously blames Postel for sloppy implementations.

Blaming the principle isn't the same as blaming Postel; the point here
isn't so much that "Postel was wrong" as it is that there are many
consequences of adhering to that principle that Jon didn't anticipate.
The classic cases here are in email and web applications, where what
one might call "loose" use of the protocols has resulted in some real
messes.  Acceptance of badly formed messages has led to widespread
sending of badly formed messages, to the point that it's caused
problems with the integrity of the email system.  In web applications,
poor implementation of things like character set and content type
labelling has resulted in great difficulty in figuring out what
character sets and content types are really meant.

So the general thing is that if we were *not* liberal in what we
accepted, from the start, aberrant implementations would never have
worked in the first place, and would either have been fixed or died on
the vine.  And that would have been far better for the Internet as a
whole than what we have now, at least at the higher stack layers.

My sense is that at the lower stack layers, we're *not* actually very
liberal in what we accept, at least not in general.  Saying, there,
that the principle we're talking about is correct and good for the
Internet is really saying that the principle works only when it's used
sparingly and in targeted ways.

Barry


Barry

On Tue, May 7, 2019 at 3:18 PM BRUNGARD, DEBORAH A <db3546@att.com> wrote:
>
> Not seeing much discussion on this document on the lists, I put a twist on the title-
>
> I find the document (as currently written) is incorrectly interpreting the robustness principle as saying there is no need for clear rules on protocol evolvability/extensions. For example, section 6, "relying on implementations to consistently apply the robustness principle is not a good strategy for extensibility". In the routing area, we do have rules and we use the principle to ensure interoperability, as we don't have the luxury to do a "forklift". Section 8's "it is not always possible to produce a design that allow all current protocol participants to continue to participate", my question would be "but does it harm the network"?
>
> Actually most of the document confusingly is not contradicting Postel's principle but supporting it (except for the nuances which seem to condone forklifts). It just erroneously blames Postel for sloppy implementations. For the document to summarize saying "the robustness principle can, and should, be avoided" as it is harmful (I think) will be harmful to the Internet.
>
> Hopefully more folks will read it-
> (probably discussion is more appropriate on the architecture-discuss list)
> Deborah
>
> -----Original Message-----
> From: IAB <iab-bounces@iab.org> On Behalf Of internet-drafts@ietf.org
> Sent: Monday, May 06, 2019 10:40 PM
> To: i-d-announce@ietf.org
> Cc: iab@iab.org
> Subject: [IAB] I-D Action: draft-iab-protocol-maintenance-03.txt
>
>
> A New Internet-Draft is available from the on-line Internet-Drafts directories.
> This draft is a work item of the Internet Architecture Board IETF of the IETF.
>
>         Title           : The Harmful Consequences of the Robustness Principle
>         Author          : Martin Thomson
>         Filename        : draft-iab-protocol-maintenance-03.txt
>         Pages           : 11
>         Date            : 2019-05-06
>
> Abstract:
>    Jon Postel's famous statement of "Be liberal in what you accept, and
>    conservative in what you send" is a principle that has long guided
>    the design and implementation of Internet protocols.  The posture
>    this statement advocates promotes interoperability in the short term,
>    but can negatively affect the protocol ecosystem over time.  For a
>    protocol that is actively maintained, the robustness principle can,
>    and should, be avoided.
>
>
> The IETF datatracker status page for this draft is:
> https://urldefense.proofpoint.com/v2/url?u=https-3A__datatracker.ietf.org_doc_draft-2Diab-2Dprotocol-2Dmaintenance_&d=DwICaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=6UhGpW9lwi9dM7jYlxXD8w&m=VZUxXboWY44rtZcmcswiLQuQ8TmW6g7F7Azgl-j0amw&s=Fxp9wRoCVRJ_8BZBzY1MoExjRlVCegLbFtq8txcr6F8&e=
>
> There are also htmlized versions available at:
> https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_draft-2Diab-2Dprotocol-2Dmaintenance-2D03&d=DwICaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=6UhGpW9lwi9dM7jYlxXD8w&m=VZUxXboWY44rtZcmcswiLQuQ8TmW6g7F7Azgl-j0amw&s=aCbWfZ2WFHlTnh7WeiI8hJ_N04EoyW90y-Wuml8gLuA&e=
> https://urldefense.proofpoint.com/v2/url?u=https-3A__datatracker.ietf.org_doc_html_draft-2Diab-2Dprotocol-2Dmaintenance-2D03&d=DwICaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=6UhGpW9lwi9dM7jYlxXD8w&m=VZUxXboWY44rtZcmcswiLQuQ8TmW6g7F7Azgl-j0amw&s=lBVwS9yzx9lBmBEMA0cIidmh_hgRqGFclGMt6iNTPfw&e=
>
> A diff from the previous version is available at:
> https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_rfcdiff-3Furl2-3Ddraft-2Diab-2Dprotocol-2Dmaintenance-2D03&d=DwICaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=6UhGpW9lwi9dM7jYlxXD8w&m=VZUxXboWY44rtZcmcswiLQuQ8TmW6g7F7Azgl-j0amw&s=JdV3Cux54CLr3GLrhc4SapVMu0mBchg-65xKrwqYPCo&e=
>
>
> Please note that it may take a couple of minutes from the time of submission until the htmlized version and diff are available at tools.ietf.org.
>
> Internet-Drafts are also available by anonymous FTP at:
> https://urldefense.proofpoint.com/v2/url?u=ftp-3A__ftp.ietf.org_internet-2Ddrafts_&d=DwICaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=6UhGpW9lwi9dM7jYlxXD8w&m=VZUxXboWY44rtZcmcswiLQuQ8TmW6g7F7Azgl-j0amw&s=FA3-28RGBPX6oeQnIR42NBpfekSVh-BU7wyHCkuesdA&e=
>