-
公开(公告)号:US20200293548A1
公开(公告)日:2020-09-17
申请号:US16888362
申请日:2020-05-29
Applicant: Dropbox, Inc.
Inventor: Nipunn Koorapati , Christopher Rude , Marcio von Muhlen , Nils Bunger
IPC: G06F16/27 , H04L29/08 , G06F16/10 , G06F16/172 , G06F16/178 , G06F16/182 , H04L12/801 , H04L29/12
Abstract: A synchronization protocol for multi-premises hosting of digital content items. In an embodiment, a method includes receiving a first commit request including a first set of one or more identifiers of one or more first content item blocks. The one or more first content item blocks make up a content item stored at a computing device. Further, the method includes, based at least in part on the first commit request, determining a second set of one or more identifiers that includes one or more identifiers of the first set of one or more identifiers not yet stored at a content item block server. The method also includes sending, to the computing device, the second set of one or more identifiers, and receiving a second commit request including the first set of one or more identifiers of the one or more first content item blocks, and an identifier of the content item block server. In this embodiment, the method then includes determining that no content item block from the one or more first content item blocks is missing at the content item block server, and committing the content item to the content item block server.
-
62.
公开(公告)号:US10740350B2
公开(公告)日:2020-08-11
申请号:US15355286
申请日:2016-11-18
Applicant: Dropbox, Inc.
Inventor: Nipunn Koorapati , Christopher Rude , Marcio von Muhlen , Nils Bunger
IPC: G06F16/27 , G06F16/182 , H04L29/08 , G06F16/10 , G06F16/172 , G06F16/178 , H04L12/801 , H04L29/12
Abstract: A peer-to-peer synchronization protocol for multi-premises hosting of digital content items. In one embodiment, for example, a method comprises the operations of: receiving, from a peer computing device, a peer download advertisement comprising an identifier of a content item namespace in association with a peer client journal cursor value; receiving, from a server, one or more server journal entries, each identifying one or more content item blocks of a content item represented by the server journal entry and each having a server journal cursor value; and for at least one server journal entry, downloading, from the peer computing device, at least one content item block of the content item represented by the server journal entry that is not already stored at the computing device.
-
公开(公告)号:US10599673B2
公开(公告)日:2020-03-24
申请号:US15868489
申请日:2018-01-11
Applicant: Dropbox, Inc.
Inventor: Isaac Goldberg , Sujay Jayakar , John Lai , Robert Ying , Nipunn Koorapati , Gautam Gupta , Geoffry Song , Elmer Charles Jubb, IV
IPC: G06F16/27 , G06F16/11 , G06F16/18 , G06F16/178 , G06F16/176 , G06F21/62 , G06F16/23 , G06F16/22 , H04L29/08 , G06F16/182 , G06F1/04 , G06F16/185 , H04L29/06 , G06F16/16 , G06F21/60 , G06F16/13 , G06F16/174 , G06F16/14 , G06F16/907 , G06F16/17 , G06F3/06 , G06F9/54 , G06F12/14 , G06F16/2455 , G06F16/172 , G06F11/14 , G06F21/10 , G06F16/958 , G06F16/901 , G06F16/951 , G06F16/955 , H04L9/32
Abstract: The disclosed technology relates to a system configured to identify at least one difference between a sync tree and at least one of a remote tree and a local tree. The sync tree represents a known synced state between a server state and a file system state, the remote tree represents the server state, and the local tree represents the file system state. The system may further generate, based on the at least one difference, a set of operations configured to converge the server state and the file system state and manage the execution of the set of operations.
-
公开(公告)号:US20190207929A1
公开(公告)日:2019-07-04
申请号:US15867571
申请日:2018-01-10
Applicant: Dropbox, Inc.
Inventor: Nipunn Koorapati , Daniel Horn , Elmer Charles Jubb, IV
CPC classification number: G06F16/137 , G06F1/04 , G06F3/0629 , G06F3/067 , G06F9/547 , G06F16/11 , G06F16/122 , G06F16/125 , G06F16/128 , G06F16/152 , G06F16/156 , G06F16/172 , G06F16/1734 , G06F16/1744 , G06F16/176 , G06F16/1767 , G06F16/178 , G06F16/1787 , G06F16/18 , G06F16/182 , G06F16/183 , G06F16/1844 , G06F16/185 , G06F16/2246 , G06F16/2379 , G06F16/24552 , G06F16/27 , G06F16/275 , G06F16/907 , G06F16/958 , G06F21/6218 , G06F2221/2141 , H04L9/3213 , H04L9/3247 , H04L63/10 , H04L63/101 , H04L67/06 , H04L67/1095 , H04L67/1097 , H04L67/306 , H04L67/42
Abstract: An interface of a content management system manages storage and access of content on the system. For example, after receiving, from a client, a request to download a content item, the interface determines whether the request includes a valid token. If so, the interface sends a content item request to a storage service, retrieves the content item, and sends the content item to the client. Otherwise, the interface sends an authorization request to an authorization service, an authentication request to an authentication service, and a content item request to the storage service. Based on the requests, the interface determines whether the content item is available in storage and whether the client is authorized to access the content item. When the content item is available in storage and the client is authorized to access the content item, the interface retrieves the content item and sends the content item to the client.
-
公开(公告)号:US10324903B1
公开(公告)日:2019-06-18
申请号:US15868518
申请日:2018-01-11
Applicant: Dropbox, Inc.
Inventor: Isaac Goldberg , Elmer Charles Jubb, IV , Sujay Jayakar , John Lai , Robert Ying , Nipunn Koorapati , Gautam Gupta , Geoffry Song
IPC: G06F16/22 , G06F16/23 , H04L29/08 , G06F16/178
CPC classification number: G06F16/137 , G06F1/04 , G06F3/0629 , G06F3/067 , G06F9/547 , G06F16/11 , G06F16/122 , G06F16/125 , G06F16/128 , G06F16/152 , G06F16/156 , G06F16/172 , G06F16/1734 , G06F16/1744 , G06F16/176 , G06F16/1767 , G06F16/178 , G06F16/1787 , G06F16/18 , G06F16/182 , G06F16/183 , G06F16/1844 , G06F16/185 , G06F16/2246 , G06F16/2379 , G06F16/24552 , G06F16/27 , G06F16/275 , G06F16/907 , G06F16/958 , G06F21/6218 , G06F2221/2141 , H04L9/3213 , H04L9/3247 , H04L63/10 , H04L63/101 , H04L67/06 , H04L67/1095 , H04L67/1097 , H04L67/306 , H04L67/42
Abstract: The disclosed technology relates to a system configured to obtain a set of tree data structures including a remote tree representing a server state of content items associated with a user account on a content management system, a local tree representing a file system state of content items associated with the user account on a client device, and a sync tree representing a known sync state between the content management system and the client device. The system is configured to determine that the user account on the content management system includes at least one modification not synchronized to the client device by comparing the remote tree and the sync tree.
-
公开(公告)号:US20180034910A1
公开(公告)日:2018-02-01
申请号:US15727565
申请日:2017-10-07
Applicant: Dropbox, Inc.
Inventor: Bogdan-Cristian Tataroiu , Nipunn Koorapati
IPC: H04L29/08 , H04N21/278 , H04N21/83
CPC classification number: H04L67/1097 , H04L67/02 , H04L67/06 , H04L67/1095 , H04N21/278 , H04N21/83
Abstract: A content management system synchronizes content items across client computing systems. The content items are transmitted to the content management system and managed as blocks of data with a fixed size. When a new content item is added to synchronized data at a client, the client transmits the blocks and a blocklist to the content management system. The content management system uses the blocklist to determine blocks expected to be received at the content management system and the client begins to transmit blocks of the content item to the content management system. When blocks received at the content management system match expected blocks, the content management system notifies receiving clients to begin receiving blocks for the content item, prior to receipt of all blocks on the blocklist at the content management system. This enables content items to begin synchronization across clients prior to actual entry of the content item into the content management system.
-
公开(公告)号:US09882770B2
公开(公告)日:2018-01-30
申请号:US15355305
申请日:2016-11-18
Applicant: Dropbox, Inc.
Inventor: Nipunn Koorapati , Christopher Rude , Marcio von Muhlen , Nils Bunger
CPC classification number: H04L41/046 , G06F17/30194 , H04L67/02 , H04L67/06 , H04L67/1097 , H04L67/32
Abstract: Techniques for apparent cloud access of a hosted content item. In one embodiment, for example, a method performed at a personal computing device comprising a user agent comprises: receiving a block agent request for a content item from the user agent; determining content item block identifiers of content item blocks that make up the content item; determining which, if any, of the content item blocks that make up the content item are not stored in a local storage of the personal computing device; downloading, from a block server of an online content management system, any of the content item blocks that are not stored in a local storage of the personal computing device; and sending to the user agent, in a response to the block agent request, data of each of the content item blocks that make up the content item.
-
公开(公告)号:US20170222865A1
公开(公告)日:2017-08-03
申请号:US15355305
申请日:2016-11-18
Applicant: Dropbox, Inc.
Inventor: Nipunn Koorapati , Christopher Rude , Marcio von Muhlen , Nils Bunger
CPC classification number: H04L41/046 , G06F17/30194 , H04L67/02 , H04L67/06 , H04L67/1097 , H04L67/32
Abstract: Techniques for apparent cloud access of a hosted content item. In one embodiment, for example, a method performed at a personal computing device comprising a user agent comprises: receiving a block agent request for a content item from the user agent; determining content item block identifiers of content item blocks that make up the content item; determining which, if any, of the content item blocks that make up the content item are not stored in a local storage of the personal computing device; downloading, from a block server of an online content management system, any of the content item blocks that are not stored in a local storage of the personal computing device; and sending to the user agent, in a response to the block agent request, data of each of the content item blocks that make up the content item.
-
69.
公开(公告)号:US20170126800A1
公开(公告)日:2017-05-04
申请号:US14979268
申请日:2015-12-22
Applicant: Dropbox, Inc.
Inventor: Nipunn Koorapati , Christopher Rude , Marcio von Muhlen , Nils Bunger
CPC classification number: G06F17/30575 , G06F17/30067 , G06F17/30132 , G06F17/30174 , G06F17/30215 , H04L47/196 , H04L61/1582 , H04L67/06 , H04L67/10 , H04L67/1023 , H04L67/104 , H04L67/108 , H04L67/1095 , H04L67/1097 , H04L67/2842
Abstract: A content item block replication protocol for multi-premises hosting of digital content items. In one embodiment, for example, a method comprises: receiving, from a server, a server journal entry identifying one or more content item blocks of a content item represented by the server journal entry; storing a replication task log entry corresponding to the server journal entry in a replication task log, the replication task log entry identifying the one or more content item blocks of the content item represented by the server journal entry and identifying a block server; and either offering to send the one or more content item blocks identified in the replication task log entry to the block server identified in the replication task log entry, or downloading the one or more content item blocks identified in the replication task log entry from the block server identified in the replication task log entry.
-
公开(公告)号:US20170124170A1
公开(公告)日:2017-05-04
申请号:US14979252
申请日:2015-12-22
Applicant: Dropbox, Inc.
Inventor: Nipunn Koorapati , Christopher Rude , Marcio von Muhlen , Nils Bunger
Abstract: A synchronization protocol for multi-premises hosting of digital content items. In one embodiment, for example, a method comprises the operations of: detecting creation or modification of a content item; determining a content item namespace to which the content item belongs; obtaining a plurality of identifiers of a plurality of block servers to which the content item namespace is assigned; making a selection of one of the plurality of block servers as a target block server; and uploading any content item blocks of the content item to the target block server that are not already stored at the target block server.
-
-
-
-
-
-
-
-
-