Empresa Cloudflare
La utilitat xdpcap és compatible amb les expressions de filtratge tcpdump/libpcap i us permet processar volums de trànsit significativament més grans al mateix maquinari. Xdpcap també es pot utilitzar per a la depuració en entorns on tcpdump normal no és aplicable, com ara sistemes de filtratge, protecció DoS i equilibri de càrrega que utilitzen el subsistema XDP del nucli de Linux, que processa paquets abans que siguin processats per la pila de xarxa del nucli de Linux (tcpdump). no veu paquets abandonats pel controlador XDP).
S'aconsegueix un alt rendiment mitjançant l'ús de subsistemes eBPF i XDP. eBPF és un intèrpret de bytecode integrat al nucli de Linux que us permet crear gestors d'alt rendiment de paquets entrants/sortints amb decisions sobre reenviar-los o descartar-los. Mitjançant un compilador JIT, el bytecode eBPF es tradueix sobre la marxa a instruccions de màquina i s'executa amb el rendiment del codi natiu. El subsistema XDP (eXpress Data Path) complementa eBPF amb la capacitat d'executar programes BPF a nivell de controlador de xarxa, amb suport per a l'accés directe a la memòria intermèdia de paquets DMA i treballar en l'etapa abans que la pila de xarxa assigni la memòria intermèdia skbuff.
Igual que tcpdump, la utilitat xdpcap primer tradueix les regles de filtratge de trànsit d'alt nivell a la representació clàssica de BPF (cBPF) utilitzant la biblioteca estàndard libpcap, i després les converteix en la forma de rutines eBPF mitjançant un compilador.
Font: opennet.ru