Show
Ignore:
Timestamp:
05/13/2008 04:48:48 PM (8 months ago)
Author:
dave
Message:

change to use reverse DNS followed by DNS query for the SRV record at the host's domain name.

Files:
1 modified

Legend:

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

    r11059 r11066  
    1818the client, it frees upstream capacity in the user's access network 
    1919benefiting the user and those that share the access network.  When 
    20 peers transfer to or from an ISP cache, the ISP experiences less 
    21 transit traffic. 
     20subsequent peers transfer from their ISP's cache, the ISP experiences 
     21less transit traffic. 
    2222 
    2323 
     
    2525======================= 
    2626 
    27 To find the caches for its ISP, a BitTorrent client running on an ipv4 
    28 host performs a DNS lookup for the SRV resource record at 
     27To find the caches for its ISP, a BitTorrent client performs a reverse 
     28DNS lookup on its host's IP address and then obtains the SRV resource 
     29record associated with the host's domain name.  For example, a host with 
     30IPv4 address w.x.y.z obtains the PTR record at 
    2931 
    30   _bittorrent._tcp.w.x.y.z.in-addr.arpa 
     32:: 
     33  z.y.x.w.in-addr.arpa 
    3134 
    32 where w.x.y.z is replaced with the IPv4 address z.y.x.w of the 
    33 BitTorrent client's host.  The target field in the SRV resource record 
    34 contains the domain name of the cache and the port specifies the 
    35 location on that cache where the BitTorrent implementation listens. 
     35Assume the returned PTR record contains example.com.  The client then 
     36looks up the SRV record at 
    3637 
    37 The SRV resource record type is described in `RFC 2782`_.  The 
    38 w.x.y.z.in-addr.arpa portion of the domain name is the same name host 
    39 z.y.x.w would use for host address to host name translation as 
    40 described in `RFC 1034`_. 
     38::  
     39  _bittorrent._tcp.example.com 
    4140 
    42 If the host implements IPv6 then replace w.x.y.z.in-addr.arpa 
    43 according to the convention specified in `RFC 3596`_. 
     41The target field in the SRV resource record contains the domain name 
     42of the cache and the port specifies the location on that cache where 
     43the BitTorrent implementation listens. 
     44 
     45The SRV resource record type is described in `RFC 2782`_.  Reverse DNS 
     46lookups are described in `RFC 1034`_. 
    4447 
    4548 
     
    5255ranges defined by IANA, i.e., 10.*.*.*, 172.*.*.*, or 192.*.*.*.  When 
    5356communicating with hosts outside the private network, the NAT 
    54 translates the private IP to an IP address routed by the ISP.  When a 
    55 host sends packets across the public Internet, the packets' source IP 
    56 address is the host's *public IP address*. 
     57translates the private IP to an IP address that is globally routable. 
     58This globally routable address is the host's *public IP address*. 
    5759 
    5860When finding a cache, the BitTorrent client must use its host's public 
    5961IP address.  A BitTorrent client can obtain its host's public IP by 
    6062either querying the tracker and looking at the value to the returned 
    61 *external ip* key [#BEP-0024] or from other peers using the *Extension 
    62 Protocol* proposed in [#BEP-0010].  uTorrent and BitTorrent mainline 
    63 implement both methods for determining one's external IP.  libtorrent 
    64 implements the *Extension Protocol*. 
     63*external ip* key [#BEP-0024] or from other peers using the *yourip* 
     64extension defined for the *Extension Protocol* proposed in [#BEP-0010]. 
    6565 
    6666 
     
    7272   November 1987. http://tools.ietf.org/html/rfc1034 
    7373 
    74  
    7574.. _`RFC 2782`: A DNS RR for specifying the location of services (DNS 
    7675   SRV). Gulbrandsen, Vixie, Esibov. February 2000.  
    7776   http://tools.ietf.org/html/rfc2782 
    78  
    79 .. _`RFC 3596`: DNS Extensions to Support IP Version 6, Thomson, Huitema, Ksinant, Souissi.  
    80    October 2003. http://www.ietf.org/rfc/rfc3596.txt 
    8177 
    8278.. [#BEP-10] BEP_0010.  Extension Protocol. Norberg, Strigeus, Hazel