Cloudflare ippubblika xdpcap, analizzatur tat-traffiku bbażat fuq is-subsistema XDP

Kumpanija Cloudflare ippreżentata proġett miftuħ xdpcap, li fih qed jiġi żviluppat analizzatur tal-pakketti tan-netwerk simili għal tcpdump, mibni fuq il-bażi tas-subsistema XDP (eXpress Data Path). Il-kodiċi tal-proġett huwa miktub f'Go u imqassma minn taħt liċenzja BSD. Il-proġett ukoll ippreparat librerija għall-irbit tal-eBPF traffic handlers mill-applikazzjonijiet Go.

L-utilità xdpcap hija kompatibbli ma 'espressjonijiet ta' filtrazzjoni tcpdump/libpcap u tippermettilek tipproċessa volumi ta 'traffiku ferm akbar fuq l-istess hardware. Xdpcap jista 'jintuża wkoll għad-debugging f'ambjenti fejn tcpdump regolari mhuwiex applikabbli, bħal filtrazzjoni, protezzjoni DoS, u sistemi ta' bilanċjar tat-tagħbija li jużaw is-subsistema Linux kernel XDP, li tipproċessa pakketti qabel ma jiġu pproċessati mill-munzell tan-netwerking tal-kernel Linux (tcpdump ma jarax pakketti mwaqqfa mill-handler XDP).

Prestazzjoni għolja tinkiseb permezz tal-użu tas-sottosistemi eBPF u XDP. eBPF huwa interpretu tal-bytecode mibni fil-kernel tal-Linux li jippermettilek toħloq handlers ta' prestazzjoni għolja ta' pakketti deħlin/ħerġin b'deċiżjonijiet dwar it-trażmissjoni jew ir-rimi tagħhom. Bl-użu ta 'kompilatur JIT, eBPF bytecode huwa tradott fuq il-fly f'struzzjonijiet tal-magni u esegwit bil-prestazzjoni tal-kodiċi nattiv. Is-subsistema XDP (eXpress Data Path) tikkumplimenta eBPF bil-kapaċità li tmexxi programmi BPF fil-livell tas-sewwieq tan-netwerk, b'appoġġ għal aċċess dirett għall-buffer tal-pakkett DMA u taħdem fl-istadju qabel ma l-buffer skbuff jiġi allokat mill-munzell tan-netwerk.

Bħal tcpdump, l-utilità xdpcap l-ewwel tittraduċi regoli ta’ filtrazzjoni tat-traffiku ta’ livell għoli fir-rappreżentazzjoni klassika tal-BPF (cBPF) billi tuża l-librerija standard libpcap, u mbagħad tikkonvertihom fil-forma ta’ rutini eBPF bl-użu ta’ kompilatur cbpfc, bl-użu ta 'żviluppi LLVM/Clang. Fl-output, l-informazzjoni tat-traffiku tiġi ffrankata fil-format standard pcap, li jippermettilek tuża dump tat-traffiku ppreparat f'xdpcap għal studju sussegwenti f'tcpdump u analizzaturi oħra tat-traffiku eżistenti. Pereżempju, biex taqbad l-informazzjoni tat-traffiku tad-DNS, minflok tuża l-kmand "tcpdump ip u udp port 53", tista 'taħdem "xdpcap /path/to/hook capture.pcap 'ip u udp port 53′" u mbagħad tuża qbid. .pcap file, eż. bil-kmand "tcpdump -r" jew fil-Wireshark.

Sors: opennet.ru

Żid kumment