ಕ್ಲೌಡ್‌ಫ್ಲೇರ್ XDP ಉಪವ್ಯವಸ್ಥೆಯ ಆಧಾರದ ಮೇಲೆ ಟ್ರಾಫಿಕ್ ವಿಶ್ಲೇಷಕ xdpcap ಅನ್ನು ಪ್ರಕಟಿಸಿದೆ

ಕ್ಲೌಡ್‌ಫ್ಲೇರ್ ಕಂಪನಿ ಪ್ರಸ್ತುತಪಡಿಸಲಾಗಿದೆ ಮುಕ್ತ ಯೋಜನೆ xdpcap, ಅದರೊಳಗೆ tcpdump ಅನ್ನು ಹೋಲುವ ನೆಟ್‌ವರ್ಕ್ ಪ್ಯಾಕೆಟ್ ವಿಶ್ಲೇಷಕವನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲಾಗುತ್ತಿದೆ, ಇದನ್ನು ಉಪವ್ಯವಸ್ಥೆಯ ಆಧಾರದ ಮೇಲೆ ನಿರ್ಮಿಸಲಾಗಿದೆ XDP (eXpress ಡೇಟಾ ಪಾತ್). ಯೋಜನೆಯ ಕೋಡ್ ಅನ್ನು ಗೋ ಮತ್ತು ನಲ್ಲಿ ಬರೆಯಲಾಗಿದೆ ವಿತರಿಸುವವರು BSD ಪರವಾನಗಿ ಅಡಿಯಲ್ಲಿ. ಯೋಜನೆ ಕೂಡ ತಯಾರಾದ Go ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಂದ eBPF ಟ್ರಾಫಿಕ್ ಹ್ಯಾಂಡ್ಲರ್‌ಗಳನ್ನು ಬಂಧಿಸಲು ಲೈಬ್ರರಿ.

xdpcap ಉಪಯುಕ್ತತೆಯು tcpdump/libpcap ಫಿಲ್ಟರಿಂಗ್ ಅಭಿವ್ಯಕ್ತಿಗಳೊಂದಿಗೆ ಹೊಂದಿಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು ಅದೇ ಹಾರ್ಡ್‌ವೇರ್‌ನಲ್ಲಿ ಗಮನಾರ್ಹವಾಗಿ ದೊಡ್ಡ ಪ್ರಮಾಣದ ಟ್ರಾಫಿಕ್ ಅನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಲಿನಕ್ಸ್ ಕರ್ನಲ್ XDP ಉಪವ್ಯವಸ್ಥೆಯನ್ನು ಬಳಸುವ ಫಿಲ್ಟರಿಂಗ್, DoS ರಕ್ಷಣೆ ಮತ್ತು ಲೋಡ್ ಬ್ಯಾಲೆನ್ಸಿಂಗ್ ಸಿಸ್ಟಮ್‌ಗಳಂತಹ ನಿಯಮಿತ tcpdump ಅನ್ವಯಿಸದ ಪರಿಸರದಲ್ಲಿ ಡೀಬಗ್ ಮಾಡಲು Xdpcap ಅನ್ನು ಸಹ ಬಳಸಬಹುದು, ಇದು ಲಿನಕ್ಸ್ ಕರ್ನಲ್ ನೆಟ್‌ವರ್ಕಿಂಗ್ ಸ್ಟಾಕ್ (tcpdump) ಮೂಲಕ ಪ್ಯಾಕೆಟ್‌ಗಳನ್ನು ಸಂಸ್ಕರಿಸುವ ಮೊದಲು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುತ್ತದೆ. XDP ಹ್ಯಾಂಡ್ಲರ್‌ನಿಂದ ಕೈಬಿಡಲಾದ ಪ್ಯಾಕೆಟ್‌ಗಳನ್ನು ನೋಡುವುದಿಲ್ಲ).

