-Please join the mailing list [8] to discuss the ideas behind Tahoe and
-extensions of and uses of Tahoe. Patches that extend and improve
-Tahoe are gratefully accepted -- roadmap.txt shows the next
-improvements that we plan to make and CREDITS lists the names of
-people who've contributed to the project. You can browse the revision
-control history, source code, and issue tracking at the Trac instance
-[9]. Please see the buildbot [10], which shows how Tahoe builds and
-passes unit tests on each checkin, and the code coverage results [11]
-and percentage-covered graph [12], which show how much of the Tahoe
-source code is currently exercised by the test suite.
-
-
-NETWORK ARCHITECTURE
-
-Each peer maintains a connection to each other peer. A single
-distinct server called an "introducer" is used to discover other peers
-with which to connect.
-
-To store a file, the file is encrypted and erasure coded, and each
-resulting share is uploaded to a different peer. The secure hash of
-the encrypted file and the encryption key are packed into a URI,
-knowledge of which is necessary and sufficient to recover the file.
-
-To fetch a file, starting with the URI, a subset of shares is
-downloaded from peers, the file is reconstructed from the shares, and
-then decrypted.
-
-A single distinct server called a "vdrive server" maintains a global
-mapping from pathnames/filenames to URIs.
-
-We are acutely aware of the limitations of decentralization and
-scalability inherent in this version. In particular, the
-completely-connected property of the grid and the requirement of a
-single distinct introducer and vdrive server limits the possible size
-of the grid. We have plans to loosen these limitations (see
-roadmap.txt). Currently it should be noted that the grid already
-depends as little as possible on the accessibility and correctness of
-the introduction server and the vdrive server. Also note that the
-choice of which servers to use is easily configured -- you should be
-able to set up a private grid for you and your friends almost as
-easily as to connect to our public test grid.
-
-
-SOFTWARE ARCHITECTURE
-
-Tahoe is a "from the ground-up" rewrite, inspired by Allmydata's
-existing consumer backup service. It is primarily written in the
-Python programming language.
-
-Tahoe is based on the Foolscap library [13] which provides a remote
-object protocol inspired by the capability-secure "E" programming
-language [14]. Foolscap allows us to express the intended behavior of
-the distributed grid directly in object-oriented terms while relying
-on a well-engineered, secure transport layer.
-
-The network layer is provided by the Twisted library [15].
-Computationally intensive operations are performed in native compiled
-code, such as the "zfec" library for fast erasure coding (also
-available separately: [16]).
-
-Tahoe is sponsored by Allmydata, Inc. [17], a provider of consumer
-backup services. Allmydata, Inc. contributes hardware, software,
-ideas, bug reports, suggestions, demands, and money (employing several
-allmydata.org Tahoe hackers and allowing them to spend part of their
-work time on the next-generation, free-software project). We are
-eternally grateful!
-
-
-Zooko O'Whielacronx
-on behalf of the allmydata.org Tahoe team
-August 17, 2007
-Grand Junction, Colorado
-
-
-[1] http://allmydata.org/trac/tahoe/browser/relnotes.txt?rev=849
-[2] http://allmydata.org/trac/tahoe/browser/docs/webapi.txt
-[3] http://allmydata.org/trac/tahoe/timeline?from=2007-08-17&daysback=51&changeset=on&ticket=on&wiki=on&update=Update
-[4] http://allmydata.org/trac/tahoe/wiki/UseCases
-[5] http://allmydata.org/source/tahoe/tahoe-0.5.tar.gz
-[6] http://allmydata.org/trac/tahoe/browser/README?rev=1102
-[7] http://allmydata.org/trac/tahoe/browser/roadmap.txt
-[8] http://allmydata.org/cgi-bin/mailman/listinfo/tahoe-dev
-[9] http://allmydata.org/trac/tahoe
-[10] http://allmydata.org/buildbot
-[11] http://allmydata.org/tahoe-figleaf/figleaf/
-[12] http://allmydata.org/tahoe-figleaf-graph/hanford.allmydata.com-tahoe_figleaf.html
-[13] http://twistedmatrix.com/trac/wiki/FoolsCap
-[14] http://erights.org/
-[15] http://twistedmatrix.com/
-[16] http://allmydata.org/trac/tahoe/browser/src/zfec
-[17] http://allmydata.com