Re: deprecating Postel's principle- considered harmful

Dave Cridland <dave@cridland.net> Wed, 08 May 2019 08:06 UTC

Return-Path: <dave@cridland.net>
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 E97FA12002F for <ietf@ietfa.amsl.com>; Wed, 8 May 2019 01:06:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cridland.net
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 Oyk04zpjZrLg for <ietf@ietfa.amsl.com>; Wed, 8 May 2019 01:06:10 -0700 (PDT)
Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com [IPv6:2a00:1450:4864:20::52a]) (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 2DA5B120088 for <ietf@ietf.org>; Wed, 8 May 2019 01:06:10 -0700 (PDT)
Received: by mail-ed1-x52a.google.com with SMTP id b8so21182095edm.11 for <ietf@ietf.org>; Wed, 08 May 2019 01:06:10 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cridland.net; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=l/8KuRt2g+hjjxfUDZmO4HBD/zq227uQSBAyBdFbmEY=; b=SD+Eo7RiahEvtpous6oWQe2nEN5YnPZVlz91LHIQNQSlgjZ+tYhxmO1eLFMW+/eqxA IJp8Uq13LFZodP/+4gkqHx0ilYMGLdLu+hjFsnQEZbrpAlXA5zU8fNRsCelb7NZHurk8 gDO9k/OTdaqfrmt1CS2WtucBLnIrZiRMtoLso=
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; bh=l/8KuRt2g+hjjxfUDZmO4HBD/zq227uQSBAyBdFbmEY=; b=WjgLpmsPlZXlMVE6At6n5Sg6peRbgszBpxfuBMC/+5VNdtXO+Qb4THcenVI3hI/Fbl 2FGWTdWtn1eQr7E1aVdif6/vkU2KC3fwprDiK3X09vwryptHiXy35p2lWq4AyRcr8QUO Aw4Epd7FpjPMSAQfeLgSWJoacWFdAJvASeznMwUl81LY9j2N+uNKRia+q6uMLVmPxf8D 6v5xeY72M0+ZRjLN1MVC6fwnIOdTaxZLDS6OlX8V5ys5WZg8kpeGFA2+eGcSUzPcKt/5 JfZ2OyzqzJPTZlDjR3mo2MVaqBQ3hB4wrb4vlM2o1Xqmi6FTElq8NBQo25SnVwA4SMdC 1Ygg==
X-Gm-Message-State: APjAAAXYxP29tQMpNM8IdcT2tAyZfCUnkpnB9ZkTCP021miQCB7rMCBn DN1hcaRXtHT+3WWSy1+y14DiiUT+azUD4g0y2/RBSypkGLDBzg==
X-Google-Smtp-Source: APXvYqyVlrLoT90VEYmEfp5HZOFCjWD2emDYAa1l8ELFysHY3DrH+URw8P5piBPqjAYRqYp6r9WkRO9+GuscWavn8jQ=
X-Received: by 2002:a50:9264:: with SMTP id j33mr37037405eda.125.1557302768556; Wed, 08 May 2019 01:06:08 -0700 (PDT)
MIME-Version: 1.0
References: <F64C10EAA68C8044B33656FA214632C89F024CD3@MISOUT7MSGUSRDE.ITServices.sbc.com> <CALaySJJDHg5j9Z7+noS=YXoNROqdsbJ6coEECtLtbJ6fWJ3xsQ@mail.gmail.com> <DBD4837F-299B-497C-8922-AFF858B06C0F@strayalpha.com>
In-Reply-To: <DBD4837F-299B-497C-8922-AFF858B06C0F@strayalpha.com>
From: Dave Cridland <dave@cridland.net>
Date: Wed, 08 May 2019 08:05:52 +0100
Message-ID: <CAKHUCzwa89Qd6PD2EtkZU1LnT+1ZSsNiMQGAPnu5P_r=bvgMLg@mail.gmail.com>
Subject: Re: deprecating Postel's principle- considered harmful
To: Joe Touch <touch@strayalpha.com>, "ietf@ietf.org" <ietf@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000054084805885bce0a"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ietf/HDnC41UPRTpkg6EKlUoiNb7V7Dw>
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: Wed, 08 May 2019 08:06:13 -0000

On Wed, 8 May 2019 at 05:17, Joe Touch <touch@strayalpha.com> wrote:

>
>
> On May 7, 2019, at 1:29 PM, Barry Leiba <barryleiba@computer.org> wrote:
>
> 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.
>
>
> I’ve already noted this in earlier versions of this thread, but to restate:
>
> Protocols are, by definition, a set of rules - rules for BOTH sender and
> receiver - that enable communication (sharing of state) [Shannon/Weaver].
>
> The point of the Postel Principle is to stay INSIDE the lines as a sender,
> and allow right up to the lines for the receiver.
>
> It is about interpreting the (often unavoidable) aspects of protocol that
> are ambiguous.
>
> *NONE* of it is about tolerating bugs or errors, nor is it about allowing
> arbitrary behavior for senders.
>
>
Sure about that?

>From RFC 760:

That is, it should be careful to send well-formed datagrams, but should
accept any datagram that it can interpret (e.g., not object to technical
errors where the meaning is still clear).

The parenthetical example is explicitly stating that a datagram with a
technical error should still be accepted.

Now, I entirely agree that shouldn't be the case, but nevertheless it is
what was originally postulated by Postel. Luckily, alongside Kings,
Presidents and Voting, we also reject Sacred Texts and Prophets, so we're
free to say "this rule didn't work out".

I think the principle Postel postulated has a lot of use, but it needs a
narrower and more cautious rewording. The simplistic wording we tend to
lean on is far from the only wording - there are various rephrasings, some
good, some bad, over the years. RFC 1958 contains, in my opinion, one of
the worst of these, and Martin is quite right to criticise it.

RFC 1122, in section 1.2.2, has quite a good discussion of the principle,
and is worth re-examining before you declare the whole thing simply Wrong.


> It can’t be - again, protocols are rules. Take away the rules and you take
> away the ability to communicate.
>
> Joe
>
>
>
>