Last time I was talking about Reputation Systems. That plays nicely into my ideas about integrating the world. This post (obviously I should at some point formalize these ideas, but for now a blog entry will do) was triggered by Cisco’s announcement they want to give your fracking thermometer an IP address. I read that on Slashdot.
Without further ado:
Someone, please think of the objects!
Your thermometer should not be directly addressable as what amounts to a top-level object. It should be a node in your bedroom or kitchen. It may be directly addressable, but for many tasks it makes more sense to negotiate object operations through an intermediary controller. This is how many distributed systems work.
I’d really like to see a system where “ad-hoc network-aware object networks” (ANONs) get built. They would require (in my view) two things:
- Controller-enabled units
- Announcement-enabled units
Controller units are those that have the ability to be elected or appointed as the directly-addressable node in an area. These might be things like your computer, your AV receiver, or a dedicated unit. There would be one in every room, one in your car or in your seat on the bus/train/plane.
Announcement units are any devices that wish to participate in the network. These are the thermometers, the kerosene lamps, the microwaves, and so on.
This is the basic operation of a distributed system. Election will be held if there are multiple controllers. If there is no controller then and only then should minor devices be directly addressable. There is also the possibility that a phone may operate as a controller in that event.
And the reason I mentioned that this is related to the reputation system is that each device will have a reputation and then each operator will have a reputation. This is done to help manage access control.
Cisco’s idea of giving everything an IP address could be augmented with this sort of system, but ultimately it is less about the direct networking and more about the devices having the capabilities rolled into them to behave as members in a fully integrated network of objects. That is the starting point that Cisco and other companies should be taking, rather than (finally) recognizing that objects should be networked and starting with “okay let’s give them an IP address.”