Gedecentraliseerde LF-opslag is overgedragen naar een open licentie

LF 1.1.0, een gedecentraliseerde, gerepliceerde sleutel-/waardegegevensopslag, is nu beschikbaar. Het project wordt ontwikkeld door ZeroTier, dat een virtuele Ethernet-switch ontwikkelt waarmee je hosts en virtuele machines van verschillende providers kunt combineren in één virtueel lokaal netwerk, waarvan de deelnemers gegevens uitwisselen in P2P-modus. De projectcode is geschreven in C-taal. De nieuwe release valt op door de overgang naar de gratis MPL 2.0-licentie (Mozilla Public License).

Voorheen was de LF-code beschikbaar onder een BSL (Business Source License), die niet gratis is vanwege discriminatie van bepaalde categorieën gebruikers. De BSL-licentie werd door de medeoprichters van MySQL voorgesteld als alternatief voor het Open Core-model. Het uitgangspunt van BSL is dat de geavanceerde functionaliteitscode in eerste instantie beschikbaar is voor wijziging, maar alleen gedurende een bepaalde periode gratis kan worden gebruikt als aan aanvullende voorwaarden wordt voldaan, waarvoor de aanschaf van een commerciële licentie nodig is om deze te omzeilen.

LF is een volledig gedecentraliseerd systeem waarmee u één gegevensopslag in een sleutelwaarde-indeling kunt implementeren bovenop een willekeurig aantal knooppunten. Gegevens worden op alle knooppunten gesynchroniseerd gehouden en alle wijzigingen worden volledig op alle knooppunten gerepliceerd. Alle knooppunten in LF zijn gelijk aan elkaar. Door de afwezigheid van afzonderlijke knooppunten die de werking van de opslag coördineren, kunt u één enkel storingspunt elimineren, en de aanwezigheid van een volledige kopie van de gegevens op elk knooppunt elimineert het verlies van informatie wanneer individuele knooppunten uitvallen of worden losgekoppeld.

Om een ​​nieuw knooppunt op het netwerk aan te sluiten, hoeft u geen afzonderlijke machtigingen aan te vragen: iedereen kan zijn eigen knooppunt starten. Het datamodel van LF is opgebouwd rond een gerichte acyclische grafiek (DAG), die de synchronisatie vereenvoudigt en een verscheidenheid aan conflictoplossing en beveiligingsstrategieën mogelijk maakt. In tegenstelling tot gedistribueerde hashtabelsystemen (DHT), is de IF-architectuur in eerste instantie ontworpen voor gebruik in onbetrouwbare netwerken waar de constante beschikbaarheid van knooppunten niet gegarandeerd is. Onder de toepassingsgebieden van LF wordt het creëren van de meest duurzame opslagsystemen genoemd, waarin relatief kleine hoeveelheden kritische gegevens worden opgeslagen die zelden veranderen. LF is bijvoorbeeld geschikt voor sleutelopslag, certificaten, identiteitsparameters, configuratiebestanden, hashes en domeinnamen.

Ter bescherming tegen overbelasting en misbruik wordt een limiet toegepast op de intensiteit van schrijfbewerkingen naar de gedeelde opslag, geïmplementeerd op basis van proof of work - om gegevens te kunnen opslaan moet een deelnemer aan het opslagnetwerk een bepaalde taak, die gemakkelijk kan worden geverifieerd, maar grote rekenbronnen vereist (vergelijkbaar met het organiseren van de uitbreiding van systemen op basis van blockchain en CRDT). De berekende waarden worden ook gebruikt als teken bij het oplossen van conflicten.

Als alternatief kan een certificeringsinstantie op het netwerk worden gelanceerd om cryptografische certificaten uit te geven aan deelnemers, waardoor het recht wordt gegeven om records toe te voegen zonder bevestiging van werk en prioriteit wordt gegeven aan het oplossen van conflicten. Standaard is de opslag zonder beperkingen beschikbaar voor het verbinden van eventuele deelnemers, maar optioneel kunnen op basis van een certificatensysteem omheinde privéopslagplaatsen worden gecreëerd, waarin alleen door de eigenaar van het netwerk gecertificeerde knooppunten deelnemer kunnen worden.

Belangrijkste kenmerken van LF:

  • Eenvoudig uw eigen opslag implementeren en verbinding maken met bestaande openbare opslagnetwerken.
  • Er is geen single point of fail en de mogelijkheid om iedereen te betrekken bij het onderhoud van de opslag.
  • Hogesnelheidstoegang tot alle gegevens en de mogelijkheid om toegang te krijgen tot de gegevens die op het knooppunt achterblijven, zelfs na een verstoring van de netwerkconnectiviteit.
  • Een universeel beveiligingsmodel waarmee u verschillende mechanismen voor conflictoplossing kunt combineren (lokale heuristieken, gewicht op basis van voltooid werk, rekening houdend met het vertrouwensniveau van andere knooppunten, certificaten).
  • Een flexibele API voor het opvragen van gegevens waarmee meerdere geneste sleutels of waardebereiken kunnen worden opgegeven. Mogelijkheid om meerdere waarden aan één sleutel te binden.
  • Alle gegevens worden gecodeerd opgeslagen, inclusief sleutels, en geverifieerd. Het systeem kan worden gebruikt om de opslag van vertrouwelijke gegevens op onbetrouwbare knooppunten te organiseren. Records waarvan de sleutels niet bekend zijn, kunnen niet met brute kracht worden bepaald (zonder de sleutel te kennen is het onmogelijk om de daaraan gekoppelde gegevens te verkrijgen).

Beperkingen zijn onder meer een focus op het opslaan van kleine, zelden veranderende gegevens, de afwezigheid van vergrendelingen en gegarandeerde gegevensconsistentie, hoge eisen aan CPU, geheugen, schijfruimte en bandbreedte, en een constante toename van de opslaggrootte in de loop van de tijd.

Bron: opennet.ru

Voeg een reactie