Re: [core] http observe unification

Cullen Jennings <fluffy@cisco.com> Fri, 29 October 2010 20:46 UTC

Return-Path: <fluffy@cisco.com>
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 7D2CE3A6857 for <core@core3.amsl.com>; Fri, 29 Oct 2010 13:46:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -110.448
X-Spam-Level:
X-Spam-Status: No, score=-110.448 tagged_above=-999 required=5 tests=[AWL=0.151, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8, USER_IN_WHITELIST=-100]
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 skREPoKnpd5X for <core@core3.amsl.com>; Fri, 29 Oct 2010 13:46:33 -0700 (PDT)
Received: from sj-iport-6.cisco.com (sj-iport-6.cisco.com [171.71.176.117]) by core3.amsl.com (Postfix) with ESMTP id 25B4E3A6767 for <core@ietf.org>; Fri, 29 Oct 2010 13:46:33 -0700 (PDT)
Authentication-Results: sj-iport-6.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEAN/PykyrRN+K/2dsb2JhbAChUXGkDJwXhUgEhFeFfIMI
X-IronPort-AV: E=Sophos;i="4.58,261,1286150400"; d="scan'208";a="611653946"
Received: from sj-core-4.cisco.com ([171.68.223.138]) by sj-iport-6.cisco.com with ESMTP; 29 Oct 2010 20:48:28 +0000
Received: from [192.168.4.2] (rcdn-fluffy-8711.cisco.com [10.99.9.18]) by sj-core-4.cisco.com (8.13.8/8.14.3) with ESMTP id o9TKmRnK024667; Fri, 29 Oct 2010 20:48:27 GMT
Mime-Version: 1.0 (Apple Message framework v1081)
Content-Type: text/plain; charset="us-ascii"
From: Cullen Jennings <fluffy@cisco.com>
In-Reply-To: <AANLkTikcog5b3hB-bzyY2eBSQOiq2MVSVM09uj12tSo=@mail.gmail.com>
Date: Fri, 29 Oct 2010 14:48:36 -0600
Content-Transfer-Encoding: quoted-printable
Message-Id: <1B46E7DD-0D06-46B1-AF6D-D934E2DDB3C6@cisco.com>
References: <AANLkTikcog5b3hB-bzyY2eBSQOiq2MVSVM09uj12tSo=@mail.gmail.com>
To: Peter Bigot <pab@peoplepowerco.com>
X-Mailer: Apple Mail (2.1081)
Cc: core <core@ietf.org>
Subject: Re: [core] http observe unification
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: Fri, 29 Oct 2010 20:46:34 -0000

(inline and all of this in my individual contributor roll not my co-chair roll )

On Oct 28, 2010, at 6:43 AM, Peter Bigot wrote:

> Cullen:
> 
> In the telecon yesterday, you objected to my proposal that the solution to the observation problem be left to designers of specific systems.

Yes - I think there should be at document that describes at least one way to do this. I don't care if there could be many ways to do it. I can see that there are some designs where you need to change or extend the underlying COAP protocol and there are also designs where it is layered on top with no change to COAP. I don't care too much which of the two it is as in the end that is really just moving where the bits are in the packet which I could care less about. 

>  It sounded like you felt a reference document describing alternative approaches that applications might take would not be adequate.  

sorry if I gave that impression - I'd love to see a document like that - it would help understand the design space. I am more concerned about having less than 1 solution than the problem of having more than 1 solution. I do not think the document that describes a solution has to be the same RFC as the base spec COAP spec and devices could choose if they were just doing the base spec or if they implemented base spec + an observation solution. 

> Could you elaborate a little more here on what you believe CoAP must provide, and in what timeframe?

I don't care if it is in COAP, an extortion to COAP, or just a way of using COAP but I would like to see the WG produce a way of having a way for Application A to to say it wants to know about changes to resource B and when B changes, a message gets sent to A saying it changed. It's not really very complicated what I want. As my friend Dean says, there's many ways to skin this cat, I rather not see us use a potato peeler. Oh, and let me be clear on one more thing about it - I do not care in the slightest if anyone thinks it is REST or not, I just want my message when the resource changes and something that is reasonable to implement. I've got a pretty deep understanding of REST and I don't see how the concepts of REST actually help much with the conversation here. I do think discussion of what devices need to store state, for how long, and how much do help with the design as well as discussion of what is idempotent. The security and flexibility implications of various solutions are also interesting to consider along with the obvious issues of size, complexity, and efficiency. 

> 
> I understood you to say that some IETF working group was nearly complete with a proposed standard way to implement observation in HTTP.  Is that the Httpbis group?  To which of their documents were you referring?  draft-loreto-http-bidirectional is somewhat relevant (wrt streaming responses).

HyBy

http://tools.ietf.org/wg/hybi/draft-ietf-hybi-thewebsocketprotocol/

> 
> The clearly relevant one is draft-roach-sip-http-subscribe, but that's based on SIP event notification.  Were we to take that approach, it might be best to define a CoAP-like protocol "csip", rather than integrate that functionality directly into CoAP.  On first glance, it appears this would be at least as much work as defining CoAP has been.  It would, though, give us a solution to observation, notification, and group communication that is compatible with the HTTP family of protocols, so is certainly worth considering.

I helped design the SIP Sub/Notify system and it's design goals were very different from what we are trying to do here. At a high level it is isomorphic to what we want but as you did into the details, it was optimized for something fairly different than the CoAP use cases. I'm certainly not pushing the approach that was used in SIP thought I tend to fall into using the terminology from SIP just because I know it well. 

> 
> Thanks.
> 
> Peter