Home > Specs > BitTorrent > Peer Connections
Fast Mode
Fast mode is a set of modifications to the original protocol. Usage of this mode is nearly universal.
In the flags section of the initial connection handshake, the third-lowest bit of the last byte (flags[7]&4) indicates support of fast mode.
In fast mode, all
block requests must be eventually answered, in order, with either a successful block data response, or a failure response. This applies regardless of
choking or
interest.
The purpose of this is to prevent problems that occur when a peer is choked and unchoked frequently on high latency connections. Without feedback when a block is discarded, the requesting peer may have difficulty re-requesting the block in a timely manner after a delayed notification of a choke/unchoke cycle.
In fast mode, two new
bitfield updating messages are enabled. HAVEALL and HAVENONE are equivalent to the regular bitfield message with either all or none of the bits set.