02.06.2013 Views

The current state of anonymous file-sharing - Marc's Blog

The current state of anonymous file-sharing - Marc's Blog

The current state of anonymous file-sharing - Marc's Blog

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

(e.g. 80.121.24.76).<br />

4.2.3 Downloading/Uploading a <strong>file</strong><br />

To download this <strong>file</strong>, a client now has to gain access to the meta-information<br />

embedded into the torrent <strong>file</strong>. Trackers <strong>of</strong>ten have a web-interface that provides<br />

an HTTP-based download for the registered torrent <strong>file</strong>s. After downloading the<br />

torrent <strong>file</strong>, the client now announces its presence on the <strong>file</strong>’s network (which is<br />

identified by the hash <strong>of</strong> the torrent <strong>file</strong>) and starts "scraping" (asking) the tracker<br />

for the IP addresses <strong>of</strong> other nodes that also are on the <strong>file</strong>s logical network. <strong>The</strong><br />

tracker then sends a list <strong>of</strong> IP+port combinations to the client containing the other<br />

peers on the <strong>file</strong>s network. <strong>The</strong> client starts to connect to the given IP addresses<br />

and asks the peers for chunks that itself is missing and sends a list <strong>of</strong> chunks that<br />

it has already acquired. To signal which pieces the client still misses and which<br />

ones are available for others to download, the Bittorrent protocol uses a special<br />

"bitfield message" with a bitmap-datastructure like this:<br />

000000000000000000 nothing downloaded yet (it’s optional to send this)<br />

100000000000100010 three blocks completed<br />

111111111111111111 successfully downloaded the whole <strong>file</strong><br />

This way, every node on the network is able to upload/share what they have<br />

acquired so far and download the blocks they still miss at the same time. To dis-<br />

tribute the load put on the tracker by every client asking about other peers, some<br />

additions like PEX 3 and the DHT 4 were integrated in the widespread clients.<br />

3 PEX: Peer Exchange<br />

4 DHT: Distributed Hashtable<br />

13

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!