40 |
[ref chord, can, tapestry, pastry, kademlia, symphony, viceroy, |
[ref chord, can, tapestry, pastry, kademlia, symphony, viceroy, |
41 |
skip graph, swan] allow location-independent identifiers |
skip graph, swan] allow location-independent identifiers |
42 |
to be resolved on a global scale. |
to be resolved on a global scale. |
43 |
It is now feasible to do a global search for all information |
It is now feasible to do a global search to find all information |
44 |
about a given identifier, on any peer in the network. |
about a given identifier, on any peer in the network. |
45 |
This, we believe, may be the most important result of peer-to-peer |
This, we believe, may be the most important result of peer-to-peer |
46 |
research with regard to hypermedia. |
research with regard to hypermedia. |
47 |
|
|
48 |
We examine how location-independent identifiers can support *data mobility*. |
We examine how location-independent identifiers can support *data mobility*. |
49 |
In today's computing world, documents move quite freely between |
In today's computing world, documents move quite freely between |
50 |
computers: being sent as e-mail attachments, carried around on disks, |
computers: they are sent as e-mail attachments, carried around on disks, |
51 |
published on the web, moved between desktop and laptop systems, |
published on the web, moved between desktop and laptop systems, |
52 |
downloaded for off-line reading or copied between computers in a LAN. |
downloaded for off-line reading or copied between computers in a LAN. |
53 |
We use 'data mobility' as a collective term for the movement of documents |
We use 'data mobility' as a collective term for the movement of documents |
54 |
between computers (or locations on one computer, such as folders), |
between computers (or folders!), |
55 |
and movement of content between documents (through copy&paste) [#]_. |
and movement of content between documents (through copy&paste) [#]_. |
56 |
|
|
57 |
.. [#] While the physical mobility of e.g. notebooks may effect |
.. [#] While the physical mobility of e.g. notebooks may effect |
68 |
.. [#] It might be more appropriate to speak about *resources* |
.. [#] It might be more appropriate to speak about *resources* |
69 |
and *references* instead of *documents* and *links*, but |
and *references* instead of *documents* and *links*, but |
70 |
in the spirit of [ref kappe95scalable], we stick with |
in the spirit of [ref kappe95scalable], we stick with |
71 |
the latter terms for explanation purposes. |
the simpler terms for explanation purposes. |
72 |
|
|
73 |
*Dangling links* are an issue when documents are moved |
*Dangling links* are an issue when documents are moved |
74 |
between servers; when no network connection is available, |
between servers; when no network connection is available, |
85 |
|
|
86 |
Advanced hypermedia systems such as Microcosm and Hyper-G |
Advanced hypermedia systems such as Microcosm and Hyper-G |
87 |
address dangling links through a notification system [ref]: |
address dangling links through a notification system [ref]: |
88 |
When a document is moved, servers storing links to it are notified. |
When a document is moved, a message is sent to servers storing links to it. |
89 |
Hyper-G uses an efficient protocol for delivering such notifications |
Hyper-G uses an efficient protocol for delivering such notifications |
90 |
on the public Internet. |
on the public Internet. |
91 |
|
|
92 |
Location-independent identifiers for documents |
Location-independent identifiers for documents |
93 |
make such notification unnecessary; a peer-to-peer lookup system |
make such a system unnecessary; a peer-to-peer lookup system |
94 |
can resolve documents whereever they are moved. |
can find documents whereever they are moved. |
95 |
Such a system also works for data not publicized on the Internet. |
Such a system also works for data not publicized on the Internet. |
96 |
For example, if one email has a document attached to it, and another email |
For example, if one email has a document attached to it, and another email |
97 |
links to this document, an index of locally stored documents |
links to this document, an index of locally stored documents |
190 |
|
|
191 |
The dangling link problem has received a lot of attention |
The dangling link problem has received a lot of attention |
192 |
in hypermedia research [refs]. As examples, we examine the ways |
in hypermedia research [refs]. As examples, we examine the ways |
193 |
in which HTTP, Microcosm [ref], Hyper-G [ref] and URNs [ref] |
in which HTTP, Microcosm [ref] and Hyper-G [ref] |
194 |
deal with the problem. |
deal with the problem. |
195 |
|
|
196 |
|
.. XXX and URNs [ref] |
197 |
|
|
198 |
In HTTP, servers are able to notify a client that a document |
In HTTP, servers are able to notify a client that a document |
199 |
has been moved, and redirect it accordingly [ref spec?]. However, |
has been moved, and redirect it accordingly [ref spec?]. However, |
200 |
this is not required, and there are no facilities for |
this is not required, and there are no facilities for |
210 |
to the filters. Linkbases implemented as filters can |
to the filters. Linkbases implemented as filters can |
211 |
update their links accordingly. A client selects a set |
update their links accordingly. A client selects a set |
212 |
of remote filters to use. Only links stored by one |
of remote filters to use. Only links stored by one |
213 |
of these filters can be found. |
of these filters can be found by the client. |
214 |
[HymEbook?] |
|
215 |
|
.. [HymEbook?] |
216 |
|
|
217 |
.. Microcosm systems can independently choose |
.. Microcosm systems can independently choose |
218 |
whether to import filters from other systems, and whether |
whether to import filters from other systems, and whether |
221 |
for example in a workgroup. |
for example in a workgroup. |
222 |
|
|
223 |
In Hyper-G, documents are bound to servers, and a link |
In Hyper-G, documents are bound to servers, and a link |
224 |
is stored on the servers of the two documents it connects |
between documents on different servers is stored by both servers |
225 |
[kappe95scalable]. This ensures that all links to a document |
[kappe95scalable]. This ensures that all links from and to a document |
226 |
can always be found, but requires the cooperation |
can always be found, but requires the cooperation |
227 |
of both servers. Hyper-G employs a scalable protocol |
of both parties. Hyper-G employs a scalable protocol |
228 |
for notifying servers when a document has been moved or removed. |
for notifying servers when a document has been moved or removed. |
229 |
A server hosting links to this document can then ask |
A server hosting links to this document can then ask |
230 |
the link's author to change the link, or at least the link |
the link's author to change the link, or at least the link |
231 |
can be removed automatically. The *p-flood* algorithm |
can be removed automatically. The *p-flood* algorithm |
232 |
employed by Hyper-G for this purpose guarantees that a message |
employed by Hyper-G guarantees that a message |
233 |
is delivered to all interested servers, but requires that each |
is delivered to all interested servers, but requires that each |
234 |
interested server keeps a list of all the others. |
interested server keeps a list of all the others. |
235 |
|
|
242 |
it would be possible to find both the document and links to it, |
it would be possible to find both the document and links to it, |
243 |
no matter which peer in the network they are stored on. |
no matter which peer in the network they are stored on. |
244 |
|
|
245 |
XXX Say something about the usual resolvable URN approaches |
.. XXX Say something about the usual resolvable URN approaches |
246 |
|
|
247 |
|
|
248 |
2.2. Alternative versions |
2.2. Alternative versions |
265 |
as basis of communication channel among limited amount of participants. |
as basis of communication channel among limited amount of participants. |
266 |
Neither of these systems supports the immutability of data. |
Neither of these systems supports the immutability of data. |
267 |
|
|
268 |
|
.. thesis-benja: remove paragraph above |
269 |
|
|
270 |
[ref HTML version format proposal] Alternate versions important for |
[ref HTML version format proposal] Alternate versions important for |
271 |
authoring process [search refs]. (Note: Keeping track of versions |
authoring process [search refs]. (Note: Keeping track of versions |
272 |
structure is also \*hyper*media. Refs?) (WebDAV!) |
structure is also \*hyper*media. Refs?) (WebDAV!) |
275 |
2.3. Peer-to-peer systems |
2.3. Peer-to-peer systems |
276 |
------------------------- |
------------------------- |
277 |
|
|
278 |
|
.. thesis-benja: check what needs to be rewritten below |
279 |
|
|
280 |
During the last few years, there has been a lot of research |
During the last few years, there has been a lot of research |
281 |
related to peer-to-peer resource discovery, both academical and in the industry. |
related to peer-to-peer resource discovery, both academical and in the industry. |
282 |
There are two main approaches: broadcasting [gnutella1, kazaa, limewire, |
There are two main approaches: broadcasting [gnutella1, kazaa, limewire, |
367 |
.. Should we discuss applications of p2p systems (CFS, OceanStore, Squirrel, ...) |
.. Should we discuss applications of p2p systems (CFS, OceanStore, Squirrel, ...) |
368 |
here? If so, which ones? |
here? If so, which ones? |
369 |
|
|
370 |
|
.. thesis-benja: remove paragraph below |
371 |
|
|
372 |
CFS [ref], which is built upon Chord DHT peer-to-peer routing layer[ref], stores |
CFS [ref], which is built upon Chord DHT peer-to-peer routing layer[ref], stores |
373 |
data as blocks. However, CFS *splits* data (files) into several miniblocks and |
data as blocks. However, CFS *splits* data (files) into several miniblocks and |
374 |
spreads blocks over the available CFS servers. Freenet [ref] and PAST [ref], |
spreads blocks over the available CFS servers. Freenet [ref] and PAST [ref], |
379 |
Recently there has been some interest in peer-to-peer hypermedia. |
Recently there has been some interest in peer-to-peer hypermedia. |
380 |
Thompson and de Roure [ref ht01] examine the discovery |
Thompson and de Roure [ref ht01] examine the discovery |
381 |
of documents and links available at and relating to |
of documents and links available at and relating to |
382 |
a user's physical location. For example, this could include |
a user's physical location. An example would be |
383 |
a linkbase constructed from links made available by different |
a linkbase constructed from links made available by different |
384 |
participants of a meeting [thompson00weaving]. |
participants of a meeting [thompson00weaving]. |
385 |
Bouvin [ref 02] focuses on the scalability and ease of entry |
Bouvin [ref 02] focuses on the scalability and ease of publishing |
386 |
of peer-to-peer systems, examining ways in which p2p can serve |
in peer-to-peer systems, examining ways in which p2p can serve |
387 |
as a basis for Open Hypermedia, while our own work has been |
as a basis for Open Hypermedia. Our own work has been |
388 |
in implementing Xanalogical storage [ref 02]. |
in implementing Xanalogical storage [ref 02]. |
389 |
|
|
390 |
At the Hypertext'02 panel on peer-to-peer hypertext [ref], |
At the Hypertext'02 panel on peer-to-peer hypertext [ref], |
391 |
there was a lively discussion on whether the probabilistic access |
there was a lively discussion on whether the probabilistic access |
392 |
to documents offered by peers joining and leaving the network |
to documents offered by peers joining and leaving the network |
393 |
would be tolerable for hypermedia publishing. For many documents, |
would be tolerable for hypermedia publishing. For many documents, |
394 |
the answer probably is no; however, for personal links, |
the answer is probably no; however, for personal links, |
395 |
comments and notes about documents, this behavior may be acceptable, |
comments, and notes about documents, probabilistic access may be acceptable, |
396 |
especially since this kind of publication would not require |
especially when seen as a trade-off against |
397 |
setting up a webspace account first and could therefore |
having to set up a webspace account before publication. |
|
encourage publication. |
|
398 |
|
|
399 |
In the end, some peers will necessarily be more equal than others: |
In the end, some peers will necessarily be more equal than others: |
400 |
Published data will be hosted on servers |
Published data will be hosted on servers |
423 |
the cryptographic hash in the identifier. Therefore, we can |
the cryptographic hash in the identifier. Therefore, we can |
424 |
safely download blocks from an untrusted peer. |
safely download blocks from an untrusted peer. |
425 |
|
|
426 |
While digital signatures also allow for self-certifying identifiers, |
While digital signatures also allow for self-certifying identifiers |
427 |
|
(the identifier could contain a public key, and we could check |
428 |
|
the signature after downloading a block), |
429 |
they raise the need for a public-key infrastructure (PKI) |
they raise the need for a public-key infrastructure (PKI) |
430 |
and for a timestamping mechanism in order to be reliable |
and for a timestamping mechanism in order to be reliable |
431 |
for more than a short time. |
for more than a short time. |
432 |
|
|
433 |
When we make a reference to a block, we can be sure |
When we make a reference to a block, we can be sure |
434 |
that even the original author of the target will not be able |
that even the original author of the target will not be able |
435 |
to change it. For example, if a newspaper refers to a letter |
to change it (contrast this with a signature-based scheme). |
436 |
|
For example, if a newspaper refers to a letter |
437 |
to the editor this way, the letter's sender won't be able to change |
to the editor this way, the letter's sender won't be able to change |
438 |
the reference into an advertisement for a pornographic web page. |
the reference into an advertisement for a pornographic web page. |
439 |
|
|
606 |
possibly also uploading it to a server permanently connected |
possibly also uploading it to a server permanently connected |
607 |
to the Internet, if one is available. |
to the Internet, if one is available. |
608 |
|
|
609 |
Unfortunately, we have not found a satisfactory representation |
We have unfortunately not found a satisfactory representation |
610 |
of zones yet. In particular, how do we decide which zone |
of zones yet. In particular, how do we decide which zone |
611 |
a new block should be in? Probably in the private zone |
a new block should be in? Probably in the private zone |
612 |
in many cases, but if we have been editing a document |
in many cases, but if we have been editing a document |