Legal claims defining the scope of protection, as filed with the USPTO.
1. A method, comprising: establishing a first node in a peer-to-peer data communications network, wherein the first node is configured as a supernode in conformance with a peer-to-peer communications protocol, wherein the first node is configured as an active listener to one or more network routing protocols executing at a network router; wherein the peer-to-peer communications protocol returns a list of peer nodes that have a replica of a requested resource; wherein the one or more network routing protocols comprise BGP; receiving a routing information message from one of the one or more network routing protocols; wherein the routing information message comprises a BGP UPDATE message that contains network routing information; modifying an operational characteristic of the first node in response to the routing information message by establishing a preference for local nodes as candidates for responding to one or more requests for one or more resources by storing an AS_PATH attribute in association with a corresponding network prefix for each route in the network routing information; after receiving the routing information message, receiving a request of the one or more requests from a second node in the peer-to-peer data communications network for a particular resource of the one or more resources that is known to the first node; and the first node determining, based on the modified operational characteristic, a set of best candidate peer-to-peer protocol nodes known to the first node to have a replica of the particular resource requested by the second node; wherein each node of the set of best candidate peer-to-peer protocol nodes matches a network prefix stored in association with an AS_PATH attribute, wherein the AS_PATH attribute is zero, indicating that the set of best candidate peer-to-peer protocol nodes are located only within a BGP autonomous system that includes the network router; responding to the request by returning to the second node a list of one or more peer-to-peer protocol nodes of the set of best candidate peer-to-peer protocol nodes, wherein the operational characteristic comprises referring the second node to a replica of the resource that is located only within a BGP autonomous system that includes the router.
2. A method as recited in claim 1 , wherein the peer-to-peer communications protocol is BitTorrent.
3. A method as recited in claim 1 , wherein the peer-to-peer communications protocol is any one selected from the group consisting of Kazaa, Gnutella, Fast Track, eDonkey, Chord, and Tapestry.
4. A method as recited in claim 1 , wherein the one or more network routing protocols comprise an interior gateway protocol with traffic engineering extensions.
5. A method as recited in claim 1 , wherein the routing information message comprises an IGP link status update message of an interior gateway protocol with traffic engineering extensions, and wherein the operational characteristic comprises referring the second node to a replica of the resource that is located only on a link that is referenced in the link status update message and that is preferred with respect to the router based on the link status.
6. A method as recited in claim 5 , wherein the IGP link status update message specifies any parameter selected from the group consisting of link cost, link delay, and link utilization.
7. A method as recited in claim 5 , wherein the operational characteristic comprises routing traffic from the first node to the second node on a path that is determined at least in part based on the link status update message.
8. An apparatus, comprising: means for establishing a first node in a peer-to-peer data communications network, wherein the node is configured as a supernode in conformance with a peer-to-peer communications protocol, wherein the first node is configured as an active listener to one or more network routing protocols executing at a network router; wherein the peer-to-peer communications protocol returns a list of peer nodes that have a replica of a requested resource; wherein the one or more network routing protocols comprise BGP; means for receiving a routing information message from one or more network routing protocols; wherein the routing information message comprises a BGP UPDATE message that contains network routing information; means for modifying an operational characteristic of the first node in response to the routing information message by establishing a preference for local nodes as candidates for responding to one or more requests for one or more resources by storing an AS_PATH attribute in association with a corresponding network prefix for each route in the network routing information; means for receiving a request of the one or more requests from a second node in the peer-to-peer data communications network for a particular resource of the one or more resources that is known to the first node; and means for the first node determining, based on the modified operational characteristic, a set of best candidate peer-to-peer protocol nodes known to the first node to have a replica of the particular resource requested by the second node; wherein each node of the set of best candidate peer-to-peer protocol nodes matches a network prefix stored in association with an AS_PATH attribute, wherein the AS_PATH attribute is zero, indicating that the set of best candidate peer-to-peer protocol nodes are located only within a BGP autonomous system that includes the network router; and means for responding to the request by returning to the second node a list of one or more peer-to-peer protocol nodes of the set of best candidate peer-to-peer protocol nodes, wherein the set of best candidate peer-to-peer protocol nodes are located only within a BGP autonomous system that includes the router; and wherein the operational characteristic comprises referring the second node to a replica of the resource that is located only within a BGP autonomous system that includes the router.
9. An apparatus as recited in claim 8 , wherein the peer-to-peer communications protocol is BitTorrent.
10. An apparatus as recited in claim 8 , wherein the peer-to-peer communications protocol is any one selected from the group consisting of Kazaa, Gnutella, Fast Track, eDonkey, Chord, and Tapestry.
11. An apparatus as recited in claim 8 , wherein the one or more network routing protocols comprise an interior gateway protocol with traffic engineering extensions.
12. An apparatus as recited in claim 8 , wherein the routing information message comprises an IGP link status update message of an interior gateway protocol with traffic engineering extensions, and wherein the operational characteristic comprises referring the second node to a replica of the resource that is located only on a link that is referenced in the link status update message and that is preferred with respect to the router based on the link status.
13. An apparatus as recited in claim 12 , wherein the IGP link status update message specifies any parameter selected from the group consisting of link cost, link delay, and link utilization.
14. An apparatus as recited in claim 12 , wherein the operational characteristic comprises routing traffic from the first node to the second node on a path that is determined at least in part based on the link status update message.
15. A peer-to-peer network, comprising: one or more routers, wherein each of the routers comprises a Border Gateway Protocol (BGP) module and an Interior Gateway Protocol (IGP) module; one or more peer-to-peer nodes, wherein at least one of the peer-to-peer nodes is communicatively coupled to at least one of the routers, wherein the peer-to-peer nodes communicate among one another according to a peer-to-peer data communication protocol; wherein the peer-to-peer communication protocol returns a list of peer nodes that have a replica of a requested resource; a supernode that is communicatively coupled to one of the routers and that is configured as a supernode in conformance with the peer-to-peer communications protocol, wherein the supernode is configured as an active listener to the BGP module and the IGP module, wherein the supernode comprises one or more sequences of computer program instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of: receiving a routing information message from one or more of the BGP module and the IGP module; wherein the routing information message contains network routing information; modifying an operational characteristic of the supernode in response to the routing information message by establishing a preference for local nodes as candidates for responding to one or more requests for one or more resources by storing an AS_PATH attribute in association with a corresponding network prefix for each route in the network routing information; after receiving the routing information message, receiving a request of the one or more requests from a second node in the peer-to-peer data communications network for a particular resource of the one or more resources that is known to the supernode node; and the supernode determining, based on the modified operational characteristic, a set of best candidate peer-to-peer protocol nodes known to the supernode to have a replica of the resource requested by the second node; responding to the request by returning to the second node a list of one or more peer-to-peer protocol nodes of the set of best candidate peer-to-peer protocol nodes, wherein each node of the set of best candidate peer-to-peer protocol nodes matches a network prefix stored in association with an AS_PATH attribute, wherein the AS_PATH attribute is zero, indicating that the set of best candidate peer-to-peer protocol nodes are located only within a BGP autonomous system that includes the router; wherein the operational characteristic comprises referring the peer-to-peer node to a replica of the resource that is located only within a BGP autonomous system that includes the router from which the routing information message was received.
16. A network as recited in claim 15 , wherein the peer-to-peer communications protocol is BitTorrent.
17. A network as recited in claim 15 , wherein the peer-to-peer communications protocol is any one selected from the group consisting of Kazaa, Gnutella, Fast Track, eDonkey, Chord, and Tapestry.
18. A network as recited in claim 15 , wherein the routing information message comprises an IGP link status update message of an interior gateway protocol with traffic engineering extensions, and wherein the operational characteristic comprises referring the one of the peer-to-peer nodes to a replica of the resource that is located only on a link that is referenced in the link status update message and that is preferred with respect to the router from which the routing information message was received, based on the link status.
19. A network as recited in claim 18 , wherein the IGP link status update message specifies any parameter selected from the group consisting of link cost, link delay, and link utilization.
20. A network as recited in claim 18 , wherein the operational characteristic comprises routing traffic from the supernode to the peer-to-peer node on a path that is determined at least in part based on the link status update message.
21. A network as recited in claim 15 , wherein the supernode is configured as a BitTorrent tracker node.
22. A network as recited in claim 15 , wherein the supernode is configured as a Gnutella ultrapeer node.
23. A computer-readable volatile or non-volatile storage medium storing one or more sequences of instructions, which instructions, when executed by one or more processors, cause the one or more processors to carry out the steps of: establishing a first node in a peer-to-peer data communications network, wherein the first node is configured as a supernode in conformance with a peer-to-peer communications protocol, wherein the first node is configured as an active listener to one or more network routing protocols executing at a network router; wherein the peer-to-peer communications protocol returns a list of peer nodes that have a replica of a requested resource; wherein the one or more network routing protocols comprise BGP; receiving a routing information message from one of the one or more network routing protocols; wherein the routing information message comprises a BGP UPDATE message that contains network routing information; modifying an operational characteristic of the first node in response to the routing information message by establishing a preference for local nodes as candidates for responding to one or more requests for one or more resources by storing an AS_PATH attribute in association with a corresponding network prefix for each route in the network routing information; after receiving the routing information message, receiving a request of the one or more requests from a second node in the peer-to-peer data communications network for a particular resource of the one or more resources that is known to the first node; and the first node determining, based on the modified operational characteristic, a set of best candidate peer-to-peer protocol nodes known to the first node to have a replica of the particular resource requested by the second node; wherein each node of the set of best candidate peer-to-peer protocol nodes matches a network prefix stored in association with an AS_PATH attribute, wherein the AS_PATH attribute is zero, indicating that the set of best candidate peer-to-peer protocol nodes are located only within a BGP autonomous system that includes the network router; responding to the request by returning to the second node a list of one or more peer-to-peer protocol nodes of the set of best candidate peer-to-peer protocol nodes, wherein the operational characteristic comprises referring the second node to a replica of the resource that is located only within a BGP autonomous system that includes the router.
24. The computer-readable volatile or non-volatile storage medium as in claim 23 , wherein the peer-to-peer communications protocol is any one selected from the group consisting of Kazaa, Gnutella, Fast Track, eDonkey, Chord, Tapestry, and BitTorrent.
25. The computer-readable volatile or non-volatile storage medium as in claim 23 , wherein the one or more network routing protocols comprise an interior gateway protocol with traffic engineering extensions.
26. The computer-readable volatile or non-volatile storage medium as in claim 23 , wherein the routing information message comprises an IGP link status update message of an interior gateway protocol with traffic engineering extensions, and wherein the operational characteristic comprises referring the second node to a replica of the resource that is located only on a link that is referenced in the link status update message and that is preferred with respect to the router based on the link status.
27. A computer-readable volatile or non-volatile storage medium as in claim 26 , wherein the IGP link status update message specifies any parameter selected from the group consisting of link cost, link delay, and link utilization.
28. A computer-readable volatile or non-volatile storage medium as in claim 26 , wherein the operational characteristic comprises routing traffic from the first node to the second node on a path that is determined at least in part based on the link status update message.
Unknown
April 5, 2011
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.