Tahoe-LAFS Architecture

Daira Hopwood

5ms
1 min readJun 30, 2017

There are three layers: the key-value store, the file store, and the application.

The lowest layer is the key-value store. The keys are “capabilities” — short ASCII strings — and the values are sequences of data bytes. This data is encrypted and distributed across a number of nodes, such that it will survive the loss of most of the nodes. There are no hard limits on the size of the values, but there may be performance issues with extremely large values (just due to the limitation of network bandwidth). In practice, values as small as a few bytes and as large as tens of gigabytes are in common use.

The middle layer is the decentralized file store: a directed graph in which the intermediate nodes are directories and the leaf nodes are files. The leafnodes contain only the data — they contain no metadata other than the length in bytes. The edges leading to leaf nodes have metadata attached to them about the file they point to. Therefore, the same file may be associated with different metadata if it is referred to through different edges.

The top layer consists of the applications using the file store. Allmydata.com used it for a backup service: the application periodically copies files from the local disk onto the decentralized file store. We later provide read-only access to those files, allowing users to recover them. There are several other applications built on top of the Tahoe-LAFSfile store

[…]

Full article: https://tahoe-lafs.org/trac/tahoe-lafs/browser/docs/architecture.rst

--

--

5ms
0 Followers

Cloud storage for the truly paranoid