Cloudflare Company
Uslužni program xdpcap je kompatibilan sa tcpdump/libpcap izrazima za filtriranje i omogućava vam da obrađujete znatno veće količine prometa na istom hardveru. Xdpcap se također može koristiti za otklanjanje grešaka u okruženjima u kojima uobičajeni tcpdump nije primjenjiv, kao što su filtriranje, DoS zaštita i sistemi za balansiranje opterećenja koji koriste XDP podsistem Linux kernela, koji obrađuje pakete prije nego što ih obradi mrežni stog jezgre Linuxa (tcpdump ne vidi pakete koje ispušta XDP rukovalac).
Visoke performanse se postižu upotrebom eBPF i XDP podsistema. eBPF je bajtkod interpreter ugrađen u Linux kernel koji vam omogućava da kreirate rukovaoce visokih performansi dolaznim/odlaznim paketima sa odlukama o njihovom prosljeđivanju ili odbacivanju. Koristeći JIT kompajler, eBPF bajt kod se u hodu prevodi u mašinske instrukcije i izvršava uz performanse izvornog koda. XDP (eXpress Data Path) podsistem dopunjuje eBPF sa mogućnošću pokretanja BPF programa na nivou mrežnog drajvera, uz podršku za direktan pristup baferu DMA paketa i rad u fazi pre nego što mrežni stog dodeljuje skbuff bafer.
Kao i tcpdump, xdpcap uslužni program prvo prevodi pravila filtriranja saobraćaja na visokom nivou u klasičnu BPF reprezentaciju (cBPF) koristeći standardnu libpcap biblioteku, a zatim ih pretvara u oblik eBPF rutina koristeći kompajler
izvor: opennet.ru