Re: [6lowapp] draft-shelby-6lowapp-coap-00
Zach Shelby <zach@sensinode.com> Tue, 26 January 2010 14:46 UTC
Return-Path: <zach@sensinode.com>
X-Original-To: 6lowapp@core3.amsl.com
Delivered-To: 6lowapp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 15DCA3A6894 for <6lowapp@core3.amsl.com>; Tue, 26 Jan 2010 06:46:28 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.599
X-Spam-Level:
X-Spam-Status: No, score=-3.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1]
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 0eWR2tN9c03n for <6lowapp@core3.amsl.com>; Tue, 26 Jan 2010 06:46:26 -0800 (PST)
Received: from auth-smtp.nebula.fi (auth-smtp.nebula.fi [217.30.180.105]) by core3.amsl.com (Postfix) with ESMTP id CDCDF3A688B for <6lowapp@ietf.org>; Tue, 26 Jan 2010 06:46:25 -0800 (PST)
Received: from [62.145.172.51] ([62.145.172.51]) (authenticated bits=0) by auth-smtp.nebula.fi (8.13.4/8.13.4) with ESMTP id o0QEkS9U006484 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Tue, 26 Jan 2010 16:46:29 +0200
Mime-Version: 1.0 (Apple Message framework v1077)
Content-Type: text/plain; charset="iso-8859-1"
From: Zach Shelby <zach@sensinode.com>
In-Reply-To: <007601ca9e8d$9a3a9bb0$ceafd310$@sturek@att.net>
Date: Tue, 26 Jan 2010 16:46:31 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <3023E891-6F3F-4F35-8490-7F5400BC5153@sensinode.com>
References: <0B3D3615-F1AB-4067-B758-0A988C10CD98@sensinode.com> <004201ca9aa8$55d02cd0$01708670$@moritz@uni-rostock.de> <CB19847E-1235-4308-9089-5BBE0BBE9345@sensinode.com> <007601ca9e8d$9a3a9bb0$ceafd310$@sturek@att.net>
To: d.sturek@att.net
X-Mailer: Apple Mail (2.1077)
Cc: '6LoWAPP' <6lowapp@ietf.org>
Subject: Re: [6lowapp] draft-shelby-6lowapp-coap-00
X-BeenThere: 6lowapp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Application protocols for constrained nodes and networks <6lowapp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/6lowapp>, <mailto:6lowapp-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/6lowapp>
List-Post: <mailto:6lowapp@ietf.org>
List-Help: <mailto:6lowapp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/6lowapp>, <mailto:6lowapp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 26 Jan 2010 14:46:28 -0000
On Jan 26, 2010, at 15:43 , Don Sturek wrote: > Hi Zach, > > I agree we need to keep CoAp a simple REST implementation. Reviewing DPWS > and other OASIS protocols is fine as long as we keep CoAp simple. > > We have done our job correctly if something like DPWS over CoAp becomes a > reality and we haven't if we find CoAp now is an annex of the OASIS WS > specifications. Exactly. CoAP's goal is to support very light-weight RESTful interactions for constrained device environments. Just as HTTP can be used for WS purposes, CoAP should also be useful. There are a bunch of shortcomings in HTTP such as the lack of multicast and subscribe/notify - by fixing those in CoAP will enable simple REST applications, which also benefits use for e.g. DPWS or other WS-* if they so wish to bind to CoAP. Zach > > Don > > > -----Original Message----- > From: 6lowapp-bounces@ietf.org [mailto:6lowapp-bounces@ietf.org] On Behalf > Of Zach Shelby > Sent: Tuesday, January 26, 2010 2:56 AM > To: Guido Moritz > Cc: 6LoWAPP > Subject: Re: [6lowapp] draft-shelby-6lowapp-coap-00 > > > On Jan 21, 2010, at 16:45 , Guido Moritz wrote: > >> Dear Zach, >> >> personally I am quite familiar with DPWS (see my I-D in 6LoWAPP), but I > may >> have some more commends on this. I would like to propose to have look on >> DPWS, WS-Discovery, and SOAP-over-UDP specs at OASIS. They might point to >> some conceptual solutions useful for COAP. Please find more comments below >> in the text. >> > > Yes, I do agree with this approach. We would be happy to explore that in the > text of http://www.ietf.org/id/draft-shelby-6lowapp-coap-00.txt. > > In my opinion a goal of this new WG should be to cooperate with OASIS to > explore how a future extension to the DPWS paradigm (DPWS for CoAP?) could > make use of CoAP in these environments. CoAP should only provide the basic > protocol mechanism... just as DPWS makes use of HTTP and SOAP-over-UDP > today. > >> Regards, >> Guido >> >>> -----Ursprüngliche Nachricht----- >>> Von: 6lowapp-bounces@ietf.org [mailto:6lowapp-bounces@ietf.org] Im >>> Auftrag von Zach Shelby >>> Gesendet: Dienstag, 19. Januar 2010 14:37 >>> An: 6LoWAPP >>> Betreff: [6lowapp] draft-shelby-6lowapp-coap-00 >>> >>> Does anyone have comments/ideas regarding http://www.ietf.org/id/draft- >>> shelby-6lowapp-coap-00.txt that we submitted before the holidays? We >>> would like to start some design work, so any feedback would be really >>> useful. I've identified some areas where we need input/discussion on >>> the list: >>> >>> 1. Content-type encoding (Section 2.4). Any ideas or suggestions on how >>> to encode this and what is enough space? How should such an encoding be >>> managed, ask IANA to do that? Any pointers to a similar encoding done >>> elsewhere? >> Encoding in the COAP header might be most efficient way, especially > focusing >> parsing incoming headers/messages. But extensibility is quite important > and >> a core feature of REST. XML send via HTTP uses "magic bytes". > SOAP-over-UDP >> (XML SOAP envelopes send via UDP without HTTP header) binding >> implementations can use these magic bytes for data format identification. >> COAP should include same features to allow own or not prior defined data >> formats. >> > > Agreed. That could be done by reserving a range of codes for private use, or > by having a code that says something like "look at the magic bytes in the > payload"? > >>> >>> 2. Caching (Section 2.6). Should we go towards an in-band or an out-of- >>> band discovery approach? Personally I think an in-band approach is by >>> far the simplest, although it requires some header space when present. >> Out-of-band discovery might imply overlapping with other specs (mDNS, >> WS-Discovery,..). Thus, comprehensive in-band discovery seems a proper >> approach. Header space should not be a problem because >> methods/actions/operations of COAP are very limited. Additional > information >> to be included in the header for discovery purposes would have to be >> included for out-of-band approaches as well but would require additional >> efforts to work on "two separated tracks". > > Good point. > >> >>> >>> 3. Subscribe/Notify (Section 2.7). This is an area that definitely >>> needs discussion. The current proposal is to use a REST interface to >>> create subscriptions and which are then sent using a NOTIFY message to >>> a call-back URL. How to format the body o the subscription (URL to >>> subscribe to, URL call-back, parameters?). >> Similar features are included in DPWS by using WS-Eventing. In >> subscriptions, a client includes an endpoint for event delivery. This is a >> transport specific address including protocol and address. >> But additional features might be required for a complete eventing concept. >> This includes lease management concepts and filtering concepts (e.g. set >> limits/thresholds for a temperature value). Furthermore, a data > distribution >> model is required. WS-Eventing uses by default unicast messages to the >> clients (sinks of event). This requires one message to every subscriber. >> XMPP instead needs, due to its architecture, only one message to the > server >> which distributes data to all subscribed clients without need for multiple >> sendings of the originator. > > We should look at both in more detail. We don't have a server architecture > as in XMPP, > however there may a proxy (HTTP-CoAP mapping e.g.) that aggregates > subscriptions on behalf of nodes. Therefore the paradigm would probably be > similar to the WS-Eventing (unicast). I think the question here is, is there > an existing payload format for including the URL call-back and other needed > subscription management parameters that we could just point at? This would > need to be simple to parse with a reasonable payload size. > >> >>> >>> 4. Resource Discovery (Section 2.9). The proposal is to use a new >>> DISCOVER method which can be sent either unicast or multicast. The only >>> difficult part there is the format of the list of resources (URLs) >>> which would be returned in such a response. This is a little bit like >>> index.html. We had some discussions in Hiroshima that XMPP has >>> developed some ways of coding lists of URLs and that could be re-used. >>> Does someone have a pointer for us on that? >> WS-Discovery specification goes one step further and combines metadata >> exchange for devices and service descriptions. In the first step, a device >> itself is discovered which is a ensemble of "Hosted Services" (services or >> in COAP single resource). A single service itself provides also metadata >> (methods/operations of service) which can be queried. >> The new Bluetooth Low Energy Attribute Protocol uses a similar approach to >> request either all services of a attribute server or specific attributes > of >> a service. >> To sum up, I am not sure which functionalities the discovery of COAP has > to >> provide, but it might require more efforts then just to define how to > encode >> a set of URLs. > > The new charter update will help us here... It seems like defining the > format of these messages might be out of scope for the WG's first charter, > although the original idea was also to define a basic URL list (do we still > do that?). It may be enough to point at other formats or paradigms that > could use this method for discovery. If there is interest and the need to > define one at the IETF later, then we could be re-chartered for that? > >> >>> >> >> Some more comments: >> -REQ2 seems quite hard. Without knowledge about design/architecture to >> define a header size. > > This is from the charter, and it comes from the 6LoWPAN network architecture > and IEEE 802.15.4 frame sizes. I don't find it to be that difficult to meet, > from experience designing similar protocols. > >> >> -REQ3: Is it useful to make sleeping nodes to an application layer >> requirement? 6LoWPAN allows seamless integration into existing networks. > To >> deal with sleeping nodes always requires caching intermediates and thus > does >> not permit for ad-hoc connectivity, because external endpoints cannot be >> aware of this. Sleeping nodes should be solved on link layer, without > design >> requirements for application layer? > > Locally sleeping nodes *might* very well be dealt with at the link layer in > an ad-hoc setting, but we can't make such an assumption about all > link-layers (many don't) at the IETF. REQ3 does not force sleeping nodes to > be dealt with at the application layer (so your ad-hoc case will work), but > that it *can* be used to deal with sleeping nodes (e.g. caching in an > HTTP-CoAP proxy) when appropriate. It is common that nodes sleep for long > periods of time in sensor networks, for endpoints somewhere on the Internet, > this can be dealt with by a caching intermediate. I think the requirement is > good to keep in mind what caching will sometimes be used for here. > > Zach > >> >>> Thanks, >>> Zach >>> >>> -- >>> http://www.sensinode.com >>> http://zachshelby.org - My blog "On the Internet of Things" >>> http://6lowpan.net - New book - "6LoWPAN: The Wireless Embedded >>> Internet" >>> Mobile: +358 40 7796297 >>> >>> Zach Shelby >>> Head of Research >>> Sensinode Ltd. >>> Kidekuja 2 >>> 88610 Vuokatti, FINLAND >>> >>> This e-mail and all attached material are confidential and may contain >>> legally privileged information. If you are not the intended recipient, >>> please contact the sender and delete the e-mail from your system >>> without producing, distributing or retaining copies thereof. >>> >>> >>> >>> >>> _______________________________________________ >>> 6lowapp mailing list >>> 6lowapp@ietf.org >>> https://www.ietf.org/mailman/listinfo/6lowapp >> >> _______________________________________________ >> 6lowapp mailing list >> 6lowapp@ietf.org >> https://www.ietf.org/mailman/listinfo/6lowapp > > -- > http://www.sensinode.com > http://zachshelby.org - My blog "On the Internet of Things" > http://6lowpan.net - New book - "6LoWPAN: The Wireless Embedded Internet" > Mobile: +358 40 7796297 > > Zach Shelby > Head of Research > Sensinode Ltd. > Kidekuja 2 > 88610 Vuokatti, FINLAND > > This e-mail and all attached material are confidential and may contain > legally privileged information. If you are not the intended recipient, > please contact the sender and delete the e-mail from your system without > producing, distributing or retaining copies thereof. > > > > > _______________________________________________ > 6lowapp mailing list > 6lowapp@ietf.org > https://www.ietf.org/mailman/listinfo/6lowapp > -- http://www.sensinode.com http://zachshelby.org - My blog "On the Internet of Things" http://6lowpan.net - New book - "6LoWPAN: The Wireless Embedded Internet" Mobile: +358 40 7796297 Zach Shelby Head of Research Sensinode Ltd. Kidekuja 2 88610 Vuokatti, FINLAND This e-mail and all attached material are confidential and may contain legally privileged information. If you are not the intended recipient, please contact the sender and delete the e-mail from your system without producing, distributing or retaining copies thereof.
- [6lowapp] draft-shelby-6lowapp-coap-00 Zach Shelby
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Jorge Amodio
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Guido Moritz
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Zach Shelby
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Guido Moritz
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Don Sturek
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Zach Shelby
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Adriano Pezzuto (apezzuto)
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Behcet Sarikaya
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Lisa Dusseault
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Paul Duffy
- [6lowapp] Multicast support in CoAP Behcet Sarikaya
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Don Sturek
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Van Der Stok, Peter
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Zach Shelby
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Romascanu, Dan (Dan)
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Zach Shelby
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Van Der Stok, Peter
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Adriano Pezzuto (apezzuto)
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Robert Cragie
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Juergen Schoenwaelder
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Adriano Pezzuto (apezzuto)
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Paul Duffy
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Guido Moritz
- Re: [6lowapp] draft-shelby-6lowapp-coap-00 Salvatore Loreto