Kutolewa kwa NNCP 8.8.0, huduma za kuhamisha faili/amri katika hali ya duka-na-mbele

Kutolewa kwa Node-to-Node CoPy (NNCP), seti ya huduma za kuhamisha faili, barua pepe, na amri kwa usalama kwa ajili ya utekelezaji katika hali ya kuhifadhi-na-mbele. Inasaidia uendeshaji kwenye mifumo ya uendeshaji inayoendana na POSIX. Huduma zimeandikwa katika Go na kusambazwa chini ya leseni ya GPLv3.

Huduma zinalenga kusaidia kujenga mitandao midogo ya marafiki-kwa-rafiki (kadhaa ya nodi) yenye uelekezaji tuli wa uhamishaji salama wa moto-na-kusahau, maombi ya faili, barua pepe, na maombi ya amri. Pakiti zote zinazotumwa husimbwa kwa njia fiche (mwisho-hadi-mwisho) na huthibitishwa wazi kwa kutumia funguo za umma zinazojulikana za marafiki. Usimbaji fiche wa vitunguu (kama ilivyo Tor) hutumiwa kwa pakiti zote za kati. Kila nodi inaweza kufanya kama mteja na seva na kutumia mifano ya tabia ya kusukuma na kura ya maoni.

Tofauti kati ya NNCP na UUCP na ufumbuzi wa FTN (FidoNet Technology Network), pamoja na usimbaji fiche na uthibitishaji uliotajwa hapo juu, ni usaidizi wa nje wa kisanduku kwa mitandao ya floppinet na kompyuta zilizotengwa kimwili (zilizo na hewa) kutoka kwa usalama wa ndani na wa ndani. mitandao ya umma. NNCP pia ina ujumuishaji rahisi (sawa na UUCP) na seva za barua pepe za sasa kama vile Postfix na Exim.

Maeneo yanayowezekana ya utumaji maombi ya NNCP ni pamoja na kupanga kutuma/kupokea barua kwa vifaa visivyo na muunganisho wa kudumu kwenye Mtandao, kuhamisha faili katika hali ya muunganisho usio thabiti wa mtandao, kuhamisha kwa usalama kiasi kikubwa sana cha data kwenye vyombo vya habari vya kimwili, kuunda mitandao ya kusambaza data iliyotengwa iliyolindwa kutokana na mtandao. Mashambulizi ya MitM, kupita udhibiti wa mtandao na ufuatiliaji. Kwa kuwa ufunguo wa usimbuaji uko mikononi mwa mpokeaji tu, bila kujali ikiwa pakiti imewasilishwa kwenye mtandao au kupitia media ya kawaida, mtu wa tatu hawezi kusoma yaliyomo, hata ikiwa kifurushi kimezuiwa. Kwa upande mwingine, uthibitishaji wa saini za kidijitali hauruhusu kuunda ujumbe wa kubuni kwa kisingizio cha mtumaji mwingine.

