[BitTorrent] Re: bt2 protocol features

Olaf van der Spek OvdSpek at LIACS.NL
Thu Jun 10 11:39:05 EDT 2004

Justin Cormack wrote:
>>The reason to have small blocks is to have a low startup time (time 
>>until first block is complete) and so you don't need to discard much 
>>data in case a block verification fails.
> thats not a very good reason, as block verify failure is a very rare event.

Another reason is because you want to prevent the situation in which you 
get parts of one block from multiple sources. If the smallest 
verification unit is the block, an attack could exploit this and see 
only a small part (maybe a kb) and you'll have to redownload the entire 

>>The reason to have large blocks is to decrease the amount of overhead 
>>the HAVE messages generate, the amount of hashes you need and the amount 
>>of state the client needs to maintain.
> Though the client needs to maintain the partial block info at the moment.
> I am just getting to this stage in coding and there are some issues related
> to this - if you keep this data per peer, do you throw away partial blocks
> if the peer dies for example.

Just don't maintain it per client.

------------------------ Yahoo! Groups Sponsor --------------------~--> 
Yahoo! Domains - Claim yours for only $14.70

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