เดฌเด‚เดฌเดฟเตพเดฌเต€ - eBPF เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเตเด•เดณเตเดŸเต† เดจเดฟเตผเดฎเตเดฎเดพเดฃเดตเตเด‚ เดตเดฟเดคเดฐเดฃเดตเตเด‚ เดฒเดณเดฟเดคเดฎเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดŸเต‚เตพเด•เดฟเดฑเตเดฑเต

เด•เตเดฒเต—เดกเต เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เตพ, เดฎเตˆเด•เตเดฐเต‹ เดธเตผเดตเต€เดธเตเด•เตพ, เด’เดฑเตเดฑเดชเตเดชเต†เดŸเตเดŸ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเตเด•เตพ, เดธเต†เตผเดตเตผเดฒเต†เดธเต เด•เดฎเตเดชเตเดฏเต‚เดŸเตเดŸเดฟเด‚เด—เต เดŽเดจเตเดจเดฟเดต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด‰เตฝเดชเตเดชเดจเตเดจเด™เตเด™เตพ เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เด•เดฎเตเดชเดจเดฟเดฏเดพเดฏ Solo.io, เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เดจเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เด‡เดฌเดฟเดชเดฟเดŽเดซเต เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเตเด•เดณเตเดŸเต† เดคเดฏเตเดฏเดพเดฑเดพเด•เตเด•เดฒเตเด‚ เดตเดฟเดคเดฐเดฃเดตเตเด‚ เดธเดฎเดพเดฐเด‚เดญเดตเตเด‚ เดฒเดณเดฟเดคเดฎเดพเด•เตเด•เดพเตป เดฒเด•เตเดทเตเดฏเดฎเดฟเดŸเตเดŸเตเดณเตเดณ เด’เดฐเต เด“เดชเตเดชเตบ เดธเต‹เดดเตโ€Œเดธเต เดŸเต‚เตพเด•เดฟเดฑเตเดฑเดพเดฏ เดฌเด‚เดฌเดฟเตพเดฌเต€ เดชเตเดฐเดธเดฟเดฆเตเดงเต€เด•เดฐเดฟเดšเตเดšเต. เดฒเดฟเดจเด•เตเดธเต เด•เต‡เตผเดฃเตฝ เด•เต‚เดŸเดพเดคเต† เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เด†เด•เตโ€Œเดธเดธเต เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เดพเดจเตเด‚ เดฎเต‹เดฃเดฟเดฑเตเดฑเตผ เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เตพ เด…เดจเตเดตเดฆเดฟเด•เตเด•เดพเดจเตเด‚ เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. เด•เต‹เดกเต Go- เตฝ เดŽเดดเตเดคเตเด•เดฏเตเด‚ Apache 2.0 เดฒเตˆเดธเตปเดธเดฟเดจเต เด•เต€เดดเดฟเตฝ เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

OCI (เด“เดชเตเดชเตบ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ เด‡เดจเดฟเดทเตเดฏเต‡เดฑเตเดฑเต€เดตเต) เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเดฒเตเดณเตเดณ เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ เด‡เดฎเต‡เดœเดพเดฏเดฟ เด’เดฐเต eBPF เดชเตเดฐเต‹เด—เตเดฐเดพเด‚ เดชเดพเด•เตเด•เต‡เดœเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต BumbleBee เดธเดพเดงเตเดฏเดฎเดพเด•เตเด•เตเดจเตเดจเต, เด…เดคเต เดชเตเดจเดƒเดธเด‚เด˜เดŸเดฟเดชเตเดชเดฟเด•เตเด•เดพเดคเต†เดฏเตเด‚ เด‰เดชเดฏเต‹เด•เตเดคเตƒ เดธเตเดฅเดฒเดคเตเดคเต เด…เดงเดฟเด• เด˜เดŸเด•เด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดคเต†เดฏเตเด‚ เดเดคเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดฒเตเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเดจเดพเด•เตเด‚. eBPF เดนเดพเตปเดกเตโ€Œเดฒเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเดฐเตเดจเตเดจ เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เดชเตเดฐเต‹เดธเดธเตเดธเดฟเด‚เด—เต เด‰เตพเดชเตเดชเต†เดŸเต†, เด•เดพเดฎเตเดชเดฟเดฒเต† eBPF เด•เต‹เดกเตเดฎเดพเดฏเตเดณเตเดณ เด‡เดŸเดชเต†เดŸเตฝ, BumbleBee เดเดฑเตเดฑเต†เดŸเตเด•เตเด•เตเดจเตเดจเต, เด…เดคเต เดฎเต†เดŸเตเดฐเดฟเด•เตโ€Œเดธเต, เดนเดฟเดธเตเดฑเตเดฑเต‹เด—เตเดฐเดพเดฎเตเด•เตพ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดฒเต‹เด—เตเด•เตพ เดŽเดจเตเดจเดฟเดตเดฏเตเดŸเต† เดฐเต‚เดชเดคเตเดคเดฟเตฝ เดˆ เดกเดพเดฑเตเดฑ เดธเตเดตเดฏเดฎเต‡เดต เด•เดฏเดฑเตเดฑเตเดฎเดคเดฟ เดšเต†เดฏเตเดฏเตเดจเตเดจเต, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด‡เดคเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดšเตเดฐเตเดณเตป เดฏเต‚เดŸเตเดŸเดฟเดฒเดฟเดฑเตเดฑเดฟ. เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเดŸ เดธเดฎเต€เดชเดจเด‚ เดกเดตเดฒเดชเตเดชเดฑเต† eBPF เด•เต‹เดกเต เดŽเดดเตเดคเตเดจเตเดจเดคเดฟเตฝ เดถเตเดฐเดฆเตเดง เด•เต‡เดจเตเดฆเตเดฐเต€เด•เดฐเดฟเด•เตเด•เดพเดจเตเด‚ เด‰เดชเดฏเต‹เด•เตเดคเตƒ เด‡เดŸเด‚, เด…เดธเด‚เดฌเตเดฒเดฟ, เด•เต‡เตผเดฃเดฒเดฟเดฒเต‡เด•เตเด•เต เดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตฝ เดŽเดจเตเดจเดฟเดตเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดˆ เด•เต‹เดกเตเดฎเดพเดฏเตเดณเตเดณ เด†เดถเดฏเดตเดฟเดจเดฟเดฎเดฏเด‚ เดธเด‚เด˜เดŸเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดถเตเดฐเดฆเตเดง เดคเดฟเดฐเดฟเด•เตเด•เดพเดคเดฟเดฐเดฟเด•เตเด•เดพเดจเตเด‚ เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต.

