Containers are a new technology that significantly affect IT and network application development. The increased...
adoption of containers alters software-based networking requirements and offers service providers new options to virtualize their networks via network functions virtualization, or NFV.
A container is a lightweight, stand-alone software package that provides virtualization at the operating-system level to deploy distributed applications. Instead of launching a virtual machine (VM) for each application, multiple isolated systems -- or containers -- are run on a single control host and access a single kernel. Container technology is available via open source and from a number of suppliers, among them Kubernetes, Docker, Canonical Ltd., CoreOS, VMware, Hewlett Packard Enterprise, Dell, Red Hat and others.
The advantages and benefits of containers
Containers provide server virtualization and application portability without the overhead associated with a hypervisor. The benefits of containers -- compared to hypervisors -- include the following:
- Improved application performance;
- Greater density of containers per server;
- Improved application portability, like with hybrid cloud; and
- Faster spin-up and spin-down of dynamic application capacity.
Container networking requirements and deployment
Software-based networking -- e.g., SDN -- is a critical component of container adoption. The sheer number of individual containers on a server, application portability and changing traffic patterns require new networking capabilities to support containers.
Distributed microservices at scale can create a tremendous volume of network traffic between individual containers; a leading concern is the potential increase in east-west traffic in the data center and even between container-based applications within a single server. Key challenges for networking containers include performance, automated provisioning of appropriate network resources, visibility and network management.
Network security is another issue. Containers solve some security concerns, like isolation, but may create other unknown vulnerabilities. Some current security technologies will easily support the migration to containers, while others may not. Networking can be built into container software or provided by third-party network software, such as Cumulus Networks, Pluribus Networks, 128 Technology and Big Switch Networks.
Containers are currently being deployed by a small number of cloud service providers and enterprises -- typically by their development teams for new applications. IT teams report significant performance and flexibility benefits with containers when they are deployed with applications architected as microservices. Many enterprises eventually migrate from container use in development environments to high-volume production environments due to maturity, scalability and networking issues.
How containers affect NFV
Service providers are just starting to investigate the benefits of containers for their network-based applications -- like NFV -- via initial trials and proofs of concept. Service providers are evaluating container technology for a wide variety of potential network applications, including virtual customer premises equipment, 5G wireless, video, and network monitoring and management.
In order to capitalize on the benefits of containers, the vast majority of network applications will have to be rewritten. As with the case in the migration to hypervisor-based virtualization, leading independent software vendors and network equipment providers will need to spend significant time and effort to rearchitect and potentially decompose their applications to benefit from container-based architectures.
Containers are an emerging technology that affect IT development and related networking requirements. IT leaders should investigate the potential benefits of containers as they develop new cloud-native applications. Service providers should evaluate containers as their next-generation platform for NFV.
Enterprises and service providers need to be cognizant of potential networking, scalability and security challenges as they deploy containers. It's also important for these businesses to evaluate which applications truly benefit from containerization as they move to a world where legacy applications, VM environments and containers must all be supported.
Check out these four container tips
Match your container network to your enterprise model
How container networking correlates with SDN