2 |
Versioning for a location-independent Web: Stopping the shoulders of giants from rotting away |
Versioning for a location-independent Web: Stopping the shoulders of giants from rotting away |
3 |
============================================================================================= |
============================================================================================= |
4 |
|
|
5 |
(tentative title) |
.. (tentative title) |
6 |
|
|
7 |
|
|
8 |
|
|
9 |
.. contents:: |
.. contents:: |
10 |
|
|
37 |
.. [#] ``http://www.seds.org/spaceviews/cassini/rtgpages.html``. |
.. [#] ``http://www.seds.org/spaceviews/cassini/rtgpages.html``. |
38 |
All links dereferenced on October 27th, 2003. |
All links dereferenced on October 27th, 2003. |
39 |
|
|
40 |
Of the 83 links provided by SpaceViews, 29 continue to work in 2003. |
Of the 83 links provided by SpaceViews, only 29 continue to work in 2003. |
41 |
Only six years after the launch, two thirds of the debate |
Only six years after the launch, almost two thirds of the debate |
42 |
have fallen off the Web. "If I have seen further it is by standing |
have fallen off the Web. "If I have seen further it is by standing |
43 |
on the shoulders of giants;" but how can we do that today, |
on the shoulders of giants;" but how can we do that today, |
44 |
if the shoulders keep rotting away? |
if the shoulders keep rotting away? |
65 |
|
|
66 |
History of location-dependence: `TBL ref`_ (like in HT'03 paper) |
History of location-dependence: `TBL ref`_ (like in HT'03 paper) |
67 |
|
|
68 |
To accomplish this, links must be made using |
This can be accomplished by replacing URIs that include |
69 |
location-independent identifiers: The URI used to make |
a server name by location-independent, self-verifying identifiers |
70 |
the link must not specify the server that the page |
like cryptographic hashes. |
71 |
is to be downloaded from. The URI of a page must never change, |
A file identified by a cryptographic hash |
72 |
even if it moves to a different server. |
can be downloaded from any server that has a copy; the client |
73 |
|
can then check it is the correct file by checking the hash. |
74 |
Instead, identifiers must be *self-verifying*: after downloading |
|
75 |
an alleged version of a page from some server, it must be |
.. <<<Self-verifying means that given the identifier and a file, |
76 |
possible to *check* that it is really a version of that page. |
a client can check that the file matches the identifier.>>> |
77 |
The simplest way to do this is to use a cryptographic hash |
|
78 |
to identify the content. After downloading the page, the client |
.. <<<(If the hashes do not match, the client can try a different server.) |
79 |
will check it against the cryptographic hash embedded in |
This way, a page's URI never needs to change.>>> |
|
the page's identifier. |
|
80 |
|
|
81 |
In 1996, Tim Berners-Lee [name-myth]_ argued that |
In 1996, Tim Berners-Lee [name-myth]_ argued that |
82 |
using location-independent identifiers |
using location-independent identifiers |
83 |
is not viable on a global scale: |
is not viable on a global scale: |
84 |
"[I]f you put information in a name, it decreases its longevity; |
"[I]f you put information in a name, it decreases its longevity; |
85 |
if you don't you can't dereference it to a resource." |
if you don't you can't dereference it to a resource." |
|
|
|
86 |
However, as we have observed in [fallenstein03storm]_, |
However, as we have observed in [fallenstein03storm]_, |
87 |
this assumption has become obsolete with the advent of |
with the advent of |
88 |
efficient peer-to-peer lookup mechanisms such as |
efficient peer-to-peer lookup mechanisms such as |
89 |
distributed hashtables (DHTs). Using DHTs |
distributed hashtables (DHTs), this observation |
90 |
|
is no longer true. |
91 |
|
|
92 |
|
Using DHTs |
93 |
to resolve location-independent identifiers on the Web |
to resolve location-independent identifiers on the Web |
94 |
has been proposed by Balakrishnan et.al. |
has been proposed by Balakrishnan et.al. |
95 |
[balakrishnan03semanticfree-andalso-walfish03dns]_. |
[balakrishnan03semanticfree-andalso-walfish03dns]_. |