Tencent نسخه جدیدی را منتشر کرده است F-Stack 1.13، چارچوبی مبتنی بر DPDK و پشته TCP/IP FreeBSD. پلتفرم اصلی این فریم ورک لینوکس است. کد تحت مجوز BSD توزیع شده است.
این چارچوب به برنامهها اجازه میدهد تا پشته سیستمعامل را دور بزنند و در عوض از یک پشته پیادهسازی شده در فضای کاربر استفاده کنند که مستقیماً با سختافزار شبکه کار میکند.
از جمله ویژگی های ذکر شده چارچوب:
- بار کامل کارت های شبکه: 10 میلیون اتصال شبکه فعال، 5 میلیون RPS و 1 میلیون CPS به دست آمد.
- پشته فضای کاربران را از FreeBSD 11 منتقل کرد، بسیاری از ویژگی های غیر ضروری را حذف کرد، که عملکرد شبکه را تا حد زیادی بهبود بخشید.
- Nginx و Redis پشتیبانی می کنند. سایر برنامه ها نیز می توانند از F-Stack استفاده کنند
- سهولت گسترش به دلیل معماری چند فرآیندی
- پشتیبانی از جریان های میکرو را فراهم می کند. برنامه های مختلف می توانند از F-Stack برای بهبود عملکرد بدون اجرای منطق پیچیده ناهمزمان استفاده کنند
- APIهای استاندارد epoll/kqueue پشتیبانی میشوند
در نسخه های جدید:
- رابط های اضافه شده ff_dup، ff_dup2، ff_ioctl_freebsd، ff_getsockopt_freebsd، ff_setsockopt_freebsd
- اضافه شدن گزینه "idle_sleep" برای کاهش استفاده از CPU در صورت عدم وجود بسته های ورودی
- پشتیبانی از arm64 اضافه شد
- پشتیبانی Docker اضافه شد
- پشتیبانی vlan اضافه شد
- در پیاده سازی nginx برای F-Stack، توابع getpeername، getsockname، shutdown جایگزین شده اند.
- DPDK به نسخه 17.11.4 LTS به روز شد
منبع: linux.org.ru