IP Library Granted Patent US 11,089,094
Granted Patent B2
US 11,089,094 · App. 16/127,116 · Granted Aug 10, 2021

Collaborator network creation using cloud-based metadata

Inventors: Matthew A. Basta (Redwood City, CA); Christopher Ling (Los Altos, CA); Tarrence Van As (Los Altos, CA)
Assignee: Box, Inc.
H04L67/1042H04L65/1003H04L65/403H04L67/141
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 11,089,094
App. No.
16/127,116
Granted
Aug 10, 2021
Kind
B2
Abstract

Systems for managing user collaboration over objects stored on a cloud-based service platform. A server in a cloud-based platform maintains a set of read/write metadata that is associated in one-to-one correspondence to stored objects that are accessible by two or more collaborators. The server does not maintain a list of peers that communicate over peer-to-peer connections, rather the server exposes a semaphore for access to the metadata that pertains to a particular one of the stored objects. The server responds to download requests from the collaborators so as to deliver executable signaling protocol computer code to the collaborators' user devices. The signaling protocol code includes semaphore access by the collaborators' user devices using an application programming interface. Two or more accesses over the same semaphore establishes a leader and at least one follower. Corresponding ephemeral peer-to-peer connections are established between the leader and the at least one follower.

Claims (41)

1. A method comprising:

identifying a server in a cloud-based environment that is interfaced with one or more storage devices that hold stored objects accessible by one or more collaborators;

creating a peer-to-peer connection by using a signaling protocol that operates by signaling among nodes in the peer-to-peer connection using cloud-based metadata that comprises an atomic variable, by:

exposing at least one signaling value corresponding to the atomic variable formed by the cloud-based metadata pertaining to a particular one of the stored objects, the at least one signaling value to coordinate access to the cloud-based metadata to create the peer-to-peer connection;

identifying one or more user devices associated with the one or more collaborators;

performing at least a portion of a signaling protocol between the server and one or more of the user devices, the portion of the signaling protocol comprising processing at least one access request using the at least one signaling value by the one or more of the user device, wherein the signaling protocol comprises access of the cloud-based metadata to configure an attribute that correlates to establishment of a leader or a follower for the peer-to-peer connection; and

establishing the peer-to-peer connection between two or more of the user devices to form at least one collaborator network.

2. The method of claim 1 , wherein the at least one signaling value is an atomic key-value pair.

3. The method of claim 1 , wherein the access request comprises at least one of, a compare and swap operation, or a read operation, or a modification operation, or any combination thereof.

4. The method of claim 3 , further comprising authenticating metadata access based at least in part on one or more user attributes.

5. The method of claim 4 , wherein the metadata access is facilitated by a metadata API.

6. The method of claim 1 , wherein the metadata comprises at least one of, one or more atomic variables, or one or more key-value pairs, or any combination thereof.

7. The method of claim 1 , wherein at least one server connection is used to perform the signaling protocol that is not a persistent connection.

8. The method of claim 1 , wherein the peer-to-peer connections are WebRTC connections.

9. The method of claim 1 , wherein at least one of the peer-to-peer connections is established based at least in part on performing a portion of a node-to-node communication protocol, the portion of the node-to-node communication protocol performed to result in a change of connection data pertaining to connected nodes.

10. The method of claim 1 , wherein determining a leader from the one or more of the user devices is based at least in part on at least one metadata access by the one or more of the user devices.

11. The method of claim 1 , wherein determining one or more followers from the one or more of the user devices is based at least in part on an additional portion of the signaling protocol, the additional portion of the signaling protocol comprising at least one metadata access by the one or more of the user devices.

12. A computer readable medium, embodied in a non-transitory computer readable medium, the non-transitory computer readable medium having stored thereon a sequence of instructions which, when stored in memory and executed by a processor causes the processor to perform a set of acts, the acts comprising:

identifying a server in a cloud-based environment that is interfaced with one or more storage devices that hold stored objects accessible by one or more collaborators;

creating a peer-to-peer connection by using a signaling protocol that operates by signaling among nodes in the peer-to-peer connection using cloud-based metadata that comprises an atomic variable, by:

exposing at least one signaling value corresponding to the atomic variable formed by the cloud-based metadata pertaining to a particular one of the stored objects, the at least one signaling value to coordinate access to the cloud-based metadata to create the peer-to-peer connection;

identifying one or more user devices associated with the one or more collaborators;

performing at least a portion of a signaling protocol between the server and one or more of the user devices, the portion of the signaling protocol comprising processing at least one access request using the at least one signaling value by the one or more of the user devices, wherein the signaling protocol comprises access of the cloud-based metadata to configure an attribute that correlates to establishment of a leader or a follower for the peer-to-peer connection; and

establishing the peer-to-peer connection between two or more of the user devices to form at least one collaborator network.

13. The computer readable medium of claim 12 , wherein the at least one signaling value is an atomic key-value pair.

14. The computer readable medium of claim 12 , wherein the access request comprises at least one of, a compare and swap operation, or a read operation, or a modification operation, or any combination thereof.

15. The computer readable medium of claim 14 , further comprising authenticating metadata access based at least in part on one or more user attributes.

16. The computer readable medium of claim 15 , wherein the metadata access is facilitated by a metadata API.

17. The computer readable medium of claim 12 , wherein the metadata comprises at least one of, one or more atomic variables, or one or more key-value pairs, or any combination thereof.

18. The computer readable medium of claim 12 , wherein at least one server connection is used to perform the signaling protocol that is not a persistent connection.

19. A system comprising:

a storage medium having stored thereon a sequence of instructions; and

a processor or processors that execute the instructions to cause the processor or processors to perform a set of acts, the acts comprising,

identifying a server in a cloud-based environment that is interfaced with one or more storage devices that hold stored objects accessible by one or more collaborators;

creating a peer-to-peer connection by using a signaling protocol that operates by signaling among nodes in the peer-to-peer connection using cloud-based metadata that comprises an atomic variable, by:

exposing at least one signaling value corresponding to the atomic variable formed by metadata pertaining to a particular one of the stored objects, the at least one signaling value to coordinate access to the metadata to create the peer-to-peer connection;

identifying one or more user devices associated with the collaborators;

performing at least a portion of a signaling protocol between the server and one or more of the user devices, the portion of the signaling protocol comprising processing at least one access request using the at least one signaling value by the one or more of the user device, wherein the signaling protocol comprises access of the cloud-based metadata to configure an attribute that correlates to establishment of a leader or a follower for the peer-to-peer connection; and

establishing the peer-to-peer connection between two or more of the user devices to form at least one collaborator network.

20. The system of claim 19 , wherein the at least one signaling value is an atomic key-value pair.

21. The system of claim 19 , wherein the access request comprises at least one of, a compare and swap operation, or a read operation, or a modification operation, or any combination thereof.

Assignments (1)
SECURITY INTEREST Recorded Jul 26, 2023
From: BOX, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 064389/0686 →
Continuity (2)
Continuation 15092458 · Apr 6, 2016
Related Publication 20190020712A1 · Jan 17, 2019
Cited By (1)
US 12,501,225