eBPF เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเตเด•เตพ เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เด’เดฐเต เดกเต‹เด•เตเด•เตผ-เดธเตเดฑเตเดฑเตˆเตฝ "เดฌเต€" เดฏเต‚เดŸเตเดŸเดฟเดฒเดฟเดฑเตเดฑเดฟ เดตเดพเด—เตเดฆเดพเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต, เด…เดคเดฟเดฒเต‚เดŸเต† เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดฌเดพเดนเตเดฏ เดถเต‡เด–เดฐเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเตเดณเตเดณ eBPF เดนเดพเตปเดกเตโ€Œเดฒเตผ เด‰เดŸเตป เดกเต—เตบเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เดชเตเดฐเดพเดฆเต‡เดถเดฟเด• เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚. เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดค เดตเดฟเดทเดฏเดคเตเดคเดฟเดจเตเดฑเต† eBPF เดนเดพเตปเดกเตโ€Œเดฒเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ C-เดฏเดฟเตฝ เด’เดฐเต เด•เต‹เดกเต เดšเดŸเตเดŸเด•เตเด•เต‚เดŸเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เดŸเต‚เตพเด•เดฟเดฑเตเดฑเต เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต (เดจเดฟเดฒเดตเดฟเตฝ เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดธเตเดฑเตเดฑเดพเด•เตเด•เดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด•เต‹เดณเตเด•เตพ เดคเดŸเดธเตเดธเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจ เดซเดฏเตฝ, เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เตพ เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจ เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เดฟเดจเตเดฑเต†เดฏเตเด‚ เดซเดฏเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเดŸเต†เดฏเตเด‚ เดนเดพเตปเดกเตโ€Œเดฒเดฑเตเด•เตพ เดฎเดพเดคเตเดฐเด‚). เดœเดจเดฑเต‡เดฑเตเดฑเตเดšเต†เดฏเตโ€Œเดค เดšเดŸเตเดŸเด•เตเด•เต‚เดŸเดฟเดจเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ, เดกเดตเดฒเดชเตเดชเตผเด•เตเด•เต เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเตเดณเตเดณ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดตเต‡เด—เดคเตเดคเดฟเตฝ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚.

