Il sistema di archiviazione decentralizzato LF è stato trasferito a una licenza aperta

È disponibile la versione LF 1.1.0, uno storage decentralizzato replicabile in formato chiave/valore. Il progetto è sviluppato da ZeroTier, che crea uno switch Ethernet virtuale, consentendo di unire host e macchine virtuali ospitati presso diversi provider in una rete locale virtuale, i cui partecipanti scambiano dati in modalità P2P. Il codice del progetto è scritto in linguaggio C. La nuova versione è notevole per la transizione a una licenza libera MPL 2.0 (Mozilla Public License).

In precedenza, il codice LF era disponibile con licenza BSL (Business Source License), che non è considerata libera a causa della discriminazione di determinate categorie di utenti. La licenza BSL è stata proposta dai co-fondatori di MySQL come alternativa al modello Open Core. La sostanza della BSL è che il codice delle funzionalità avanzate è inizialmente disponibile per modifiche, ma per un certo periodo può essere utilizzato gratuitamente solo a condizione di rispettare requisiti aggiuntivi, e per evitarli è necessaria l'acquisto di una licenza commerciale.

LF è un sistema completamente decentralizzato che consente di distribuire un'archiviazione unificata dei dati in formato chiave-valore su un numero arbitrario di nodi. Su tutti i nodi, i dati sono mantenuti in uno stato sincronizzato, e tutte le modifiche vengono completamente replicate tra tutti i nodi. Tutti i nodi in LF sono uguali tra loro. L'assenza di nodi specifici che coordinano il funzionamento dell'archiviazione elimina il punto unico di guasto, e la presenza di una copia completa dei dati su ogni nodo esclude la perdita di informazioni in caso di malfunzionamento o disattivazione di nodi singoli.

Per connettersi alla rete di un nuovo nodo non è necessaria l'autorizzazione separata: chiunque può avviare il proprio nodo. Il modello di dati in LF è basato su un grafo aciclico orientato (DAG), che semplifica la sincronizzazione e consente di applicare diverse strategie di risoluzione dei conflitti e di sicurezza. A differenza dei sistemi basati su tabelle hash distribuite (DHT), l'architettura IF è progettata fin dall'inizio per l'uso in reti inaffidabili, dove la disponibilità continua dei nodi non è garantita. Come possibilità di applicazione, LF è citato per la creazione di sistemi di archiviazione altamente resilienti, in cui vengono memorizzati relativamente piccoli volumi di dati critici che cambiano raramente. Ad esempio, LF è adatto per archivi di chiavi, certificati, parametri di identificazione, file di configurazione, hash e di nomi di dominio.

Per proteggere da sovraccarichi e abusi, viene applicato un limite all'intensità delle operazioni di scrittura nello storage condiviso, realizzato sulla base della prova di lavoro (proof of work) — per poter salvare dati, un partecipante alla rete di storage deve completare un compito specifico, che è facilmente verificabile, ma richiede grandi risorse di calcolo (analogamente all'organizzazione di sistemi scalabili basati su blockchain e CRDT). I valori calcolati vengono anche utilizzati come indicatori nella risoluzione dei conflitti.

In alternativa, nella rete può essere avviato un'autorità di certificazione per rilasciare ai partecipanti certificati crittografici che conferiscono il diritto di aggiungere registrazioni senza conferma tramite lavoro e forniscono priorità nella risoluzione dei conflitti. Di default, lo storage è accessibile senza restrizioni per il collegamento di qualsiasi partecipante, ma su base opzionale, possono essere creati repository privati isolati sulla base di un sistema di certificati, i cui partecipanti possono essere solo nodi certificati dal proprietario della rete.

Caratteristiche principali di LF:

  • Semplicità nel dispiegamento del proprio storage e connessione a reti pubbliche di storage esistenti.
  • Mancanza di un singolo punto di guasto e possibilità di coinvolgere chiunque nel mantenimento dello storage.
  • Alta velocità di accesso a tutti i dati e possibilità di consultare i dati che rimangono sul proprio nodo, anche dopo un'interruzione della connettività di rete.
  • Modello di sicurezza universale che consente di combinare diversi meccanismi di risoluzione dei conflitti (euristica locale, peso basato sul lavoro svolto, considerazione del livello di fiducia degli altri nodi, certificati).
  • API flessibile per la richiesta di dati, che consente di specificare più chiavi annidate o intervalli di valori. Possibilità di associare più valori a una singola chiave.
  • Tutti i dati sono memorizzati in forma crittografata, comprese le chiavi, e vengono verificati. Il sistema può essere utilizzato per gestire lo storage di dati riservati su nodi non fidati. Le registrazioni, le cui chiavi non sono conosciute, non possono essere determinate tramite tentativi (senza conoscere la chiave, non è possibile ottenere i dati ad essa correlati).

Tra i limiti si evidenzia l'orientamento alla memorizzazione di piccole quantità di dati raramente modificati, l'assenza di blocchi e di coerenza dei dati garantita, ma con elevate esigenze di CPU, memoria, spazio di archiviazione e larghezza di banda, e una continua crescita della capacità di archiviazione nel tempo.

Fonte: opennet.ru

Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster