gzz-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gzz-commits] manuscripts/pointers article.rst


From: Benja Fallenstein
Subject: [Gzz-commits] manuscripts/pointers article.rst
Date: Sat, 01 Nov 2003 20:46:58 -0500

CVSROOT:        /cvsroot/gzz
Module name:    manuscripts
Branch:         
Changes by:     Benja Fallenstein <address@hidden>      03/11/01 20:46:57

Modified files:
        pointers       : article.rst 

Log message:
        move related work into intro

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/manuscripts/pointers/article.rst.diff?tr1=1.61&tr2=1.62&r1=text&r2=text

Patches:
Index: manuscripts/pointers/article.rst
diff -u manuscripts/pointers/article.rst:1.61 
manuscripts/pointers/article.rst:1.62
--- manuscripts/pointers/article.rst:1.61       Sat Nov  1 19:39:07 2003
+++ manuscripts/pointers/article.rst    Sat Nov  1 20:46:57 2003
@@ -87,17 +87,56 @@
 and increase availability. However, if the Web worked like
 a file-sharing system, Web pages could never be updated.
 
-While some file-sharing systems provide URIs
-for particular versions of a file, using cryptographic hashes
-(e.g., [XXXrefs]), these files cannot be updated;
-a new version would have a different hash, and thus
-a different URI. 
-The few P2P systems that offer an update mechanism
-do so in a way that requires the network to remember
-the current version of a document; for example, CFS [XXXref]
-stores in its distributed hashtable (DHT) a mapping
-from document indentifiers to the current versions
-of these documents.
+Some file-sharing systems offer URIs for files (e.g., [XXXref]).
+These URIs are based on the files' cryptographic hashes.
+A new version of a Web page would have a different hash,
+and thus a different URI.
+
+There are a few (non-file-sharing) P2P systems 
+that do offer an update mechanism. *CFS* [XXXref] 
+is a file system based on Chord [XXXref], storing
+data in a distributed hashtable (DHT). CFS identifies
+different users' trees by the users' cryptographic keys;
+it stores in its DHT mappings from these keys to the
+the current version of the tree. A node participating
+in the DHT will update a mapping if the update message
+is signed with the appropriate key, and contains a timestamp
+newer than that of the current version.
+
+*Oceanstore* [XXXref] XXX
+
+*Freenet* [XXXref] was originally planned to have an
+update mechanism where the network would remember
+the current version of a document, and update this information
+when receiving a message signed by the appropriate key,
+rather like in Oceanstore [XXXref]. However, in practice,
+Freenet has a rather peculiar combination 
+of two workarounds [XXXref Freenet FAQ]:
+
+In date-based updating, the key for the current version
+is formed by concatenating a document's id with the current date;
+this requires publishers to insert versions of their document
+every day, otherwise they will not be accessible.
+
+In edition-based updating, versions ``n`` and ``n+1``
+have different URIs, but version ``n`` links to version ``n+1``
+using an ``<img>`` link; the image will not show until
+version ``n+1`` is actually inserted into the system, so
+if the image does show up, the user knows that they can click
+on it to get to a newer version of the document.
+
+Finally, a simplistic approach to P2P versioning
+is to have a centralized server keep track of the current version
+of a document, such as in the Content-Addressable Web 
+proposal [XXXref -> google it], in which clients download 
+a file's hash through HTTP (using an HTTP URI),
+then download the file through, e.g., a file-sharing network.
+This provides some of the efficiency advantages of a P2P Web.
+However, there is still a single point of failure;
+links still break when pages move to a different directory
+or Web server; and when the original publisher loses interest
+and stops publishing a page, it disappears, even if
+someone else would have kept a copy.
 
 .. <<<In file-sharing systems, versioning
    would be useful for media files like the e-books
@@ -106,10 +145,7 @@
 
 .. Standing on the shoulders of giants: Example of Web links rotting away
 
-A P2P-based Web would make Web pages more permanent
-by keeping them accessible as long as there is some peer
-that keeps a copy. This is an important concern.
-
+These are important concerns.
 In 1997, NASA launched the Cassini-Huygens spacecraft
 on a mission to Saturn. Before the launch, the mission
 was widely criticized for its use of radioisotope
@@ -284,78 +320,78 @@
 
 
 
-Related work
-============
+.. Related work
+   ============
 
-In this section, we briefly summarize how existing peer-to-peer 
-systems deal with versioning. We have tried to classify peer-to-peer
-system into four different categories based on their versioning 
-model below. We conclude that existing peer-to-peer do not provide all the 
-benefits of hash-based addressing scheme.
+   In this section, we briefly summarize how existing peer-to-peer 
+   systems deal with versioning. We have tried to classify peer-to-peer
+   system into four different categories based on their versioning 
+   model below. We conclude that existing peer-to-peer do not provide all the 
+   benefits of hash-based addressing scheme.
 
   
-No versioning model
--------------------
+   No versioning model
+   -------------------
 
