F-Stack 1.24 vÔrgustiku steki vÀljaanne, mis töötab kasutaja ruumis

Ilmumas on F-Stack 1.24, mis on FreeBSD vÔrgustiku steki vÀljaanne, mis töötab kasutaja ruumis ja kasutab DPDK raamistikku maksimaalse jÔudluse saavutamiseks. Projekt on loodud Hiina suurima telekommunikatsiooniettevÔtte Tencent poolt ja seda kasutatakse nende toodetes ja teenustes. Kood on kirjutatud C keeles ja levitatakse BSD litsentsi alusel. Tugi tööks Linuxis ja FreeBSD-s.

F-Stack vĂ”imaldab rakendustes kasutada oma lokaalset vĂ”rgu steki, mis ei sĂ”ltu operatsioonisĂŒsteemi vĂ”rgu stegist, töötades kasutaja ruumis ja suheldes otse vĂ”rgu seadmetega. F-Stack on positsioneeritud lahendusena, mis vĂ”imaldab suurendada vĂ”rgu pĂ€ringute töötlejate jĂ”udlust olukordades, kus Linuxi tuum TCP/IP stek muutub kitsaskohaks ja piirab skaleeritavust — teatud olukordades vĂ”imaldab projekt mĂ€rkimisvÀÀrselt suurendada töötlemiseks mĂ”eldud vĂ€ikeste vĂ”rgu pĂ€ringute arvu. Teoreetiliselt vĂ”imaldab F-Stack saavutada vĂ”rgu jĂ”udluse piiri, mis on vĂ”imalik kasutatava vĂ”rgu kaardi jaoks.

JĂ”udluse tĂ”stmine saavutatakse, vĂ€listades sellised operatsioonid nagu vĂ”rgu pakettide kopeerimine, voogude planeerimine, katkestuste töötlemine ja sĂŒsteemi kutsungite rakendamine. VĂ”rgukaardiga suhtlemiseks, mööda operatsioonisĂŒsteemi kernelite alsĂ”id, kasutatakse DPDK (Data Plane Development Kit) raamistikku, mis arendab madalama taseme raamatukogusid vĂ”rguadapteritega töötamiseks. DPDK vĂ”imaldab vĂ€hendada ĂŒleliigseid kulusid ja jÀÀda minimaalsete CPU tsĂŒklite hulka vĂ”rgu paketide vastuvĂ”tmisel vĂ”i saatmisel.

TCP/IP stacki funktsionaalsus vastab FreeBSD 13 vĂ”rgu stackile ja on eraldatud sellest operatsioonisĂŒsteemist sĂ”ltumatuks raamatukoguks. Rakenduste arendamiseks saab kasutada standardset POSIX API-d (socket, epoll, kqueue) vĂ”i omaloodud programmiliidest, mis pĂ”hineb mikrotelingutel, lihtsustades vĂ”rgurakenduste loomist ja vĂ”imaldades vĂ€ltida keerulist asĂŒnkroonsete pĂ€ringute töötlemise loogikat.

Projekt toetab F-Stack kasutusele vĂ”tmise tĂ”lgitud redaktsioone mitme protokolliga. serverid Nginx 1.25.2 ja Redis 6.2.6, mis demonstreerivad paremaks toimivust kui tavapĂ€rased versioonid, mis töötavad sĂŒsteemi vĂ”rgu puhvri kohal.

Uues vÀljaandes on kÔige mÀrgatavamad muutused:

  • Config.ini konfiguratsioonifailis on vĂ”imalik valida KNI (Kernel NIC Interface) ja virtio_user vahel pakettide edastamiseks tuuma ja DPDK-pĂ”hise pakettide töötlemise rakenduse vahel. KNI-le on lisatud vĂ”imalus kasutada silumatust.
  • Lisatud on tugi vĂ”rgu puhvri seadistuse "net.add_addr_allfibs=1" aktiveerimiseks, et lisada aadresse kĂ”igisse marsruutimis tabelitesse.
  • Lisatud on API ff_get_traffic, et saada liiklust, nĂ€iteks QoS (teenuse kvaliteedi) rakendamiseks.
  • Lisatud on pthread_create ja pthread_join funktsioonid, mis meenutavad sarnaseid POSIX-funktsioone.
  • Lisatud on API ff_dpdk_raw_packet_send, et rakendus saaks saata toorpakette otse lĂ€bi DPDK, mitte soketi kaudu.
  • Rakendatud on VLAN-i, marsruutimise ja poliitika marsruutimise automaatse seadistamise tugi.
  • Üleminek DPDK versioonile 22.11.6 LTS on sooritatud.
  • Nginxi teostuses F-Stacki peal on lisatud voogmoduli tugi.

Allikas: opennet.ru

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