ಕ್ಲೌಡ್ಫ್ಲೇರ್ ಕಂಪನಿ
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 ವಾಡಿಕೆಯ ರೂಪದಲ್ಲಿ ಪರಿವರ್ತಿಸುತ್ತದೆ.
ಮೂಲ: opennet.ru