VÔrgustiku stack'i F-Stack 1.13 vÀlja antud, teostatakse kasutajaruumi

PĂ€rast poolteist aastat arendust toimus projekti vĂ€ljalaskmine F-Stack 1.13, arendades kĂ”rge jĂ”udlusega vĂ”rgustiku pinu, mis töötab kasutaja ruumis, ja pĂ”hineb raamistikul DPDK ja FreeBSD TCP/IP pinos (F-Stack ei ole seotud FreeBSD-ga ja esmaste rakendamisplatvormidena kaalub Linuxit). Projekti kasutatakse erinevates toodetes ja teenustes Tencent, Hiina suurima telekommunikatsioonifirma. Kood GNU Üldine Avaliku litsentsi alusel. on BSD litsentsi all. Toetatakse töö tegemist Linuxis ja FreeBSD-s.

F-Stack vĂ”imaldab korraldada vĂ”rgusuhtlust rakendustes, kasutades operatsioonisĂŒsteemi vĂ”rgu pinu asemel oma vĂ”rgupinu, mis töötab kasutaja ruumis ja on otseselt ĂŒhendatud vĂ”rguteenustega. Pakutakse spetsialiseeritud vĂ€ljaandeid Nginx ja Redis, kohandatud F-Stacki kasutamiseks.

Rakenduste arendamiseks toetatakse nii Posix API (Socket, Epoll, Kqueue), mis lihtsustab olemasolevate rakenduste tĂ”lkimist F-Stacki, ning oma programmistiku, mis pĂ”hineb koroutine'idel (mikrovoogudel), mis lihtsustab vĂ”rgu rakenduste loomist ja vĂ”imaldab vĂ€ltida keerulist asĂŒnkroonsete pĂ€ringute töötluse loogikat. F-Stack pakub ka tööriistu, et lihtsustada rakenduste kasutamist mitme protsessiga arhitektuuriga.

VĂ”rgukaardi suhtlemiseks, mööda operatsioonisĂŒsteemi tuuma liideseid, kasutatakse raamistikku DPDK (Data Plane Development Kit), mis pakub madala taseme teegikogumit vĂ”rguadapteritega töötamiseks, interaktsiooniks mitme tuumaga sĂŒsteemides, ringbuffereid ja suuri mĂ€lulehte („huge page“). DPDK kasutamine vĂ”imaldab vĂ”rgu pakettide vastuvĂ”tmist ja saatmist minimaalse CPU tsĂŒklite arvu tĂ€itmisega (umbes 80 tsĂŒklit paketi kohta) ja arendada kĂ”rge jĂ”udlusega vĂ”rgu stack komponente. TCP/IP stack’i funktsionaalsus on otseselt laenatud FreeBSD 11.1-st ja eraldatud operatsioonisĂŒsteemist sĂ”ltumatuks raamatukoguks.

F-Stack on lahenduseks, mis vÔimaldab suurendada vÔrgu pÀringute töötlemise efektiivsust olukordades, kus Linuxi tuuma tavapÀrane TCP/IP kiht muutub kitsaskohaks ja piirab skaleeritavust. F-Stack'i rakendamine toob mÀrkimisvÀÀrse optimeerimise ja vÔimaldab teatud olukordades suurendada töödeldavate vÀikeste pÀringute arvu mitu korda.

VÔrgustiku stack'i F-Stack 1.13 vÀlja antud, teostatakse kasutajaruumi

VÔrgustiku stack'i F-Stack 1.13 vÀlja antud, teostatakse kasutajaruumi

TĂ”hususe tĂ”us saavutatakse vĂ”rgu paketide kopeerimise, voogude planeerimise, katkestuste töötlemise ja sĂŒsteemikutsungite vĂ€listamise kaudu. F-Stack vĂ”imaldab saavutada vĂ”rgu jĂ”udluse katet, mis on vĂ”imalik kasutatava vĂ”rkaartiga. NĂ€iteks on F-Stack'i lahendused demonstreerinud vĂ”imalust töödelda 10 miljonit samal ajal ĂŒhendust, 5 miljonit pĂ€ringut sekundis ja 1 miljon ĂŒhendust sekundis.

Uues vÀljaandes:

  • Lisatud on VLAN-i tugi;
  • Tagatud on töövĂ”ime isoleeritud konteinerites, mis pĂ”hinevad Docker'il;
  • Töötavad liidesed ff_dup, ff_dup2, ff_ioctl_freebsd, ff_getsockopt_freebsd ja ff_setsockopt_freebsd;
  • Lisatud on 'idle_sleep' parameeter, et vĂ€hendada CPU koormust, kui sissetulevaid pakette ei ole.
  • Lisa toetust ARM64 arhitektuuri ehitusele;
  • F-Stack redaktsioonis tĂ”lgitud Nginx'is on asendatud getpeername, getsockname ja shutdown kĂ€sitlejad;
  • Ülemineku teostamine DPDK 17.11.4 LTS uuele versioonile;
  • Komplekti on lisatud utiliit traffic aktiivsete F-Stack rakenduste kaudu voolava hetktaseme allalaadimise kuvamiseks (sarnaneb trafshow'ga).

Tuleviku plaanides on mĂ€rgitud IPv6 tugi, API pakkumine Python, PHP ja Go keeledele, Cyptodev API tugi Intel QAT, pakettide saatmisel zerocopy kasutamine, tugi SPDK ja vĂ”imalus kĂ€ivitada taustprotsessina.

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster