
پروژه متنباز KNOD که بهعنوان راهکاری آزمایشی برای برونسپاری (Offloading) پردازش بستههای شبکه در هسته (In-Kernel) به پردازندههای گرافیکی AMD معرفی شده بود، همچنان مسیر توسعه خود را ادامه میدهد. این پروژه به شبکهها امکان میدهد بدون نیاز به سختافزار تخصصی، از توان پردازنده گرافیکی برای پردازش بستهها به شکلی بسیار سریع و کممصرف بهره ببرند. تازهترین گزارش پیشرفت KNOD این هفته در کنفرانس Linux Plumbers Conference در شهر پراگ ارائه شد.
KNOD چگونه بستههای شبکه را پردازش میکند؟
KNOD پتانسیل قابلتوجهی برای استفاده از پردازنده گرافیکی بهعنوان شتابدهنده (Accelerator) پردازش بسته در سطح هسته سیستمعامل نشان داده است. سازوکار آن به این شکل است که یک برنامه XDP با روش کامپایل در لحظه (JIT Compile) به کد ماشین پردازنده گرافیکی ترجمه میشود، کارت شبکه بستهها را مستقیماً در حافظهای قرار میدهد که برای GPU قابلدسترسی است و سپس پردازنده گرافیکی آنها را پردازش میکند.
بهتازگی قابلیتهای RX IPsec نیز فراتر از برنامههای XDP اولیه به این پروژه افزوده شده است. بر پایه گزارشهای منتشرشده، KNOD توانسته روی سختافزار گرافیکی مصرفی به عملکردی معادل ۷۰ میلیون بسته در ثانیه برای بارهای کاری XDP و پهنای باند ۸۰ گیگابیت بر ثانیه برای RX IPsec دست پیدا کند.
مزیت هزینه و مصرف انرژی
توسعهدهندگان KNOD بر این باورند که این راهکار علاوه بر مقرونبهصرفه بودن، از نظر مصرف انرژی نیز بهینهتر از پردازش بستهها تنها با واحد پردازش مرکزی (CPU) عمل میکند؛ موضوعی که در مراکز داده و زیرساختهای شبکه اهمیت روزافزونی دارد.
گسترش پشتیبانی به اینتل و کارتهای شبکه دیگر
هرچند تمرکز اصلی KNOD تا امروز بر پردازندههای گرافیکی AMD بوده است، در کنفرانس LPC اعلام شد که توسعهدهندگان قصد دارند پشتیبانی از گرافیکهای Intel Arc را نیز بررسی کنند. همچنین قرار است سازگاری KNOD با کارتهای شبکه (NIC) ساخت برودکام و اینتل ارزیابی شود. در همین راستا، بررسی پشتیبانی از گرافیکهای یکپارچه (Integrated Graphics) AMD در کنار پردازندههای گرافیکی مجزا (Discrete GPU) نیز در دستور کار قرار گرفته است.
علاقهمندان به آشنایی بیشتر با مفهوم KNOD میتوانند محتوای ارائهشده در کنفرانس LPC را مطالعه کنند.