BEP 11 Peer Exchange: Private vs Public Swarms
The BitTorrent Extension for Peer Exchange (BEP 11), commonly known
as PEX, enables clients to discover new peers directly through
established connections rather than relying solely on a central tracker.
While BEP 11 operates openly in public swarms to accelerate connection
speeds, reduce tracker load, and complement the Distributed Hash Table
(DHT), it is intentionally restricted or completely disabled in private
swarms. In private ecosystems, client compliance with the
private metadata flag enforces strict tracker-only
communication to preserve user authentication, access control, and
bandwidth ratio accounting.
How BEP 11 Works
BEP 11 standardizes the method for BitTorrent clients to exchange
lists of active peers using extension messages (ut_pex).
When two clients establish a connection, they can periodically send
messages containing lists of added and dropped peers. This allows a
client to quickly expand its routing table and maintain high transfer
speeds even if the central tracker is unreachable or experiencing high
latency.
BEP 11 in Public Swarms
In public torrent swarms, BEP 11 is enabled by default and acts as a decentralized optimization layer.
- Decentralized Discovery: Peers rapidly spread connection information among themselves without querying the tracker for every new contact.
- Tracker Load Reduction: Trackers only need to seed initial peer lists; PEX handles subsequent discovery across the swarm.
- Hybrid Discovery: PEX works alongside DHT (BEP 5) and Local Peer Discovery (LPD) to maximize swarm connectivity, making public downloads resilient against tracker downtime.
BEP 11 in Private Swarms
Private torrent trackers enforce membership, invite-only access, and user-specific download/upload ratios. BEP 11 conflicts directly with these requirements and is handled differently:
- The Private Flag: Private torrents contain the
metadata key
private = 1inside the.torrentfile. According to the BitTorrent specification, when this flag is present, compliant clients must disable BEP 11 (PEX), DHT, and LPD. - Prevention of Unauthorized Access: If PEX were enabled, a registered user could share swarm IP addresses with non-members, allowing unauthorized users to download content without authenticating through the private tracker.
- Accurate Ratio Tracking: Private trackers rely on unique passkeys embedded in the tracker URL to record data transfers. If peers connect via PEX without reporting back to the tracker, the tracker cannot monitor data integrity or enforce ratio rules.
- Client Whitelisting: Private communities frequently
ban clients that fail to honor the
privateflag or that leak peer data through unauthorized PEX implementations.
Summary of Differences
| Feature | Public Swarms | Private Swarms |
|---|---|---|
| PEX Status | Enabled by default | Disabled via private = 1
flag |
| Peer Source | Tracker, DHT, PEX, LPD | Authorized tracker announces only |
| Access Control | Open to all peers | Restricted to authenticated members |
| Traffic Accounting | Unmetered / Decentralized | Monitored per-user via passkey |