# US 10,771,547 B2 · Online matchmaking for P2P topologies

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,771,547 B2
- Document ID: US10771547B2
- Status: Granted
- Kind: B2
- Application number: 15/623,327
- Filed: 2017-06-14
- Published: 2018-12-20
- Granted: 2020-09-08
- Earliest claimed: 2017-06-14
- Assignees: Sony Interactive Entertainment Inc.
- Applicants: Sony Interactive Entertainment America LLC
- Inventors: Ken Miyaki
- Web page: https://patentgrep.com/patent/US10771547B2

## CPC

- H04L 67/1061: using node-based peer discovery mechanisms (static access to replicated servers H04L67/1006; service discovery H04L67/51)
- H04L 67/141: Setup of application sessions (admission control or resource allocation in data switching networks H04L47/70)
- H04L 67/52: specially adapted for the location of the user terminal
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

For improved peer to peer matchmaking network information is obtained from a plurality of devices and a plurality of users is selected to form peer to peer connections via corresponding devices to create a set of potential matches. Device connection statistics for each pair of devices in the set of potential matches are obtained and compared to one or more threshold values. Users with devices that have at least one connection statistic that does not satisfy a threshold condition for that connection statistic are removed from the set of potential matches. Replacements for the removed devices are selected and the match making refinement process repeated until all of the device connection statistics satisfy all conditions associated with the one or more threshold values to generate a refined set of matched peers. Peer to peer connections may then be initiated among the refined set of matched peers.

## Claims

### Claim 1

A method for improved peer to peer matchmaking, the method comprising:
a) obtaining network information from a plurality of devices;
b) selecting a plurality of users to form peer to peer connections via a corresponding plurality of devices to create a set of potential matches;
c) retrieving device connection statistics for each pair of devices in the set of potential matches;
d) comparing device connection statistics to one or more threshold values;
e) removing from the set of potential matches, users with devices that have at least one connection statistic that does not satisfy a threshold condition for that connection statistic as determined from said comparing the device connection statistics to the one or more threshold values;
f) selecting replacement devices for the devices removed in step e) wherein the replacement devices were not part of the set of potential matches;
g) initiating peer to peer connections among selected peers in a resulting refined set of matched peers.

### Claim 2 (depends on 1)

The method of claim 1 further comprising repeating steps c) through f) until all of the device connection statistics satisfy all threshold conditions associated with the one or more threshold values to generate the refined set of matched peers before initiating peer to peer connections.

### Claim 3 (depends on 2)

The method from claim 2 wherein updating peer device connection statistics in i) comprises generating average success or failure rates for individual network components of the devices in the refined set of match peers.

### Claim 4 (depends on 1)

The method from claim 1 further comprising, h) collecting peer to peer connection success or failure information; and
i) updating peer device connection statistics with the peer to peer connection success or failure information and network information of the one or more devices in the refined set of matched peers.

### Claim 5 (depends on 1)

The method from claim 1 wherein selecting a plurality of users to form peer to peer connections via a plurality of devices in b) comprises matching users based on a matchmaking algorithm.

### Claim 6 (depends on 1)

The method from claim 1 wherein network information includes NAT type.

### Claim 7 (depends on 1)

The method from claim 1 wherein network information includes router type.

### Claim 8 (depends on 1)

The method from claim 1 wherein network information includes Firewall type or Firewall settings.

### Claim 9 (depends on 1)

The method from claim 1 wherein connection statistics comprises historical connection information of connections between devices having identical specifications to the devices chosen as potential peer to peer matches.

### Claim 10 (depends on 9)

The method from claim 9 wherein the historical connection information is an average connection success rate.

### Claim 11 (depends on 7)

The method from claim 7 wherein the historical connection information is an average failure rate.

### Claim 12 (depends on 1)

The method from claim 1 where in satisfying the threshold condition in e) further comprises meeting or exceeding a threshold value.

### Claim 13 (depends on 1)

The method from claim 1 wherein satisfying the threshold condition in e) comprises being at or below a threshold value.

### Claim 14 (depends on 1)

The method of claim 1 wherein removing the devices at e) further comprises sending a message to the device notifying a user of connection issues.

### Claim 15 (depends on 1)

The method from claim 1 wherein selecting potential peer to peer matches in b) comprises matching devices based on an overall connection success or failure rate for each device.

### Claim 16 (depends on 1)

The method from claim 1 wherein the one or more threshold values are dependent upon an application type.

### Claim 17 (depends on 1)

The method from claim 1 wherein the one or more threshold values are dependent on a hardware configuration.

### Claim 18 (depends on 1)