eBPF ಮತ್ತು XDP ಉಪವ್ಯವಸ್ಥೆಗಳ ಬಳಕೆಯ ಮೂಲಕ ಹೆಚ್ಚಿನ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಸಾಧಿಸಲಾಗುತ್ತದೆ. eBPF ಎನ್ನುವುದು ಲಿನಕ್ಸ್ ಕರ್ನಲ್‌ನಲ್ಲಿ ನಿರ್ಮಿಸಲಾದ ಬೈಟ್‌ಕೋಡ್ ಇಂಟರ್ಪ್ರಿಟರ್ ಆಗಿದ್ದು ಅದು ಒಳಬರುವ/ಹೊರಹೋಗುವ ಪ್ಯಾಕೆಟ್‌ಗಳ ಉನ್ನತ-ಕಾರ್ಯಕ್ಷಮತೆಯ ಹ್ಯಾಂಡ್ಲರ್‌ಗಳನ್ನು ಫಾರ್ವರ್ಡ್ ಮಾಡುವ ಅಥವಾ ತಿರಸ್ಕರಿಸುವ ನಿರ್ಧಾರಗಳೊಂದಿಗೆ ರಚಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. JIT ಕಂಪೈಲರ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು, eBPF ಬೈಟ್‌ಕೋಡ್ ಅನ್ನು ಫ್ಲೈನಲ್ಲಿ ಯಂತ್ರ ಸೂಚನೆಗಳಾಗಿ ಅನುವಾದಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಸ್ಥಳೀಯ ಕೋಡ್‌ನ ಕಾರ್ಯಕ್ಷಮತೆಯೊಂದಿಗೆ ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗುತ್ತದೆ. XDP (eXpress Data Path) ಉಪವ್ಯವಸ್ಥೆಯು eBPF ಅನ್ನು ನೆಟ್‌ವರ್ಕ್ ಡ್ರೈವರ್ ಮಟ್ಟದಲ್ಲಿ BPF ಪ್ರೋಗ್ರಾಮ್‌ಗಳನ್ನು ಚಲಾಯಿಸುವ ಸಾಮರ್ಥ್ಯದೊಂದಿಗೆ ಪೂರೈಸುತ್ತದೆ, DMA ಪ್ಯಾಕೆಟ್ ಬಫರ್‌ಗೆ ನೇರ ಪ್ರವೇಶವನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ ಮತ್ತು ನೆಟ್ವರ್ಕ್ ಸ್ಟಾಕ್‌ನಿಂದ skbuff ಬಫರ್ ಅನ್ನು ನಿಯೋಜಿಸುವ ಮೊದಲು ಹಂತದಲ್ಲಿ ಕೆಲಸ ಮಾಡುತ್ತದೆ.

tcpdump ನಂತೆ, xdpcap ಯುಟಿಲಿಟಿಯು ಉನ್ನತ ಮಟ್ಟದ ಟ್ರಾಫಿಕ್ ಫಿಲ್ಟರಿಂಗ್ ನಿಯಮಗಳನ್ನು ಸ್ಟ್ಯಾಂಡರ್ಡ್ libpcap ಲೈಬ್ರರಿಯನ್ನು ಬಳಸಿಕೊಂಡು ಕ್ಲಾಸಿಕ್ BPF ಪ್ರಾತಿನಿಧ್ಯಕ್ಕೆ (cBPF) ಮೊದಲು ಭಾಷಾಂತರಿಸುತ್ತದೆ ಮತ್ತು ನಂತರ ಅವುಗಳನ್ನು ಕಂಪೈಲರ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು eBPF ವಾಡಿಕೆಯ ರೂಪದಲ್ಲಿ ಪರಿವರ್ತಿಸುತ್ತದೆ. cbpfc, LLVM/Clang ಬೆಳವಣಿಗೆಗಳನ್ನು ಬಳಸುವುದು. ಔಟ್‌ಪುಟ್‌ನಲ್ಲಿ, ಟ್ರಾಫಿಕ್ ಮಾಹಿತಿಯನ್ನು ಪ್ರಮಾಣಿತ pcap ಸ್ವರೂಪದಲ್ಲಿ ಉಳಿಸಲಾಗುತ್ತದೆ, ಇದು tcpdump ಮತ್ತು ಇತರ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಸಂಚಾರ ವಿಶ್ಲೇಷಕಗಳಲ್ಲಿ ನಂತರದ ಅಧ್ಯಯನಕ್ಕಾಗಿ xdpcap ನಲ್ಲಿ ಸಿದ್ಧಪಡಿಸಲಾದ ಟ್ರಾಫಿಕ್ ಡಂಪ್ ಅನ್ನು ಬಳಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, DNS ಟ್ರಾಫಿಕ್ ಮಾಹಿತಿಯನ್ನು ಸೆರೆಹಿಡಿಯಲು, "tcpdump ip ಮತ್ತು udp ಪೋರ್ಟ್ 53" ಆಜ್ಞೆಯನ್ನು ಬಳಸುವ ಬದಲು, ನೀವು "xdpcap /path/to/hook catch.pcap 'ip ಮತ್ತು udp ಪೋರ್ಟ್ 53′" ಅನ್ನು ಚಲಾಯಿಸಬಹುದು ಮತ್ತು ನಂತರ ಕ್ಯಾಪ್ಚರ್ ಅನ್ನು ಬಳಸಬಹುದು. .pcap ಫೈಲ್, ಉದಾ. "tcpdump -r" ಆಜ್ಞೆಯೊಂದಿಗೆ ಅಥವಾ ವೈರ್‌ಶಾರ್ಕ್‌ನಲ್ಲಿ.

ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