From: freestorm77 Date: Sat, 24 Apr 2010 10:49:03 +0000 (-0700) Subject: doc_reformat_configuration.txt X-Git-Tag: trac-4400~66 X-Git-Url: https://git.rkrishnan.org/pf/content/en/service/module-simplejson.encoder.html?a=commitdiff_plain;h=1381884173df8010c06c59390d25492a47293b29;p=tahoe-lafs%2Ftahoe-lafs.git doc_reformat_configuration.txt - Added heading format begining and ending by "==" - Added Index - Added Title Note: No change are made in paragraphs content --- diff --git a/docs/architecture.txt b/docs/architecture.txt index 252d7d0f..c0eb8611 100644 --- a/docs/architecture.txt +++ b/docs/architecture.txt @@ -1,20 +1,10 @@ -= Tahoe-LAFS Architecture = -2. The Key-Value Store -3. File Encoding -4. Capabilities -5. Server Selection -6. Swarming Download, Trickling Upload -7. The Filesystem Layer -8. Leases, Refreshing, Garbage Collection -9. File Repairer -10. Security -11. Reliability - -== Overview == + Tahoe-LAFS Architecture (See the docs/specifications directory for more details.) +OVERVIEW + There are three layers: the key-value store, the filesystem, and the application. @@ -41,7 +31,7 @@ There are several other applications built on top of the Tahoe-LAFS filesystem (see the RelatedProjects page of the wiki for a list). -== The Key-Value Store == +THE KEY-VALUE STORE The key-value store is implemented by a grid of Tahoe-LAFS storage servers -- user-space processes. Tahoe-LAFS storage clients communicate with the storage @@ -74,7 +64,7 @@ For future releases, we have plans to decentralize introduction, allowing any server to tell a new client about all the others. -== File Encoding == +FILE ENCODING When a client stores a file on the grid, it first encrypts the file. It then breaks the encrypted file into small segments, in order to reduce the memory @@ -115,7 +105,7 @@ turn them into segments of ciphertext, use the decryption key to convert that into plaintext, then emit the plaintext bytes to the output target. -== Capabilities == +CAPABILITIES Capabilities to immutable files represent a specific set of bytes. Think of it like a hash function: you feed in a bunch of bytes, and you get out a @@ -147,7 +137,7 @@ filesystem layer (described below) adds human-meaningful names atop the key-value layer. -== Server Selection == +SERVER SELECTION When a file is uploaded, the encoded shares are sent to some servers. But to which ones? The "server selection" algorithm is used to make this choice. @@ -248,7 +238,7 @@ servers.) long-term connections, at the expense of complexity and latency. -== Swarming Download, Trickling Upload == +SWARMING DOWNLOAD, TRICKLING UPLOAD Because the shares being downloaded are distributed across a large number of nodes, the download process will pull from many of them at the same time. The @@ -279,7 +269,7 @@ in the same facility, so the helper-to-storage-server bandwidth is huge. See "helper.txt" for details about the upload helper. -== The Filesystem Layer == +THE FILESYSTEM LAYER The "filesystem" layer is responsible for mapping human-meaningful pathnames (directories and filenames) to pieces of data. The actual bytes inside these @@ -309,7 +299,7 @@ links to spaces that are shared with specific other users, and other spaces that are globally visible. -== Leases, Refreshing, Garbage Collection == +LEASES, REFRESHING, GARBAGE COLLECTION When a file or directory in the virtual filesystem is no longer referenced, the space that its shares occupied on each storage server can be freed, @@ -330,7 +320,7 @@ See docs/garbage-collection.txt for further information, and how to configure garbage collection. -== File Repairer == +FILE REPAIRER Shares may go away because the storage server hosting them has suffered a failure: either temporary downtime (affecting availability of the file), or a @@ -387,7 +377,7 @@ to other nodes. in client behavior. -== Security == +SECURITY The design goal for this project is that an attacker may be able to deny service (i.e. prevent you from recovering a file that was uploaded earlier) @@ -451,7 +441,7 @@ normal web site, using username and password to give a user access to her capabilities). -== Reliability == +RELIABILITY File encoding and peer-node selection parameters can be adjusted to achieve different goals. Each choice results in a number of properties; there are