/[gzz]/manuscripts/storm/short-paper.rst
ViewVC logotype

Diff of /manuscripts/storm/short-paper.rst

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.12 by benja, Thu May 29 22:59:32 2003 UTC revision 1.13 by benja, Fri May 30 01:23:08 2003 UTC
# Line 13  links break when documents are moved aro Line 13  links break when documents are moved aro
13     on the Web, they are a necessity for making Web-like hyperlinks     on the Web, they are a necessity for making Web-like hyperlinks
14     useful on the local desktop.     useful on the local desktop.
15    
16  We propose Storm, a storage system identifying documents by  We propose Storm, a storage system for use both on the
17  cryptographic hashes and signatures, independently of their  desktop and the public network. Storm assigns a document
18  location. Our system automatically finds link targets wherever  a permanent URI when it is created. Using peer-to-peer
19  they are, on the local system or on the network.  technology, we can find documents even though our URIs
20  On the network, our identifiers are resolved  do not include location information.
 through a peer-to-peer distributed hashtable.  
21  Thus, links continue to work unchanged when documents are emailed  Thus, links continue to work unchanged when documents are emailed
22  or published on the network.  or published on the network.
23    
24  Our system uses URIs to integrate with the Web. We have so far  We have extended KDE and Netscape Communicator 4 to understand
25  extended KDE and Netscape Communicator 4 to understand  our experimental URIs. Most other systems can use Storm
 our experimental URN namespace. Most other systems can use Storm  
26  through an HTTP gateway.  through an HTTP gateway.
27    
28  .. raw:: latex  .. raw:: latex
# Line 44  Introduction Line 42  Introduction
42  .. documents can be linked like web pages,  .. documents can be linked like web pages,
43     which would make them part of the web:     which would make them part of the web:
44    
45  Bush's Memex [XXX] was to be a hypermedia device  While many Web pages are densely interlinked today,
 for personal use, not for hypermedia publication.  
   
 Yet, while many Web pages are densely interlinked today,  
46  desktop documents still have rarely any hypermedia  desktop documents still have rarely any hypermedia
47  functionality. Even though documents written with  functionality. Even though documents written with
48  Microsoft Word or OpenOffice.org can nowadays be  Microsoft Word or OpenOffice.org can nowadays be
# Line 59  keeping hyperlinked notes, for referring Line 54  keeping hyperlinked notes, for referring
54  pieces of documents in discussion, or to  pieces of documents in discussion, or to
55  refer from a short memo to a document  refer from a short memo to a document
56  with more in-depth information.  with more in-depth information.
 Both individuals and workgroups could benefit  
 from such functionality.  
57    
58  .. links needed that don't break when documents are moved:  .. links needed that don't break when documents are moved:
59    
60  We believe that a major burden to hypermedia  A major obstacle to hypermedia
61  on the desktop is breaking links.  on the desktop is breaking links. A user receiving
62  When sending a couple of hyperlinked notes per  hyperlinked documents would have to reconstruct
63  mail, the receiver would have to assemble them  the original directory structure; otherwise the links
64  into the sender's directory structure. A document  won't work.
 collaboratively authored by sender and receiver  
 could not be linked to, except if both parties  
 place it in exactly the same directory.  
65    
66  .. using location-independent identifiers for  .. using location-independent identifiers for
67     non-breaking links:     non-breaking links:
# Line 79  place it in exactly the same directory. Line 69  place it in exactly the same directory.
69  If desktop documents could be refered to independently  If desktop documents could be refered to independently
70  of their location, it would be possible to make  of their location, it would be possible to make
71  non-breaking links to them. When a document is published  non-breaking links to them. When a document is published
72  on the Web, it would have the same URI [XXX] as on the  on the Web, it would have the same URI as on the
73  author's desktop. When a link to a document is emailed,  author's desktop. When a link to a document is emailed,
74  the receiver could follow the link as long as their  the receiver could follow the link as long as their
75  computer can find the linked document-- on its local  computer can find the linked document-- on its local
76  harddisk, attached to another email, or on the  harddisk, attached to another email, or on the
77  public Internet.  public Internet.
78    
 .. contribution of this paper:  
   
 This document describes Storm, a library for  
 storing and retrieving data using  
 location-independent Uniform Resource Names [XXX].  
   
   
 Related work  
 ============  
   
79  .. Freenet's cryptographical identifiers:  .. Freenet's cryptographical identifiers:
80    
81  Location-independent identifiers aren't a new idea.  Location-independent identifiers aren't a new idea.
82  In Freenet [freenet-ieee]_, an anonymous peer-to-peer  In Freenet [freenet-ieee]_, an anonymous peer-to-peer
83  publication system, *cryptographic hashes* [XXX]  publication system, *cryptographic hashes* [bakhtiari95cryptographic]_
84  are used to identify versions of documents. Hashes  are used to identify versions of documents. Hashes
85  are short, e.g. 20 bytes, yet it is extremely unlikely  are short, e.g. 20 bytes, yet it is extremely unlikely
86  that two different documents will ever have the same hash,  that two different documents will ever have the same hash,
87  making them ideal identifiers on the Web.  making them ideal identifiers on the Web.
88    
89  Hashes allow reference to a single version of a  .. Hashes allow reference to a single version of a
90  document. Documents are refered to by public keys [XXX].     document. Documents are refered to by public keys [XXX].
91  The private key corresponding to a document's public key     The private key corresponding to a document's public key
92  can update the document by digitally signing a new version     can update the document by digitally signing a new version
93  of it.     of it.
94    
95  However, finding a document on Freenet can be     However, finding a document on Freenet can be
96  quite slow, taking many seconds. This is not     quite slow, taking many seconds. This is not
97  acceptable for general Web publishing.     acceptable for general Web publishing.
98    
99  .. non-breaking links seem not globally resolvable:  .. non-breaking links seem not globally resolvable:
100    
# Line 122  Many hypermedia systems Line 102  Many hypermedia systems
102  assume that identifiers either have to  assume that identifiers either have to
103  say where a document can be found on the network, or they  say where a document can be found on the network, or they
104  cannot be efficiently resolved on a global scale.  cannot be efficiently resolved on a global scale.
 URLs, location-dependent identifiers, break when documents are  
 moved. Link services often query only a select set of link  
 servers, not the whole network [hill94extending-andalso-carr95dls]_.  
   
