Re: [6lowapp] HTTP and SIP
"Don Sturek" <d.sturek@att.net> Sun, 11 October 2009 22:18 UTC
Return-Path: <d.sturek@att.net>
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 2DAB23A66B4 for <6lowapp@core3.amsl.com>;
Sun, 11 Oct 2009 15:18:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.785
X-Spam-Level: *
X-Spam-Status: No,
score=1.785 tagged_above=-999 required=5 tests=[BAYES_50=0.001,
HTML_MESSAGE=0.001, IP_NOT_FRIENDLY=0.334, MSGID_MULTIPLE_AT=1.449]
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 dLkxrlJF7Bvn for
<6lowapp@core3.amsl.com>; Sun, 11 Oct 2009 15:18:48 -0700 (PDT)
Received: from smtp102.sbc.mail.gq1.yahoo.com (smtp102.sbc.mail.gq1.yahoo.com
[67.195.15.61]) by core3.amsl.com (Postfix) with SMTP id 8A9123A6848 for
<6lowapp@ietf.org>; Sun, 11 Oct 2009 15:18:45 -0700 (PDT)
Received: (qmail 56895 invoked from network); 11 Oct 2009 22:18:43 -0000
Received: from (d.sturek@202.130.198.3 with login) by
smtp102.sbc.mail.gq1.yahoo.com with SMTP; 11 Oct 2009 15:18:43 -0700 PDT
X-Yahoo-SMTP: fvjol_aswBAraSJvMLe2r1XTzhBhbFxY8q8c3jo-
X-YMail-OSG: i3y5ycYVM1n4ameQChpFoBcD8vkxfQYo81xTwCzKg.bMPNVAQKUXhstdF39jDGMbONbBSndhYqORlL7i7ssnQU9VY_3rOaWrxEckT.FkSACpGpKeYUGDQEeoO_36GBR5e9sdvr4J5deLNBYvSdmyS62VJbdcUHfF.wAy4nJLuoO75IUCtO6LjbZDHhmKj7CMp0goGql6GnnadQGWlWyX96ek0id3WVv3EQYVcQpW9ICTnr6bjDCxqIQ5Ghkq65mZPb2LI0EnBFpbTQZJ7T1h3m4jLB__pSO2ZRlz.Fsm4nJrOujK6g--
X-Yahoo-Newman-Property: ymail-3
From: "Don Sturek" <d.sturek@att.net>
To: "'Shidan'" <shidan@gmail.com>
References: <429b380e0910101030q25f1ad7fge7157c2e04b5d530@mail.gmail.com>
<4AD105DC.3070407@sics.se> <-3576688268114842355@unknownmsgid>
<429b380e0910101840r93129edmae938b4c20eba50f@mail.gmail.com>
In-Reply-To: <429b380e0910101840r93129edmae938b4c20eba50f@mail.gmail.com>
Date: Sun, 11 Oct 2009 15:18:35 -0700
Message-ID: <004001ca4ac0$c91e68b0$5b5b3a10$@sturek@att.net>
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="----=_NextPart_000_0041_01CA4A86.1CBF90B0"
X-Mailer: Microsoft Office Outlook 12.0
Thread-Index: AcpKE9feu4czlODhR1C+gxR2SayxYwAq9TQQ
Content-Language: en-us
Cc: 6lowapp@ietf.org
Subject: Re: [6lowapp] HTTP and SIP
X-BeenThere: 6lowapp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
Reply-To: d.sturek@att.net
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: Sun, 11 Oct 2009 22:18:58 -0000
Hi Shidan, One more issue: We have existing smart energy messaging using a proprietary binary protocol. We then created an XML structure for these messages then used W3C EXI to tokenize. Here is what we ended up with: Binary Protocol Message Size: 6 Bytes XML Message Size: 376 Bytes W3C EXI Tokenized XML Message Size: 12 Bytes. The issue you run into is this: If you have a data collector model where many messages are forwarded from leaf nodes up to a central node (like the ROLL DAG root for example), then you find that the nodes close to the root have dramatically lower throughput due to congestion from packet forwarding from the leaf nodes towards the popular data collector device. We have many deployments where the IEEE 802.15.4 effective throughput of 140Kpbs turns into 9Kpbs as you forward towards the data collector. These deployments are using a binary protocol where nearly all messages fit into a single packet. Now, consider what happens where each and every message turns into MANY packet exchanges. You will quickly see this does not work.. I agree with what Zach wrote in a later note. I don't want to dissuade anyone who finds HTTP or SIP working over IEEE 802.15.4 from using it. However, I think the problem statement in 6LowAPP stands at least for the smart energy application I am familiar with. Don From: Shidan [mailto:shidan@gmail.com] Sent: Saturday, October 10, 2009 6:41 PM To: d.sturek@att.net Cc: Adam Dunkels; 6lowapp@ietf.org Subject: Re: [6lowapp] HTTP and SIP Hi Don, I certainly don't disagree with you that we need better latency and I'm pretty sure Adam doesn't either as he said this is without ANY optimizations. Given that fact, his statement is quite impressive. The key here is to actually back up any ideas and opinions with real results and this is what we are in the process of doing. Right now for our purposes, in the Smart Grid domain, we can run SIP, with some minor changes beyond stack size optimizations, over networks with as little bandwidth as 80kbps and highly constrained devices. We also acknowledge for our use cases, latency is not really an issue. I'm pretty convinced that with the RIGHT sort of optimizations, any latency issues can be handled without having to dictating general architectural standards like using REST, SNMP, SIP, etc. which can stifle innovation and lead to building everything with a hammer. Having said that Carsten's note is encouraging and I'm pretty convinced this committee has in mind creating a base that will evolve without stifling innovation and take real results and proof of concepts of use cases as main deciding factors. We will definitely be submitting an ID for Hiroshima. -- Shidan Gouran On Sat, Oct 10, 2009 at 8:56 PM, Don Sturek <d.sturek@att.net> wrote: Hi Adam. .5 seconds for one hop and 2 seconds for 4 hops are really not acceptable for many applications. We should of course investigate using existing protocols. However it does not seem likely that full HTTP and XML deployed over devices like IEEE 802.15.4 with very small packet sizes will scale very well (certainly, for any application expecting to do home or building controls, those latencies don't work). Ideally, we should find something that allows for full HTTP/etc. while enabling constrained devices to operate with a solution that can be expanded/compressed. Don -----Original Message----- From: 6lowapp-bounces@ietf.org [mailto:6lowapp-bounces@ietf.org] On Behalf Of Adam Dunkels Sent: Saturday, October 10, 2009 3:08 PM To: Shidan Cc: 6lowapp@ietf.org Subject: Re: [6lowapp] HTTP and SIP Shidan wrote: > "request-response protocols like HTTP may require battery-operated, > mostly sleeping nodes to be listening for requests much more frequently > than their application processing requirements alone would need them to > wake up." > > "In addition, some of the applications may require optimizations in > terms of bandwidth usage; for example, the usual data formats (both > headers and body) are perceived to be too chatty for the 50-60 byte > payloads possible in LoWPANs. Their interpretation and generation may > require too much code for the 8-bit and 16-bit processors dominating > LoWPAN nodes." > > None of these points seem evident to me. I very much agree with this. By so quickly dismissing the opportunities with existing protocols such as HTTP and SIP, this group may miss reaching widespread adoption of its protocols. Both these arguments were frequently used in the past against IP for resource-constrained systems, yet today we take IP for granted for these systems despite the overheads of IP. We need to a pay price for interoperability and flexibility, but we think it is worth it. FWIW, we've recently been working with REST web services (REST/HTTP/TCP/IP) over 802.15.4 with a low-power duty-cycling radio protocol (X-MAC) for Contiki. The implementation of the application layers (REST/HTTP) has roughly a 5kb code footprint. The performance is not bad: a full HTTP/TCP/IP REST transaction with sensor data in XML format is completed in roughly 0.5 seconds over a one-hop radio link and in less than 2 seconds over a four-hop radio network: http://www.sics.se/~adam/yazar09efficient.pdf Note that this is without any optimizations at the REST/HTTP/TCP/IP layers. Full HTTP headers are sent from the curl client, reducing the overall performance. Full XML is sent from the sensors. Thus there is plenty of opportunity to improve this without moving away from the HTTP/TCP/IP framework. For example, as we show in the above paper, there are significant savings in using conditional HTTP GETs when data have not changed between subsequent requests. Like Shidan, I am not saying that we necessarily must use full-fledged REST/HTTP/TCP/IP or SIP for everything in our resource-constrained networks. But we mustn't so quickly rule out existing mechanisms just because of their perceived overhead. Interoperability and flexibility are very important properties, often more important than bit-level optimizations. /adam -- Adam Dunkels <adam@sics.se>se>, +46707731614 http://twitter.com/adunk | http://www.sics.se/~adam/ _______________________________________________ 6lowapp mailing list 6lowapp@ietf.org https://www.ietf.org/mailman/listinfo/6lowapp
- [6lowapp] HTTP and SIP Shidan
- Re: [6lowapp] HTTP and SIP Carsten Bormann
- Re: [6lowapp] HTTP and SIP Adam Dunkels
- Re: [6lowapp] HTTP and SIP Don Sturek
- Re: [6lowapp] HTTP and SIP Shidan
- Re: [6lowapp] HTTP and SIP Jonathan Hui
- Re: [6lowapp] HTTP and SIP zach@sensinode.com
- Re: [6lowapp] HTTP and SIP zach@sensinode.com
- Re: [6lowapp] HTTP and SIP Brian Frank
- Re: [6lowapp] HTTP and SIP Don Sturek
- Re: [6lowapp] HTTP and SIP Shidan
- Re: [6lowapp] HTTP and SIP Shidan
- Re: [6lowapp] HTTP and SIP Adam Dunkels
- Re: [6lowapp] HTTP and SIP Adam Dunkels
- Re: [6lowapp] HTTP and SIP Adam Dunkels
- Re: [6lowapp] HTTP and SIP Adam Dunkels
- Re: [6lowapp] HTTP and SIP Carsten Bormann
- Re: [6lowapp] HTTP and SIP Zach Shelby