The Internet and the Edge
The intersection of two emerging technologies, and what it means for the future of computing.
The machines are taking over. Estimates vary, but the major analysts agree that the number of "connected devices" now outnumbers humans. Machines talk more to one another than they do to us, and this reality is changing the IT industry.
The Internet of Things (IoT) is the current buzzword for machines that mostly—or exclusively—talk to other machines. And everyone wants in on IoT. Readers might remember Microsoft recently updating its IoT version of Windows 10, or the creation of the VMware Pulse IoT Center, a solution aimed at making it easier to manage IoT infrastructure.
Amazon even makes programmable IoT buttons. These Internet-connected buttons have been used to create Amazon Dash buttons that order toilet paper at the push of a button, remote control Netflix, control house automation and even integrate with social media.
All of these, you should note, are in some way a platform. The IoT version of Windows 10 used to be Windows Embedded, and is pretty pointless without someone writing applications for it. VMware Pulse is a framework to manage IoT infrastructure, but the IoT devices and applications need to be coded to use that framework.
Even the Amazon buttons are a platform, connected to Amazon public cloud services. Some even buy things off of Amazon's store. The IoT is more than just an endless series of platforms, however, and the framework wars are a very small piece of a much larger puzzle.
Thinking for Themselves
IoT devices don't need a human to be relevant. While Amazon buttons are an easy-to-understand example of a simple IoT device, they're very much an IoT edge case in that they directly require interaction with humans.
Most IoT device interactions with humans will be—at best—quite limited. Consider a connected vertical farm's irrigation system. The irrigation system could consist of hundreds of sensors and thousands of sprinklers. The most interaction this system might have with humans would be to determine if one was nearby so as not to spray them.
An IoT irrigation system might need humans to manually input data about which crops were near which sensors and sprinklers. Alternately, that data might just as easily be provided by RFID tags on plant containers, allowing the system to adjust its irrigation pattern automatically.
This sort of independence can be painstakingly programmed into various IoT solutions; however, it's increasingly being handed off to Bulk Data Computational Analysis (BDCA) tools. BDCA tools cover technologies like machine learning (ML), machine vision (MV), artificial intelligence (AI), business intelligence (BI), voice recognition and other forms of automated analytics.
These tools have allowed the creation of independent machines capable of doing complex tasks better than their human counterparts. A great example of this is the STAR prototype robotic surgeon.
While not yet commercialized, it isn't hard to picture a future version of the nascent IoT surgery bot being used to help with basic suturing tasks in a busy veterinary clinic or overburdened emergency room. With the assistance of some of the emerging BDCA-backed machine diagnosis tools, simple procedures like getting stitches might be handled by an autonomous machine in the corner of your local pharmacy.
At Cloud's Edge
Autonomy like this isn't easy. Even with the most advanced BDCA tools available, machine decision making is a computationally intense endeavor.
When machines don't have the compute capacity to make these decisions using their own resources, they'll have to ask other machines to help. This occurs today. Numerous BDCA tools are offered in the core datacenters of the public cloud.
Digital assistants like Siri, Cortana, Alexa and Google Assistant all farm their voice recognition out to the public cloud. Security systems do the same with facial recognition.
While this works for a number of use cases, in others the core datacenters of the public cloud are just too far away. Latency sensitive workloads need decision-making capabilities located more geographically close to the devices requesting services. The solution to this problem is the emerging branch of the public cloud known as edge computing.
There's some thought that fully autonomous machines could rely on edge computing. A robot capable of identifying a hand that needs suturing and performing the basic mending might be one such example. If something untoward happens to the network, the worst-case scenario is that your wound is partially stitched up. The robot could easily have enough local compute capacity to cut the thread and inform you that you need to hustle over to an emergency room.
Other proposed edge workloads are less straightforward. Some propose to have all driverless cars in a given area stream their sensor data back to an edge datacenter replete with BDCA tools. This datacenter would in turn be able to crunch the sensor data from all vehicles and send back information that helped optimize traffic flow and allow cars to see around corners.
In the case of an autonomous car, edge computing wouldn't replace all machine decision-making capabilities. For very good reasons, cars will need to be able to make a number of decisions using their own local compute power. What it will enable is a group of cars to make better decisions than any one car could on its own. Machines talking to machines, and now machines making decisions collectively.
Edge computing is still mostly a theoretical concept. Very little edge infrastructure exists. This is in part because much of it will rely on the hyperlocality capabilities of 5G mobile networks. The relative dearth of commercial devices requiring low-latency machine decision making also plays a role.
Lest anyone be tempted to presume that autonomous machines requiring low-latency decision making and the edge are doomed to spend eternity in a chicken-and-egg holding pattern, there are use cases that are already driving build-out of edge infrastructure where possible.
Most of the use cases driving IoT and edge computing uptake involve tracking things. Big Brother is big business, and there's money to be made tracking people through schools, prisons, airports, shopping malls and other public buildings. There's also good money in tracking packages and various high-value assets.
A more benign IoT-plus-edge use case might involve doing facial recognition on people entering a store, then tracking them as they move about. Displays could be altered to offer sale prices on items in categories that such an individual has shown interest in. Similarly, if they're looking interested in clothing that isn't currently in stock in their sizes, the computer could offer to ship one to their home.
On the more disconcerting end of the spectrum are the peekaboo drones and related technologies. These use radio waves to see through walls. They could potentially combine this with advanced BDCA tools and various databases to identify individuals and do various forms of behavioral analytics on them.
The Demand Dilemma
Low latency machine decision making has the potential to drive demand for edge computing beyond any realistic ability to deliver. There are reasons the core datacenters of the public cloud live where they do; when you measure your compute in acres, the middle of built up cities are not financially viable locations for your bit farm.
Fortunately, the problem of packing a whole lot of decision making into ever-smaller footprints is the official sport of nerddom. All the major public cloud providers are offering GPU-enhanced compute instances at the core, and these will surely be standard fare at the edge, as well.
Furthermore, public cloud providers have begun augmenting their BDCA tools with field-programmable gate arrays (FPGAs) and custom silicon such as ASICs. Google has custom ASICs it calls Tensor Processing Units (TPUs). These are used for BDCA projects using TensorFlow. Many other vendors are following suit. There's even custom BDCA silicon in the latest iPhone.
ARMing the Masses
No IoT discussion should be had without mentioning ARM. The overwhelming majority of IoT devices is projected to be reasonably low-power sensors and other low-duty computers. CPUs based on ARM designs are the de facto standard for this market.
ARM is relevant for more than just its ubiquity in the IoT space. ARM has taken note of the fact that IoT and embedded device security has typically been beyond appalling. The company is also aware of the pull it has as a key vendor for the IoT space, and it has decided to do something about it.
ARM is attempting to bring order to chaos by providing vendors with the tools they need to rationalize and properly support the products they sell. Among these efforts is the ARM Mbed cloud. The company is also writing a free BIOS for IoT devices that incorporates device identity, authentication, trusted booting and automatic updating all at the firmware level.
The Mbed cloud is essentially a mobile device management platform for IoT devices. It's designed for manufacturers to manage and update millions of IoT devices that they'll sell to customers. The free ARM bios will feed into the Mbed cloud.
In addition to this, the increasing role of ARM in the datacenter is relevant. As machine-to-machine communication becomes more dominant, there will increasingly be a need for low-power workloads that do nothing but listen for mostly idle IoT devices. ARM can serve IoT devices from the datacenter side, too, because low power and efficient is what they do.
Trust is a critical consideration for the public cloud and for IoT. IoT devices are by definition connected devices. Almost all of them rely on a public cloud service in one way or another.
Unfortunately, as tempting as it is to think of the services offered by the public cloud in the same way we think of electricity or running water, the public cloud is not a utility. Utilities are regulated. Cloud computing is not. Service Level Agreements (SLAs) are largely meaningless, and the recompense offered for failures to live up to SLAs is almost universally a joke.
The public cloud, and all of the services that hang off of it, is essentially trying to sell Trust as a Service. As individuals and as organizations, we are increasingly offloading more and more of our daily tasks—and even our decision making—onto public cloud-reliant services. When someone violates that trust, it can be nearly impossible to regain.
Consider for a moment the trust issues surrounding telemetry. Insurance companies want all the telemetry from your car. If you drive poorly they can increase your rates, or even refuse to serve you altogether. In some jurisdictions this is encouraged. In others less so.
Consider the trust issues if you discovered that all your driving data—or perhaps your Fitbit data—were sold to insurance companies without your say-so. Would you continue to buy devices or services from the vendor that did that?
How would you feel if the recipient of your data were a law enforcement agency, instead of an insurance company? What about schools being able to pull data on students to determine if they leave the school grounds? Perhaps your opinion changes if we talk about post-secondary institutions verifying the after-hours activities of their students or faculty?
Stricter data regulation, such as the General Data Protection Regulation (GDPR), is making this sort of institutionalized data piracy illegal; for citizens of some countries, at least. Even then, the Internet is a big place, and the chain of data custody between IoT device, public cloud provider, vendor and customer can pass through many organizations in many different jurisdictions.
Trust remains a concept that many technology vendors only pay lip service to. As machines track us everywhere, see everything we do and silently judge every action we make, long-term success in the IoT world will rest on creating and nurturing trust.
Dell's Billion-Dollar Bet
Dell Inc. is an example of an old school tech titan that believes in IoT. The company has created a brand-new IoT division, tapping VMware executive Ray O'Farrell to run it, and kick-starting it with a billion-dollar startup fund.
Dell's new IoT division includes R&D, a bunch of market research and business development nerds, and a budding partner program. Dell isn't just looking to create a new internal bureaucracy to sell the solutions it makes today under a new marketing banner. Dell is looking for new ideas that will allow it to bring its system design and integration expertise to bear on the unique challenges faced by machine-to-machine communication.
Who knows what technologies Dell could develop? Channel partners searching for continued relevance will certainly be hoping Dell comes up with a reason for that partner program to exist.
Dell seems to be interested in bringing technologies from Pivotal into the fold, indicating that there will be a focus on microservices, composable workloads and event-driven computing. This makes perfect sense, as these workloads are ideal for the subscription-focused nature of public cloud computing, and most of the new software developed for IoT back-ends will be developed for the public cloud.
Perhaps the most important asset Dell has regarding IoT is RSA, the security company. Building trust requires attention to security, privacy and data sovereignty. RSA provides Dell a great deal of credibility in this area.
One early measure of Dell's progress in this area is Project Worldwide Herd. Worldwide Herd is aimed at enabling organizations to "[perform] analytics on geographically dispersed data."
If done properly, Worldwide Herd will do more than synchronize datasets from different geographical regions and crunch this in a core datacenter. It will do the data crunching locally, or even hyper-locally, never requiring the data processing to be executed in a different jurisdiction than the location of the data subject.
Keeping data local helps organizations avoid legal entanglements. The results of BDCA passes on data sets can then be shared, as long as the source data is sufficiently anonymized in the report outputs and cannot be de-anonymized. If Dell works on developing this technology—especially if it extends it to the edge—it will have started solving real-world regulatory compliance issues related to public cloud and IoT use that other vendors seem to have no interest in addressing.
Practical IoT Security
The many links in the chain between physical device and consumers of aggregated data can make IoT security difficult. An individual IoT device can be compromised. The IoT gateway or VMware Pulse-like IoT infrastructure management platform can be compromised.
Any of the many and varied communications channels involved can be monitored or otherwise interfered with. Services providers can be hacked, subject to secret law enforcement orders, corrupt and selling your data to the highest bidder, and so on. Your data could be copied to a thumb drive and left on the bus. It happens.
As the customer consuming an IoT solution, you may or may not be able to affect any of this. Maybe your vendor offers regular updates for your devices; most likely they don't. If they do, that's probably all automated and something you can't influence.
Maybe you can do something to provide a more secure communications channel between the device and the cloud service, maybe you can't. Maybe your vendor offers an on-premises means to control all your IoT devices; most likely they don't.
In practice, customers have a very limited ability to engage with IoT security. Where possible it's strongly encouraged, but for the most part the customer's primary leverage is their wallet.
Research the vendors involved. Understand their data policies. If you're feeding any data about European citizens into your IoT devices, then as of May 2018 knowing exactly how third parties handle and process that data—and getting the explicit permission of your customers to do so—is the law.
If you can't find this information out, your best security measure is to abandon those IoT devices and find a vendor that plays ball.
For Good or Evil
For all the good that IoT devices can do, they can also be used for evil. The BDCA tools that make IoT ecosystems practical, for example, absolutely can be used by the bad guys against us.
Peekaboo tech startups, for example, would like consumers to think of their use in terrorism prevention, police manhunts or looking for "shifty" characters in airports or at concerts. They want everyone to focus on how this technology could be used to save lives.
On condition of anonymity, however, at least one developer working for a peekaboo drone startup has expressed concern that the technology could be used by repressive regimes to hunt for those deemed to be engaging in antisocial behavior.
We're some distance away from that yet. Even if all the BDCA tools necessary for such draconian behavioral analysis were written, someone would have to host those tools and make them available as a service. Others would have to build the edge infrastructure to make it feasible and then train regimes in their use.
While it's never a good idea to underestimate anyone, the technologies involved are still nascent, and there remains hope that technology companies would have some limits about the purposes to which their services are put. At the moment, the skills required to build the underlying BDCA technologies that empower IoT devices are still exceedingly rare. For the foreseeable future, there's greater profit to be made in more traditional commercial endeavors.
The IoT is set to drive the future of the datacenter, the public cloud and even the public cloud itself. Along for the ride will be human interface technologies like augmented reality (AR) and virtual reality (VR).
AR will take advantage of IoT devices scattered to and fro to create data overlays. These augmented views will allow us to obtain additional information about the real world. More important, thanks to social anti-malware, AR will help us to separate the truth about reality from the barrage of disinformation that the Internet has become.
VR will most likely intersect with IoT in the form of telepresence. With enough IoT devices, one could take a virtual stroll down a public promenade, then "walk into" a store. Once in the store, instead of simply seeing the world through a series of public cameras, one could inhabit a telepresence robot long enough to accomplish required interactions and then return to haunting the promenade while window shopping.
The ultimate evolution of the IoT would be Neuralink. This is a machine that can automatically interpret and translate the unbelievable complexity of human thought. This could be used for direct neural control of machines, but the ultimate goal is enabling true brain-to-brain communication.
At the moment, Neuralink technology remains deep in the future, but the goal informs the journey. Human beings are constantly seeking to offload tasks onto computers. Not content with merely asking machines to do our math, we're asking them to drive us, heal us, spy on us and—one day—to help us more accurately and completely communicate with one another.
We don't merely seek to create machines that do what we do. We don't seek to replace ourselves with silicon and steel. We seek to augment ourselves; to compensate for our weaknesses with newfound technological strength. We wish to become more than we are, to accomplish great things, learn more completely, express ourselves more accurately and succeed more thoroughly than any generation that has ever gone before.
The IoT is exactly this. It is the true merging of man and machine. Previous generations built systems of roads, great waterworks and planetary telecommunications systems. Ours is creating an Internet of billions upon billions of machines. The scope of and scale of it are unprecedented.
I wonder what we'll do with it all.