[bittorrent] question on the blocks downloading in BT

Elliott Mitchell ehem at m5p.com
Sat Jun 11 18:33:54 EDT 2005

>From: Justin Cormack <justin at street-vision.com>
> On 11 Jun 2005, at 04:21, Tom H. Lan wrote:
> > You see when a peer is downloading a block, the uploader of the  
> > bolck may depart the networks anytime. So it is very likely that a  
> > peer have some partially downloaded blocks. How peers deal with  
> > these blocks? Do they ask other peers to upload these block based  
> > on what they have? Or just drop these blocks?
> Thats not quite clear. I think it is best to discard them, as they  
> havent been verified and therefore if you complete the block from  
> another peer and it does not match the hash you cannot tell which one  
> sent you incorrect data. Perhaps thats a slightly paranoid viewpoint.

You have to worry about it, but the strategy needn't be quite so drastic.
In this case you merely need to redownload the pieces that you didn't get
from the existing peer. You combine these duplicates with the ones that
you'd already downloaded from the peer. If these together verify
correctly you can attribute the bad block to one of the peers that didn't
give you the entire piece. If this doesn't verify you blame the new peer,
disconnect and keep the older blocks.

> The fact that all pieces received cannot be verified individually is  
> a problem with the protocol.

Not a problem, merely a minor weakness.

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

More information about the BitTorrent mailing list