Intelligent establishment of peer-to-peer communication
First Claim
Patent Images
1. A method comprising:
- receiving, from a first peer in a network, a request for a list of one or more candidate peers from which the first peer can obtain a resource over the network;
obtaining the list of one or more candidate peers from memory or a remote device in response to the request for the list of one or more candidate peers;
determining a set of costs based on the list of one or more candidate peers;
refining the list of one or more candidate peers to obtain a subset list of the candidate peers from which the first peer can obtain the resource based on the set of costs; and
sending to, the first peer in the network, the subset list of the candidate peers from which the first peer can obtain the resource,wherein determining the set of costs includes;
determining a first point-of-presence for the first peer by identifying the first point-of-presence corresponding to the first peer in one or more point-of-presence tables;
obtaining first one or more cost parameters, in the one or more point-of-presence tables, that are associated with the first point-of-presence;
determining a point-of-presence and one or more cost parameters associated with the point of presence, for each peer in the list, by identifying the point-of-presence corresponding to the peer in the one or more point-of-presence tables; and
determining a cost for each peer in the list based on the first one or more cost parameters and the one or more cost parameters associated with the determined point-of-presence for the peer,wherein the cost includes a cost of communication between the point-of-presence to which the peer belongs and the first point-of-presence.
2 Assignments
0 Petitions
Accused Products
Abstract
A device may receive, from a first peer in a network, a request for a list of one or more candidate peers from which the first peer can obtain a resource. In addition, the device may obtain the list in response to the request, determining a set of costs based on the list, and refine the list to obtain a subset list of the candidate peers based on the set of costs. Furthermore, the device may send to, the first peer, the subset list of the candidate peers from which the first peer can obtain the resource.
32 Citations
19 Claims
-
1. A method comprising:
-
receiving, from a first peer in a network, a request for a list of one or more candidate peers from which the first peer can obtain a resource over the network; obtaining the list of one or more candidate peers from memory or a remote device in response to the request for the list of one or more candidate peers; determining a set of costs based on the list of one or more candidate peers; refining the list of one or more candidate peers to obtain a subset list of the candidate peers from which the first peer can obtain the resource based on the set of costs; and sending to, the first peer in the network, the subset list of the candidate peers from which the first peer can obtain the resource, wherein determining the set of costs includes; determining a first point-of-presence for the first peer by identifying the first point-of-presence corresponding to the first peer in one or more point-of-presence tables; obtaining first one or more cost parameters, in the one or more point-of-presence tables, that are associated with the first point-of-presence; determining a point-of-presence and one or more cost parameters associated with the point of presence, for each peer in the list, by identifying the point-of-presence corresponding to the peer in the one or more point-of-presence tables; and determining a cost for each peer in the list based on the first one or more cost parameters and the one or more cost parameters associated with the determined point-of-presence for the peer, wherein the cost includes a cost of communication between the point-of-presence to which the peer belongs and the first point-of-presence. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A device comprising:
-
a point-of-presence table; a point-of-presence-to-point-of-presence cost matrix that includes cost elements, wherein each of the cost elements includes cost of communication between two points-of-presence and is located in a row and a column of the point-of-presence-to-point-of-presence matrix and wherein the row corresponds to one of the two points-of-presence and the column corresponds to the other of the two points of presence; and a cost information server configured to; receive, from a tracker device, a request for a set of cost information associated with communication between a first peer in a network and each peer in a list of one or more peers, in the network, to which the first peer can provide a resource; determine a first point-of-presence for the first peer in the network by consulting the point-of-presence table; for each peer of the list, determine a point-of-presence by consulting the point-of-presence table; determine cost for each peer in the list by performing a lookup of the point-of-presence-to-point-of-presence cost matrix, wherein the determined cost includes one of the cost elements of the point-of-presence-to-point-of-presence cost matrix and wherein the one of the cost elements is in a row corresponding to the first point-of-presence and is in a column corresponding to a point-of-presence to which the each peer belongs; and send the determined costs for the one or more peers in the network to the tracker device. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. A non-transitory computer-readable medium comprising computer executable instructions, the computer-executable instructions including:
-
instructions for receiving, from a first peer in a network, a request for a list of one or more candidate peers from which the first peer can obtain a resource over the network; instructions for obtaining the list of one or more candidate peers from a memory or a remote device in response to the request for the list of one or more candidate peers; instructions for determining a set of costs based on the list of one or more candidate peers; instructions for sorting the list of one or more candidate peers in order of decreasing cost; and instructions for sending to, the first peer in the network, the list of the candidate peers from which the first peer can obtain the resource, wherein the instructions for determining the set of costs include instructions for; determining a first point-of-presence for the first peer by identifying the first point-of-presence corresponding to the first peer in one or more point-of-presence tables; obtaining first one or more cost parameters, in the one or more point-of-presence tables, that are associated with the first point-of-presence; determining a point-of-presence and one or more cost parameters associated with the point of presence, for each peer in the list, by identifying the point-of-presence corresponding to the peer in the one or more point-of-presence tables; and determining a cost for each peer in the list based on the first one or more cost parameters and the one or more cost parameters associated with the determined point-of-presence for the peer, wherein the cost includes a cost of communication between the point-of-presence to which the peer belongs and the first point-of-presence.
-
Specification