105  Berners-Lee [name-myth]_ argues that for this reason,  Berners-Lee [name-myth]_ argues that for this reason,
106  using unique, random-looking numbers to identify documents  using unique, random-looking numbers to identify documents
107  is not possible on a global scale.  is not possible on a global scale.
# Line 133  is not possible on a global scale. Line 109  is not possible on a global scale.
109  .. but DHTs can do it:  .. but DHTs can do it:
110    
111  However, recent developments in peer-to-peer systems have  However, recent developments in peer-to-peer systems have
112  rendered this assumption obsolete. Distributed hashtables  rendered this assumption obsolete. Distributed hashtables (DHTs)
113  (DHTs) and other structured overlay networks  [malkhi02viceroy-andalso-maymounkov02kademlia-andalso-ratnasamy01can-andalso-rowston01pastry-andalso-stoica01chord-andalso-zhao01tapestry]_
 [AspnesS2003-andalso-bonsma02swan-andalso-malkhi02viceroy-andalso-maymounkov02kademlia-andalso-ratnasamy01can-andalso-rowston01pastry-andalso-stoica01chord-andalso-zhao01tapestry]_  
114  allow location-independent identifiers  allow location-independent identifiers
115  to be resolved on a global scale.  to be resolved on a global scale.
116    
# Line 144  to be resolved on a global scale. Line 119  to be resolved on a global scale.
119  DHTs can not only be used to efficiently retrieve documents  DHTs can not only be used to efficiently retrieve documents
120  given their location-independent identifier, but also  given their location-independent identifier, but also
121  to retrieve metadata about the documents. For example,  to retrieve metadata about the documents. For example,
122    unlike many link services that only query a limited
123    set of servers for links [hill94extending]_,
124  all external links to a document can be found using  all external links to a document can be found using
125  a DHT.  a DHT.
126    
127  .. brief summary how DHTs work? XXX  .. contribution of this paper:
128    
129  This, we believe, may be the most important result of peer-to-peer  This document describes Storm, a library for
130  research with regard to hypermedia.  storing and retrieving data using
131    location-independent URIs.
132    
133    
134  Storm  Storm
# Line 164  documents from the network. Line 142  documents from the network.
142  Our system, Storm (for STORage Modules),  Our system, Storm (for STORage Modules),
143  uses Freenet-like cryptographic identifiers.  uses Freenet-like cryptographic identifiers.
144    
145    On the user level, Storm could be used as a
146    replacement for both file names and HTTP URLs
147    as document identifiers (although our implementation
148    uses both files and HTTP internally).
149    
150  .. part of the web -- URN scheme (so far experimental,  .. part of the web -- URN scheme (so far experimental,
151     targetting registration):     targetting registration):
152    
153  We are using an experimental URN (Uniform Resource Name,  We are using an experimental URN namespace
154  [XXX]) namespace and are preparing the registration  (Uniform Resource Name, a persistent kind of URI)
155    and are preparing the registration
156  of an informal namespace with IANA. This allows our  of an informal namespace with IANA. This allows our
157  system's identifiers to be used in Web hyperlinks.  system's identifiers to be used in Web hyperlinks.
158    
# Line 198  URNs yet, but can load and save document Line 182  URNs yet, but can load and save document
182  Storm through the HTTP gateway. OpenOffice.org  Storm through the HTTP gateway. OpenOffice.org
183  can load documents through the HTTP gateway,  can load documents through the HTTP gateway,
184  but cannot save to it, because the gateway  but cannot save to it, because the gateway
185  does not support WebDAV.  does not support WebDAV (HTTP-based distributed
186    authoring and versioning).
187    
188  .. web interface for searching etc.  .. web interface for searching etc.
189    
# Line 208  stored on their local hard disk, and all Line 193  stored on their local hard disk, and all
193  to conduct searches over the titles of all documents  to conduct searches over the titles of all documents
194  published on the network.  published on the network.
195    
196    Our system implements append-and-delete-only
197    storage; past versions of documents are stored
198    unless deleted explicitly. It is possible to
199    store only the differences between versions.
200    
201    
202  Conclusions  Conclusions
203  ===========  ===========
204    
205  ..  We have presented Storm, a storage system unifying
206    the namespaces for private and published documents.
207    This may help in making hyperlinks between desktop
208    documents more convenient.
209    
210    A distributed hashtable is used to find published documents.
211    While the core of Storm has been in use for almost
212    three years, the peer-to-peer subsystem has only recently
213    been implemented.
214    
215    Currently, a number of systems can use Storm
216    through the HTTP gateway. A next step will be
217    WebDAV support, allowing many more systems to
218    save data in Storm.
219    
220    Storm can also be used to implement the more ambitious
221    Xanalogical hypertext model [#]_ [lukka02guids]_.
222    Storm is available as Free Software from
223    ``http://sv.gnu.org/projects/storm``.
224    
225    .. [#] Our implementation of Xanalogical storage
226       is available at ``http://sv.gnu.org/projects/alph``.
227    
228  Acknowledgements  Acknowledgements
229  ================  ================

Legend:
Removed from v.1.12  
changed lines
  Added in v.1.13

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26