Re: Back to Merkle Hash Trees...

Elliott Mitchell <[email protected]> Sun, 6 Feb 2005 13:27:22 -0800 (PST)
Newsgroups gmane.network.bit-torrent.general
Message-ID <[email protected]>
>From: Olaf van der Spek <[email protected]>
> Elliott Mitchell wrote:
> >>From: Olaf van der Spek <[email protected]>
> >>Elliott Mitchell wrote:
> > Imagine you're handed a 16K block of data and a hash value. You're unsure
> > whether this is internal nodes or a leaf (or even whether it is valid at
> 
> How can you be unsure about that?

Easily. Notably different protocol design than you're thinking. Crucially
it never makes sense to transfer one hash at a time. If you transfer
one hash at a time you've generated thousands of extra protocol messages.
Given this you're likely to transfer blocks of hashes, at which point
blocks of hashes will likely be of similar size to payload blocks.

> It should be clear from the protocol.

Which is another reason I dislike THEX. The type is a protocol issue, not
a standards issue. You might settle on markers similar THEX, at which
point you've got to try both markers to distinguish the types.

> If not, an internal node is 21 or 41 bytes (IIRC), so your 16 kbyte 
> block would not be an internal node.

And a payload block can't be of this size? (notably the EOF)

You're still assuming transfer of one hash at a time, which is worthless
as you end up bloating the protocol overhead horrendously.


-- 
(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \   (    |         [email protected] PGP 8881EF59         |    )   /
  \_  \   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
    \___\_|_/82 04 A1 3C C7 B1 37 2A*E3 6E 84 DA 97 4C 40 E6\_|_/___/




 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/BitTorrent/

<*> To unsubscribe from this group, send an email to:
    [email protected]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/