Delivering enough computing power to resource-intensive edge devices is challenging, but organizations can use cloudlets to place hosted services where they're needed.
A cloudlet is a small-scale data center located at the network's edge that uses virtualization to provide cloud computing services for mobile or IoT devices, such as smartphones, tablets, sensors or monitors. The purpose of cloudlets is to deliver hosted services in close geographical proximity to the devices that need them, which eliminates the need to connect to an application over a wide-area network (WAN).
Cloudlets serve as extensions to centralized cloud infrastructures, and they provide an intermediary platform that supports interactive and resource-intensive applications, as well as any other types of applications that benefit from the lower latency rates closer proximity offers. By using cloudlets, organizations can significantly improve the response times between devices and hosted applications.
Cloudlets are especially beneficial for applications based on technologies that require devices to off load their computational processes to more powerful systems, such as machine learning, speech recognition, virtual reality, augmented reality and language processing.
Devices that communicate with a cloudlet over a high-bandwidth private wireless network can connect seamlessly to the hosted applications. This structure, combined with the close proximity, makes it possible to deliver applications that support real-time interactions. Organizations can keep latency rates to a handful of milliseconds. By using cloudlets, organizations can maximize the transaction rates between devices and applications to a degree that far exceeds the capabilities of centralized cloud infrastructures.
Differences between cloudlets and other cloud infrastructures
Although the cloudlet is based on cloud technologies and shares many of the same characteristics, it differs in several important ways. For example, when organizations subscribe to a public cloud service, they pay the vendor to deploy and administer the platform that supports those services. With cloudlets, organizations must implement and manage their own infrastructures or hire consultants to do it for them.
Additionally, a public cloud serves a larger number of users than a cloudlet, and those users connect to the services over the internet or other WANs. With a cloudlet, there tend to be fewer users and they connect over a private wireless network. Cloudlets are also generally limited to soft-state data, such as application code or cached data that comes from a central cloud platform
In some ways, cloudlets are more like private clouds than public clouds, especially when it comes to self-management. With both cloudlets and private clouds, organizations deploy and maintain their own environments and determine the delivery of services and applications.
Cloudlets also limit access to a local wireless network, whereas private clouds are available over the internet and other WANs to support as many users as necessary -- although nowhere near the number of users public clouds support. The private cloud theoretically serves users wherever they reside, whenever they need and from any device capable of connecting to the applications.
In contrast, cloudlets are specific to mobile and IoT devices in close proximity. As a result, applications running on a cloudlet don't experience the same latency issues the private cloud might introduce. On the other hand, the private cloud isn't limited to soft-state scenarios, which means it works independently of other cloud infrastructures.
Cloudlets differ from virtual private clouds (VPCs) in much the same ways they differ from private clouds. Users don't have to be in close proximity to a VPC, and they can connect over the internet from many types of devices. Cloudlets, however, provide lower latency rates and a better overall user experience.
Another difference between VPCs and cloudlets is that public cloud providers run VPCs as dedicated services. Although this offers an organization more control and resources than a public cloud, VPCs are still part of the public cloud infrastructure. As a result, organizations don't have complete control over their environments or the available options. Organizations that deploy a cloudlet control all the aspects of implementation, management and security.
The role of virtualization in cloudlet architecture
Despite the differences between cloudlets and other cloud infrastructures, one characteristic they all have in common is the important role server virtualization plays in delivering resources. A cloud infrastructure typically uses a hypervisor to abstract compute resources and presents them as VMs.
Cloudlets can use virtualization to better utilize compute resources, isolate workloads, manage operations and secure applications, which enables the delivery of scalable, on-demand resources that are logically separated from the underlying physical components.
Traditional server virtualization isn't required to create cloudlets. Some environments rely on containers or serverless architectures to deliver resources, both of which bypass the hypervisor altogether.
Although this approach helps avoid some of the overhead that comes from running a hypervisor, cloudlets lose some of the advantages server virtualization offers. For this reason, many cloudlet proponents view virtualization as an essential ingredient to effectively delivering resources.
What's the future of cloudlets?
Although researchers have discussed cloudlets for several years, the industry is still catching up. Widely accepted standards and definitions are still emerging.
The Open Edge Computing Initiative, a collective effort by Carnegie Mellon University and several large tech companies to drive open standards for edge computing, is the source of some of the most significant developments. An important component of this effort is the OpenStack++ project, which provides extensions to the OpenStack platform to support cloudlets and enable features such as VM handoff, cloudlet discovery and just-in-time provisioning.
The increased focus on IoT and edge computing, along with the ever-growing proliferation of mobile devices, positions cloudlets as an inevitable outcome of the cloud's steady march forward, and virtualization is an essential component to its success.