Skip to Content.
Sympa Menu

bluesky - Content based addressing

bluesky AT lists.ibiblio.org

Subject: Global-Scale Distributed Storage Systems

List archive

Chronological Thread  
  • From: hal AT finney.org
  • To: bluesky AT franklin.oit.unc.edu
  • Subject: Content based addressing
  • Date: Thu, 15 Feb 2001 11:31:14 -0800


[Subject line changed]

Ted Anderson wrote:

> A key technical feature that is at least as important is the use of
> content-hash based identifiers: FreeNet's CHK, OceanStore's GUID and
> MojoNation's block ids. The use of such identifiers frees the reader
> from having to trust the storage and transport components. Either they
> are providing correct data in response to requests or they are broken
> and the distribution system routes around them.

Freenet uses the content hash as not only an identifier, but as an
address for the data. The idea is conceptually simple: each node holds
not only data, but pointers to the nodes from which that data came.
When data is requested from the net by hash, if a node does not have
the data it forwards it to the node which holdes the closest hash.
The same forwarding rule is used when data is inserted into the net.
The effect is that data with close hashes tends to congregate together
on certain nodes, and you can follow a path through the network that
leads you to the data you want. No broadcasting is necessary, and you
can find data with a limited number of hops.

At least, that's what the simulations show. The network in actual use
seems to be somewhat fragmented and balky, but there are few people using
it and the code is still buggy, so the hope and expectation is that the
mature network will work well.

Tim Berners-Lee had some relevant comments about new forms of URIs at
http://www.w3.org/DesignIssues/Architecture.html:

A few spaces are worthy of note which in which identity is
fairly well defined, but have no defined dereferencing protocol:
the message identifier (mid) and content identifier (cid) spaces
adopted from the MIME world, the md5: hash code with verifiable
pure identity, and the pseudo-random Universally Unique Identifier
(uuid) from the Apollo domain system and followers. These may be
underused as URIs.

I'm not familiar with all these identifier families but it seems that at
least some of them use the same idea, a content based hash as a unique
identifier for the document. Freenet, and perhaps the other systems as
well, then turns the URI into a URL so that the document can be fetched
by hash.

Hal




Archive powered by MHonArc 2.6.24.

Top of Page