Changeset 11109 for dotorg/trunk/html

Show
Ignore:
Timestamp:
06/16/2008 05:33:22 PM (5 months ago)
Author:
dave
Message:

cache discovery protocol -> tracker discovery protocol

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • dotorg/trunk/html/beps/bep_0022.rst

    r11101 r11109  
    11BEP: 22 
    2 Title: BitTorrent Cache Discovery Protocol 
     2Title: BitTorrent Tracker Discovery Protocol 
    33Version: $Revision$ 
    44Last-Modified: $Date$ 
     
    1313========== 
    1414 
    15 Some Internet Service Providers (ISPs) may be interested in deploying 
    16 BitTorrent caches to lower transit costs, reduce internal traffic, and 
    17 improve user experience by speeding up downloads. 
    18  
    19 A cache is simply a fast peer in the middle of the network. It might 
    20 also have substantial disk space. The client communicates with a cache 
    21 using the normal BitTorrent protocol. 
    22  
    23 With this extension, BitTorrent clients are able to discover caches 
    24 nearby on the network.  When a cache is present, the user benefits 
    25 from having a high capacity peer from which the user's client 
    26 downloads and to which it can delegate seeding.  When a cache inside 
    27 the user's ISP network seeds on behalf of the client, it frees 
    28 upstream capacity in the user's access network benefiting the user and 
    29 those that share the access network.  When subsequent peers transfer 
    30 from their ISP's cache, the ISP experiences less transit traffic. 
     15Some Internet Service Providers (ISPs) may wish to localize traffic  
     16to reduce transit costs, reduce internal traffic, and improve user 
     17experience by speeding up downloads.   
     18 
     19With this extension, BitTorrent clients are able to discover a tracker 
     20nearby on the network, and via this tracker discover nearby caches or 
     21peers.  A cache is simply a fast peer in the middle of the network. It 
     22might also have substantial disk space. The client communicates with a 
     23cache using the normal BitTorrent protocol. 
     24 
     25When a cache is present, the user benefits from having a high capacity 
     26peer from which the user's client downloads and to which it can 
     27delegate seeding.  When a cache inside the user's ISP network seeds on 
     28behalf of the client, it frees upstream capacity in the user's access 
     29network benefiting the user and those that share the access network. 
     30When subsequent peers transfer from their ISP's cache, the ISP 
     31experiences less transit traffic. 
    3132 
    3233The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL 
     
    3940======================= 
    4041 
    41 To find the caches for its ISP, a BitTorrent client performs a reverse 
     42To find the tracker for its ISP, a BitTorrent client performs a reverse 
    4243DNS lookup on its external IP address and then obtains the BitTorrent 
    4344SRV resource record associated with the host's domain name.  For 
     
    6970The target field in each returned SRV resource record contains the 
    7071domain name of a tracker and the port on which the tracker runs.  This 
    71 tracker is called a *cache tracker*, but the protocol to talk to this 
     72tracker is called a *local tracker*, but the protocol to talk to this 
    7273tracker is no different from the standard BitTorrent tracker protocol 
    7374described in [#BEP-3]_. 
     
    7576When the BitTorrent client joins a swarm it announces to one or more 
    7677of the trackers referenced in the .torrent file and announces to the 
    77 cache tracker.  The cache tracker returns peers which may be caches or 
    78 other peers that announced the same file to the cache tracker. 
    79  
    80 A cache is a BitTorrent peer.  A client MAY treat it preferentially. 
     78local tracker.  The local tracker returns peers which may be caches or 
     79other peers that announced the same file to the local tracker. 
     80 
     81A client MAY treat nearby peers or caches preferentially. 
    8182  
    8283Reverse DNS lookups are described in RFC 1034 [#RFC-1034]_. 
     
    189190 
    190191In our example, we use AT&T's PacBell network.  AT&T could implement 
    191 cache discovery by adding the following lines to the zone file for 
     192tracker discovery by adding the following lines to the zone file for 
    192193pacbell.net, 
    193194 
     
    197198  _bittorrent-tracker._tcp.pacbell.net. 600  IN  SRV 5   0      6969 tracker 
    198199 
    199 Now when a client performs cache discovery, it performs three DNS 
     200Now when a client performs tracker discovery, it performs three DNS 
    200201queries removing labels before reaching the domain name pacbell.net, 
    201202at which point the SRV record is returned and the client queries 
    202203tracker.pacbell.net to obtain the domain names of caches. 
    203204 
    204 In Python, the cache tracker's port and domain can be obtained using 
     205In Python, the local tracker's port and domain can be obtained using 
    205206PyDNS using the following code:: 
    206207