Docker containers are clearly transforming nearly every aspect of IT these days – and networking is no exception. At the DockerCon 2016 conference last week, Docker Inc. and many of its partners took steps to make networking more efficient while defining where Docker networking fits in with more traditional overlays.
Docker itself was focused on key networking elements of Docker 1.12, including built-in IP address management, load balancing, and service discovery as well as support for multihost networking.
“Because everything is built in, performance is much better,” says Madhu Venugopal, senior director of networking for Docker Inc. “It also scales better.”
Other notable attributes, according to Venugopal, include: support for what Docker describes as a router mesh capability that enables one container to take over the network from another; a control plane based on the gossip protocol that is more efficient in a container environment; and the elimination of the need for any external key value store.
The end result, says Venugopal, is a Docker network that is much more aware of Docker clusters and the services that invoke them.
At the core of this effort is a Docker network abstraction dubbed Container Network Manager (CNM) that creates a sandbox within a Docker container to process network requests. As a result, Venugopal says, Docker networking is an instance of software-defined networking (SDN) optimized for Docker containers. To make the CNM accessible to other networking environments, Docker has defined a network application programming interface (API) through which network overlays could be plugged into Docker networking.
But for all the benefits of Docker networking, many providers of SDN tools, such as network overlays, note that networks of containers are, by and large, just one more thing to be integrated into the larger enterprise.
For example, Wendy Cartee, vice president of product management and marketing for PLUMgrid, says there is a broad range of enterprise networking services that Docker applications will still need to invoke.
“There are a lot of networking services that Docker simply doesn’t provide,” says Cartee. “Docker applications will need to be able to access a broad range of enterprise services.”
In addition, Susan Wu, director of technical marketing for Midokura, notes that there are already multiple container orchestration frameworks that IT organizations will need to support. In fact, the Kubernetes orchestration framework developed by Google is currently more widely used than the Docker Swarm cluster, in which Docker CNM is embedded. Apache’s Mesos framework is also starting to find support among larger enterprise IT organizations as an alternative to both Kubernetes and Docker Swarm.
“We’re developing support for multiple types of container clusters,” says Wu. “We’ll be supporting Kubernetes, and we also see some traction around Mesos.”
Weave networks is a container networking company that supplies networking tools that support Docker, Kubernetes, and other container management platforms, including Amazon Web Services (AWS). Last week, Weave announced the public beta of Weave Cloud, which allows the visual monitoring and management of networking between container systems. The company also announced Weave Net 1.6, part of Weave Cloud, which adds native Docker container network integration with AWS’s Virtual Private Cloud (VPC).
From the many announcements, it’s clear that the container networking ecosystem is starting to get fleshed out. It’s too early to say how much adoption of Docker Swarm and, by extension, Docker networking there will ultimately be. Docker is essentially trying to stack the orchestration deck in its favor by embedding Swarm in Docker Engine. This was one of the themes of DockerCon, as potential customers and partners alike have been weighing the market power of Docker.
As a result, it’s almost a certainty that Docker networking software will be taking its place alongside a constellation of additional SDN and container networking offerings that continue to proliferate across the enterprise.