BCC (BPF เด•เด‚เดชเตˆเดฒเตผ เด•เดณเด•เตเดทเตป) เดชเต‹เดฒเต†เดฏเดฒเตเดฒ, เดฒเดฟเดจเด•เตเดธเต เด•เต‡เตผเดฃเดฒเดฟเดจเตเดฑเต† เด“เดฐเต‹ เดชเดคเดฟเดชเตเดชเดฟเดจเตเด‚ เดตเต‡เดฃเตเดŸเดฟเดฏเตเดณเตเดณ เดนเดพเตปเดกเตโ€Œเดฒเตผ เด•เต‹เดกเต เดฌเด‚เดฌเดฟเตพเดฌเต€ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดชเตเดจเตผเดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ (เด‡เดฌเดฟเดชเดฟเดŽเดซเต เดชเตเดฐเต‹เด—เตเดฐเดพเด‚ เดธเดฎเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดฎเตเดชเต‹เดดเต†เดฒเตเดฒเดพเด‚ Clang เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต BCC เด“เตบ-เดฆเดฟ-เดซเตเดฒเตˆ เด•เด‚เดชเตˆเดฒเต‡เดทเตป เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต). เดชเต‹เตผเดŸเตเดŸเดฌเดฟเดฒเดฟเดฑเตเดฑเดฟเดฏเดฟเดฒเต† เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, CO-RE, libbpf เดŸเต‚เดณเตเด•เตพ เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเดšเตเดšเตเด•เตŠเดฃเตเดŸเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด‡เดคเต เด’เดฐเต เดคเดตเดฃ เดฎเดพเดคเตเดฐเด‚ เด•เต‹เดกเต เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเดจเตเด‚ เดจเดฟเดฒเดตเดฟเดฒเต† เด•เต‡เตผเดฃเดฒเดฟเดฒเต‡เด•เตเด•เตเด‚ BTF เดŸเตˆเดชเตเดชเต เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เตเด‚ เดฒเต‹เดกเต เดšเต†เดฏเตเดค เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฟเดจเต† เดชเตŠเดฐเตเดคเตเดคเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดฏเต‚เดฃเดฟเดตเต‡เดดเตเดธเตฝ เดฒเต‹เดกเตผ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดจเตเด‚ เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. BumbleBee libbpf-เดฒเต‡เด•เตเด•เตเดณเตเดณ เด’เดฐเต เด†เดกเต-เด“เตบ เด†เดฃเต เด•เต‚เดŸเดพเดคเต† เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเต eBPF เดฎเดพเดชเตเดชเต เด˜เดŸเดจเด•เดณเดพเดฏ RingBuffer, HashMap เดŽเดจเตเดจเดฟเดตเดฏเดฟเตฝ เดธเตเดฅเดฟเดคเดฟ เดšเต†เดฏเตเดฏเตเดจเตเดจ เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เดธเตเดตเดฏเดฎเต‡เดตเดฏเตเดณเตเดณ เดตเตเดฏเดพเด–เตเดฏเดพเดจเดคเตเดคเดฟเดจเตเด‚ เดชเตเดฐเดฆเตผเดถเดจเดคเตเดคเดฟเดจเตเด‚ เด•เต‚เดŸเตเดคเตฝ เดคเดฐเด™เตเด™เตพ เดจเตฝเด•เตเดจเตเดจเต.

เด…เดจเตเดคเดฟเดฎ eBPF เดชเตเดฐเต‹เด—เตเดฐเดพเด‚ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เด…เดคเต OCI เด‡เดฎเต‡เดœเดพเดฏเดฟ เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚, โ€œbee build file_with_code name:versionโ€ เดŽเดจเตเดจ เด•เดฎเดพเตปเดกเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเด•, เด•เต‚เดŸเดพเดคเต† โ€œbee run name:versionโ€ เดŽเดจเตเดจ เด•เดฎเดพเตปเดกเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเด•. เดกเดฟเดซเต‹เตพเดŸเตเดŸเดพเดฏเดฟ, เดนเดพเตปเดกเตโ€Œเดฒเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดฒเดญเดฟเด•เตเด•เตเดจเตเดจ เด‡เดตเดจเตเดฑเตเด•เตพ เดŸเต†เตผเดฎเดฟเดจเตฝ เดตเดฟเตปเดกเต‹เดฏเดฟเดฒเต‡เด•เตเด•เต เด”เดŸเตเดŸเตโ€ŒเดชเตเดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด‚, เดŽเดจเตเดจเดพเตฝ เด†เดตเดถเตเดฏเดฎเต†เด™เตเด•เดฟเตฝ, เดนเดพเตปเดกเตโ€Œเดฒเดฑเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดชเต‹เตผเดŸเตเดŸเดฟเดฒเต‡เด•เตเด•เต curl เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ wget เดฏเต‚เดŸเตเดŸเดฟเดฒเดฟเดฑเตเดฑเดฟเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดกเดพเดฑเตเดฑ เดจเต‡เดŸเดพเดจเดพเด•เตเด‚. OCI-เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฏ เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเด•เดณเดฟเดฒเต‚เดŸเต† เดนเดพเตปเดกเตโ€Œเดฒเดฑเตเด•เตพ เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเด‚, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, ghcr.io เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต (GitHub เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ เดฐเดœเดฟเดธเตโ€ŒเดŸเตเดฐเดฟ) เด’เดฐเต เดฌเดพเดนเตเดฏ เดนเดพเตปเดกเตโ€Œเดฒเตผ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต โ€œbee run ghcr.io/solo-io/bumblebee/tcpconnect: $(เดคเต‡เดจเต€เดšเตเดš เดชเดคเดฟเดชเตเดชเต)โ€. เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเดฏเดฟเตฝ เด’เดฐเต เดนเดพเตปเดกเตโ€Œเดฒเตผ เดธเตเดฅเดพเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, โ€œเดฌเต€ เดชเตเดทเตโ€ เด•เดฎเดพเตปเดกเต เดจเดฟเตผเดฆเตเดฆเต‡เดถเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เด’เดฐเต เดชเดคเดฟเดชเตเดชเต เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต โ€œเดฌเต€ เดŸเดพเด—เตโ€.

เด…เดตเดฒเด‚เดฌเด‚: opennet.ru

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•