Cloudflare Company
Verktyget xdpcap är kompatibelt med tcpdump/libpcap-filtreringsuttryck och låter dig bearbeta betydligt större trafikvolymer på samma hårdvara. Xdpcap kan också användas för felsökning i miljöer där vanlig tcpdump inte är tillämplig, såsom filtrering, DoS-skydd och lastbalanseringssystem som använder Linux-kärnan XDP-undersystem, som bearbetar paket innan de bearbetas av Linux-kärnnätverksstacken (tcpdump ser inte paket som släpps av XDP-hanteraren).
Hög prestanda uppnås genom användning av eBPF- och XDP-delsystem. eBPF är en bytekodtolkare inbyggd i Linux-kärnan som låter dig skapa högpresterande hanterare av inkommande/utgående paket med beslut om att vidarebefordra eller kassera dem. Med hjälp av en JIT-kompilator översätts eBPF-bytekod i farten till maskininstruktioner och exekveras med prestanda av inbyggd kod. XDP (eXpress Data Path)-delsystemet kompletterar eBPF med möjligheten att köra BPF-program på nätverksdrivrutinsnivå, med stöd för direktåtkomst till DMA-paketbufferten och arbete i skedet innan skbuff-bufferten allokeras av nätverksstacken.
Precis som tcpdump översätter verktyget xdpcap först trafikfiltreringsregler på hög nivå till den klassiska BPF-representationen (cBPF) med standardbiblioteket libpcap och konverterar dem sedan till formen av eBPF-rutiner med hjälp av en kompilator
Källa: opennet.ru