throbber
Case 5:18-md-02834-BLF Document 338 Filed 01/09/19 Page 1 of 6
`
`Michael A. Shennan (SBN 94783)
`
`Wesley W. Monroe (SBN 14921l)
`wmonroe@stubbs alderton. com
`Stanley H. Thompson, Jr. (SBN 198825)
`sthornpson@stubb s al derton. com
`Viviana Boero Hedrick (SBN 239359)
`vhedrick@stubbsalderton.com
`STUBBS, ALDERTON & MARKILES, LLP
`ß26A Véntura Blvd., 2oth Floor
`Sherman Oaks, CA 91403
`(818) 444-4s00
`Telephone
`(8t8) 444-4s20
`Facsimile:
`Attorneys for Personal\ileb Technologies, LLC
`and Level3 Communications, LLC
`fAdditional Attomeys listed below]
`I.INITED STATES DISTRICT COURT
`
`NORTHERN DISTRICT OF CALIFORNIA
`
`SAN JOSE DIVISION
`
`IN RE PERSONALWEB TECHNOLOGIES,
`LLC, ET AL., PATENT LITIGATION
`
`CASE NO.: 5:18-md-02834-BLF
`
`AMAZON.COM, INC., et al.,
`
`Plaintiffs,
`
`PERSONALWEB TECHNOLOGIES, LLC, Et
`à1,,
`
`PERSONALWEB TECHNOLOGIES, LLC
`and LEVEL 3 COMMUNICATIONS, LLC,
`
`Counterclaimants,
`
`Case No.: 5: 18-cv-007ó7-BLF
`DECLARATION OF PATRICK
`MCCLORY IN SUPPORT OF'
`PERSONALWEB TECHNOLOGIES, LLC
`AND LEVEL 3 COMMUNICATIONS,
`LLC'S OPPOSTTION TO AMAZON.COM,
`INC. AND AMAZON WEB SERVICES,
`INC.'S MOTION FOR SUMMARY
`JUDGMENT ON DECLARATORY
`JUDGMENT CLAIMS AND DEFENSES
`UNDER THE CLAIM PRECLUSION AND
`KESSLER DOCTRINE
`
`Date: February 7,2019
`Time: 2:00 PM
`Courtroom 3, 5th Floor
`Dept.:
`Hon. Beth L. Freeman
`Judge:
`
`AMAZON.COM, INC. and AMAZON WEB
`SERVICES,INC.,
`
`Trial Date: March 16,2020
`
`Counterdefendants.
`
`I 2 3 4 5 6 7 8 9
`
`10
`
`11
`
`12
`l3
`
`T4
`
`15
`
`16
`I7
`l8
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`4813.1t#086e, v.3
`
`CASE NO: 5:18-md-02834-BLF
`CASE NO: 5:18-cv-00767-BLF
`
`

`

`Case 5:18-md-02834-BLF Document 338 Filed 01/09/19 Page 2 of 6
`
`I, Patrick McClory, declare as follows:
`1.
`I am over the age of l8 and cornpetent to make this declaration. The facts herein are,
`unless otherwise stated, based upon personal knowledge, and if called upon to clo so, I could, and
`woul<] testify to their truth under oath. I subrnit this declaration in support of Personal'Web and Level
`
`3 Communications' Opposition to Amazon.com, Inc., and Amazon Web Services, Inc.'s Motion for
`
`Summary Judgnent of Declaratory Judgment Claims and Defenses Under the Clairn Preclusion and
`
`Kessler Doctrine.
`2.
`AmazonWeb Services Certifred Developer frorn 2014 to 2016, and a Senior Consultant employed by
`
`I was an Amazon Web Services Certified Solutions Architect from 2013 to 2015, an
`
`Amazon Web Services fi'om 2013 to 2014. Additionally, I have been consulting to customers on the
`use of A'WS since 201I and continue to advise customers in their use of this platform both from a
`strategic and an engineering perspective. I am personally familiar with the Amazon Web Services
`
`product called "Simple Storage Selvice", "Amazon 53" or simply "S3," having consulted on hundreds
`
`of projects involving 53. A summary of rny experience and qualifications profile is attached hereto
`
`as Exhibit A.
`3.
`objects up to 5 terabytes in size; migrating data; configuring lifecycle policies; creating, updating, and
`
`53 includes several sub-systems servicing an entire suite of features including: storing
`
`deleting tags for objects; copying objects between buckets; replacing object tag sets;modifying access
`
`controls; restoring archived objects fiom archival subsysterns such as Amazon Glacier; irnplementing
`
`version control; replicating objects across AWS Regions; managing access; and applying encryption
`
`and controlling access to stored data.. These features are described, for example, in AWS's Frequcntly
`
`Asked Questions and 53 descriptions, true and correct copies of which are attached hereto as Exhibits
`
`B-D,
`
`4.
`upload is a process by which an 53 customer using an 33 interface can upload large objects (up to 5
`
`I am personally farniliar with an 33 functionality called "multipart upload." Multipaft
`
`terabytes) to 53. The process requires a series of transactions in which a customer, sometimes using
`
`an AWS-provided tool such as the AWS 53 CLI (Cornmand Line Interface), breaks up an object into
`
`smaller parts, uploads each part temporarily to 53, and then instructs 53 to assemble the parts together
`
`1 2 aJ 4 5 6 7 8I
`
`10
`
`11
`
`t2
`
`13
`
`T4
`l5
`
`16
`
`t7
`
`18
`
`19
`
`20
`2I
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`MC
`
`KES
`
`CASE NO: 5:1
`CASENO:5:
`
`

