A P2P protocol for file distribution. It works by breaking down a large file, into smaller pieces, called chunks, and coordinating distribution using a Torrent.

Each Torrent has a tracker, which is a server that keeps track of the peers that are participating in the torrent and which chunks they possess. When a new peer joins a torrent the tracker selects a subset of peers to which the IP Addresses are sent to the new peer, which then establishes connections to these peers. As peers join and leave the network the subset will change over time. A newly joined peer will initially request chunks using a technique called rarest first, in which the rarest chunks are requested first.

When sharing files a peer will give priority to peers that are supplying it with the highest rate of data, which is measured every 10 seconds. In this way, BitTorrent works by reciprocation and is referred to as tit-for-tat. The peers that chunks are transmitted to are said to be unchoked.

To give a chance to new peers and to discover new peers to trade with, BitTorrent has implemented that every 30 seconds a random additional peer is also transmitted to and is said to be optimistically unchoked.