The IETF is about interoperation. Yes, IETF participants like cleaner architecture, and more elegant solutions, and so on. But at bottom, both “rough consensus” and “running code” are all about making diverse things work together as much as possible. We need to make the pieces line up.
One of the places that things — or, in this case, “Things” — need to line up is in the application layer. For the Internet of Things (IoT) to become the reality many popular accounts would suggest, the various kinds of Things need to be able to talk to one another, and not only at the lowest levels. The promise of the Internet of Things is that the lights and the thermostat and the garage door can all collaborate to make your house more comfortable. Land use and transportation could be more efficient if cars and parking spaces — or people needing a ride — could find one another. Electrical supply and demand could be matched better if the different electrical appliances could talk to each other reliably to smooth consumption. And the whole system is likely to be better overall if each part works together no matter who made each device — just the way the Internet has grown and succeeded.
About a year ago, Dave Thaler and Hannes Tschofenig talked, at the IETF Technical Plenary, about architectural issues in the Internet of Things. A key theme there was the duplication and gratuitous difference arising from many organizations independently defining data models or schemas for each type of IoT device. For example, there were already many different definitions of what a light bulb was!
Facing this issue brought many people together — including but not only those who participate in the IETF, W3C, OMA, AllSeen Alliance, OCF, NIST, CableLabs, ZigBee, and ETSI. We convened at the IOTSI workshop in the Ericsson offices in Santa Clara, California. For two days, we tried to work out ways to improve semantic interoperability. How can diverse systems interoperate? Are better standards in information models or data models needed? Is a single framework necessary, or is some sort of mapping possible? What can you do when frameworks are formally incompatible? And what do we do about end to end security when intermediate security models are incompatible?
The really uplifting news from the workshop is that people from many different sectors of the industry all agree there is a serious problem to be solved. Some groups had already started developing common solutions for some things. But the level of information sharing across the group was quite encouraging. This is how interoperation works best: not by trying to impose a single model, but by people with different interests all recognizing a common problem.
There are security implications from all this, too. If different frameworks have radically different security models, then getting end to end security may be nearly impossible — especially if a translator is needed. In the presence of translators, data privacy will also be a problem. We recognized the challenge before us.
Of course, recognition is just a first step. We still need to get from that recognition to making Things work well together, at every layer. The workshop, and its results, will come in a workshop report — appearing soon in an Internet-Draft repository near you. But more important than the report are the follow-on activities. We agreed to start with a wiki to provide pointers to schema repositories as a first concrete step, with further developments to follow. We — in the IETF, in other SDOs, and in industry — have an opportunity to make interoperability in the Internet of Things the positive force that earlier Internet innovations were. Interoperation is what we do, so let’s do it again.
Dave Thaler, Member of the IAB, and Andrew Sullivan, Chair of the IAB