`

`Case 5:18-md-02834-BLF Document 338 Filed 01/09/19 Page 3 of 6
`
`to fonn the rnultipart object to be stored on 53. The parts are stored ternporarily in 53 during a
`rnultipart upload, and cannot be accessed by an anonyÍrous browser, i.e., a browser operated by
`someone who does not have credentials to access the 53 bucket to which the multipart upload is being
`made. The parts also cannot be accessed by the 53 custorner except with the
`CompleteMultipartUpload command. The parts are only stored long enough to create the aggregate
`object but are not otherwise accessiblo once a rnultipart upload is completed or abofted by the 53
`
`As parl of the multipart upload process, an 53 user may generate MD5 hashes for each
`
`customet.
`5,
`part that is being uploaded, to be compared to the 53 seler-calculated ETag for each respective part.
`The ETag for a rnultipart upload part is an MD5 hash of the content of that part. These ETags are
`generated for each part and used to verify the part did not get comrpted during the upload. Only if the
`pafi's content did not get comrpted will it be used by 53 to assemble the parts into the large object for
`storage when the customer sends a "CompleteMultipartUpload" command. As part of the process, an
`53 customer can use 33 specific multipart upload commands to copy an object that they previously
`had uploaded to 53 and use it as one of the parts that form the fìnal Multipart upload object.
`6.
`I have been informed that PersonalWeb was a plaintiff in PersonalWeb Technol.ogies
`LLC and Level 3 Communications tt. Amazon.cr¡m, Inc, et al., Case No. 6:1 1-cv-00ó58 in the Eastern
`District of Texas ("the Texas Action"). I was provided and reviewed the claim charts for the
`preliminary Infringement Contentions ("PICs") for the patents asserted in the Texas Action in which
`personalWeb identified aspects of the Amazon Simple Storage Service ("S3") as the accused
`instrumentality, produced in this current litigation at AMZ-PWT-00005796-5838,
`AMZ_PWT_00005848-5925, AMZ_PWT_00005941-5986, AMZ_PWT_00005994-6147,
`AMZ-PWT-O0O 0 6 I 5 9-6 2 5 4, and AMZ-PWT-0 0 A0626 4 - 63 7 4'
`Upon reviewing the PICs, I reached the conclusion that they were directed to the
`i.
`multipart upload functionality of 53. I reached this conclusion by reviewing the evidence cited in the
`charts. For exarnple, the chart for U,S. Patent No, 7,802,310 contains the following statements and
`
`citations to evidence:
`
`1 2 ^J 4 5 6 7 8 9
`
`10
`
`11
`
`t2
`t3
`t4
`
`15
`l6
`t7
`l8
`t9
`
`20
`
`27
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`

`

`Case 5:18-md-02834-BLF Document 338 Filed 01/09/19 Page 4 of 6
`
`a. "When perfonning a multipart upload, Amazon 53 automatically generates a hash
`to identify and retrieve the data being uploadcd."
`b. "Objects greater than 5GB in size require the use of the multipart upload API."
`c, A description of the use of ETags in multipart uploads, including a graphic of a
`description of the ETag response header from the 53 API Reference.
`d. An excerpt of the 53 Developer Guide stating that "[m]ultipart uploading is a three-
`
`step process..."
`e. An excerpt of the 53 Developer Guide describing the "Parts Upload Step" for a
`
`multipart upload,
`f. An excerpt of the S3 Developer Guide describing the "Multipart upload Completion
`(or Abort)" step for a multipart upload.
`g. A description of a sample PUT request from the 53 Developer Guide as including
`"the upload ID that you get in response to your Initiate Multipart upload request."
`h. A description of a sample response to a PUT request from the 53 Developer Guide
`as including "the ETag header" and a statement that "[y]ou need to retain this value
`
`for use when you send the Cornplete Multiparl upload request."
`i. An excerpt from the 53 API Reference describing the Cornplete Multipart upload
`operation, graphics frorn the 53 API Reference showing the request and response
`elements for the operation, sample syntax from the 53 API Reference for a POST
`
`request used to carry out the for the Cornplete Multipart upload operation, and a
`
`sample response that "indicates that an object was successfully assembled,"
`
`including the xml tag "CompleteMultipartUploadRcsult."
`j. Excerpts from the 53 API Reference showing how a PUT request can be used to
`copy bytes from an existing object to make it a part during a multipart upload
`
`operation using the x-amz-copy-source header.
`k. Excerpts frorn the 53 API Reference showing the behavior of conditional headers
`used with the x-amz-copy-source header during a multipart upload'
`
`1 2 J 4 5 6 7 8 9
`
`10
`
`11
`
`12
`l3
`t4
`
`15
`
`16
`
`T7
`
`18
`
`19
`
`20
`2t
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`

