P2P File Sharing

View Code on GitHub

The app implements a decentralized file transfer mechanism. Peers can hold certain chunks of a file. The Tracker holds information for which peer has which chunk and the peer’s address. The sender can query the tracker for these addresses to upload chunks of a file to the active peers. The file chunks would then exist in the network in a decentralized manner. The receiver can then query the tracker for information about the peers, and retrieve the chunks from the peers and piece together the original file.

This demonstrates how apps like BitTorrent work.

Technologies:
Python

Concepts / Algorithms:
Sockets P2P Networks