Re: [6lowapp] Really we need for HTTP on smart devices?

"Adriano Pezzuto (apezzuto)" <apezzuto@cisco.com> Fri, 30 October 2009 14:59 UTC

Return-Path: <apezzuto@cisco.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 50F2A3A6974 for <6lowapp@core3.amsl.com>; Fri, 30 Oct 2009 07:59:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.099
X-Spam-Level:
X-Spam-Status: No, score=-10.099 tagged_above=-999 required=5 tests=[AWL=0.500, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
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 QIshHYvtek6I for <6lowapp@core3.amsl.com>; Fri, 30 Oct 2009 07:59:09 -0700 (PDT)
Received: from ams-iport-1.cisco.com (ams-iport-1.cisco.com [144.254.224.140]) by core3.amsl.com (Postfix) with ESMTP id B3A2C3A68E6 for <6lowapp@ietf.org>; Fri, 30 Oct 2009 07:59:08 -0700 (PDT)
Authentication-Results: ams-iport-1.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AjkAAJqb6kqQ/uCWe2dsb2JhbACbVgEBFiQGrXKYIYI5ggQE
X-IronPort-AV: E=Sophos;i="4.44,653,1249257600"; d="scan'208";a="53219664"
Received: from ams-core-1.cisco.com ([144.254.224.150]) by ams-iport-1.cisco.com with ESMTP; 30 Oct 2009 14:59:24 +0000
Received: from xbh-ams-101.cisco.com (xbh-ams-101.cisco.com [144.254.74.71]) by ams-core-1.cisco.com (8.13.8/8.14.3) with ESMTP id n9UExOvG027870; Fri, 30 Oct 2009 14:59:24 GMT
Received: from xmb-ams-106.cisco.com ([144.254.74.81]) by xbh-ams-101.cisco.com with Microsoft SMTPSVC(6.0.3790.3959); Fri, 30 Oct 2009 15:59:24 +0100
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Date: Fri, 30 Oct 2009 15:59:23 +0100
Message-ID: <0D212BD466921646B58854FB79092CEC8E8736@XMB-AMS-106.cisco.com>
In-Reply-To: <D014365B-7E67-4A04-BE1C-4926A7923FF8@inf.ethz.ch>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [6lowapp] Really we need for HTTP on smart devices?
Thread-Index: AcpZXYmGBYu6OvI5T0y6AJgphzc2qQAD/CvQ
References: <0D212BD466921646B58854FB79092CEC8E8644@XMB-AMS-106.cisco.com> <D014365B-7E67-4A04-BE1C-4926A7923FF8@inf.ethz.ch>
From: "Adriano Pezzuto (apezzuto)" <apezzuto@cisco.com>
To: "Vlad Trifa" <trifa@inf.ethz.ch>, <d.sturek@att.net>
X-OriginalArrivalTime: 30 Oct 2009 14:59:24.0487 (UTC) FILETIME=[91BEFD70:01CA5971]
Cc: 6lowapp@ietf.org
Subject: Re: [6lowapp] Really we need for HTTP on smart devices?
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: Fri, 30 Oct 2009 14:59:11 -0000

Vlad/Don,
thanks for your feedbacks. Nice to see starting a debate here.

Vlad,
I know your work at the Web of Things and it's fine.
On the other side, today we do not see many real 6lowpan devices able to support HTTP on TCP. SunSpot is fine but for 6lowpan we have 60-80 bytes of payload and 10kbps in application throughput to deal with.

It looks that HTTP on 6lowpan is a sort of "I wish but I cannot" and gatewaying/proxying is only a compromise not a solution. I'm try to find different points of view, so my initial question.

Please have a look to this interesting paper from Tim O'Reilly and John Battelle:

http://www.web2summit.com/web2009/public/schedule/detail/10194
"
Many who talk about "the Internet of Things" assume that what will get us there is the combination of ultra-cheap RFID and IP addresses for everyday objects. The assumption is that every object must have a unique identifier for the "Internet of Things" to work.

What the Web 2.0 sensibility tells us is that we'll get to the Internet of Things via a hodgepodge of sensor data contributing, bottom-up, to machine-learning applications that gradually make more and more sense of the data that is handed to them. A bottle of wine on your supermarket shelf (or any other object) needn't have an RFID tag to join the "Internet of Things," it simply needs you to take a picture of its label. Your mobile phone, image recognition, search, and the sentient web will do the rest. We don't have to wait until each item in the supermarket has a unique machine-readable ID. Instead, we can make do with bar codes, tags on photos, and other "hacks" that are simply ways of brute-forcing identity out of reality. "

Regards,
Adriano



-----Original Message-----
From: Vlad Trifa [mailto:trifa@inf.ethz.ch] 
Sent: venerdì 30 ottobre 2009 13.35
To: Adriano Pezzuto (apezzuto)
Cc: 6lowapp@ietf.org
Subject: Re: [6lowapp] Really we need for HTTP on smart devices?

Hello,

Adriano: the web of things is exactly going beyond the "web  
information shadow" as you put it. We've been putting data from  
devices on the web since a decade, so what? nothing new there, but if  
you can turn devices by design into actual web actors (just as any  
other Web server), it open doors and completely new design  
possibilities as opposed to just make their data available on the web  
- it's a completely different (or broader) way of viewing things.

Well, I think the "HTTP is too heavy" argument is certainly valid when  
you have very tight/specific requirements and need to maximize the  
throughput of your communication. Of course it is a verbose protocol,  
but you might gain a lot of using it directly on devices, especially  
in terms of application level interoperability, and even more  
important for plug & play integration with the Web and Web  
applications. Let's put it that way: how many people know/use the  
zillions application protocols/middlewares available (I don't want to  
mention any, because many are excellent for specific applications, but  
I don't believe much in the *perfect* middleware) hundreds? maybe  
thousands? Ok and now how may people use http/xml? I think you get my  
point here.

Indeed, what you lose in performance (and it's not as bad as one  
thinks) you gain in terms of integrability. When I think smart homes,  
I think many constructors need to agree on a protocol. But I also  
think few messages here and there to control lights/HVAC and read  
energy meters with sub-second delay requirements. I don't think,  
thousands of messages per second nor high-frequency distributed  
sampling. Eventually, we want to reuse infrastructure that's already  
there (web), so why not use and adapt http/xml directly for that  
matter, as we need to design an application protocol anyway?

Of course one can use gateways for doing this, but if you can have  
directly http on devices, then your gateway simply become routers  
across physical interfaces, and it's much faster because you don't  
need to open or understand packets passing through.

Then if you think lots of concurrent people reading all types of http  
sensors from all types and constructors, then you can simply pop in a  
squid or any web cache, and voila, massively scalable infrastructure  
to store data (we got 20 years of experience with the web and the  
associated techs, so why reinvent the wheel when it rolls where you  
want?).

I shall stop here, and please have a look at some of our work, I think  
we try to motivate and illustrate that exact point well there:

http://www.vs.inf.ethz.ch/publ/papers/guinardSensorMashups09.pdf
http://www.vs.inf.ethz.ch/publ/papers/dguinard_09_WOTMashups.pdf

However, sorry I don't get the "humans don't have a web server"  
argument, what is your point with that?


Vlad


On Oct 30, 2009, at 1:02 PM, Adriano Pezzuto (apezzuto) wrote:

> Hello,
> there is a lot effort to push HTTP and REST interfaces on smart  
> objects
> assuming that smart devices (sensor/actuators/readers) should act as  
> Web
> providers. On the other side, 6lowpan and other wireless sensor  
> networks
> are made by resource-constrained embedded devices so HTTP looks like  
> too
> resource expensive.
>
> We are seeing a lot of proxying and gatewaying solutions to bring HTTP
> and REST on the 6lowpan devices. But working with gateways and proxies
> are always struggling especially at application level. My question  
> here
> is why we need to bring HTTP on smart objects?
>
> Smart objects interact with the Internet as they like (and can) as
> humans do. Humans type on a computer keyboard or play in front of the
> iPhone camera while Things send sensing data or get commands to act on
> the real world. Humans do not have an embedded HTTP server even if the
> results of their actions (i.e. typing on a keyboard and playing in  
> front
> of a camera) are available as Web resources. In the same way, Things  
> do
> not need for an embedded HTTP server. Things interact with the  
> Internet
> using a lightweight protocol while the results of their interaction  
> are
> available on the Web as resources. It is a sort of "information  
> shadow"
> data that Things have on the Web. This data will be collected in a
> suitable manner for the resource-constrained embedded devices and make
> available as Web resource with HTTP and REST interfaces.
>
> What do you think about it?
>
> Regards,
> Adriano
>
>
> _______________________________________________
> 6lowapp mailing list
> 6lowapp@ietf.org
> https://www.ietf.org/mailman/listinfo/6lowapp