Glossary
Every word below is one a torrent client puts on your screen, defined in the sense the client means it rather than the sense the dictionary gives it.
Some of these words came into the field before BitTorrent did, and one of them has drifted so far from its original sense that it now insults a machine for doing exactly what it is supposed to do. Where that matters, the definition says so.
The words in the window
The words in the window are listed here in one place, alphabetically, each defined in a single line.
- announce
- The message a client sends a tracker to say it is in a swarm, on which port, and how much of the file it holds.
- checking resume data
- The client is rehashing what is already on disk, usually after a crash, a move, or a restart. It ends by itself.
- DHT
- A distributed hash table: an index of who is in which swarm, spread across every client running it, so no single server holds it.
- firewalled
- No incoming connections reach your client. Outgoing ones still work, so the transfer runs, at roughly half the reach it could have.
- info hash
- The fingerprint of the description itself. Two magnet links with the same info hash point at exactly the same data, whatever their names say.
- leecher
- A machine that does not have the whole file yet. It is still uploading the pieces it does have; the word is older than the behavior it now describes.
- magnet link
- An address made of a hash rather than a file. The client has to find everything else for itself, which is why one takes a moment to start.
- peer
- Any other machine in the same swarm.
- peer exchange
- Machines already talking to each other trading the addresses of the other machines each of them can see.
- piece
- One numbered block of the file, often a quarter or half a megabyte, with its own hash.
- ratio
- Uploaded divided by downloaded. A description of one transfer, not a score.
- seed
- A machine holding every piece, and therefore only giving.
- stalled
- Connected to the swarm with nothing arriving, because nobody online has a piece you still need.
- swarm
- Everybody currently sharing one particular set of data.
- torrent file
- A small description of the data: names, sizes, piece length and one hash per piece. It contains none of the data itself.
- tracker
- A server that answers one question, who else is in this swarm, and holds no data.
The four states, and what each one is telling you
Almost every client colors a transfer by its state, and the four words below are the ones that matter. They are not degrees of the same thing: two of them mean the transfer is fine and two of them mean it is not.
| State | What the client means | Whether anything is wrong |
|---|---|---|
| Moving | Pieces are arriving from at least one other machine. | No. This is the normal running state. |
| Complete, seeding | Every piece has arrived and been verified against its hash. The machine now only gives. | No. This is the finished state, and it is the state the swarm depends on. |
| Stalled, queued, checking | Connected, with nothing arriving right now: nobody online holds a piece you still need, or the client is rehashing what is already on disk. | Usually not. Checking ends by itself; stalled is a fact about the swarm rather than a fault in the client. |
| Errored, refused, firewalled | Something is genuinely blocked: a disk or permission problem, or no incoming connections at all. | Yes, and only this row is worth acting on. |
The units, which are not the ones on the box
Sizes inside a client are almost always in binary units: a kibibyte is 1,024 bytes and a mebibyte is 1,024 kibibytes, which is why a file a shop calls four gigabytes shows as a slightly smaller number of gibibytes on screen. Rates are a different quantity again: a client reports bytes per second while a broadband line is sold in bits per second, and there are eight bits in a byte, so a connection advertised at eighty megabits will never show more than about ten megabytes per second in any program. Neither difference is an error and neither is worth chasing.
Ratio has no unit at all. It is one size divided by another, so the units cancel, and a ratio of 1.00 means the same thing whether the transfer was measured in megabytes or terabytes.
Three words that mislead
Three words mislead more than the rest, and all three mislead in the same direction: they sound like a fault when they are describing something normal.
Leecher sounds like an accusation and is not one. In a client it means only that the machine does not hold every piece yet, and that machine is uploading the pieces it does have the whole time it is described that way.
Firewalled does not mean disconnected. Outgoing calls still work, so the transfer runs; what fails is other machines calling in, which roughly halves how easily the swarm can reach you and is the commonest reason a transfer runs slower than it should for no visible cause.
Seeding is not a setting or a favour. It is simply the name for what a machine is doing once it has everything: there is no separate mode to turn on, and stopping it does not tidy anything up, it removes a source.