Lëshimi i rrjetit F-Stack 1.24, që funksionon në hapësirën e përdoruesit

Rrjeti F-Stack 1.24 është publikuar, duke përfaqësuar një edicion të rrjetit FreeBSD që punon në hapësirën e përdoruesit dhe përdor kuadri DPDK për të arritur performancën maksimale. Projekti është krijuar nga kompania më e madhe të telekomunikacionit në Kinë, Tencent, dhe përdoret në produktet dhe shërbimet e saj. Kodi është shkruar në gjuhën C dhe shpërndahet nën licencën BSD. Mbështetet funksionimi në Linux dhe FreeBSD.

F-Stack lejon qĂ« aplikacionet tĂ« pĂ«rdorin njĂ« rrjet lokal tĂ« tyre, tĂ« pavarur nga rrjeti i operacionit, duke funksionuar nĂ« hapĂ«sirĂ«n e pĂ«rdoruesit dhe duke punuar drejtpĂ«rdrejt me pajisjet e rrjetit. F-Stack pozicionohet si njĂ« zgjidhje pĂ«r tĂ« rritur performancĂ«n e pĂ«rpunuesve tĂ« kĂ«rkesave rrjetore nĂ« kushte kur stoku i zakonshĂ«m TCP/IP i bĂ«rthamĂ«s Linux bĂ«het njĂ« ngushticĂ« dhe kufizon shkallĂ«zimin — nĂ« disa situata projekti mund tĂ« rrisĂ« ndjeshĂ«m numrin e kĂ«rkesave tĂ« vogla rrjetore tĂ« pĂ«rpunuara. Teorikisht, F-Stack lejon arritjen e njĂ« tavan tĂ« performancĂ«s rrjetore, tĂ« mundshme pĂ«r kartĂ«n e rrjetit tĂ« pĂ«rdorur.

Rritja e performancës arrihet duke përjashtuar operacione të tilla si kopjimi i paketimeve rrjetore, planifikimi i rrjedhave, përpunimi i ndërhyrjeve dhe aplikimi i thirrjeve sistemike. Për të interaguar me kartën e rrjetit, përmes ndërfaqeve të bërthamës së operacionit, përdoret kuadri DPDK (Data Plane Development Kit), që zhvillon një grup bibliotekash për punë të nivelit të ulët me adaptuesit e rrjetit. DPDK ofron mundësinë për të reduktuar shpenzimet e operimit dhe për të mbajtur numrin minimal të cikleve CPU gjatë pranimit ose dërgimit të paketimeve rrjetore.

Funksionaliteti i stokut TCP/IP është në përputhje me rrjetin e FreeBSD 13 dhe është ndarë nga ky sistem operativ në një bibliotekë të pavarur. Për zhvillimin e aplikacioneve mund të përdoren API të standardit POSIX (socket, epoll, kqueue) ose një ndërfaqe programore të vetme bazuar në mikrotë, që thjeshton krijimin e aplikacioneve rrjetore dhe lejon të evitohet logjika komplekse e përpunimit asinkron të kërkesave.

Projekti mbështet edicionet e përkthyera për përdorimin e F-Stack të serverit Nginx 1.25.2 dhe DBMS Redis 6.2.6, që demonstrojnë performancë më të lartë se ndërtimet e zakonshme që punojnë mbi stokun e rrjetit të sistemit.

Shkëmbimet më të dukshme në lëshimin e ri:

  • NĂ« skedarin e konfigurimit config.ini Ă«shtĂ« ofruar mundĂ«sia pĂ«r tĂ« zgjedhur mes pĂ«rdorimit tĂ« KNI (Kernel NIC Interface) dhe virtio_user si transport pĂ«r dĂ«rgimin e paketimeve ndĂ«rmjet bĂ«rthamĂ«s dhe aplikacionit tĂ« pĂ«rpunimit tĂ« paketimeve tĂ« bazuara nĂ« DPDK. ËshtĂ« shtuar mundĂ«sia e pĂ«rdorimit tĂ« ratelimit pĂ«r KNI.
  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r pĂ«rfshirjen e kĂ«saj konfirmi tĂ« stokut tĂ« rrjetit "net.add_addr_allfibs=1" pĂ«r tĂ« shtuar adresat nĂ« tĂ« gjitha tabelat e rrugĂ«zimit.
  • ËshtĂ« shtuar API ff_get_traffic pĂ«r marrjen e trafik, pĂ«r shembull, pĂ«r realizimin e QoS (Quality of Service).
  • JanĂ« shtuar funksionet pthread_create dhe pthread_join, qĂ« ngjajnĂ« me funksionet e ngjashme nga POSIX.
  • JanĂ« shtuar API ff_dpdk_raw_packet_send pĂ«r dĂ«rgimin e paketimeve tĂ« papĂ«rpunuara direkt nga aplikacioni pĂ«rmes DPDK, dhe jo pĂ«rmes soket.
  • ËshtĂ« realizuar mbĂ«shtetje pĂ«r konfigurimin automatik tĂ« VLAN, rrugĂ«zimit dhe politike tĂ« rrugĂ«s.
  • Ka ndodhur kalimi nĂ« versionin DPDK 22.11.6 LTS.
  • NĂ« implementimin e Nginx mbi F-Stack Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r modulin stream.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster