Changes between Initial Version and Version 2 of Ticket #3


Ignore:
Timestamp:
2007-06-29T18:49:20Z (17 years ago)
Author:
warner
Comment:

We've addressed the most immediate problem here, by moving many of the pieces off to the URIExtension, and including the hash of that datablock in the URI itself. This makes the URIs smaller, at the expense of increasing the storage overhead slightly (about 200 bytes per share), and increasing the alacrity slightly (you have to pull 200 bytes from one shareholder before you can verify the first segment).

Once we also switch to deriving the StorageIndex from the readkey, this will shrink the URI down to the following pieces:

  • readkey (base32-encoded 16 or 32 byte value)
  • URIExtension hash (base32-encoded 32 byte value)
  • needed_shares/total_shares (two small integers, normally "25" and "100")
  • filesize (3-7 bytes, really just for quicker UI purposes)

(at the moment, we track the readkey and the storage index separately, so our URIs are another 53 characters longer than this)

I'm redefining this ticket to be about reducing the size of the URI, by deriving the StorageIndex from the readkey. The issue of algorithmically generating things like segment size and encoding parameters from the filesize is less important, in my opinion, now that it's been pushed out to the URIExtension.

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #3

    • Property Version changed from to 0.3.0
    • Property Component changed from component1 to code
    • Property Summary changed from URIs are too big to URIs could be a bit smaller
  • Ticket #3 – Description

    initial v2  
    1 The URI currently holds everything we could think of. Many of the pieces it contains could be algorithmically determined if we were comfortable with having that behavior nailed down. We could also offload some of the fields to the storage servers, as long as we retain a hash that covers those fields.
     1The URI currently contains separate readkey and StorageIndex fields. We should redefine the read-cap CHK file URI to include just the readkey and derive the StorageIndex from it by hashing.
     2