The method from claim 1 wherein at f) devices are removed only if a pre-determined number of connection statistics fail to satisfy the one or more threshold condition for those connection statistic as determined from said comparing the device connection statistics to the one or more threshold values.

### Claim 19 (depends on 1)

The method from claim 1 wherein the network information includes internet service provider or geographical computer network information.

### Claim 20

A method for improved peer to peer matchmaking, the method comprising:
a) obtaining network information from one or more devices;
b) selecting a plurality of users to form peer to peer connections via a corresponding plurality of devices to create a set of potential matches;
c) sending the network information of the set of potential matches to a connection statistics database;
d) receiving connection statistics for each pair of devices in the set of potential matches;
e) comparing connection statistics the to one or more threshold values;
f) removing from the set of potential matches, users with devices that have at least at least one connection statistic that does not satisfy a threshold condition for that connection statistic as determined from said comparing the device connection statistics to the one or more threshold values;
g) selecting replacement devices for the devices removed in step f), wherein the replacement devices were not part of the set of potential matches;
h) initiating peer to peer connections among selected peers in a resulting refined set of matched peers.

### Claim 21 (depends on 20)

The method of claim 20 further comprising repeating steps c) through h) until all of the peer device connection statistics satisfy all threshold conditions associated with the one or more threshold values to generate the refined set of matched peers before initiating peer to peer connections.

### Claim 22 (depends on 20)

The method from claim 20 wherein selecting a plurality of users to form peer to peer connections via a plurality of devices in b) comprises matching users based on a matchmaking algorithm.

### Claim 23 (depends on 20)

The method from claim 20 further comprising i) sending a request to the devices in the refined set of matched peers for connection success or failure information and j) receiving connection or failure information from at least one device in the refined set of matched peers.

### Claim 24 (depends on 23)

The method from claim 23 further comprising k) sending the connection success or failure information to the connection statistics database.

### Claim 25

A method for improved peer to peer matchmaking, the method comprising:
a) obtaining network information for devices in a set of potential matches;
b) generating connection statistics based on the network information and connection success or failure information;
c) receiving a request for connection statistics for devices in the set of potential matches;
d) sending the connection statistics for the devices in the set if potential matches;
e) receiving peer to peer connection success or failure information for devices in a refined set of matched peers;
f) updating the connection statistics with the peer to peer connection success or failure information and network information of the devices selected in the refined set of matched peers.

### Claim 26

A non-transitory computer readable medium having embodied therein a computer readable instructions configured to implement a method for improved peer to peer matchmaking, the method comprising:
a) obtaining network information from a plurality of devices;
b) selecting a plurality of users to form peer to peer connections via a corresponding plurality of devices to create a set of potential matches;
c) retrieving device connection statistics for each pair of devices in the set of potential matches;
d) comparing device connection statistics to one or more threshold values;
e) removing from the set of potential matches, users with devices that have at least one connection statistic that does not satisfy a threshold condition for that connection statistic as determined from said comparing the device connection statistics to the one or more threshold values;
f) selecting replacement devices for the devices removed in step e), wherein the replacement devices were not part of the set of potential matches;
g) initiating peer to peer connections among selected peers in a resulting refined set of matched peers.

### Claim 27 (depends on 26)

The method of claim 26 further comprises repeating steps c) through f) until all of the device connection statistics satisfy all conditions associated with the one or more threshold values to generate the refined set of matched peers before initiating peer to peer connections.

### Claim 28 (depends on 26)

The method from claim 26 further comprising, h) collecting peer to peer connection success or failure information; and
i) updating peer device connection statistics with the peer to peer connection success or failure information and network information of the one or more devices in the refined set of matched peers.

### Claim 29

A system comprising
a processor;
a memory coupled to the processor, wherein the memory contains executable instructions configured to implement a method for improved peer to peer matchmaking, the method comprising:
a) obtaining network information from a plurality of devices;
b) selecting a plurality of users to form peer to peer connections via a corresponding plurality of devices to create a set of potential matches;
c) retrieving device connection statistics for each pair of devices in the set of potential matches;
d) comparing device connection statistics to one or more threshold values;
e) removing from the set of potential matches, users with devices that have at least one connection statistic that does not satisfy a threshold condition for that connection statistic as determined from said comparing the device connection statistics to the one or more threshold values;
f) selecting replacement devices for the devices removed in step e), wherein the replacement devices were not part of the set of potential matches;
g) initiating peer to peer connections among selected peers in a resulting refined set of matched peers.

### Claim 30 (depends on 29)

The method from claim 29 further comprising repeating steps c) through f) until all of the device connection statistics satisfy all conditions associated with the one or more threshold values to generate the refined set of matched peers before initiating peer to peer connections.
