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: Thu, 06 Nov 2003 01:40:06 -0500

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

Modified files:
        pointers       : article.rst 

Log message:
        relate storm model to article; I think the points I want to be made are 
there now...

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

Patches:
Index: manuscripts/pointers/article.rst
diff -u manuscripts/pointers/article.rst:1.135 
manuscripts/pointers/article.rst:1.136
--- manuscripts/pointers/article.rst:1.135      Wed Nov  5 15:23:41 2003
+++ manuscripts/pointers/article.rst    Thu Nov  6 01:40:05 2003
@@ -29,22 +29,19 @@
 that are indexed
 using normal P2P techniques for locating the most
 recent version.
-To make maximal use of pointer records,
-we present the Storm data model, an abstraction
-for several different types of P2P networks and other
+We also present the Storm data model, 
+an API abstracting over
+several different types of P2P networks and other
 storage media. Using pointer records and the Storm
 data model, several P2P networks can be used interoperably
 as a P2P Web (except, naturally, for dynamically generated CGI pages), 
-and
-web pages
-can reside on any host and on any network
-without having to change the reference.
+and web pages
+can have the same URI while residing on any host on any network.
 Past versions of a web page 
 remain accessible as long as anybody keeps a copy.
-We discuss our preliminary implementation,
-and
-applications of pointer records and the Storm data model to
-P2P-based software distribution and upgrading,
+We discuss our preliminary implementation
+as well as possible applications of pointer records
+and the Storm data model outside the P2P Web.
 
 
 ..  This loses a major benefit of filesharing:
@@ -228,6 +225,19 @@
 as long as
 anybody keeps a copy.
 
+An additional contribution is the Storm data model,
+an API formalizing the notion of hash-based addressing
+and content-based lookup that can be implemented
+using many different P2P architectures (including
+DHTs and the flooding broadcast search of Gnutella [gnutellaurl]_).
+The Storm data model provides a convenient interface
+to applications such as Web browsers, which then
+need not worry about the P2P network(s) used to
+resolve the identifiers. Pointer records can be implemented
+on top of the Storm model, meaning that they do not
+need to be implemented separately for each time of
+P2P network.
+
 ..  Like in OceanStore, old
     versions remain fully accessible (as long as somebody
     keeps a copy).
@@ -246,8 +256,7 @@
 
 The remainder of this paper is structured as follows.
 In Section 2, we introduce pointer records.
-In Section 3, we discuss the minimal hash-based data model required
-for implementing pointers.
+In Section 3, we present the Storm data model.
 In Section 4 we discuss some applications
 of pointer records, and Section 5 gives an overview of our
 implementation. Section 6 concludes.
@@ -336,22 +345,18 @@
        searching different networks for versions
 
 
-The Storm data model: an abstraction of primitive block storage 
-===============================================================
+The Storm data model
+====================
 
 In this section, we introduce the Storm [#]_ data model, 
-a simple but powerful abstraction that can represent
-all data on the P2P Web and that maps well to
-the functionality of current P2P filesharing systems
-as well as local storage.
+a simple but powerful abstraction over both local storage
+and several P2P networks. The Storm API can be used
+by P2P Web applications, which then do not have to deal
+with each P2P network implementation independently.
 
 The Storm abstraction does not provide any new functionality;
-indeed, it does not provide all the features of advanced
-systems such as OceanStore or Freenet. 
-Rather, it is the *least requirements* 
-on which a pointer records -based
-P2P Web system may be built.
-
+it merely provides a common API for the hash-based addressing
+and content-based search present in many existing P2P systems.
 
 .. [#] For STORage Module. Storm is also the name of our
    Free Software implementation, discussed in
@@ -373,8 +378,8 @@
 Pools
     A *pool* is a collection of blocks. The data published
     by a particular P2P Web server, the data downloaded
-    by a client, the data in a client's cache, and all the
-    data published on the whole Web can all be seen as a pool.
+    by a client, the data in a client's cache, and all 
+    data available on the whole P2P Web can all be seen as a pool.
     A pool provides the functionality to
     fetch a block by its global id; local (cache- or filesystem-like)
     pools also allow
@@ -429,8 +434,10 @@
 Applications
 ============
 
-In this section, we discuss three possible applications
-of pointer records: A P2P Web, a distributed Wayback Machine,
+In this section, we discuss four possible applications
+of pointer records and the Storm data model: 
+A P2P Web, a distributed Wayback Machine, 
+a P2P-enabled media player,
 and software updates akin to Debian ``apt`` and Windows Update.
 
 **A File-shared, Decentralized, Heterogeneous Web.**
@@ -484,6 +491,19 @@
 as the rest of the file-shared web, simply configured slightly
 differently.
 
+**A P2P-enabled media player** could
+use the Storm data model to manage the local collection
+of media files. Using the Storm API, it could provide search over
+both local files and files on the P2P Web
+in a network-transparent fashion. When a user
+downloads a playlist from the P2P Web, songs
+that aren't in the local media library could be
+downloaded automatically, if publicly available.
+For versioned media files, the player could
+notify the user of updates or download them automatically;
+for example, if spelling and translation errors
+in a movie's subtitles have been corrected.
+
 **Software updates.**
 As an example of a different application,
 pointer records could be used to implement
@@ -529,7 +549,11 @@
 public access. The HTTP gateway can be configured to
 insert on each HTML page a "history" link, which allows the user
 to browse past versions of the page, using the history
-created by pointer records. When run on the local machine,
+created by pointer records. 
+Through a simple reverse index, it was also easy to implement
+a "backlinks" functionality, which tells the user which
+pages link *to* a given Web page.
+When run on the local machine,
 documents owned by the machine's owner can also be
 edited through simple WebDAV clients.
 




reply via email to

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