Thursday, September 5, 2019

The cloud and the network edge

There is so much talk about edge computing these days that it is easy to feel confused. There seem to be as many definitions as to what and where is Edge Computing as there are vendors and service providers.

While the amount and type of computing and its location are debatable, there is an element that I feel is missing in the discussion. For me, the edge of a cloud or a network is the closest point to the user / developer to provide a continuous and consistent experience. This notion of continuity is key, in my mind, to the definition of Edge Computing. After all, deploying a compute or storage capability at a remote location to provide local or decentralized service is not a novelty and can hardly qualify as edge computing.

The clouds' edges

Beyond compute and storage, connectivity is an equally important and often ignored component of edge computing. To provide a consistent and continuous experience, a provider has to control not only the routing but also the connectivity performance associated with its services. A cloud's performance is function not only of the raw compute capabilities, but also its geographic scale and the capability of the provider to deliver an homogeneous service across a variety of regions. This is why large cloud providers routinely flaunt not only the size and number of their data centers but also the dedicated network that physically connects them and guarantees cross-regional performance. Deploying data centers in a nearby location where you consume cloud services can have a radical impact on your user experience, as a consumer or a developper. This is why cloud providers tend to emphasize proximity.

Performance is not strictly related to physical distance though, or rather, it is more related to your physical distance to the peering point (where your internet service provider's backbone terminates and your cloud provider's starts) and the number of hops and devices your traffic has to go through. The distance might be relatively short, but if the traffic has to go through several peering points, or if the peering is unprioritized with the rest of the internet traffic, performance might vary dramatically.

A cloud provider is only able to measure and guarantee the performance of its "inner" network, up to where the traffic enters or exits its network to the internet. If we accept that an edge is the point at which a provider can deliver continuous and consistent experience, then the cloud's edge is certainly somewhere between these centralized data centers and the peering points. Beyond, as traffic enters the internet, performance is no longer guaranteed or controlled.

This is why we have seen Amazon, Google and Microsoft, lately, start discussing with network operators the possibility to deploy their edge in fixed and mobile networks. The value proposition is simple: let us deploy our mini data centers in your networks, so that we can provide the same cloud services your customers consume, with an enhanced performance due to the reduction of traffic transiting through unmanaged internet.

Each provider is looking at a slightly different positioning, ranging from Space as a Service, a fully managed infrastructure by the cloud provider, deployed in a telco data center, with a nominal revenue share on traffic and resource utilization, to a IaaS or PaaS do-it-yourself edge compute environment based on open source cloud computing tools. The business model is underpinned by the size of each provider's developer's community and their ability to monetize the investment through differential user experience. From their perspective, deploying their infrastructure in a telco data center is a natural organic expansion of their growth and they have trouble understanding the telco's resistance in accepting essentially free infrastructure that will generate new revenue streams quasi immediately.

The telco network's edge

While most telco providers have dabbled in cloud services, they have not been really successful at providing a convincing cloud offering, incapable of matching the geographical scale or the lifecycle development services of the traditional cloud providers.

Many see edge computing as a chance to re enter the cloud value chain, by providing a valuable performance enhancement based on an asset that is expensive and difficult to rival: their network capillarity. As 5G investments business case are being examined, it is clear that consumer retail market will be unlikely to justify alone the investment. Wholesale, IoT and B2B2x might be the key to sustainable growth. If 5G's promise is to deliver a substantially different user experience (not just more speed / volume, but different services with guaranteed performance), edge computing is going to be an important part of the deployment options.

Some bet that edge computing will be a market opportunity large enough that a new ecosystem can develop, with developers, providers and clients that can be distincts from the traditional cloud value chain. Their bet is that they can control that ecosystem if they define the infrastructure, the services lifecycle management and develop a platform for developers to deploy and consume edge services.

Burned to some degree by their experience with video caching - where telcos were too slow to identify the opportunity and accepted video providers' proprietary caches in their network in exchange for a revenue share that never materialized - Telcos resist the idea of deploying dark infrastructure in their networks that they won't be able to monitor, control or monetize.

This is why they tend to wait or actively work on a "standards" based edge computing ecosystem to develop; where they can buy and deploy cloud technology in their edge and offer PaaS or SaaS to developers.

The battle at the edge

It is understandable at this stage of market maturity that the different actors in the value chain try to capture as much control until a consensus is reached. I suspect that whether edge computing is more about cloud or more about connectivity could dictate the position of the actors in the resulting ecosystem.

Beyond adversarial positioning, there is certainly a hybrid approach that would merit investigation. While telcos are certainly struggling to create an edge computing infrastructure and platform that would offer a homogeneous experience to developers irrespective of the network or country at the same level as a cloud providers for years to come, it is also unlikely that cloud providers will have the appetite to operate and manage not few but thousands of data centers worldwide, if latency becomes a real competitive advantage.

From that perspective, there is surely an opportunity for collaboration, where cloud providers could contribute their cloud infrastructure, development and management tools and platforms as a a service to telcos that could assemble and operate them in their network, controlling access and utilization for their internal and own brand services, while allowing the cloud provider to sell their services in the same environment. An additional benefit would be in a deeper integration, allowing cloud providers to consume, operate and resell slices or QoE packages of their cloud services in the edge environment.

This scenario requires a little more openness on both side, and the understanding that it is unlikely that the edge battle can be won by a (category of) player alone.

I have been playing around over the last few years with telco edge computing, Amazon Outpost, Google Anthos and Microsoft Azure stack. There is a path to create a lot of value, but it requires a level of integration that goes beyond today's level of comfort of cloud and telcos. I bet the first collaboration of that sort will create a de facto standard in the industry and have a strong first mover advantage.