View Single Post
Old 08-04-04, 03:29 AM   #2
TankGirl
Madame Comrade
 
TankGirl's Avatar
 
Join Date: May 2000
Location: Area 25
Posts: 5,587
Default

Hi sijp and welcome to P2P-Zone.

The typical way to handle multisourced downloads is to treat each shared file as a collection of regular size chunks. For example, you could have a 5 MB file split into 50 chunks, each 100 kB in size. When you have downloaded all the chunks belonging to a particular file, you can join them together and voilą - you have a complete file. So instead of requesting a whole file from a sharer you request only the chunks you need. And you can download different chunks of the same file simultaneously from different people, which usually results in a faster total download speed.

As you may receive chunks for a large file from hundreds of different sources, data integrity becomes an important issue. This is typically handled with a method called hashing. A specific, hard-to-forge hash number is calculated for each chunk belonging to a file, and the downloaders can use this number to check that they have received a chunk with correct content. If some source seems to send a lot of false chunks, the p2p program can block that source as a hostile peer and get the chunks from other sources.

- tg
TankGirl is offline   Reply With Quote