-PAST [rowstron01storage]_ is a persistent storage system 
-that uses pastry [rowston01pastry]_ 
-for locating data in a Peer-to-Peer environment.
-Nodes and data items are distributed uniformly based on the hash 
-identifier in a PAST network. Free Haven [dingledine00free]_ 
-provides a distributed anonymous persistent data storage. It uses 
-both cryptography and routing techniques to provide anonymity for 
-the participating peers and splits a file to a number of shares 
-which are distributed through a network. 
-
-.. Regular filesharing apps:
-.. Gnutella
-.. Fasttrack stack (Kazaa/Morpheus)
-.. Shareaza (magnet uri's)
-.. Overnet/eDonkey2000/eMule/MlDonkey (have location-independent identifiers, 
MD4 hashes)
-.. BitTorrent
-
-Centralized versioning model
-----------------------------
-
-.. SFS is a network filesystem that does not support of searching
-   docs. IMHO it's not relevant w.r.t. the article (as Mnet is
-   not either)  
+   PAST [rowstron01storage]_ is a persistent storage system 
+   that uses pastry [rowston01pastry]_ 
+   for locating data in a Peer-to-Peer environment.
+   Nodes and data items are distributed uniformly based on the hash 
+   identifier in a PAST network. Free Haven [dingledine00free]_ 
+   provides a distributed anonymous persistent data storage. It uses 
+   both cryptography and routing techniques to provide anonymity for 
+   the participating peers and splits a file to a number of shares 
+   which are distributed through a network. 
+
+   .. Regular filesharing apps:
+   .. Gnutella
+   .. Fasttrack stack (Kazaa/Morpheus)
+   .. Shareaza (magnet uri's)
+   .. Overnet/eDonkey2000/eMule/MlDonkey (have location-independent 
identifiers, MD4 hashes)
+   .. BitTorrent
+
+   Centralized versioning model
+   ----------------------------
+
+   .. SFS is a network filesystem that does not support of searching
+      docs. IMHO it's not relevant w.r.t. the article (as Mnet is
+      not either)  
   
-Like Free Haven, Publius [pub00]_ focuses on anonymity of the
-participating nodes. Compared to Free Haven, however, Publius
-has a support for destructive updates. An issue with Publius
-is that it requires a globally maintained list of participating
-nodes currently available in a system.
+   Like Free Haven, Publius [pub00]_ focuses on anonymity of the
+   participating nodes. Compared to Free Haven, however, Publius
+   has a support for destructive updates. An issue with Publius
+   is that it requires a globally maintained list of participating
+   nodes currently available in a system.
   
-OceanStore [kubiatowicz00oceanstore]_ is a global storage system 
-based on Tapestry [zhao01tapestry]_ routing algorithm. It 
-supports non-destructive, linearly versioned updates through a 
-centralized Byzantine agreement protocol. 
-      
+   OceanStore [kubiatowicz00oceanstore]_ is a global storage system 
+   based on Tapestry [zhao01tapestry]_ routing algorithm. It 
+   supports non-destructive, linearly versioned updates through a 
+   centralized Byzantine agreement protocol. 
+       
   
-Network-level destructive versioning
-------------------------------------
+   Network-level destructive versioning
+   ------------------------------------
 
-CFS [dabek01widearea]_ is based on Chord [stoica01chord]_ and 
-stores data blocks, fragments of files, and spreads blocks 
-uniformly through the network based on identifier of a block.
-CFS has a support for versioning, but in a way that allows 
-only the publisher of a file system to do a destructive 
-versioning for a data item. The versioning takes place at
-network-level since the hash of the data block determines 
-which host maintains a data block in the overlay.
-
-
-Miscellaneous versioning models
--------------------------------
-
-Freenet [freenet-ieee]_ uses a probabilistic routing scheme to 
-preserve the anonymity of the participating nodes in a network.
-It uses the "edition" versioning model: one can link 
-version x to a link representing version y even if version y 
-does not exist in a system yet.
+   CFS [dabek01widearea]_ is based on Chord [stoica01chord]_ and 
+   stores data blocks, fragments of files, and spreads blocks 
+   uniformly through the network based on identifier of a block.
+   CFS has a support for versioning, but in a way that allows 
+   only the publisher of a file system to do a destructive 
+   versioning for a data item. The versioning takes place at
+   network-level since the hash of the data block determines 
+   which host maintains a data block in the overlay.
+
+
+   Miscellaneous versioning models
+   -------------------------------
+ 
+   Freenet [freenet-ieee]_ uses a probabilistic routing scheme to 
+   preserve the anonymity of the participating nodes in a network.
+   It uses the "edition" versioning model: one can link 
+   version x to a link representing version y even if version y 
+   does not exist in a system yet.
 
-.. ??? XXX I don't understand the above AT ALL
+   .. ??? XXX I don't understand the above AT ALL
 
 Primitive block storage abstraction
 ===================================




reply via email to

[Prev in Thread] Current Thread [Next in Thread]