A network virtualization platform decouples the hardware plane from the software plane such that the host hardware plane can be administratively programmed to assign its resources to the software plane. This allows for the virtualization of CPU, memory, disk and most importantly network IO. Upon such virtualization of hardware resources, the platform can accommodate multiple virtual network applications such as firewalls, routers, Web filters, and intrusion prevention systems, all functioning much like standalone hardware appliances, but contained within a single hardware appliance. The key benefit to such technology is doing all of this while maintaining the network performance typically seen with that of standalone network appliances as well as enabling the ability to administratively or dynamically program resources at will.
Server virtualization, a technology that has become mainstream, originally gained popularity when VMWare entered the market in 2001 with its GSX server software. This technology gave IT organizations the ability to reduce the amount of rack space required to accommodate multiple servers and reduced the cost of powering and cooling data centers by consolidating server based applications onto a single piece of hardware. One of the problems with server virtualization is in how applications are networked together. Within a server virtualization environment, applications are interconnected by what is referred to as a virtual switch, which is very different from high-performing hardware-based network switches offered by the likes of Juniper Networks and Cisco Systems. Virtual switches are software-based switches and rely on the movement of packets up and down a software stack which relies on the same CPUs which are being used to drive the applications. Because of this software approach to switching, networking applications such as firewalls and routers, which require high levels of throughput and low levels of latency, were not ideal to operate within a server virtualized environment, while applications less sensitive to throughput and latency such as email and file sharing were ideal.
Network virtualization initially became a term that described the separation of the control plane and the forwarding plane (management and packet transmission) within networking devices such as switches but has started to become a term that not only describes that but also describes the separation of the software and hardware of the networking application as well. It has quickly become a term that describes the totality of virtualizing a network that includes how the network is programmed, administered and deployed, be it hardware or software and management and packet transmission.