`

`Case 5:18-md-02834-BLF Document 338 Filed 01/09/19 Page 5 of 6
`
`8.
`Based on my experience with the 53 multipart upload functionality, I recognize lhat
`the above statements referred to operations perfonned during rnultipart upload. They are not referring
`to operations perfonned during the service of webpage files to anonymous browsers in response to
`requests from an anonymous browser. In order to use 53 to serve webpage files to anonymous
`browsers, an 53 customer has to take affumative steps to make an 53 bucket availablc as a website
`endpoint, as opposed to a REST endpoint which is the normal, default endpoint for a multipart
`uploaded object, as shown, for exarnple, on pages 87-96 and 338-339 of the 33 Developer Guide
`produced in this case at AMZ_PWT_00000278. True and correct copies of pages 87-96 and 338-339
`of the 53 Developer Guide are attached as Exhibit E hereto. Alternatively, an 53 customer would have
`to configure an 53 bucket, or a specific object in an 53 bucket, to be publicly accessible, and therefore
`capable of being referenced in a URI. This public accessibility is not the dcfault configuration.
`g.
`The Prelìrninary Infringement Contcntions also contained excerpts frorn the 53 API
`Reference showing how GET and HEAD operations are implemented and how a PUT request can be
`used to copy an existing object using the x-amz-copy-source header. Conditional HTTP GET requests
`are not used during Multipart upload. Using the x-amz-copy-source header in a PUT request may be
`used to copy an object previously stored on 53 but would use the ETag in a different way than a
`conditional HTTp GET request. The x-amz-copy-source header in a PUT request would be acted on
`upon an ETag match of uploaded client <lata, whereas in a conditional HTTP GET request an lf-None-
`Match hcader woukl be acted on upon an ETag mismatch of cached server data.
`10. All the evidence described in paragraphs 7 and 9 above was recited in supporl of all the
`preliminary Infringernent Contentions directed to the Multipart upload feature of 53 for the asserted
`
`patents in the Texas Action. Therefore, my conclusions above regarding the '310 Patent Preliminary
`Infringement Contentions applies to all the Preliminary Infringement Contentions directed to 53 for
`the asserted patents, i.e.,that all are directed to the Multipart upload feature of 53'
`1i. To summarize, anonyïnous browsers (meaning browsers without access to AWS
`account credentials) cannot use the 53 Multipart upload features without additional coordination via
`an application that has access to an appropriate set of AWS account credentials. The 53 multipart
`upload series of transactions sirnply does not involve serving 53 object content using conditional
`
`I 2 J 4 5 6 7 8 9
`
`10
`
`l1
`t2
`
`13
`l4
`
`15
`
`16
`t7
`
`18
`
`t9
`
`20
`2l
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`NO:
`NO
`
`5:1
`:5:
`
`

`

`Case 5:18-md-02834-BLF Document 338 Filed 01/09/19 Page 6 of 6
`
`HTTP GET requests, From the perspective of a network engineer. the 53 Multipart upload system and
`
`the website endpoint system involve different netwolk transactions and confìgurations. They are
`
`dillèLent processes operating in diff'erent ways to provide different finctionality to diflerertt types oÍ'
`
`customers using 53 in dil'lèrent ways. In one, the custonler uses certain functionalities of 53 to upload
`
`large fìles in order to store theur for a given period of timel in the other, the customer uses other
`
`firnctionalities of S3 to control the distribution of webpage content to anonymous bt'owsers and to
`
`instruct them when they are re-permitted to re-use previously cached webpage content or must instead
`
`get new webpage content in rendering a webpage. Tllese respective distinct fìrnctionalities involve
`
`diffelent transactions. use ETags in different methods, and are priced difTerently,
`12. I am làmiliar with an Amazon product called CloudFront, which is a content delivery
`
`network, or CDN. A CDN is a server that acts as teu"ìporary storage aud temporarily stores requests to
`
`f'urther downstreant servers to optimize barrdwidth f'or end users as well as website operators. They
`
`reduce unnecessal'ily redundant requests f'or the same resource by serving the same content fì'om the
`
`CDN's local and temporary storage rather than nraking requests to the origin server. CloudFront
`
`always was and is a separate product fiom 53. In my review of'the cllarts fbl the PICs lìlr the Texas
`
`Action, I did not see ariything relating to CloudFront as an accused instrumentality.
`
`I declal'e under penalty of peLjury under the laws of the United States of America that the
`
`fbregoing I tlue and correct.
`
`Executed on January 9, 2019 in
`
`\rb-L
`
`Calif.omia.
`
`Patrick McClory
`
`I 2 J 4 5 6 7 I 9
`
`l0
`ll
`l2
`l3
`t4
`l5
`l6
`t7
`l8
`
`19
`
`20
`2l
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`rso
`MS.I
`
`E
`
`t-
`
`F
`
`

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