Match making based on proximity measures between devices
First Claim
Patent Images
1. A method comprising:
- receiving a request, from a computing device, for an identification of one or more online game sessions that satisfy one or more criteria;
identifying a plurality of online game sessions that satisfy the one or more criteria;
determining, for each of the plurality of online game sessions, a distance between the computing device and another computing device that hosts the online game session, the determining comprising;
identifying a first bucket to which the computing device is assigned;
identifying a second bucket to which the other computing device is assigned; and
identifying a distance between the first and second buckets wherein the second bucket is formed by selecting a set of devices belonging to the first bucket and assigning the set of devices of the first bucket to the second bucket when the number of devices, each device having an IP address, assigned to the first bucket exceeds a bucket threshold, the bucket threshold being a predetermined number of IP addresses which can belong to the first bucket;
selecting an order in which the plurality of online game sessions are to be presented at the computing device, wherein the order is based at least in part on the determined distances; and
returning identifiers of the plurality of online game sessions to the computing device for presentation at the computing device in the selected order.
2 Assignments
0 Petitions
Accused Products
Abstract
In accordance with one aspect of match making based on proximity measures between devices, a record of distances between groups of network addresses is maintained. This record is then used as a basis for selecting an ordering for online game sessions that is to be returned to a computing device requesting information regarding current online game sessions.
31 Citations
41 Claims
-
1. A method comprising:
-
receiving a request, from a computing device, for an identification of one or more online game sessions that satisfy one or more criteria; identifying a plurality of online game sessions that satisfy the one or more criteria; determining, for each of the plurality of online game sessions, a distance between the computing device and another computing device that hosts the online game session, the determining comprising; identifying a first bucket to which the computing device is assigned; identifying a second bucket to which the other computing device is assigned; and identifying a distance between the first and second buckets wherein the second bucket is formed by selecting a set of devices belonging to the first bucket and assigning the set of devices of the first bucket to the second bucket when the number of devices, each device having an IP address, assigned to the first bucket exceeds a bucket threshold, the bucket threshold being a predetermined number of IP addresses which can belong to the first bucket; selecting an order in which the plurality of online game sessions are to be presented at the computing device, wherein the order is based at least in part on the determined distances; and returning identifiers of the plurality of online game sessions to the computing device for presentation at the computing device in the selected order. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. One or more computer readable media having stored thereon a plurality of instructions that, when executed by one or more processors, causes the one or more processors to perform a method, the method comprising:
-
maintaining a record of spatial distances between groups of network addresses, wherein each spatial distance is measured between a center of each group, wherein the center of each group is an IP population center of each group where the IP population refers to a number of IP addresses, wherein each group belongs to a layer where a layer is a collection of groups of network addresses, and wherein layers are one of a set of criteria with which to identify current online game sessions; and selecting and ordering a set of current online game sessions, based at least in part on the record, when a computing device requests information regarding current online game sessions. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A method comprising:
-
identifying a plurality of online game sessions, wherein one of a plurality of computing devices is part of each of the online game sessions; determining distances between a game console and each of the plurality of computing devices, the distances being based at least in part on different data transfer rates in different parts of a network via which communication between the game console and the plurality of computing devices occurs, wherein each computing device belongs to one of a plurality of buckets, and wherein each bucket belongs to one of a plurality of layers such that a layer is a collection of buckets; and determining an ordering for the plurality of online game sessions, wherein the ordering is based at least in part on the distances, wherein the ordering is based at least in part on distances between the plurality of buckets and on distances between the plurality of layers, and wherein the ordering is determined without any communication between the game console and the plurality of computing devices. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27)
-
-
28. A system comprising:
-
an interface to allow communication with a network; and a processing unit configured to; request information from a match making service regarding current online game sessions, wherein the match making service is coupled to the system via the network, wherein each online game session belongs to one of a plurality of buckets and to one of a plurality of layers; receive, from the match making service, an indication of a plurality of current online game sessions; and present, in an order based at least in part on distances between the system and other devices that are part of the plurality of current online game sessions, at least a subset of the plurality of current online game sessions, wherein the distances are based at least in part on different data transfer rates in different parts of the network, and wherein the order is also based at least in part on a distance between buckets and on a distance between layers. - View Dependent Claims (29, 30, 31, 32, 33, 34)
-
-
35. One or more computer readable media having stored thereon a plurality of instructions that, when executed by one or more processors, causes the one or more processors to perform a method, the method comprising:
-
obtaining, from a match making service over a network, a list of multiple online game sessions that may be joined; and presenting to a user identifiers of the multiple online game sessions in an order that is based at least in part on distances between the one or more processors and each of a plurality of computing devices that are part of one of the multiple online game sessions, wherein the distances are based at least in part on (1) different data transfer rates in different parts of the (2) a distance between a bucket to which the one or more processors is assigned and a bucket to which each computing device is assigned, and (3) a distance between a layer to which the one or more processors is assigned and a layer to which each computing device is assigned, each game session being assigned to one of a plurality of buckets and to one of a plurality of a plurality of layers. - View Dependent Claims (36, 37, 38, 39)
-
-
40. A method comprising:
-
receiving a request, from a computing device, for an identification of one or more online game sessions that satisfy one or more criteria; identifying a plurality of online game sessions that satisfy the one or more criteria; determining, for each of the plurality of online game sessions, a first distance and a second distance between the computing device and another computing device that is part of the online game session, the determining comprising; identifying a first bucket of a first layer to which the computing device is assigned, and a second bucket of a second layer to which the computing device is assigned, wherein a layer is a collection of buckets; identifying a third bucket of the first layer to which the other computing device is assigned, and a fourth bucket of the second layer to which the other computing device is assigned; identifying the first distance between the first and third buckets; and identifying the second distance between the second and fourth buckets; selecting an order in which the plurality of online game sessions are to be presented at the computing device, wherein the order is based at least in part on both the first distance and the second distance; and returning identifiers of the plurality of online game sessions to the computing device for presentation at the computing device in the selected order.
-
-
41. A method comprising:
-
receiving a request, from a computing device, for an identification of one or more online game sessions that satisfy one or more criteria; identifying a plurality of online game sessions that satisfy the one or more criteria; determining, for each of the plurality of online game sessions, a spatial distance between the computing device and another computing device that is part of the online game session, the spatial distance being determined without communicating directly with any of the computing devices; determining, for each of the plurality of online game sessions, a bucket distance between a bucket to which the computing device is assigned and another bucket to which the another computing device is assigned, the bucket distance being determined without communicating directly with any of the computing devices; determining, for each of the plurality of online game sessions, a layer distance between a layer to which the computing device is assigned and another layer to which the another computing device is assigned, the layer distance being determined without communicating directly with any of the computing devices; selecting an order in which the plurality of online game sessions are to be presented at the computing device, wherein the order is based at least in part on the spatial distances, the bucket distances, and the layer distances; and returning identifiers of the plurality of online game sessions to the computing device for presentation at the computing device in the selected order.
-
Specification