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

Vlad Trifa <trifa@inf.ethz.ch> Fri, 30 October 2009 12:35 UTC

Return-Path: <trifa@inf.ethz.ch>
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 6D74F3A6869 for <6lowapp@core3.amsl.com>; Fri, 30 Oct 2009 05:35:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599]
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 MjCHFq8YUhFu for <6lowapp@core3.amsl.com>; Fri, 30 Oct 2009 05:35:35 -0700 (PDT)
Received: from gwse.ethz.ch (gwse.ethz.ch [129.132.178.237]) by core3.amsl.com (Postfix) with ESMTP id BC3C63A657C for <6lowapp@ietf.org>; Fri, 30 Oct 2009 05:35:34 -0700 (PDT)
Received: from CAS00.d.ethz.ch (129.132.178.234) by gws00.d.ethz.ch (129.132.178.237) with Microsoft SMTP Server (TLS) id 8.2.176.0; Fri, 30 Oct 2009 13:35:49 +0100
Received: from vs57.inf.ethz.ch (129.132.130.236) by mail.ethz.ch (129.132.178.227) with Microsoft SMTP Server (TLS) id 8.2.176.0; Fri, 30 Oct 2009 13:35:27 +0100
Message-ID: <D014365B-7E67-4A04-BE1C-4926A7923FF8@inf.ethz.ch>
From: Vlad Trifa <trifa@inf.ethz.ch>
To: "Adriano Pezzuto (apezzuto)" <apezzuto@cisco.com>
In-Reply-To: <0D212BD466921646B58854FB79092CEC8E8644@XMB-AMS-106.cisco.com>
Content-Type: text/plain; charset="US-ASCII"; format=flowed; delsp=yes
Content-Transfer-Encoding: 7bit
MIME-Version: 1.0 (Apple Message framework v936)
Date: Fri, 30 Oct 2009 13:35:27 +0100
References: <0D212BD466921646B58854FB79092CEC8E8644@XMB-AMS-106.cisco.com>
X-Mailer: Apple Mail (2.936)
X-Mailman-Approved-At: Fri, 30 Oct 2009 05:41:22 -0700
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 12:36:46 -0000

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