Hyper-NF: synthesizing chains of virtualized network functions

Abstract

Middleboxes are essential to the functioning of today's internet. They are for instance used to secure networks, to enhance performances (e.g., throughput, scalability or end-user latency) or to monitor traffic. Although middleboxes are usually deployed through expensive dedicated hardware, the past 15 years has seen the emergence of a new paradigm: network function virtualisation (NFV). In the NFV context, middleboxes are implemented in software on commodity hardware, thus reducing costs and increasing flexibility. Some of the most recent work even boast performances that are equals to those of hardware middleboxes (e.g., line-rate throughput). However, none of the frameworks that we could find were suited to implement chains of virtualised middleboxes. Indeed, it is often the case that a packet must cross numerous middleboxes when traversing the internet. In order for an NFV deployment to scale out and reduce the network overhead, one would wish to be able to deploy all these middleboxes on the same physical machine. We provide an evaluation of a state-of-the-art NFV framework that shows that the throughput of a chain of 8 middleboxes running on the same server can be as much as 5 times smaller than the throughput of a single middlebox. We then introduce Hyper-NF, a new NFV framework specifically designed for implementing chains of virtualised middleboxes. Hyper-NF eliminates redundant packet and I/O operations. Given a chain of middleboxes, it uses graph search and set theory to generate a single equivalent middlebox that only uses one read and one write operation per packet. Experimentation with middlebox deployments inspired from real-world use cases shows that Hyper-NF achieve constant throughput and latency despite the increasing number of chained middleboxes. Thus, it achieves considerably better performances than traditional deployments. On a chain of 8 virtualised middleboxes, Hyper-NF has a 5 times higher throughput, a 10 times lower latency and uses 8.5 times less CPU cycles per packet.Middleboxes är absolut nödvändiga i internet idag. De behövs för att säkra nätverken, för att förbättra prestanda (till exempel genomströmning, fördröjning eller skalbarhet) eller för att övervaka nätverkstraffik. Middleboxes brukar vara byggd med dyrt och dedikerad hårdvara men ett nytt paradigm utvecklades in senaste åren: virtualisering av nätverksfunktioner (en: Network Function Virtualization - NFV). I NFV, middleboxes skaffas av flexibel mjukvara på billig råvara hårdvara. Några aktuella ramar även ger samma prestanda som hårdvara middleboxes (t.ex. genomströmning med linjehastighet). Denna ramar är dock inte lämpade för att genomföra kedjor av virtualiserade middleboxes. Ett nätverkspaket måste ofta gå igenom många middleboxes när det korsar internet. Därför skulle det vara bättre att utplacera flera virtuella middleboxes på samma maskin. Så skulle man minska belastningen på nätverket och NFV-utplacering skulle kunna skala ut. Vi visar att även med en state of the art NFV-ram, genomströmningen av en kedjor av 8 middleboxes som körs på samma dator är 5 gånger mindre än den av en enda virtuell middlebox. Vi introducerar Hyper-NF, en ny NFV-ram som vi speciellt utformade för att genomföra kedjor av virtualiserade middleboxes. Hyper-NF eliminerar redundanta I/O och pakets verksamhet. Det förvandlar en kedja av middleboxes till en enda middlebox med liknande funktionalitet genom mängdteori och graf sökning. Den producerade middlebox använder bara ett läs och ett skriv operation per paket. Vi testade Hyper-NF med middlebox-utplacering som inspirerades av verkliga användningsfall. Hyper-NF uppnår konstant prestanda (genomströmning och fördröjning) även om vi öka antalet middleboxes i kedjan. Det är alltså betydligt bättre än traditionella ramar. På en kedja av 8 virtualiserade middleboxes har Hyper-NF en 5 gånger högre genomströmning, en 10 gånger lägre latens och använder 8,5 gånger mindre CPU-cykler per paket

    Similar works