DATA TRANSFER OPTIMIZATIONS
First Claim
Patent Images
1. A computer-readable storage medium having stored thereon instructions that, when executed by one or more processors of a computer system, cause the computer system to:
- deconstruct a data object into a plurality of data chunks a plurality of which are of uniform size;
separately encrypt each of the plurality of data chunks with the same cryptographic key such that at least a first subset of the plurality of data chunks are encrypted in parallel using a different initialization vector for each chunk in the first subset of the plurality of data chunks; and
transmit each of the plurality of separately encrypted data chunks to a data storage service such that at least a second subset of the plurality of separately encrypted data chunks are transmitted in parallel to multiple servers of the data storage service and such that the plurality of separately encrypted data chunks are collectively retrievable from the data storage service using an identifier for the plurality of separately encrypted data chunks.
1 Assignment
0 Petitions
Accused Products
Abstract
Data transfer between a first computer system and a second computer system utilize parallel servers of the second computer system. A plurality of data chunks collectively comprise a data object. The data chunks may be encrypted and sent over parallel channels to the second computer system, which may be a data storage service of a computing resource service provider. The data object, or a portion thereof, may be downloaded from the data storage system in parallel.
-
Citations
23 Claims
-
1. A computer-readable storage medium having stored thereon instructions that, when executed by one or more processors of a computer system, cause the computer system to:
-
deconstruct a data object into a plurality of data chunks a plurality of which are of uniform size; separately encrypt each of the plurality of data chunks with the same cryptographic key such that at least a first subset of the plurality of data chunks are encrypted in parallel using a different initialization vector for each chunk in the first subset of the plurality of data chunks; and transmit each of the plurality of separately encrypted data chunks to a data storage service such that at least a second subset of the plurality of separately encrypted data chunks are transmitted in parallel to multiple servers of the data storage service and such that the plurality of separately encrypted data chunks are collectively retrievable from the data storage service using an identifier for the plurality of separately encrypted data chunks. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer-readable storage medium having stored thereon instructions that, when executed by one or more processors of a computer system, cause the computer system to:
-
obtain a plurality of data chunks; cause each of the plurality of data chunks to be encrypted such that at least a first subset of the plurality of data chunks are encrypted in parallel using a different initialization vector for each chunk in the first subset of the plurality of data chunks; and transmit each of the plurality of separately encrypted data chunks to a data storage service such that at least a second subset of the plurality of separately encrypted data chunks are transmitted in parallel to multiple servers of the data storage service and that the plurality of separately encrypted data chunks are collectively managed by the data storage service as a data object. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A system, comprising:
-
a plurality of processors; and memory encoding instructions executable by at least one of the processors to cause the system to; manipulate each data chunk of a plurality of data chunks that collectively comprise a data object by distributing, among the plurality of processors, the plurality of data chunks for manipulation such that each subset of a plurality of subsets are manipulated using a different initialization vector; and transfer the plurality of manipulated data chunks to a data storage service by causing multiple servers of the data storage service to collectively receive the plurality of manipulated data chunks - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A computer-implemented method, comprising:
under the control of one or more computer systems configured with executable instructions, deconstructing a data object into a first plurality of data chunks; separately encrypting the first plurality of data chunks such that each subset of a plurality of subsets of the first plurality of data chunks are encrypted using a different initialization vector, the first plurality of data chunks being collectively usable to construct a data object; and transmitting a second plurality of data chunks to a data storage service using a plurality of parallel channels each corresponding to a separate server of the data storage service, the second plurality of data chunks based at least in part on the first plurality of data chunks. - View Dependent Claims (19, 20, 21, 22, 23)
Specification