Utorrent: Technologies

When creating uTorrent the developers used innovative technologies that made it possible to implement the program concept with minimal system resources used. As well as many other p2p clients, uTorrent is written in the programming language C++. The technology of torrent operation is performed by the following principle:

Having connected to the tracker specified in the torrent file, the user gives his address and the file information and receives the addresses of other users that are currently downloading or sharing this very file. Thus, the clients are connected with each other to share the file pieces, and they don’t need the tracker at all (it contains only the static information).

The more clients are seeding the file, the faster this file is shared among the users. Each client indicates what file’s piece he is willing to share, and the users requiring this piece send their request and receive this segment. Balance is very important here: each user should not only download the files, but also share them. In this case the sharing process will be much faster.

Thus, each uTorrent user, uploading and downloading the file, is a full-fledged member of the network with no dedicated servers (each computer is both a client and a server). This technology makes it possible to maintain high network operation with any number of nodes.

Connection with the tracker is performed by TCP protocol, port 6969 (the range of clients’ incoming ports may vary from 6881 to 6889). The tracker works by HTTP protocol. Moreover, UDP-trackers use the appropriate UDP-protocol for their work.