F-Stack 1.13 şəbəkə stəkinin buraxılışı, istifadəçi mühitində həyata keçirilir

yerinə yetirilmiş bir buçuk illik inkişafdan sonra baş verdi layihənin buraxılışı F-Stack 1.13, istifadəçi mühitində işləyən yüksək məhsuldar şəbəkə stəki, çərçivəyə əsaslanır DPDK və FreeBSD TCP/IP stəkinə (F-Stack FreeBSD-yə bağlı deyil və əsas tətbiq platforması kimi Linux-u nəzərdən keçirir). Layihə müxtəlif məhsul və xidmətlərdə istifadə olunur Tencent, Çindəki ən iri telekommunikasiya şirkəti. Kod yayılır BSD lisenziyasına tabedir. Linux və FreeBSD-də işləməsi dəstəklənir.

F-Stack, tətbiqlərdə şəbəkə əlaqəsini təşkil etməyə imkan tanıyır, əsl şəbəkə stəkinin yerinə istifadəçi mühitində fəaliyyət göstərən və şəbəkə avadanlığı ilə birbaşa işləyən öz şəbəkə stəkini tətbiq edir. İxtisaslaşdırılmış Nginx və Redis versiyaları təqdim olunur, F-Stack istifadə üçün çevrilmişdir.

Tətbiq inkişafı üçün dəstəklənir həm də standart Posix API (Socket, Epoll, Kqueue), mövcud tətbiqləri F-Stack-a köçürməyi sadələşdirir, həm də mikrotiklər əsasında öz proqram interfeysi, şəbəkə tətbiqləri yaratmağı asanlaşdırır və mürəkkəb asinxron sorğuların emalı məntiqindən yayınmağa imkan verir. F-Stack, çoxprosesli arxitektura ilə tətbiqlərdə istifadəsini sadələşdirmək üçün də vasitələr təqdim edir.

Şəbəkə kartı ilə interacción yaratmaq üçün, əməliyyat sisteminin nüvəsinin interfeyslərini keçərək istifadə olunan çərçivə, DPDK (Data Plane Development Kit), şəbəkə adapterləri ilə aşağı səviyyəli iş üçün kitabxana dəsti, çox nüvəli sistemlər arasında qarşılıqlı əlaqə yaratmaq, dövri bufferlər və böyük yaddaş səhifələri ("huge page") istifadəsini təmin edir. DPDK-nın istifadəsi, şəbəkə paketlərinin qəbul və göndərilməsini minimal CPU dövrü sayı ilə (paket başına təxminən 80 dövr) təmin edir və yüksək məhsuldar şəbəkə stəkləri komponentlərini inkişaf etdirməyə imkan tanıyır. TCP/IP stəkinin funksionallığı birbaşa FreeBSD 11.1-dən götürülmüşdür və əməliyyat sistemindən müstəqil bir kitabxanaya ayrılmışdır.

F-Stack, şəbəkə sorğularının emalı üçün məhsuldarlığı artırmaq məqsədilə tətbiq olunan bir həll kimi təqdim edilir, burada Linux nüvəsinin standart TCP/IP stəkinin işi dar fəaliyyətdədir və genişlənməni məhdudlaşdırır. F-Stackın tətbiqi kifayət qədər hiss edilən optimallaşdırma təmin edir və bəzi hallarda işləmə sayını artırmağa imkan tanıyır.

F-Stack 1.13 şəbəkə stəkinin buraxılışı, istifadəçi mühitində həyata keçirilir

F-Stack 1.13 şəbəkə stəkinin buraxılışı, istifadəçi mühitində həyata keçirilir

İş performansının artırılması, şəbəkə paketlərinin köçürülməsi, axınların planlaşdırılması, kəsilmələrin emalı və sistem çağırışlarının tətbiqi kimi əməliyyatların istisna edilməsi ilə əldə edilir. F-Stack, istifadə olunan şəbəkə kartı üçün mümkün olan şəbəkə performansı tavanına nail olmağa imkan verir. Məsələn, F-Stack-a əsaslanan həllər 10 milyon eyni anda bağlantını, saniyədə 5 milyon sorğunu və saniyədə 1 milyon bağlantını emal edə biləcəyini nümayiş etdirdi.

Yeni buraxılışda:

  • VLAN dəstəyi əlavə edildi;
  • Docker əsaslı izolyasiya olunmuş konteynerlərdə işləmək imkanı təmin edildi;
  • ff_dup, ff_dup2, ff_ioctl_freebsd, ff_getsockopt_freebsd və ff_setsockopt_freebsd interfeysləri reallaşdırıldı;
  • Giriş paketi olmadığı zaman CPU yükünü azaltmaq üçün "idle_sleep" parametr əlavə edildi.
  • ARM64 arxitekturası üçün tərtib dəstəyi əlavə edildi;
  • F-Stack-a keçid edilən Nginx versiyasında getpeername, getsockname və shutdown emalçıları dəyişdirildi;
  • Yeni DPDK 17.11.4 LTS versiyasına keçid edildi;
  • Qaynağa bir yardımçı proqram əlavə edildi, traffic F-Stack əsaslı tətbiqlərin emal etdiyi cari trafiki göstərmək üçün (trafshow-a bənzəyir).

Gələcək planlarda açıqlanır IPv6 dəstəyi, Python, PHP və Go dilləri üçün API təminatı, Cyptodev API dəstəyi (Intel QAT), paketlərin göndərilməsində zerocopy istifadə edilməsi, dəstək SPDK və arxa planda proses kimi işə salma imkanı.

Mənbə: opennet.ru

DDoS qoruması ilə etibarlı veb sayt hosting satın alın, VPS VDS serverləri 🔥 DDoS qoruması ilə etibarlı veb sayt hosting satın alın, VPS VDS serverləri | ProHoster