IP Library Granted Patent US 9,323,777
Granted Patent B1
US 9,323,777 · App. 13/668,088 · Granted Apr 26, 2016

Distributed file-sharing across personal devices

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 9,323,777
App. No.
13/668,088
Granted
Apr 26, 2016
Kind
B1
Abstract

Systems and methods for distributed file-sharing across personal devices are provided. Information is maintained in memory regarding multiple user devices associated with an authenticated user. The stored information may concern one or more files stored on each of the user devices. A request is received from a first user device associated with the authenticated user concerning access to a file. One or more of the other user devices may store a copy of the file. The user devices that store a copy of the requested file may be identified. A request is sent to the identified user devices, which may then provide one or more portions of the requested file to the requesting user device, which may then assemble the portions into a whole copy of the file.

Claims (44)

1. A method for distributed file-sharing across personal devices, the method comprising:

maintaining information in memory regarding a plurality of personal user devices under control of an authenticated user, wherein the user has previously been authenticated on each of the plurality of personal user devices, wherein the maintained information is regarding identifying information for each personal user device under control of the authenticated user and what files are stored on each of the personal user devices under control of the authenticated user, and wherein the maintained information is inputted by the user and provided by the other personal user devices upon request;

receiving a request from the authenticated user using one of the personal user devices under control of the authenticated user, wherein the received request via, the requesting user device, pertains to a requested file stored on one or more of the plurality of personal user devices under control of the authenticated user;

determining that the received request concerns access to one or more portions of the requested file that is available on the plurality of personal user devices under control of the authenticated user, wherein the one or more portions of the requested file determined to be available locally on the requesting user device is retrieved from local storage associated with the requesting user device;

determining that the received request concerns access to one or more portions of the requested file that is unavailable on the requesting user device;

executing instructions stored in memory, wherein execution of the instructions by a processor identifies the one or more other personal user devices under control of the authenticated user that stores the copy of the one or more portions of the requested file from memory;

transmitting the request over a communication network to the identified other personal user devices under control of the authenticated user, wherein each identified other personal user device under control of the authenticated user provides the one or more portions of the stored copy of the requested file to the requesting user device in response to the request; and

receiving assembly instructions indicating how to assemble the one or more portions transmitted from the identified other user devices under control of the authenticated user into an order to generate a whole copy of the requested file, wherein the requesting user device assembles the portions received from the personal user devices in accordance with the received assembly instructions to generate the whole copy of the requested file.

2. The method of claim 1 , wherein the received instructions are provided as metadata.

3. The method of claim 2 , wherein the metadata includes torrent information regarding how the portions of the requested file are defined.

4. The method of claim 1 , further comprising using the instructions to determine when all portions of the requested file have been received.

5. The method of claim 1 , further comprising using the instructions to determine which portions of the requested file have been received and which portions of the requested file have not been received.

6. The method of claim 1 , further comprising generating a directory of files stored on one or more of the user devices associated with the user.

7. The method of claim 6 , wherein the requested file is selected by the user from the generated directory.

8. The method of claim 7 , wherein the directory includes at least one bookmark to the requested file, wherein the user previously designated that the requested file be bookmarked.

9. The method of claim 1 , further comprising automatically defining the portions of the requested file and sending instructions to the other user devices regarding defined portions of the requested file.

10. A system for distributed file-sharing across personal devices, the system comprising:

a plurality of personal user devices under control of an authenticated user, wherein the user has previously been authenticated on each of the plurality of personal user devices, each user device under control of the authenticated user comprising:

memory for maintaining information regarding the plurality of other personal user devices under control of the authenticated user, wherein the maintained information is regarding identifying information for each personal user device under control of the authenticated user and what files are stored on each of the personal user devices under control of the authenticated user, and wherein the maintained information is inputted by the user and provided by the other personal user devices upon request,

a user interface for receiving a request from the authenticated user using one of the personal user devices under control of the authenticated user, wherein the received request pertains to a requested file stored on one or more of the plurality of personal user devices under control of the authenticated user,

a processor for executing instructions stored in memory, wherein execution of the instructions by the processor:

