Segmented downloading

From Wikipedia, the free encyclopedia

Segmented downloading (also known as multisource downloading, swarming download) can be a more efficient way of downloading files from many peers at once. The one single file is downloaded, in parallel, from several distinct sources or uploaders of the file. This can help a group of users with asymmetric connections, such as ADSL to provide a high total bandwidth to one downloader, and to handle peaks in download demand.

This technique can not magically solve the probem, in a group of users that has insufficient upload-bandwidth, with demand higher than supply. It can however very nicely handle peaks, and it can also to some degree let uploaders upload "more often" to better utilize their connection. However, naïve implementations can often result in file corruption, as there is no way of knowing if all sources are actually uploading segments of the same file. This has led to most programs using segmented downloading using some sort of checksum or hash algorithm to ensure file integrity.

[edit] Examples

[edit] Note

In the DC++ protocol multisource downloading is not considered to be the same as segmented downloading. The DC++ client has the capability for multisource downloading, but can only connect to one source at a time. Older clients could only resume a file from the same source. This is feature is different from segmented downloading, due to the ability to connect to multiple sources at the same time.

[edit] See also

  • Segmented downloading should not be confused with the workings of Download Managers, which also segment files for faster download, but do not use several peers - they instead just open several connections to the same single server.