[BitTorrent] Back to Merkle Hash Trees...

Konstantin 'Kosta' Welke kosta at fillibach.de
Wed Feb 9 20:37:41 EST 2005

On Mon, 7 Feb 2005 15:56:05 -0800, Joseph Ashwood <ashwood at msn.com> wrote:

> If the hashes are a part of the exchangable values, then the hash tree (or
> at least specific branchs) is necessary before a block can be verified. The
> systems with file portions, but no hash tree, cannot transfer known good
> blocks. My point in this is that the hash tree has to be downloaded first,
> and that this is completely counter to the random download that BT relies
> on.

Yes, in order to verify a downloaded piece, one needs the part of the
hash tree that verifies it. This means that usually, the the parts of the
hash tree that are needed to verify the piece will be downloaded in parallel.
A smart client would of course try to download the hash tree first, but
this is not a must at all. Note that as clients will try to get the tree
first, they will be distributed first in the swarm which means they will
be easy to get, too.

> There is a minor escape hatch in that eventually those clients should have
> the tree, but with a large tree, and a slow modem that could be quite some
> time away.

In the end, they have to download ~2% more. So if these 2% take too
much time, then the whole file takes 50 times too much time :)


Yahoo! Groups Links

<*> To visit your group on the web, go to:

<*> To unsubscribe from this group, send an email to:
    BitTorrent-unsubscribe at yahoogroups.com

<*> Your use of Yahoo! Groups is subject to:

More information about the BitTorrent mailing list