# US 2019/0168119 A1 · Using Connection Quality History to Optimize User Experience

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

- Number: US 2019/0168119 A1
- Document ID: US20190168119A1
- Status: Published application
- Kind: A1
- Application number: 16/272,860
- Filed: 2019-02-11
- Published: 2019-06-06
- Earliest claimed: 2015-03-07
- Assignees: Sony Interactive Entertainment America LLC
- Applicants: Sony Interactive Entertainment America LLC
- Inventors: Jason Gustafson; Ryan Hamilton Breed
- Web page: https://patentgrep.com/patent/US20190168119A1

## CPC

- A63F 13/493: Resuming a game, e.g. after pausing, malfunction or power failure
- A63F 13/30: Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F 13/355: Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
- A63F 13/48: Starting a game, e.g. activating a game device or waiting for other players to join a multiplayer session
- H04L 67/141: Setup of application sessions (admission control or resource allocation in data switching networks H04L47/70)
- H04L 67/306: User profiles
- H04L 67/63: Routing a service request depending on the request content or context
- A63F 2300/534: for network load management, e.g. bandwidth optimization, latency reduction
- A63F 2300/535: for monitoring, e.g. of user parameters, terminal parameters, application parameters, network parameters
- A63F: CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Methods and systems for assigning a data center to service a request from a user account include receiving a login request to a cloud gaming server. The login request is examined to identify a user account. A use history of the cloud gaming server is examined to identify a data center. The user account is assigned to the data center to start a session of streaming game play at a server within the data center. The data center is identified without performing a connection testing operation.

## Claims

### Claim 1

A method, comprising:
receiving a request for accessing a cloud gaming system, the request originating from a user;
analyzing use history of the user, in response to the request, to predict usage of a game and to identify a data center that was last used to play the game by the user, the identified data center having an instance of the game loaded on a server of the data center and available for assignment to the user;
assigning the instance of the game to the user, the assigning causing user data of the user to be associated with the instance of the game to enable interactivity with the game via a client device; and
verifying performance level of a communication channel established between the server and the client device to confirm that the performance level meets a predefined metric for playing the game, the performance level being verified after initiating the play of the game.

### Claim 2 (depends on 1)

The method of claim 1, wherein the game is processed by the server of the data center in a streaming mode so as to stream video frames of the game to the client device, wherein the processing of the game includes processing of the user input received from the client device.

### Claim 3 (depends on 1)

The method of claim 1, wherein verifying performance level includes generating a signal to the server of the cloud gaming system to switch the data center assigned to the user for playing the game to a new data center, when the performance level of the communication channel does not meet the predefined metric.

### Claim 4 (depends on 3)

The method of claim 3, wherein the new data center is identified based on a current geo location of the user initiating the request, and availability of an instance of the game at a server of the new data center for assigning to the user.

### Claim 5 (depends on 3)

The method of claim 3, wherein the predefined metric includes a minimum connection speed required for streaming video frames of the game during play.

### Claim 6 (depends on 3)

The method of claim 3, wherein verifying performance level includes,
monitoring connection attributes of the communication channel established between the server of the data center and the client device, by performing a latency test using video frames generated during play of the game, the latency test performed in background during play of the game; and
determining a quality of connection of the communication channel by comparing the connection attributes against the predefined metrics, the quality of connection determined by taking into account a threshold of latency defined for the game, wherein the signal generated to switch to the new data center is based on the quality of connection.

### Claim 7 (depends on 6)

The method of claim 6, wherein the connection attributes of the communication channel is affected by a geo location of the user, such that the connection attributes of the communication channel is different in a new geo location than the connection attributes at a geo location identified in the use history of the user.

### Claim 8 (depends on 3)

The method of claim 3, wherein the switching to the new data center is done at a transition point defined in the game.

### Claim 9 (depends on 3)

The method of claim 3, wherein the switching to the new data center includes,
pausing play of the game at the data center, the pausing identifies a restart point for resuming play of the game;
loading a game state of the game of the user from the server at the data center to a server in the new data center by synchronizing game data between the data center and the new data center; and
resume play of the game from the restart point at the new data center.

### Claim 10 (depends on 1)

The method of claim 1, wherein associating user data to the instance includes,
synchronizing the user data of the user from different data centers used to service the prior requests for the game received from the user, the synchronizing causes updating of game state of the game and the user data of the user.

### Claim 11 (depends on 1)

The method of claim 1, wherein the use history is maintained at the cloud gaming system and wherein analyzing use history includes identifying predictive attributes of game play of the user, the predictive attributes used in identifying the game and the data center.

### Claim 12 (depends on 11)

The method of claim 11, wherein identifying predictive attributes of game play includes,
identifying a relative weight for each predictive attribute of the user based on a certainty value, the certainty value of each predictive attribute determined from the gaming preferences of the user gathered from prior game play sessions in the use history.

### Claim 13

A non-transitory computer-readable storage medium having computer executable instructions stored thereon, which when executed causes a computer system to carry out a method, the computer readable storage medium including:
program instructions for receiving a request for accessing a cloud gaming system, the request originating from a user;
program instructions for analyzing use history of the user, in response to the request, to predict usage of a game and to identify a data center that was last used to play the game by the user, the identified data center having an instance of the game loaded on a server of the data center and available for assignment to the user;
program instructions for assigning the instance of the game to the user, the assigning causing user data of the user to be associated with the instance of the game to enable interactivity with the game via a client device; and
program instructions for verifying performance level of a communication channel established between the server and the client device to confirm that the performance level meets a predefined metric for playing the game, the performance level being verified after initiating the play of the game.

### Claim 14 (depends on 13)

The computer-readable storage medium of claim 13, wherein program instructions for verifying performance level includes program instructions for generating a signal to the server of the cloud gaming system to switch the data center assigned to the user for playing the game to a new data center, when the performance level of the communication channel does not meet the predefined metric.

### Claim 15 (depends on 14)

The computer-readable storage medium of claim 14, wherein the new data center is identified based on a current geo location of the user initiating the request, and availability of an instance of the game at a server of the new data center for assigning to the user.

### Claim 16 (depends on 14)

The computer-readable storage medium of claim 14, wherein program instructions for generating a signal includes,
program instructions for monitoring connection attributes of the communication channel established between the server of the data center and the client device, by performing a latency test using video frames generated during play of the game, the latency test performed in background during play of the game; and
program instructions for determining a quality of connection of the communication channel by comparing the connection attributes against the predefined metrics, the quality of connection determined by taking into account a threshold of latency defined for the game, wherein the signal generated to switch to the new data center is based on the quality of connection.

### Claim 17 (depends on 14)

The computer-readable storage medium of claim 14, wherein program instructions for verifying performance level includes,
program instructions for pausing play of the game at the data center and identifying a restart point for resuming play of the game;
program instructions for loading a game state of the game of the user from the server at the data center to a server in the new data center that includes an instance of the game for assigning to the user, by synchronizing game data between the data center and the new data center; and
program instructions for resume play of the game from the restart point at the new data center.
