everythingpossible - Fotolia

What is a service mesh, and how does it relate to networking?

A service mesh can ease the deployment of microservices and container-based applications, while supporting the delivery of network services, like load balancing and authentication.

Many companies have recently announced the introduction of a service mesh, which raises the following questions: What is a service mesh, and why is it important?

A service mesh is designed to enable communication -- or networking -- between distributed microservices, which is also typical for modern applications that run on containers. It provides the abstraction and intelligence to simplify the deployment of microservices and container-based applications.

A service mesh is an infrastructure layer of software that abstracts networking services to provide reliable and fast communications between microservices. Its networking features include application identification, load balancing, authentication and encryption.

Network requests are routed between microservices via proxies that run alongside the service, but aren't embedded within the service. These proxies, sometimes called sidecars, form a mesh network to connect the individual microservices.

Typically, a central controller provides the intelligence to orchestrate the connections within the service mesh. The controller provides access control, network and performance management, and it integrates with container software, such as Kubernetes.

Service mesh architecture and sidecars
A service mesh uses proxies, or sidecars, to connect individual microservices.

Importance of a service mesh for microservices and containers

Service mesh is a new, software-centric way to deliver network services to distributed, container-based applications.

The introduction of containers and microservices applications in the data center creates new network requirements to optimize the east-west traffic between microservices, including authentication, routing, load balancing and performance monitoring.

Service mesh is a new, software-centric way to deliver network services to distributed, container-based applications. Containers and microservices applications -- and their developers -- need logical isolation from the complexity of network routing and security requirements. The abstraction provided by a service mesh enables rapid and flexible deployment of microservices independent of the physical network. 

Service mesh suppliers

Many application delivery controller suppliers have announced -- or will soon announce -- service mesh capabilities. Other software networking suppliers and startups also provide service mesh software.

Companies to watch include Avi Networks, Citrix, Nginx, VMware, Bayware and Kemp Technologies, among others.

Dig Deeper on Network infrastructure

Unified Communications
Mobile Computing
Data Center