Miongoni mwa uvumbuzi wa NNCP 8.8.0, ikilinganishwa na habari za awali (toleo la 5.0.0):

  • Badala ya heshi ya BLAKE2b, ile inayoitwa MTH: Merkle Tree-based Hashing, ambayo hutumia heshi BLAKE3, inatumiwa kuangalia uadilifu wa faili. Hii hukuruhusu kuhesabu uadilifu wa sehemu iliyosimbwa kwa njia fiche ya pakiti wakati wa kupakua, bila kuhitaji kusomwa katika siku zijazo. Hii pia inaruhusu usawazishaji usio na kikomo wa ukaguzi wa uadilifu.
  • Umbizo jipya la pakiti iliyosimbwa kwa njia fiche ni rahisi kutiririka wakati ukubwa wa data haujulikani mapema. Kuashiria kukamilika kwa uhamishaji, kwa saizi iliyothibitishwa, huenda moja kwa moja ndani ya mkondo uliosimbwa. Hapo awali, ili kujua ukubwa wa data iliyohamishwa, ilikuwa ni lazima kuihifadhi kwenye faili ya muda. Kwa hivyo amri ya "nncp-exec" imepoteza chaguo la "-use-tmp" kwani sio lazima kabisa.
  • Chaguo za kukokotoa za BLAKE2b KDF na XOF zimebadilishwa na BLAKE3 ili kupunguza idadi ya maandishi ya awali ya kriptografia yaliyotumika na kurahisisha msimbo.
  • Sasa inawezekana kugundua nodi zingine kwenye mtandao wa ndani kwa njia ya utumaji anuwai kwa anwani "ff02::4e4e:4350".
  • Vikundi vya utangazaji anuwai vimeonekana (sawa na mikutano ya mwangwi ya FidoNet au vikundi vya habari vya Usenet), vikiruhusu pakiti moja kutuma data kwa washiriki wengi wa kikundi, ambapo kila moja pia hupeleka pakiti kwa watia saini wengine. Kusoma pakiti ya multicast kunahitaji ujuzi wa jozi muhimu (lazima uwe mwanachama wa kikundi), lakini kurejesha kunaweza kufanywa na nodi yoyote.
  • Sasa kuna usaidizi wa uthibitishaji wazi wa risiti ya pakiti. Mtumaji anaweza asifute pakiti baada ya kutuma, akisubiri hadi ipokee pakiti maalum ya ACK kutoka kwa mpokeaji.
  • Usaidizi uliojengewa ndani kwa ajili ya mtandao wa kuwekelea wa Yggdrasil: daemoni za mtandaoni zinaweza kufanya kazi kama washiriki kamili wa mtandao huru, bila kutumia utekelezwaji wa Yggdrasil wa wahusika wengine na bila kufanya kazi kikamilifu na rundo la IP kwenye kiolesura cha mtandao pepe.
  • Badala ya mifuatano iliyopangwa (RFC 3339), logi hutumia maingizo ya recfile, ambayo yanaweza kutumika na huduma za GNU Recutils.
  • Kwa hiari, vichwa vya pakiti vilivyosimbwa vinaweza kuhifadhiwa katika faili tofauti katika saraka ndogo ya "hdr/", na kuharakisha kwa kiasi kikubwa shughuli za urejeshaji orodha ya pakiti kwenye mifumo ya faili yenye ukubwa wa bloku kubwa, kama vile ZFS. Hapo awali, kurejesha kichwa cha pakiti ilihitaji kusoma tu kizuizi cha 128KiB kutoka kwa diski kwa chaguo-msingi.
  • Kutafuta faili mpya kunaweza kutumia kwa hiari mifumo midogo ya kqueue na inotify kernel, kufanya simu chache za mfumo.
  • Huduma huweka faili chache wazi na kuzifunga na kuzifungua tena mara chache. Kwa idadi kubwa ya vifurushi, hapo awali iliwezekana kukimbia kwenye kizuizi kwenye idadi kubwa ya faili zilizo wazi.
  • Timu nyingi zilianza kuonyesha maendeleo na kasi ya utendakazi kama vile kupakua/kupakia, kunakili na kuchakata (kutupa) vifurushi.
  • Amri ya "nncp-faili" inaweza kutuma sio faili moja tu, lakini pia saraka, kuunda kumbukumbu ya pax na yaliyomo kwenye kuruka.
  • Huduma za mtandaoni zinaweza kwa hiari kuomba urushaji wa pakiti baada ya kifurushi kupakuliwa kwa ufanisi, bila kuendesha daemoni tofauti ya "nncp-toss".
  • Simu ya mtandaoni kwa mshiriki mwingine inaweza kwa hiari kutokea sio tu wakati kipima saa kimeanzishwa, lakini pia wakati pakiti inayotoka inaonekana kwenye saraka ya spool.
  • Huhakikisha utendakazi chini ya NetBSD na OpenBSD OS, pamoja na FreeBSD na GNU/Linux iliyokuwa ikitumika hapo awali.
  • "nncp-daemon" inaoana kikamilifu na kiolesura cha UCSPI-TCP. Sambamba na uwezo wa kuingia kwenye kifafanuzi cha faili maalum (kwa mfano kwa kuweka "NNCPLOG=FD:4"), ni rafiki kabisa kuendesha chini ya huduma zinazofanana na daemontools.
  • Mkutano wa mradi umehamishiwa kabisa kwenye mfumo wa kufanya upya.

Chanzo: opennet.ru

Kuongeza maoni