By Ricardo Anguiano
Imagine 1 trillion connected Internet of Things (IoT) devices. How close are we to this future, and what will it take to get there?
The semiconductor industry is expected to ship one trillion devices in 2018, and I expect that many, but not all of those devices, will be connected devices. If you count all previously manufactured connected devices, I believe we have already crossed the 1 trillion connected device milestone, even if the devices predate the idea of an IoT and don’t use IoT protocols or cloud services.
For anyone interested in building, deploying and maintaining IoT devices and their own IoT device fleet, there are a few things to understand about our evolving large-scale connected device future.
IoT devices challenges
Our industry does not make it particularly easy to build connected device solutions that solve real problems. There is too much specialty knowledge required, and mistakes are too easy to make, even for experts. Our development tools and methods are still too primitive and our development culture does not yet fully embrace maintainability, readability and correctness. Perhaps we should look to development communities that embrace these ideals out of necessity. Financial trading software developers, for example, are motivated to write better software out of the existential threat of large financial losses. Yaron Minsky, Head of Technology at Jane Street Capital, put it bluntly:
“There is no faster way to light yourself on fire than to make the same stupid trading decision over and over again in a tight loop. You can easily burn through all your money really, really fast. It is terrifying to write software that directly interacts with the market. We are very scared about that and have been for a very long time. We have put a lot of energy into writing correct software.”
The severity and immediacy of failure in the financial software industry does not translate into other industries and problem spaces, leaving us all exposed to persistent privacy, security and safety problems. Software containing these sorts of dormant defects gets deployed with alarming frequency, and the scale of our IoT deployments will only exacerbate these problems. We must do better.
Just as important as IoT device development is maintenance. The larger your IoT fleet, the more you will realize that your IoT fleet is a distributed system, and distributed systems operate in a permanent state of degraded service for a variety of reasons that become exacerbated at scale.
Our present and future world of a trillion IoT devices will be heterogeneous, built organically over time from a mix of different semiconductor vendors, operating systems, middleware stacks, application vendors, protocols, network providers and local and remote cloud services.
A well-managed IoT fleet will require secure boot mechanisms, protection against physical and network intrusion, device and network monitoring, lifecycle management including secure updates, and a plan for retiring the device at end of life. In many ways, we will find that much of what we see in well-run enterprise networks will apply to IoT fleets.
There are plenty of critics of the IoT as it exists today, and rightfully so. If this industry is going to help solve real problems at scale with connected devices, and really reduce the frequency and severity of privacy, security and safety incidents, we must do two things:
- Make it easy for IoT device developers to build them right
- Make it easy for IoT fleet managers to maintain it right.
(Ricardo Anguiano is a technical marketing engineer for Mentor, A Siemens Business).