Prestatieanalyse van eBPF/XDP voor DDoS-mitigatie in gevirtualiseerde infrastructuur

DDoS-aanvallen op gevirtualiseerde omgevingen mitigeren met eBPF en XDP

Een DDoS-aanval (Distributed Denial of Service) is een poging om computerinfrastructuur te verstoren. Bij zo’n aanval stuurt een verspreide groep computers netwerkverkeer naar één doelwit. Doen er genoeg computers mee, dan raakt het doelwit overbelast en kan het het verkeer niet meer verwerken. Legitiem verkeer wordt dan ook niet meer goed afgehandeld. Een belangrijke maatstaf is hoeveel inkomende packets per seconde (pps) een systeem aankan voordat het packets laat vallen. Er bestaan verschillende strategieën voor packet processing, elk met eigen voor- en nadelen.

Dit onderzoek ging na of eBPF/XDP inkomende DDoS-aanvallen in cloudomgevingen kan mitigeren.

Cloudomgevingen en virtualisatie

Cloud staat voor servers die een derde partij beheert, zodat bedrijven resources huren in plaats van een eigen datacenter te draaien. De provider beheert en onderhoudt de servers voor zijn klanten. In cloudomgevingen wordt virtualisatie gebruikt om klanten van elkaar te scheiden en resources efficiënter te verdelen.

Gevirtualiseerde omgevingen hebben specifieke optimalisaties nodig om het guest-besturingssysteem (OS) maximale snelheid en throughput te geven. Een daarvan is VirtIO, een standaard voor netwerk- en schijfdrivers die weten dat ze in een gevirtualiseerde omgeving draaien. Deze techniek, para-virtualisatie, verbetert snelheid en throughput doordat de drivers zijn aangepast aan de gevirtualiseerde omgeving.

eBPF en XDP voor snelle packet processing

Een programma moet vaak iets met hardware doen, zoals schrijven naar storage of netwerkpackets ontvangen. De Linux-kernel handelt deze verzoeken aan hardware af via system calls. System calls belasten het systeem en verlagen de totale prestaties.

Met eBPF, de extended Berkeley Packet Filter, draaien programma’s op kernelniveau zonder dat de broncode van de Linux-kernel hoeft te worden aangepast. Dat verbetert de prestaties, omdat eBPF-programma’s hardware direct kunnen benaderen zonder onderbreking door system calls.

Alleen een eBPF-programma draaien is niet genoeg voor snelle packet processing. XDP (eXpress Data Path) voegt een hook toe in de driver van de netwerkkaart (NIC). Zo verwerkt het eBPF-programma packets direct zodra de NIC ze ontvangt, buiten de netwerkstack van de kernel om. Dat maakt packet processing aanzienlijk sneller.

Relevantie voor DDoS-mitigatie in gevirtualiseerde omgevingen

DDoS-aanvallen worden steeds groter, dus infrastructuur moet steeds meer packets verwerken om kwaadaardig verkeer effectief te laten vallen. eBPF in combinatie met XDP is een bewezen techniek waarmee systemen aanzienlijk meer packets verwerken dan met traditionele packet processing in de Linux-kernel. Infrastructuuraanbieders, zoals internetproviders en serverproviders, stappen steeds vaker over op cloudomgevingen met veel virtualisatie. Er is echter weinig onderzoek gedaan naar de vraag of eBPF en XDP DDoS-aanvallen in gevirtualiseerde cloudomgevingen effectief kunnen mitigeren.

Dit onderzoek ging na of eBPF en XDP geschikt zijn voor gebruik in gevirtualiseerde omgevingen om prestaties te verbeteren en DDoS-aanvallen te mitigeren, en of de techniek klaar is voor gebruik in productie.

Download
SUE Cloud Native Solutions
Privacyoverzicht
Deze website gebruikt cookies. We gebruiken cookies om onze website en diensten goed te laten functioneren, om inzicht te krijgen in het gebruik van onze website en om onze producten en marketing te verbeteren. Lees voor meer informatie ons privacy- en cookiebeleid.