# US 7,610,505 B2 · Violations in a peer-to-peer relay network

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

- Number: US 7,610,505 B2
- Document ID: US7610505B2
- Status: Granted
- Kind: B2
- Application number: 12/011,108
- Filed: 2008-01-24
- Published: 2008-06-19
- Granted: 2009-10-27
- Earliest claimed: 2003-10-20
- Assignees: Sony Computer Entertainment America LLC
- Inventors: Glen Van Datta; Anthony Mai
- Web page: https://patentgrep.com/patent/US7610505B2

## CPC

- H04L 67/104: Peer-to-peer [P2P] networks
- A63F 13/12
- A63F 13/30: Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F 13/34: using peer-to-peer connections
- H04L 63/14: {for detecting or protecting against malicious traffic}
- H04L 67/107: {with limitation or expansion of the discovery scope}
- H04L 67/1085: {involving dynamic management of active down- or uploading connections}
- A63F 2300/402: Communication between platforms, i.e. physical link to protocol
- A63F 2300/408: Peer to peer connection
- A63F 2300/5586: for enforcing rights or rules, e.g. to prevent foul play
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- A63F: CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR

## Abstract

Methods and apparatus for implementing peer-to-peer relay. In one implementation, a method of detecting and recovering from violations in a peer-to-peer relay network includes: receiving a message at a peer system from a sending peer system connected to said peer system in a peer-to-peer relay network detecting a violation in said received message; and sending an alert message to each peer system connected to said peer system in said peer-to-peer relay network; wherein each peer system in said peer-to-peer relay network stores a connection limit defining a number of other peer systems up to which that peer system is permitted to connect, and each peer system stores a set of one or more relay rules for relaying data to other peer systems connected to that peer system.

## Claims

### Claim 1

A method of detecting and recovering from violations in a peer-to-peer relay network, comprising:
receiving a first message having first content data at a receiving peer system from a first sending peer system connected to the receiving peer system in the peer-to-peer relay network;
detecting a manipulation of data in said received first message, said manipulation of data changing the outcome of processing by the receiving peer system;
receiving a second message having second content data at the receiving peer system from at least one second sending peer system, wherein the second content data are expected to be substantially the same as the first content data;
wherein detecting the manipulation includes:
comparing by the receiving peer system the received first content data to the received second content data; and
determining whether the first message from the first sending peer system is different from at least one of the second messages based on the comparison;
when the first message from the first sending peer system is different, sending by the receiving peer system a manipulated data alert message to other peer systems connected to said receiving peer system in said peer-to-peer relay network, the manipulated data alert message identifying the first sending peer as responsible for the manipulation of data and not sending the message received from the first peer system to other peer systems connected to said receiving peer system in said peer-to-peer relay network; and
when the first message received from the first sending peer system is not different, sending by the receiving peer system the first message to other peer systems connected to said receiving peer system in said peer-to-peer relay network,
wherein the receiving peer does not originate the first or second content data sent from the respective first or second sending peer system.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
causing the first sending peer system to disconnect from the peer-to-peer relay network.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
sending the manipulated data alert message to a server connected to the peer-to-peer relay network.

### Claim 4 (depends on 3)

The method of claim 3, wherein the server causes the first sending peer to disconnect from the peer-to-peer relay network.

### Claim 5 (depends on 1)

The method of claim 1, further comprising, sending a replacement message with second content data based on the second content data received from the at least one second sending peer.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
ignoring further messages sent by said first sending peer system.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
estimating by the receiving peer a correct content data for the first received message; and
relaying the correct data to other peers on the peer-to-peer network.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
the data relayed by peer systems is update data for a network environment.

### Claim 9 (depends on 1)

The method of claim 1, wherein the data relayed by peer systems is update data for an online game.

### Claim 10 (depends on 1)

The method of claim 1, wherein at least one peer system is a network-enabled game console.

### Claim 11 (depends on 1)

The method of claim 1, wherein at least two peer systems are connected through the Internet.

### Claim 12 (depends on 1)

The method of claim 1, wherein detecting said violation includes detecting invalid data in said first message.

### Claim 13 (depends on 1)

The method of claim 1, wherein detecting said violation includes detecting said first message was sent using improper sending procedures.

### Claim 14 (depends on 13)

The method of claim 13, wherein said first message was sent as part of denial of service attack.

### Claim 15

A method of detecting and recovering from a cheating violation in a peer-to-peer relay network, comprising:
receiving a message having content data at a receiving peer system from a sending peer system connected to the receiving peer system in the peer-to-peer relay network;
detecting a manipulation of data in said received message, said manipulation of data changing the outcome of processing by the receiving peer system,
wherein detecting said cheating violation includes:
generating predicted data;
comparing by the receiving peer system the message from the sending peer system with the predicted data; and
determining whether the message received from the sending peer system is different from the predicted data; and
when the message from the sending peer system is different based on the predicted data, sending by the receiving peer system a manipulated data alert message to other peer systems connected to the receiving peer system in the peer-to-peer relay network, the manipulated data alert message identifying the sending peer as responsible for the manipulation of data and not sending the message received from the sending peer system to other peer systems connected to said receiving peer system in said peer-to-peer relay network; and
when the message received from the sending peer system is not different, sending by the receiving peer system the message to other peer systems connected to said receiving peer system in said peer-to-peer relay network,
wherein the receiving peer does not originate the content data sent from the sending peer system.

### Claim 16 (depends on 15)

The method of claim 15, further comprising:
sending the predicted data to each other peer system connected to the peer system in the peer-to-peer relay network.

### Claim 17

A receiving peer system in a peer-to-peer relay network, comprising:
means for receiving a first message having first content data at the receiving peer system from a first sending peer system connected to said peer system in a peer-to-peer relay network;
means for detecting a manipulation of data in said received first message, said manipulation of data changing the outcome of processing by the receiving peer system;
means for receiving a second message having second content data at the receiving peer system from at least one second sending peer system, wherein the second content data are expected to be substantially the same as the first content data;
wherein detecting said manipulation includes:
comparing by the receiving peer system the received first content data to the received second content data;
determining whether the first message from the first sending peer system is different from at least one of the second messages based on the comparison; and
when the message from the first sending peer system is different, sending by the receiving peer system a manipulated data alert message to other peer systems connected to said receiving peer system in said peer-to-peer relay network, the manipulated data alert message identifying the first sending peer as responsible for the manipulation of data and not sending the message received from the first peer system to other peer systems connected to said receiving peer system in said peer-to-peer relay network; and
when the first message received from the first sending peer system is not different, sending by the receiving peer system the first message to other peer systems connected to said receiving peer system in said peer-to-peer relay network.

### Claim 18 (depends on 17)

The peer system of claim 17, further comprising:
means for sending said data manipulation alert message to a server connected to said peer system.

### Claim 19 (depends on 18)

The method of claim 18, wherein the server causes the first sending peer to disconnect from the peer-to-peer relay network.

### Claim 20

A computer-readable medium storing a computer-readable program that when executed on a processor causes the processor to execute a method in a peer system of a peer-to-peer relay network, the method comprising the steps of:
receiving a first message having first content data at a receiving peer system from a first sending peer system connected to said peer system in a peer-to-peer relay network
detecting a manipulation of data in said received first message, said manipulation of data changing the outcome of processing by the receiving peer system;
receiving a second message having second content data at the receiving peer system from at least one second sending peer system, wherein the second content data are expected to be substantially the same as the first content data;
wherein detecting the manipulation includes:
comparing by the receiving peer system the received first content to the received second content data; and
second content data; and
determining whether the first message from the first sending peer system is different from at least one of the second messages based on the comparison; and
when the message from the first sending peer system is different, sending by the receiving peer system a manipulated data alert message to other peer systems connected to said receiving peer system in said peer-to-peer relay network, the manipulated data alert message identifying the first sending peer as responsible for the manipulation of data and not sending the message received from the first peer system to other peer systems connected to said receiving peer system in said peer-to-peer relay network; and
when the first message received from the first sending peer system is not different, sending by the receiving peer system the first message to other peer systems connected to said receiving peer system in said peer-to-peer relay network,
wherein the receiving peer does not originate the first or second content data sent from the respective first or second sending peer system.

### Claim 21 (depends on 20)

The computer-readable medium of claim 20, further comprising sending said data manipulation alert message to a server connected to said peer system.

### Claim 22 (depends on 21)

The method of claim 21, wherein the server causes the first sending peer to disconnect from the peer-to-peer relay network.
