Re: [core] CoAP and HTTP - Philosophy and Direction

Carsten Bormann <cabo@tzi.org> Mon, 06 December 2010 17:40 UTC

Return-Path: <cabo@tzi.org>
X-Original-To: core@core3.amsl.com
Delivered-To: core@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 7BEFC3A681D for <core@core3.amsl.com>; Mon, 6 Dec 2010 09:40:28 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -106.332
X-Spam-Level:
X-Spam-Status: No, score=-106.332 tagged_above=-999 required=5 tests=[AWL=-0.084, BAYES_00=-2.599, HELO_EQ_DE=0.35, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100, WEIRD_PORT=0.001]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ugc0xyTqi--q for <core@core3.amsl.com>; Mon, 6 Dec 2010 09:40:26 -0800 (PST)
Received: from informatik.uni-bremen.de (mailhost.informatik.uni-bremen.de [IPv6:2001:638:708:30c9:209:3dff:fe00:7136]) by core3.amsl.com (Postfix) with ESMTP id D526F3A6864 for <core@ietf.org>; Mon, 6 Dec 2010 09:40:25 -0800 (PST)
X-Virus-Scanned: amavisd-new at informatik.uni-bremen.de
Received: from smtp-fb3.informatik.uni-bremen.de (smtp-fb3.informatik.uni-bremen.de [134.102.224.120]) by informatik.uni-bremen.de (8.14.3/8.14.3) with ESMTP id oB6HfeEe024280; Mon, 6 Dec 2010 18:41:40 +0100 (CET)
Received: from [192.168.217.101] (p5489B34C.dip.t-dialin.net [84.137.179.76]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by smtp-fb3.informatik.uni-bremen.de (Postfix) with ESMTPSA id 46A4DBBA; Mon, 6 Dec 2010 18:41:40 +0100 (CET)
Mime-Version: 1.0 (Apple Message framework v1082)
Content-Type: text/plain; charset="us-ascii"
From: Carsten Bormann <cabo@tzi.org>
In-Reply-To: <AANLkTikJbQwuWZt2ipy4BMU5P6n4QueB87sKzjzo=w7f@mail.gmail.com>
Date: Mon, 06 Dec 2010 18:41:39 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <7C0EA487-23C6-4599-AF2A-6EF92E2D51A4@tzi.org>
References: <AANLkTik66DctvPTb6-Z42coH+JD0DdEv9kCw-uUU-V2D@mail.gmail.com> <AANLkTi=mQR4hUN2KC+yH0Pjnsr3EqXfU0Z2j7CbW=G6L@mail.gmail.com> <0EBAC7F4-C42A-4B2D-BC14-420A03F3A5A2@checkpoint.com> <AANLkTikJbQwuWZt2ipy4BMU5P6n4QueB87sKzjzo=w7f@mail.gmail.com>
To: "Angelo P. Castellani" <angelo@castellani.net>
X-Mailer: Apple Mail (2.1082)
Cc: core WG <core@ietf.org>
Subject: Re: [core] CoAP and HTTP - Philosophy and Direction
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: "Constrained RESTful Environments \(CoRE\) Working Group list" <core.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/core>, <mailto:core-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/core>
List-Post: <mailto:core@ietf.org>
List-Help: <mailto:core-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/core>, <mailto:core-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 06 Dec 2010 17:40:28 -0000

One very useful rule that this WG has been following so far for the design of CoAP is: 

	When in doubt, do it like HTTP.

There is absolutely no doubt here, though.  There is nothing we can follow.

On Dec 6, 2010, at 18:07, Angelo P. Castellani wrote:

> HTTP supports chunked Transfer-Encoding,

Yes.

> through this feature is
> possible to push data to clients.

(If you mean "push" in the sense of deferred response:)

No.

Yes, I'm aware of "forever-frames" and all those wonderful asynchronous AJAX hacks.
(I built a little toy based on long-polls in 2005; http://tzi.org:2000/s6.html if you are interested).
These hacks are not a part of HTTP, they are abusing HTTP, and they work only because the idiosyncrasies of certain specific implementations happen to line up just right.

I'll leave the last word to Brian Carpenter, who prefixed his review of draft-loreto-http-bidirectional-05.txt with:

> This is real example of protocol abuse. HTTP wasn't designed for this and doesn't do this properly. 


Gruesse, CArsten