determines that the received request concerns access to one or more portions of the requested file that is available on the plurality of personal user devices under control of the authenticated user,

wherein a one or more portions of the requested file determined to be available locally on the requesting user device is retrieved from local storage associated with the requesting user device,

determines that the received request concerns access to one or more portions of the requested file that is unavailable on the requesting user device;

identifies the one or more other personal user devices under control of the authenticated user that stores the copy of the one or more portions of the requested file from memory,

a communication interface for:

transmitting the request over a communication network to the identified other personal user devices under control of the authenticated user, wherein each identified other personal user device under control of the authenticated user provides one or more portions of the stored copy of the requested file in response to the request, and

receiving assembly instructions indicating how to assemble the one or more portions transmitted from the identified other user devices under control of the authenticated user into an order to generate a whole copy of the requested file, wherein the requesting user device assembles the portions received from the personal user devices in accordance with the received assembly instructions to generate the whole copy of the requested file.

11. The system of claim 10 , wherein the received instructions are provided as metadata.

12. The system of claim 11 , wherein the metadata includes torrent information regarding how the portions of the requested file are defined.

13. The system of claim 10 , wherein further execution of the received instructions determines when all portions of the requested file have been received.

14. The system of claim 10 , wherein further execution of the received instructions determines which portions of the requested file have been received and which portions of the requested file have not been received.

15. The system of claim 10 , wherein further execution of the instructions in memory generates a directory of files stored on one or more of the user devices associated with the user.

16. The system of claim 15 , wherein the requested file is selected by the user from the generated directory.

17. The system of claim 16 , wherein the directory includes at least one bookmark to the requested file, wherein the user previously designated that the requested file be bookmarked.

18. The system of claim 10 , wherein further execution of the instructions in memory automatically defines the portions of the requested file and sending instructions to the other user devices regarding defined portions of the requested file.

19. A non-transitory computer-readable storage medium, having embodied thereon a program executable by a processor to perform a method for distributed file-sharing across personal devices, the method comprising:

maintaining information regarding a plurality of personal user devices under control of an authenticated user, wherein the user has previously been authenticated on each of the plurality of personal user devices, wherein the maintained information is regarding identifying information for each personal user device under control of the authenticated user and what files are stored on each of the personal user devices under control of the authenticated user, and wherein the maintained information is inputted by the user and provided by the other personal user devices upon request;

receiving a request from the authenticated user using one of the personal user devices under control of the authenticated user, wherein the received request via, the requesting user device, pertains to a requested file stored on one or more of the plurality of personal user devices under control of the authenticated user;

determining that the received request concerns access to one or more portions of the requested file that is available on the plurality of personal user devices under control of the authenticated user, wherein the one or more portions of the requested file determined to be available locally on the requesting user device is retrieved from local storage associated with the requesting user device;

determining that the received request concerns access to one or more portions of the requested file that is unavailable on the requesting user device;

identifying the one or more other personal user devices under control of the authenticated user that stores the copy of the one or more portions of the requested file from memory;

transmitting the request over a communication network to the identified other personal user devices under control of the authenticated user, wherein each identified other personal user device under control of the authenticated user provides the one or more portions of the stored copy of the requested file to the requesting user device in response to the request; and

receiving assembly instructions indicating how to assemble the one or more portions transmitted from the identified other user devices under control of the authenticated user into an order to generate a whole copy of the requested file, wherein the requesting user device assembles the portions received from the personal user devices in accordance with the received assembly instructions to generate the whole copy of the requested file.

Assignments (4)
PATENT SECURITY AGREEMENT Recorded May 13, 2021
From: RPX CORPORATION
To: BARINGS FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 056241/0453 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2021
From: HOPTO, INC.
To: RPX CORPORATION
Reel/Frame 055795/0700 →
CHANGE OF NAME Recorded Nov 9, 2015
From: GRAPHON CORPORATION
To: HOPTO INC.
Reel/Frame 037071/0097 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2013
From: EILAM, ELDAD
To: GRAPHON CORPORATION
Reel/Frame 029679/0261 →