throbber

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 1 of 44
`Case 5:18—md-02834-BLF Document 340-3 Filed 01/09/19 Page 1 of 44
`
`EXHIBIT 2B
`EXHIBIT 2B
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 2 of 44
`
`Claim Chart for Amazon Simple Storage Service (S3) re U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`36. A method of delivering a data
`file in a network comprising a
`plurality of processors, some of
`the processors being servers and
`some of the processors being
`the method comprising:
`
`clients,
`
`storing the datafile is on first
`server in the network and storing
`copies of the data file on a set of
`servers in the network distinct
`from the first server; and
`
`is an online storage web service offered by Amazon Web
`Amazon S3 (Simple Storage Service)
`Services that performs a method of delivering a data file in a network comprising a plurality of
`processors, some of the processors being servers and some ofthe processors being clients.
`
`Amazon S83 provides storage through web services interfaces. S3 stores arbitrary objects
`(computer files) up to 5 terabytes in size, each accompanied by up to 2 kilobytes of metadata.
`Objects are organized into buckets (each owned by an Amazon Web Services or AWS account),
`and identified within each bucket by a unique, user-assigned key.
`[http://en.wikipedia.org/wiki/Amazon_$3;
`http://aws.amazon.com/s3/].
`
`End user’s, remote from Amazon’s servers, use their computers with client processors to upload
`data items to the Amazon servers with server processors.
`
`Although a review of Defendant’s source code 1s necessary to confirm, Plaintiff believes that
`Amazon’s S3 system stores a data file on a first server in the network and stores copies of the
`data file on a set of servers in the network distinct from the first server.
`
`Amazon 83 provides a highly durable storage infrastructure designed for mission-critical and
`primary data storage. Objects are redundantly stored on multiple devices across multiple
`facilities in an Amazon S3 Region. To help ensure durability, Amazon $3 PUT and COPY
`synchronously store your data across multiple facilities before returning SUCCESS.
`operations
`Once stored, Amazon $3 maintains the durability of your objects by quickly detecting and
`repairing any lost
`redundancy.
`
`[http://aws.amazon.com/s3/#protecting
`
`|
`
`iManage\18%0225.1
`
`1
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005796
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 3 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`Amazon Simple Storage Service (S3)
`
`Although a review of Defendant’s source code 1s necessary to confirm, Plaintiff believes that
`Amazon’s S3 receives client requests for the data file, the request including a hash of the
`contents of the data file, causing the data file to be provided to the client.
`
`When performing a multipart upload, Amazon S3 automatically generates a hash to identify and
`retrieve the data being uploaded.
`[http://awsdocs.s3.amazonaws.com/S3/latest/s3-dg.pdf].
`Objects greater than 5GB in size require the use of the multipart upload API.
`.amazonaws.com/S3/latest/s3-dg.pdf].
`[http://awsdocs.s3
`
`CLAIM 36 ‘280 PATENT
`responsive to a client request for
`the data file, the request
`including
`a hash of the contents ofthe data
`file, causing the data file to be
`provided to the client.
`
`iManage\18%0225.1
`
`2
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005797
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 4 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`Common Response Headers
`
`The following table describes response headers that are common to most AWS S3 responses.
`
`Name
`
`Description
`
`Content-Length
`
`The length in bytes of the body in the
`Type: String
`
`response.
`
`Default:
`
`None
`
`Connection
`
`specifies whether the connection to the server is open or closed.
`Type: Enum
`Valid Values: open | close
`Default:
`None
`
`Date
`
`ETag
`
`The date and time Amazon S3 responded,
`12:00:00 GMT.
`
`for example, Wed, 01 Mar 2009
`
`Type: String
`
`Default:
`
`None
`
`The entity tag is a hash of the object. The ETag only reflects changes to the
`contents of an object, not its metadata. The ETag is determined when an object
`is created. For objects created by the PUT Object operation and the POST Object
`the ETag is a quoted, 32-digit hexadecimal string representing the
`operation,
`MD5 digest of the object data. For other objects,
`the ETag may or may not be an
`MD5 digest of the object data.If the ETag is not an MD5 digestof the object data,
`characters and/or will consist of less
`
`it will contain one or more non-hexadecimal
`than 32 or more than 32 hexadecimal digits.
`Type: String
`
`CAweraw
`
`Tha nama of tha carver that craatad tha racnaneca
`
`[http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf].
`
`iManage\18%0225.1
`
`3
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005798
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 5 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`Multipart Uploads:
`
`S3 performs multipart uploads through the generation and use of a an “ETag”, which is a MD5
`hash (becauseit is a PUT operation,it is a MD5 hash, see “common response headers” graphic
`above,) of the data-part, which is required for a later request to complete the multipart upload
`and for Amazon S3 to concatenate the parts together to form a single object.
`And once combined, Amazon S3
`[http://awsdocs.s3.amazonaws.com/S3/latest/s3-dg.pdf].
`responds with an ETag that uniquely identifies the combined data.
`[http://awsdocs.s3.amazonaws.com/S3/latest/s3-dg.pdf].
`
`Multipart uploading is a three-step process: Youinitiate the upload, you upload the object parts, and after
`you have uploaded all the parts, you complete the multipart upload. Upon receiving the complete multipart
`upload request, Amazon S3 constructs the object from the uploaded parts, and you can then access the
`just as you would any other object in your bucket.
`object
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-dg.pdf)
`
`Parts Upload Step
`
`iManage\18%0225.1
`
`4
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005799
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 6 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`Parts Upload
`When uploading a part,
`in addition to the upload ID, you must specify a part number. You can choose
`any part number between 1 and 10,000. A part number uniquely identifies a part and its position in the
`object you are uploading. If you upload a new part using the same part numberas a previously
`uploaded
`the previously uploaded part is overwritten. Whenever you upload a part, Amazon S3 returns an
`ETag headerin its response. For each part upload, you must record the part number and the ETag value.
`You needto include these values in the subsequent request to complete the multipart upload.
`
`part,
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-dg.pdf)
`
`Multipart Upload Completion (or Abort)
`
`When you complete a multipart upload, Amazon S3 creates an object by concatenating parts in ascending
`order based on the part number. If any object metadata was providedin the initiate multipart upload
`request, Amazon S3 associates that metadata with the object. After a successful complete request,
`parts no longer exist. Your complete multipart upload request must include the upload ID and a list of
`both part numbers and corresponding ETag values. Amazon S3 response includes an ETag that uniquely
`identifies the combined object data. This ETag will not necessarily be an MD5 hash of the object data.
`You can optionally abort the multipart upload. After aborting a multipart upload, you cannot upload any
`part using that upload ID again. All storage that any parts from the aborted multipart upload consumed
`is then freed. If any part uploads were in-progress, they can still succeed orfail even after you aborted.
`To free all storage consumedbyall parts, you must abort a multipart upload only after all part uploads
`have completed.
`
`the
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-dg.pdf)
`
`* Note: It is our current understanding that the individual parts uploaded with PUT or POST
`hash of the object data (see graphic
`object operations necessarily have an ETagthat is the
`above titled “Common Response Headers,”) however the ETag of the combined object data “will
`
`5
`
`U.S. Patent No.
`
`6,415,280
`
`iManage\18%0225.1
`
`AMZ_PWT_00005800
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 7 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`not necessarily be an MD5 hashofthe object data.”
`
`Sample Request
`
`The following PUT request uploadsa part (part number 1) in a multipart upload. The request includes
`the upload ID that you get in response to your Initiate Multipart Upload request.
`
`PUT
`
`/my-movie.m2ts?partNumber=1
`éuploadId=VCVsb2FkIE1EIGZvciBlbZZpbm
`HTTP/1.1
`cncyBteS1tb3ZpZS5tMnRzIHVwbG9hZR
`Host:
`example-bucket.s3.amazonaws.com
`1 Nov 2010 20:34:56 GMT
`Date:
`Mon,
`10485760
`Content-Length:
`Content=-MD5:
`pUNXr/BjJKK5G2UKvaRRrOA==
`Authorization:
`VGhpcyBtZXNzYWd1IHNpZ251ZGGieSR1bHZpbmc=
`AWS
`
`***part data omitted***
`
`Sample Response
`The response includes the ETag header. You need to retain this value for use when you send the Complete
`Multipart Upload request.
`
`200 OK
`HTTP/1.1
`x-amz-id-2:
`VvaglLuByRx9e6j50nimru9p04ZVKnJ202z7/C1INPcfTWAtRP£TaOFg==
`656c76696e6727732072657175657374
`x-amz-request-id:
`1 Nov 2010 20:34:56 GMT
`Date:
`Mon,
`"b54357faf0632cce46e942fa68356b38"
`ETag:
`Content-Length:
`0
`Connection:
`keep-alive
`Server:
`AmazonsS3
`
`iManage\18%0225.1
`
`6
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005801
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 8 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`Complete Multipart Upload
`
`Description
`
`This operation completes a multipart upload by assembling previously uploaded parts.
`You first initiate the multipart upload and then uploadall parts using the Upload Parts operation (see
`Upload Part (p. 171)). After successfully uploading all relevant parts of an upload, you call this operation
`to complete the upload. Upon receiving this request, Amazon S3 concatenates all the parts in ascending
`order by part numberto create a new object.
`In the Complete Multipart Upload request, you must provide
`the parts list. You must ensure the parts list is complete,
`this operation concatenates the parts you provide
`in the list. For each part in the list, you must provide the part number and the ETaq header value,
`returned
`after that part was uploaded.
`
`Processing of a Complete Multipart Upload request could take Several minutes to complete. After Amazon
`it sends an HTTP response header that specifies a 200 OK response.
`S3 begins processing the request,
`While processing is in progress, Amazon S3 periodically sends whitespace characters to keep the
`from timing out. Because a request could fail after the initial 200 OK response has been sent,
`connection
`it is important that you check the response body to determine whether the request succeeded.
`
`(http://awsdocs.s3.amazonaws.com/§$3/latest/s3-api.pdf)
`
`iManage\18%0225.1
`
`7
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005802
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 9 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`Request Elements
`
`Name
`
`Description
`
`CompleteMultipartUpload
`
`Container for the request.
`
`Required
`
`Yes
`
`None
`Ancestor:
`Type: Container
`Children: One or more Part elements
`
`Part
`
`Container for elements related to a particular
`uploaded part.
`
`previously
`
`Yes
`
`CompleteMultipartUpload
`Ancestor:
`Type: Container
`Children: PartNumber, ETag
`
`PartNumber
`
`Part number that identifies the part.
`
`ETag
`
`Ancestor: Part
`Integer
`Type:
`Entity tag returned when the part was uploaded.
`
`Ancestor: Part
`Type: String
`
`Yes
`
`Yes
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`iManage\18%0225.1
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005803
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 10 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`Syntax
`
`/ObjectName?uploadId=Uploadid HTTP/1.1
`POST
`Host:
`BucketName.s3.amazonaws.com
`Date: Date
`Size
`Content-Length:
`Authorization: Signature
`
`<CompleteMultipartUpload>
`<Part>
`<PartNumber>PartNumber</PartNumber>
`<ETaq>ETagq</ETag>
`</Part>
`
`</CompleteMultipartUpload>
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`iManage\18%0225.1
`
`9
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005804
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 11 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`Response Elements
`
`Name
`
`CompleteMultipartUploadResult
`
`Description
`Container for the response
`Type: Container
`Children: Location, Bucket, Key, ETag
`Ancestors: None
`
`Location
`
`Bucket
`
`Key
`
`ETag
`
`The URI that identifies the newly created object.
`Type: URI
`Ancestors:
`
`CompleteMultipartUploadResult
`The name of the bucket that contains the newly created object.
`Type: String
`Ancestors:
`
`CompleteMultipartUploadResult
`
`The object key of the newly created object.
`Type: String
`Ancestors:
`
`CompleteMultipartUploadResult
`
`Entity tag that identifies the newly created object's data.
`Objects with different object data will have different entity
`tags. The entity tag is an opaque string.
`Type: String
`Ancestors:
`
`CompleteMultipartUploadResult
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`iManage\18%0225.1
`
`10
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005805
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 12 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`Sample Request
`
`The following Complete Multipart Upload request specifies three parts in the
`element.
`
`CompleteMultipartUpload
`
`?uploadId=AAAsb2FkIE1LEIGZvciBlbHZpbmcncyWeeS1tb3ZpZS5tMnRzIR
`
`/example-object
`POST
`HTTP/1.1
`RwbG9hZA
`Host:
`example-bucket.s3.amazonaws.com
`1 Nov 2010 20:34:56 GMT
`Date:
`Mon,
`391
`Content-Length:
`Authorization:
`AWS
`
`AAbbcyBtZXNzYWd1RRRpZ251ZCBieSB1bHZpbmc=
`
`<CompleteMultipartUpload>
`<Part>
`<PartNumber>1</PartNumber>
`<ETag>"a54357af£0632cce46d942af68356b38"</ETag>
`</Part>
`<Part>
`<PartNumber>2</PartNumber>
`<ETag>"0c78aef83f66abclfale8477£296d394"</ETag>
`</Part>
`<Part>
`<PartNumber>3</PartNumber>
`<ETag>"acbdl18db4cc2f£85cedef654fccc4a4d8"</ETag>
`</Part>
`</CompleteMultipartUpload>
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`iManage\18%0225.1
`
`11
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005806
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 13 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`Sample Response
`
`The following response indicates that an object was successfully assembled.
`
`200 OK
`HTTP/1.1
`x-amz-id-2:
`X-amz-request-id:
`1 Nov 2010 20:34:56 GMT
`Date: Mon,
`Connection:
`close
`Server:
`AmazonsS3
`
`UuaglLuByRx9e6j50nimru9p04ZVKnJ20z7/C1INPcf£TWAtRP£TaOFg==
`
`<?xml version="1.0"
`encoding="UTF-8"?>
`xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
`<CompleteMultipartUploadResult
`
`<Location>http://Example-Bucket.s3.amazonaws.com/Example-Object</Location>
`<Bucket>Example-Bucket</Bucket>
`<Key>Example-Object</Key>
`<ETag>"3858f62230ac3c915f300c664312c11f-9"</ETag>
`</CompleteMultipartUploadResult>
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf
`
`A user can specify data from an existing object as a data source during a multipart upload,
`available to the user are conditional headers which can involve using the ETag to identify
`whether or not to copy certain objects.
`[http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf].
`
`iManage\18%0225.1
`
`12
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005807
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 14 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`Uploadsa part by copying data from an existing object as data source. You specify the data source by
`adding the request header x-amz-copy-source in your request and a byte range by adding the request
`header x-amz-copy-source-range in your
`
`request.
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`Syntax
`
`/ObjectName?partNumber=PartNumberé&uploadid=Uploadid HTTP/1.1
`PUL
`BucketName.s3.amazonaws.com
`Host:
`/source_bucket/sourceObject
`x-amz-copy-source:
`x-amz-copy-source-range:bytes=first-last
`X-amz-copy-source-if-match:
`etag
`etag
`xXx-amz-copy-source-if-none-match:
`x-amz-copy-source-if-unmodified-since:
`x-amz-copy-source-if-modified-since:
`date
`Date:
`Authorization:
`
`time_stamp
`time stamp
`
`Signature
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`iManage\18%0225.1
`
`13
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005808
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 15 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`The following conditional headers are based onthe object that the x-amz-copy-source header specifies.
`
`Name
`
`Description
`
`xX-amz-copy-source-if-match
`
`x-amz-copy~source-if=none-match
`
`xeame-agoy-sounos-i Funmodified-sinoe
`
`x-amz-copy-source—i
`
`f-modi
`
`fied-since
`
`Performa copy ifthe source object entity tag (ETag)
`matches the specified value. If the value does not
`match, Amazon S3 returns an HTTP status code
`412 precondition failed error.
`Type: String
`Default: None
`
`Perform a copyif the source object entity tag (ETag)
`is different than the value specified using this
`header. If the values match, Amazon S3 returns an
`HTTP status code 412 precondition failed error.
`Type: String
`Default: None
`
`Perform a copy if the source object is not modified
`after the time specified using this header. If the
`source object is modified, Amazon S3 returns an
`HTTP status code 412 precondition failed error.
`Type: String
`Default: None
`
`Perform a copyif the source object is modified after
`the time specified using this header. If the source
`is not modified, Amazon S3 returns an HTTP
`object
`status code 412 precondition failed error.
`Type: String
`Default: None
`
`Required
`
`No
`
`No
`
`No
`
`iManage\18%0225.1
`
`14
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005809
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 16 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`Similar to performing a multipart upload by copying existing objects, performing a GETof data
`makes available similar conditional parameters.
`
`Amazon Simple Storage Service API Reference
`GET Object
`
`Name
`
`If-Match
`
`If-None-Match
`
`Description
`
`Return the object onlyif its entity tag (£Tag) is the same as the one
`specified, otherwise return a 412 (precondition failed).
`Type: String
`Default: None
`
`Required
`
`No
`
`Constraints: None
`
`Return the object onlyif its entity tag (ETaqg) is different from the
`one specified, otherwise return a 304 (not modified).
`Type: String
`Default: None
`
`No
`
`Constraints: None
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`The HEAD operation retrieves metadata from an object without returning the object itself.
`This
`operation is useful if you're only interested in an object's metadata. The HEAD operation also
`has conditional parameters similar to the ones in the pervious discussions.
`
`15
`
`U.S. Patent No.
`
`6,415,280
`
`iManage\18%0225.1
`
`AMZ_PWT_00005810
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 17 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`Amazon Simple Storage Service API Reference
`HEAD Object
`
`Name
`
`If-Unmodified-Since
`
`Description
`
`Return the object only if it has not been modified since the specified
`time, otherwise return a 412 (precondition failed).
`Type: String
`Default: None
`
`Required
`
`No
`
`If-Match
`
`If-None-Match
`
`Constraints:
`
`None
`
`Return the object onlyif its entity tag
`Tag) is the same as the one
`specified, otherwise return a 412 (precondition failed).
`Type: String
`Default: None
`
`Constraints:
`
`None
`
`Return the object onlyif its entity tag (ETaqg)
`is different from the
`one specified, otherwise return a 304 (not modified).
`Type: String
`Default: None
`
`No
`
`No
`
`Constraints:
`
`None
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`The PUT operation with COPY also has conditional parameters similar to the ones in the
`pervious discussions.
`
`iManage\18%0225.1
`
`16
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005811
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 18 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`PUT Object - Copy
`Description
`This implementation of the PUT operation creates a copy of an object that is already stored in Amazon S3.
`A PUT copy operation is the same as performing a GET and then a PuT. Adding the request header,
`x-amz-copy-source, makes the PUT operation copy the source object into the destination bucket.
`
`we
`
`Note
`
`You can store individual objects of up to 5 TB in Amazon S3. You create a copy of your object
`up to 5 GB in size in a single atomic operation using this API. However,
`for copying an object
`greater than 5 GB, you must use the multipart upload API. For conceptual
`information on multipart
`upload, go to Uploading Objects Using Multipart Upload in the Amazon S3 Developer Guide.
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`iManage\18%0225.1
`
`17
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005812
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 19 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`Requests
`
`Syntax
`
`/destinationObject
`HTTP/1.1
`PUT
`destinationBucket.s3.amazonaws.com
`Host:
`/source bucket/sourceObject
`x-amz-copy-source:
`x-amz-metadata-directive:
`metadata_directive
`X-amz-copy-source-if-match:
`etag
`etag
`X-amz-copy-source-if-none-match:
`xX-amz-copy-source-if-unmodified-since:
`x-amz-copy-source-if-modified-since:
`<request metadata>
`Authorization:
`signatureValue
`date
`Date:
`
`time stamp
`time stamp
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`iManage\18%0225.1
`
`18
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005813
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 20 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 36 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`xX-amz-copy-source-if-match
`
`x-amz-copy-source-if-none-match
`
`No
`
`No
`
`IZ)
`
`VULIIIIVIT INGSYUUCSL PITAUTIS
`Copies the object if its entity tag (ETag) matches
`the request
`returns
`the specified tag; otherwise,
`a 412 HTTP status code error (precondition failed).
`Type: String
`Default: None
`Constraints: This header can be used with
`x-amz-copy-source-if-unmodified-since,
`but cannot be used with other conditional copy
`headers.
`
`Copies the object if its entity tag (ETag) is different
`than the specified ETag; otherwise,
`the request
`returns a 412 HTTP status code error (failed
`condition).
`
`Type: String
`Default: None
`Constraints: This header can be used with
`X-amz-copy-source-if-modified-since,
`but cannot be used with other conditional copy
`headers.
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`iManage\18%0225.1
`
`19
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005814
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 21 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 37 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`37. A method as in claim 36
`wherein the data file has a
`contextual name comprising a
`pathname including a processor
`name and a file name, the method
`further comprising:
`
`All of the statements provided above with respect to claim 36 are incorporated by reference.
`Although a review of Defendant’s source codeis necessary to confirm, Plaintiff believes that
`data items in Amazon S3 have a contextual name comprising a pathname which includes a
`processor name andfile name (such as the URI, or Host, source_bucket, and sourceObject).
`
`Requests
`
`Syntax
`
`/destinationObject
`HTTP/1.1
`PUT
`destinationBucket.s3.amazonaws.com
`Host:
`/source bucket/sourceObjec
`x-amz-copy-source:
`x-amz-metadata-directive:
`metadata_directiv
`X-amz-copy-source-if-match:
`etag
`etag
`X-amz-copy-source-if-none-match:
`x-amz-copy-source-if-unmodified-since:
`x-amz-copy-source-if-modified-since:
`<request metadata>
`Authorization:
`signatureValue
`date
`Date:
`
`time stamp
`time stam
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`iManage\18%0225.1
`
`20
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005815
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 22 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 37 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`Response Elements
`
`Name
`
`Description
`
`CompleteMultipartUploadResult
`
`Container for the response
`Type: Container
`Children: Location, Bucket, Key, ETag
`Ancestors: None
`
`Location
`
`Bucket
`
`Key
`
`ETag
`
`The URI that identifies the newly created object.
`Type: URI
`Ancestors:
`
`CompleteMultipartUploadResult
`The name of the bucket that contains the newly created object.
`Type: String
`Ancestors:
`
`CompleteMultipartUploadResult
`
`The object key of the newly created object.
`Type: String
`Ancestors:
`
`CompleteMultipartUploadResult
`
`Entity tag that identifies the newly created object's data.
`Objects with different object data will have different entity
`tags. The entity tag is an opaque string.
`Type: String
`Ancestors:
`
`CompleteMultipartUploadResult
`
`iManage\18%0225.1
`
`21
`
`U.S. Patent No.
`
`6,415,280
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`AMZ_PWT_00005816
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 23 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 37 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`associating the contextual name of
`the data file with the hash of the
`contents of the data file.
`
`Although a review of Defendant’s source code is necessary to confirm, Plaintiff believes that
`data items in Amazon S3 associates a contextual name with the hash of the contents of the data
`item (such as associating the eTag with the URI or Host, source_bucket, and sourceObject
`fields).
`
`Requests
`
`Syntax
`
`/destinationObject
`HTTP/1.1
`PUT
`destinationBucket.s3.amazonaws.com
`Host:
`x-amz-copy-source:
`/source_bucket/sourceObject
`metadata directive
`x-amz-metadata-directive:
`X-amz-copy-source-if-match:
`etag
`x-amz-copy-source-if-none-match:
`etag
`x-amz-copy-source-if-unmodified-since:
`xX-amz-copy-source-if-modified-since:
`<request metadata>
`Authorization:
`signatureValue
`date
`Date:
`
`time_stamp
`time stamp
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`iManage\18%0225.1
`
`22
`
`U.S. Patent No.
`
`6,415,280
`
`AMZ_PWT_00005817
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 24 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 37 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`Response Elements
`
`Name
`
`Description
`
`CompleteMultipartUploadResult
`
`Container for the response
`Type: Container
`Children: Location, Bucket, Key, ETag
`Ancestors: None
`
`Location
`
`Bucket
`
`Key
`
`ETag
`
`The URI that identifies the newly created object.
`Type: URI
`Ancestors:
`
`CompleteMultipartUploadResult
`The name of the bucket that contains the newly created object.
`Type: String
`Ancestors:
`
`CompleteMultipartUploadResult
`
`The object key of the newly created object.
`Type: String
`Ancestors:
`
`CompleteMultipartUploadResult
`
`Entity tag that identifies the newly created object's data.
`Objects with different object data will have different entity
`tags. The entity tag is an opaque string.
`Type: String
`Ancestors:
`
`CompleteMultipartUploadResult
`
`iManage\18%0225.1
`
`23
`
`U.S. Patent No.
`
`6,415,280
`
`(http://awsdocs.s3.amazonaws.com/S3/latest/s3-api.pdf)
`
`AMZ_PWT_00005818
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 25 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 54 ‘280 PATENT
`
`Amazon Simple Storage Service (S3)
`
`54. A content delivery method in
`a network in which at least some
`processors in the network
`communicate with each other
`using a TCP/IP communication
`the method comprising:
`protocol,
`
`Although a review of Defendant’s source code is necessary to confirm, Plaintiff believes that
`is an online storage web service offered by Amazon Web
`Amazon
`(Simple Storage Service)
`Services by which Amazon performs a content delivery method in a network where at least some
`communicate with one another using a TCP/IP communications protocol.
`processors
`
`Amazon Simple Storage Service (Amazon S3)
`Amazon $3is storage for the Internet. It is designed to make web-scale
`computing easier for developers.
`
`Amazon S3 provides a simple web services interface that can be used to
`store and retrieve any amount of data, at any time, from anywhere on
`the web. It gives any developer access to the same highly scalable,
`inexpensive infrastructure that Amazon uses to run
`reliable, secure, fast,
`its own global network of web sites. The service aims to maximize
`benefits of scale and to pass those benefits on to developers.
`
`http://aws.amazon.com/s3/
`
`for a particular data file having a
`particular name specifying a
`location in the network at which
`the data file may be located,
`determining another name for the
`
`iManage\18%0225.1
`
`Although a review of Defendant’s source code is necessary to confirm, Plaintiff believes that
`can specify for a particular data file having a particular name, a location in the
`Amazon
`network at which the data file may be located. And Amazon S3 determines another name for the
`particular data file, the other name including a data identifier determined using message digest
`function MDSof the data, wherein said data used by the MDSfunction comprises the contents of
`24
`U.S. Patent No.
`6,415,280
`
`AMZ_PWT_00005819
`
`

`

`Case 5:18-md-02834-BLF Document 340-3 Filed 01/09/19 Page 26 of 44
`
`U.S. PATENT NO. 6,415,280
`
`Issued July 2, 2002
`
`Identifying and Requesting Data in Network Using Identifiers
`Which Are Based on Contents of Data
`
`CLAIM 54 ‘280 PATENT

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket