IP Library Granted Patent US 7,747,775
Granted Patent B2
US 7,747,775 · App. 12/120,284 · Granted Jun 29, 2010

Peer-to-peer data relay

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,747,775
App. No.
12/120,284
Granted
Jun 29, 2010
Kind
B2
Abstract

Methods and apparatus for relaying data in a peer-to-peer network. In one implementation, a wireless device includes: an antenna; a wireless communication interface connected to said antenna and supporting wireless communication across a wireless connection provided by said antenna; storage supporting storing data; and a controller connected to said wireless interface and to said storage, supporting an application service, a message service, and a relay service for relay messages; wherein said application service provides execution and management of one or more application programs accessible by said controller using application data stored in said storage, said message service provides building messages and processing received messages, and said relay service provides building a new relay message indicating a selected recipient to which the wireless device does not have a direct wireless connection, sending a built new relay message, and sending a received relay message that indicates a recipient other than the wireless device.

Claims (55)

1. A method of sending a relay message, comprising:

contacting local devices, which are devices that are within range of a sending device through a wireless interface, and requesting identification of available devices;

propagating by the local devices the request for identification of available devices through a peer-to-peer network;

returning the identification of available devices to the sending device;

building a list of available devices, the list including identification of said local devices in a local device list;

selecting a recipient device for a relay message at the sending device;

building said relay message, wherein said relay message includes a recipient identifier indicating said selected recipient device;

sending said relay message to at least one local device through a wireless interface; and

building a map of at least one recipient device and connections among said at least one recipient device and said sending device,

wherein said selecting a recipient device includes selecting a recipient device from said map and wherein said building a map of at least one recipient device includes receiving a map from a server,

wherein said sending device has a direct connection to each of said at least one local device, and

when said recipient device is a local device, sending said relay message from said sending device addressed only to said recipient device through said wireless interface and not sending said relay message addressed to other local devices.

2. The method of claim 1 , further comprising:

building a list of at least one recipient device;

wherein said selecting a recipient device includes selecting a recipient device from said list.

3. The method of claim 2 , wherein:

said building a list of at least one recipient device includes receiving a list of at least one device from a server.

4. The method of claim 2 , wherein:

said building a list of at least one recipient device includes sending a list request to at least one local device.

5. The method of claim 1 , wherein:

said building a map of at least one recipient device includes sending a map request to at least one local device.

6. The method of claim 1 , wherein:

sending said relay message includes broadcasting said relay message through said wireless interface.

7. The method of claim 1 , wherein:

said relay message includes path information indicating at least one intermediary device between said sending device and said selected recipient device.

8. The method of claim 1 , wherein:

said relay message indicates multiple recipient devices.

9. The method of claim 1 , further comprising:

checking a local device list indicating at least one local device to determine whether said selected recipient device is a local device.

10. The method of claim 1 , further comprising:

said relay message includes game application data.

11. A system for sending a relay message, comprising:

means for contacting local devices, which are devices that are within range of a sending device through a wireless interface, and requesting identification of available devices;

means for propagating by the local devices the request for identification of available devices through a peer-to-peer network;

means for returning the identification of available devices to the sending device;

means for building a list of available devices, the list including identification of said local devices in a local device list;

means for selecting a recipient device for a relay message at the sending device;

means for building said relay message, wherein said relay message includes a recipient identifier indicating said selected recipient device;

means for sending said relay message to at least one local device through a wireless interface; and

means for building a map of at least one recipient device and connections among said at least one recipient device and said sending device,

wherein said selecting a recipient device includes selecting a recipient device from said map and wherein said building a map of at least one recipient device includes receiving a map from a server,

wherein said sending device has a direct connection to each of said at least one local device,

when said recipient device is a local device, sending said relay message from said sending device addressed only to said recipient device through said wireless interface and not sending said relay message addressed to other local devices.

12. A non-transitory computer-readable storage medium storing a computer-readable program, said computer readable program adapted to be executed to implement a method for sending a relay message, the method comprising:

contacting local devices, which are devices that are within range of a sending device through a wireless interface, and requesting identification of available devices;

propagating by the local devices the request for identification of available devices through a peer-to-peer network;

returning the identification of available devices to the sending device;

building a list of available devices, the list including identification of said local devices in a local device list;

selecting a recipient device for a relay message at the sending device;

building said relay message, wherein said relay message includes a recipient identifier indicating said selected recipient device;

sending said relay message to at least one local device through a wireless interface; and

building a map of at least one recipient device and connections among said at least one recipient device and said sending device,

wherein said selecting a recipient device includes selecting a recipient device from said map and wherein said building a map of at least one recipient device includes receiving a map from a server,

wherein said sending device has a direct connection to each of said at least one local device,

when said recipient device is a local device, sending said relay message from said sending device addressed only to said recipient device through said wireless interface and not sending said relay message addressed to other local devices.

Assignments (3)
MERGER Recorded Mar 30, 2020
From: SONY INTERACTIVE ENTERTAINMENT AMERICA LLC
To: SONY INTERACTIVE ENTERTAINMENT LLC
Reel/Frame 053323/0567 →
CHANGE OF NAME Recorded May 4, 2016
From: SONY COMPUTER ENTERTAINMENT AMERICA LLC
To: SONY INTERACTIVE ENTERTAINMENT AMERICA LLC
Reel/Frame 038611/0846 →
CHANGE OF NAME Recorded Jun 30, 2010
From: SONY COMPUTER ENTERTAINMENT AMERICA INC.
To: SONY COMPUTER ENTERTAINMENT AMERICA LLC
Reel/Frame 024611/0236 →