Changeset 11066 for dotorg/trunk/html/beps
- Timestamp:
- 05/13/2008 04:48:48 PM (2 months ago)
- Files:
-
- 1 modified
-
dotorg/trunk/html/beps/bep_0022.rst (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
dotorg/trunk/html/beps/bep_0022.rst
r11059 r11066 18 18 the client, it frees upstream capacity in the user's access network 19 19 benefiting the user and those that share the access network. When 20 peers transfer to or from an ISP cache, the ISP experiences less21 transit traffic.20 subsequent peers transfer from their ISP's cache, the ISP experiences 21 less transit traffic. 22 22 23 23 … … 25 25 ======================= 26 26 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 27 To find the caches for its ISP, a BitTorrent client performs a reverse 28 DNS lookup on its host's IP address and then obtains the SRV resource 29 record associated with the host's domain name. For example, a host with 30 IPv4 address w.x.y.z obtains the PTR record at 29 31 30 _bittorrent._tcp.w.x.y.z.in-addr.arpa 32 :: 33 z.y.x.w.in-addr.arpa 31 34 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. 35 Assume the returned PTR record contains example.com. The client then 36 looks up the SRV record at 36 37 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 41 40 42 If the host implements IPv6 then replace w.x.y.z.in-addr.arpa 43 according to the convention specified in `RFC 3596`_. 41 The target field in the SRV resource record contains the domain name 42 of the cache and the port specifies the location on that cache where 43 the BitTorrent implementation listens. 44 45 The SRV resource record type is described in `RFC 2782`_. Reverse DNS 46 lookups are described in `RFC 1034`_. 44 47 45 48 … … 52 55 ranges defined by IANA, i.e., 10.*.*.*, 172.*.*.*, or 192.*.*.*. When 53 56 communicating 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*. 57 translates the private IP to an IP address that is globally routable. 58 This globally routable address is the host's *public IP address*. 57 59 58 60 When finding a cache, the BitTorrent client must use its host's public 59 61 IP address. A BitTorrent client can obtain its host's public IP by 60 62 either 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* 64 extension defined for the *Extension Protocol* proposed in [#BEP-0010]. 65 65 66 66 … … 72 72 November 1987. http://tools.ietf.org/html/rfc1034 73 73 74 75 74 .. _`RFC 2782`: A DNS RR for specifying the location of services (DNS 76 75 SRV). Gulbrandsen, Vixie, Esibov. February 2000. 77 76 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.txt81 77 82 78 .. [#BEP-10] BEP_0010. Extension Protocol. Norberg, Strigeus, Hazel