Ua lomia e Cloudflare le xdpcap, o se suʻesuʻega fefaʻatauaʻiga e faʻavae i luga o le XDP subsystem

Kamupani Cloudflare tuuina atu galuega tatala xdpcap, i totonu o loʻo atiaʻe ai se suʻesuʻega packet network e tutusa ma tcpdump, fausia i luga o le faʻavae o le subsystem. XDP (eXpress Fa'amatalaga Ala). O le tulafono o le poloketi o loʻo tusia i le Go ma tufatufaina e i lalo ole laisene BSD. O le poloketi foi saunia faletusi mo le fusifusia eBPF felauaiga felauaiga mai Go talosaga.

Ole aoga xdpcap e fetaui ma tcpdump/libpcap fa'amama fa'amatalaga ma fa'atagaina oe e fa'agasolo le tele o voluma o fefa'ataua'iga i luga o meafaigaluega tutusa. E mafai foi ona fa'aoga le Xdpcap mo le fa'apipi'iina i totonu o si'osi'omaga e le fa'aogaina ai le tcpdump masani, e pei o le fa'amama, puipuiga o le DoS, ma faiga fa'apaleni o uta e fa'aoga ai le Linux kernel XDP subsystem, lea e fa'agasolo ai pepa a'o le'i fa'againa e le Linux kernel networking stack (tcpdump). e le o va'aia ni afifi na lafoa'i e le fa'afoe XDP).

O le maualuga o le faʻatinoga e maua e ala i le faʻaogaina o le eBPF ma le XDP subsystems. eBPF o se fa'aliliu upu bytecode ua fausia i totonu o le fatu Linux lea e mafai ai ona e faia ni fa'atonuga maualuga o fa'aulufale mai / alu ese ma fa'ai'uga e uiga i le tu'uina atu pe lafoa'i. I le fa'aogaina o le JIT compiler, eBPF bytecode e fa'aliliu i luga o le lele i fa'atonuga masini ma fa'atino fa'atasi ai ma le fa'atinoina o le tulafono fa'apitoa. O le XDP (eXpress Data Path) subsystem e faʻapipiʻi le eBPF ma le gafatia e faʻatautaia polokalame BPF i le tulaga avetaʻavale fesoʻotaʻiga, faʻatasi ai ma le lagolago mo le saʻo saʻo i le DMA packet buffer ma galue i le tulaga aʻo leʻi tuʻuina atu le skbuff buffer e le upega o fesoʻotaʻiga.

E pei o le tcpdump, o le aoga xdpcap e muamua fa'aliliuina tulafono fa'avasegaina o fefa'ataua'iga i le fa'atusa masani a le BPF (cBPF) e fa'aaoga ai le faletusi masani libpcap, ona fa'aliliuina lea i le faiga o faiga masani eBPF e fa'aaoga ai se tu'ufa'atasi. cbpfc, fa'aoga LLVM/Clang developments. I le gaosiga, o faʻamatalaga o fefaʻatauaiga o loʻo faʻasaoina i le tulaga masani o le pcap, lea e mafai ai ona e faʻaogaina se taʻavale taʻavale ua saunia i le xdpcap mo suʻesuʻega mulimuli i le tcpdump ma isi suʻesuʻega fefaʻatauaʻiga o loʻo iai. Mo se faʻataʻitaʻiga, e puʻeina faʻamatalaga o fefaʻatauaiga a DNS, nai lo le faʻaaogaina o le "tcpdump ip ma le udp port 53" poloaiga, e mafai ona e tamoe "xdpcap /path/to/hook capture.pcap 'ip ma udp port 53′" ona faʻaaoga lea o se puʻe. .pcap faila, faʻataʻitaʻiga ma le poloaiga "tcpdump -r" poʻo le Wireshark.

puna: opennet.ru

Faaopoopo i ai se faamatalaga