IEEE Hot Interconnects is the premier international forum for researchers and developers of state-of-the-art hardware and software architectures and implementations for interconnection networks of all scales, ranging from multi-core on-chip interconnects to those within systems, clusters, data centers and clouds. This year, Hot Interconnects was held in Santa Clara, CA from August 26-28. I’m grateful to the organizers of this year’s conference for inviting me to deliver a talk about Network Functions Virtualization (NFV). The talk was well received by the audience, which was more than 150 strong.
VMware was formed out of a Stanford research project to virtualize the x86 architecture, a difficult feat considering the complexity of x86 architecture. Over the past several years, both Intel and AMD have added support in hardware for virtualization extensions that helped improve performance and scale for hypervisors to support more workloads with higher consolidation ratios.
Today, about 75% of x86 server workloads run in virtual machines (VMs), primarily on data center infrastructure. NFV is about leveraging standard virtualization technology to consolidate network equipment onto industry standard high volume servers, switches and storage. This is a natural path of evolution for telecommunications companies like their move from circuit to packet switching, or from ATM and Frame Relay to MPLS and IP. NFV will allow telcos to be more agile to meet the rapidly increasing volume of wireless traffic fueled by mobile devices and over-the-top services, and enable them to offer differentiated services of their own.
NFV workloads, however, are different and more performance-demanding than typical IT workloads. As a result, it is tempting for telcos to use techniques like OS and hypervisor bypass to achieve maximum performance, sometimes overlooking the flexibility, agility, security and other benefits that hypervisors are uniquely positioned architecturally to provide. The desire to achieve maximum performance is sometimes misguided by using micro-benchmarks that are meaningless when translated to real NFV applications in a production environment.
In this talk I looked at a real-world use case of a telecommunications service and examined the trade-offs between performance and flexibility for NFV. I then outlined how the trade-offs can affect the overall system design. Finally, I provided my view of directions and put forth a call to action for solutions to address both goals.
You can see the slides from the talk here. Are there things you agree with? Or, are there areas where you disagree? I look forward to your feedback.