Hello Brian,
I think we now agree on a lot of things the most important of
which is the definition of the model. As far as addressing, prior to REST, I
would’ve agreed with you. But using REST, one can address even a SQL
Field, within a specific record of an object in a specific location and so on
an so forth. As long as we keep a neutral addressing scheme (such as URLs/REST)
we could address any individual object and even properties of that object
either behind a gateway or on the Internet.
With kind regards,
********************************
Michel
Kohanim, C.E.O
Universal
Devices, Inc.
(p)
818.631.0333
(f)
818.708.0755
http://www.universal-devices.com
********************************
From: Brian Frank
[mailto:brian@skyfoundry.com]
Sent: Thursday, April 02, 2009 12:18 PM
To: michel@universal-devices.com
Cc: smartgrid-interest@lists.oasis-open.org
Subject: Re: [smartgrid-interest] What's wrong with having devices
communicate in their own native languages
I think it depends on the
capabilities of the end device. We are working on some of those issues right
now. You are right - some devices don't have the horse power to implement
effective end-to-end security. For example 6LoWPAN devices aren't going
to run TLS. So router/gateway nodes do need to provide some of those
capabilities on behalf of the lower end devices.
However, security, QOS, firewalls, etc tend to be orthogonal to core data
models and formats. A gateway/router node can add authentication,
encryption, caching without fundamentally altering the end-to-end data
communications. This sort of thing happens all the time in IT networks
(such as VPNs). But I definitely think this isn't black and white - there
is a spectrum between "router" and "gateway".
To me the most important point is that the abstract data model is shared
end-to-end (even if multiple encodings of that model are used in
between). But it turns out naming and addressing is extremely difficult
to separate from an abstract data model. That would be like taking URLs
out of the Web, or SQL out of RDBMS. So one of the most important things
IP end-to-end brings to the party is its global IP address space. That in
turns lets me use standard URIs to identify data, which in turns lets me wire
up relationships between data just like the Web does today.
Brian, I almost agree with you but I have a
question: in your analogy of gateway/routers, where do you see QOS, Firewall,
IPSec, SNMP, etc. be implemented at? I am sure you do not mean that all
end points will implement QOS, IPSec, etc. and, therefore, at least there are
some high level functions that the end points will not understand regardless of
their protocol. Does this mean endpoints should not be IP based, no, not at
all. It just means that there are system boundaries which have not yet been
well defined. As such, to me, talking about the transport protocol now without
boundary requirements is tantamount to building a software system based on an
operating system (of course, nothing wrong with this but not very scalable).
|