د آیا کتابتون لومړۍ نسخه، کوم چې تاسو ته اجازه درکوي چې په رسټ کې د کرنل پر بنسټ eBPF هینډلرونه ولیکئ، خپره شوې ده. Linux په یوه وقف شوي مجازی ماشین کې د JIT سره. د نورو eBPF پراختیایي وسیلو برعکس، آیا libbpf یا bcc کمپیلر نه کاروي، مګر په Rust کې لیکل شوی خپل پلي کول وړاندې کوي چې د libc کریټ پیکج کاروي ترڅو مستقیم د کرنل سیسټم زنګونو ته لاسرسی ومومي. د آیا جوړول د C وسیلو زنځیرونو یا د کرنل سرلیک فایلونو ته اړتیا نلري. د کتابتون کوډ د MIT او Apache 2.0 جوازونو لاندې ویشل شوی.
کلیدي ځانګړتیاوې:
- د BTF (BPF ډول بڼه) لپاره ملاتړ، کوم چې د BPF سیډوکوډ کې د ډول معلومات چمتو کوي ترڅو د اوسني کرنل لخوا چمتو شوي ډولونو سره د ډول چک کولو او میچ کولو لپاره. د BTF کارول د نړیوال eBPF هینډلرونو رامینځته کولو ته اجازه ورکوي چې د مختلف کرنل نسخو کې د بیا تالیف پرته کارول کیدی شي. Linux.
- د "bpf-to-bpf" زنګونو لپاره ملاتړ، نړیوال متغیرات او ابتدايي، کوم چې تاسو ته اجازه درکوي د eBPF لپاره پروګرامونه د منظم پروګرامونو په څیر ډیزاین کړئ چې ایا د رن ټایم په توګه کاروي چې په eBPF کې د حساب کار په پام کې نیولو سره دندې بیا تعریفوي.
- د مختلف کرنل ډولونو لپاره ملاتړ ، پشمول د منظم صفونو ، هشز نقشې ، سټیکونه ، کتارونه ، سټیک ټریسونه ، په بیله بیا ساکټ او د فعالیت تعقیب جوړښتونه.
- د مختلف ډوله eBTF برنامو رامینځته کولو وړتیا ، پشمول د ترافیک فلټر کولو او اداره کولو برنامې ، د cgroup هینډلر او مختلف ساکټ عملیات ، د XDP برنامې.
- په غیر بلاک کولو حالت کې د غیر متناسب غوښتنې پروسس کولو لپاره د پلیټ فارمونو ملاتړ tokio او async-std.
- ګړندی اسمبلۍ ، پرته د کرنل اسمبلۍ او د کرنل سرلیک فایلونو سره اړیکې.
دا پروژه اوس مهال تجربوي ګڼل کیږي — API لا تر اوسه ثبات نه دی موندلی او لاهم وده کوي. سربیره پردې، ټول پلان شوي ځانګړتیاوې لا تر اوسه نه دي پلي شوي. د کال تر پایه پورې، پراختیا کونکي هیله لري چې د آیا فعالیت د libbpf سره مساوي کړي، او د جنوري په 2022 کې لومړی مستحکم نسخه خپره کړي. دوی دا هم پلان لري چې د آیا هغه برخې مدغم کړي چې د کرنل لپاره د زنګ کوډ لیکلو لپاره اړین دي. Linux د کاروونکو په ځای کې د اجزاو سره روان دي او د eBPF پروګرامونو بارولو، ضمیمه کولو او تعامل لپاره کارول کیږي.
د یادونې په توګه، eBPF یو کرنل سره مدغم شوی دی Linux د بایټ کوډ ترجمان چې تاسو ته اجازه درکوي د شبکې عملیاتي هینډلرونه جوړ کړئ، د سیسټم فعالیت وڅارئ، د سیسټم زنګونه ودروئ، لاسرسی کنټرول کړئ، د وخت ساتلو سره پیښې پروسس کړئ، د عملیاتو فریکونسي او موده محاسبه کړئ، او د kprobes/uprobes/tracepoints په کارولو سره تعقیب ترسره کړئ. د Just-in-time (JIT) تالیف څخه مننه، بایټ کوډ په الوتنه کې د ماشین لارښوونو ته ژباړل کیږي او د اصلي کوډ فعالیت سره اجرا کیږي. XDP د شبکې ډرایور په کچه د BPF پروګرامونو چلولو لپاره وسیلې چمتو کوي، د DMA پیکټ بفر ته مستقیم لاسرسی سره، د درنو شبکې بارونو لپاره د لوړ فعالیت هینډلرونو رامینځته کولو توان ورکوي.
سرچینه: opennet.ru
