Podjetje Cloudflare
Pripomoček xdpcap je združljiv z izrazi za filtriranje tcpdump/libpcap in vam omogoča obdelavo znatno večjih količin prometa na isti strojni opremi. Xdpcap se lahko uporablja tudi za razhroščevanje v okoljih, kjer običajni tcpdump ni uporaben, kot so sistemi za filtriranje, zaščito pred napadi na dejanja in izravnavo obremenitve, ki uporabljajo podsistem XDP jedra Linuxa, ki obdeluje pakete, preden jih obdela omrežni sklad jedra Linuxa (tcpdump ne vidi paketov, ki jih je zavrgel upravljalnik XDP).
Visoka zmogljivost je dosežena z uporabo podsistemov eBPF in XDP. eBPF je tolmač bajtne kode, vgrajen v jedro Linuxa, ki vam omogoča ustvarjanje visoko zmogljivih obdelovalcev dohodnih/odhodnih paketov z odločitvami o njihovem posredovanju ali zavrženju. Z uporabo prevajalnika JIT se bajtna koda eBPF sproti prevede v strojna navodila in izvede z zmogljivostjo izvorne kode. Podsistem XDP (eXpress Data Path) dopolnjuje eBPF z zmožnostjo izvajanja programov BPF na ravni omrežnega gonilnika, s podporo za neposreden dostop do medpomnilnika paketov DMA in delo na stopnji, preden medpomnilnik skbuff dodeli omrežni sklad.
Tako kot tcpdump tudi pripomoček xdpcap najprej prevede pravila filtriranja prometa na visoki ravni v klasično predstavitev BPF (cBPF) z uporabo standardne knjižnice libpcap, nato pa jih s pomočjo prevajalnika pretvori v obliko rutin eBPF.
Vir: opennet.ru