`
`UNITED STATES PATENT AND TRADEMARK OFFICE
`
`UNITED STATES DEPARTMENT OF COMMERCE
`United States Patent and Trademark Office
`Address: COMMISSIONER FOR PATENTS
`P.O. Box 1450
`Alexandria, Virginia 22313-1450
`www .uspto.gov
`
`APPLICATION NO.
`
`13/932,297
`
`
`
`
` FILING DATE
`
`07/01/2013
`
`FIRST NAMED INVENTOR
`
`ATTORNEY DOCKETNO.
`
`CONFIRMATIONNO.
`
`Arthur J. BEAVERSON
`
`$044-7000US2
`
`6720
`
`Nov
`
`ont
`
`‘Ouigg |
`
`Novak Druce Connolly Bove + Quigg LLP a|
`100 Cambridge Street
`WALDRON,SCOTT A
`Suite 2101
`BOSTON, MA 02114
`
`PAPER NUMBER
`
`2155
`
`NOTIFICATION DATE
`
`DELIVERY MODE
`
`09/16/2015
`
`ELECTRONIC
`
`Please find below and/or attached an Office communication concerning this application or proceeding.
`
`The time period for reply, if any, is set in the attached communication.
`
`Notice of the Office communication was sent electronically on above-indicated "Notification Date" to the
`following e-mail address(es):
`therese.hendricks @novakdruce.com
`dedocketing @novakdruce.com
`christine.grimes @novakdruce.com
`
`PTOL-90A (Rev. 04/07)
`
`
`
`
`
`Applicant(s)
`Application No.
` 13/932,297 BEAVERSON ET AL.
`
`Examiner
`Art Unit
`AIA (First Inventorto File)
`Office Action Summary
`
`Scott A. Waldron Na 2155
`
`-- The MAILING DATEof this communication appears on the cover sheet with the correspondence address --
`Period for Reply
`
`A SHORTENED STATUTORY PERIOD FOR REPLYIS SET TO EXPIRE 3 MONTHS FROM THE MAILING DATE OF
`THIS COMMUNICATION.
`Extensions of time may be available underthe provisions of 37 CFR 1.136(a).
`after SIX (6) MONTHS from the mailing date of this communication.
`If NO period for reply is specified above, the maximum statutory period will apply and will expire SIX (6) MONTHS from the mailing date of this communication.
`-
`- Failure to reply within the set or extended period for reply will, by statute, cause the application to become ABANDONED (35 U.S.C. § 133).
`Anyreply received by the Office later than three months after the mailing date of this communication, evenif timely filed, may reduce any
`earned patent term adjustment. See 37 CFR 1.704(b).
`
`In no event, however, may a reply betimely filed
`
`Status
`1)X] Responsive to communication(s) filed on 07/01/2013.
`LJ A declaration(s)/affidavit(s) under 37 CFR 1.130(b) was/werefiledon__
`2a)L] This action is FINAL.
`2b) This action is non-final.
`3)L] Anelection was made bythe applicant in responsetoarestriction requirementset forth during the interview on
`
`
`; the restriction requirement and election have been incorporatedinto this action.
`4)[] Since this application is in condition for allowance exceptfor formal matters, prosecution as to the merits is
`closed in accordance with the practice under Ex parte Quayle, 1935 C.D. 11, 453 O.G. 213.
`
` Attachment(s)
`
`Disposition of Claims*
`5) Claim(s) 1-12,23-28 and 34-41 is/are pending in the application.
`
`5a) Of the above claim(s)
`is/are withdrawn from consideration.
`6)L] Claim(s)____is/are allowed.
`
`7) Claim(s) 1-12,23-28 and 34-41 is/are rejected.
`8)L] Claim(s)____is/are objectedto.
`
`9)L] Claim(s)
`are subject to restriction and/or election requirement.
`* If any claims have been determined allowable, you may be eligible to benefit from the Patent Prosecution Highway program at a
`participating intellectual property office for the corresponding application. For more information, please see
`or send an inquiry to PPHieedback@uspto.qoy.
`
`Application Papers
`10)L] The specification is objected to by the Examiner.
`11)] The drawing(s)filed on 07/01/2013 is/are: a)X] accepted or b)_] objected to by the Examiner.
`Applicant may not request that any objection to the drawing(s) be held in abeyance. See 37 CFR 1.85(a).
`Replacement drawing sheet(s) including the correction is required if the drawing(s) is objected to. See 37 CFR 1.121(d).
`
`Priority under 35 U.S.C. § 119
`12)[] Acknowledgment is made of a claim for foreign priority under 35 U.S.C. § 119(a)-(d) or (f).
`Certified copies:
`a)L] All
`b)[-] Some** c)L] None ofthe:
`1..] Certified copies of the priority documents have been received.
`2.L] Certified copies of the priority documents have been received in Application No.
`3.L] Copies of the certified copies of the priority documents have been receivedin this National Stage
`application from the International Bureau (PCT Rule 17.2(a)).
`““ See the attached detailed Office action for a list of the certified copies not received.
`
`3) CT] Interview Summary (PTO-413)
`1) X Notice of References Cited (PTO-892)
`Paper No(s)/Mail Date.
`:
`.
`4 Ol Other:
`2) X Information Disclosure Statement(s) (PTO/SB/08a and/or PTO/SB/08b)
`Paper No(s)/Mail Date 05/27/14 & 05/28/14.
`U.S. Patent and Trademark Office
`PTOL-326 (Rev. 11-13)
`
`Office Action Summary
`
`Part of Paper No./Mail Date 20150907
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 2
`
`DETAILED ACTION
`
`The present application is being examined underthe pre-AlA first to invent
`
`provisions.
`
`Claims 13-22 & 29-33 were cancelled by preliminary amendmentfiled
`
`07/01/2013. Claims 1-12, 23-28 & 34-41 are presented for examination.
`
`Priority
`
`Applicant’s claim for the benefit of prior-filed applications 61/269,633 and
`
`12/823,922 (now USPN 8,478,799) is acknowledged.
`
`Information Disclosure Statement
`
`The information disclosure statements (IDS) submitted on 05/27/2014 and
`
`05/28/2014 are in compliance with the provisions of 37 CFR 1.97. Accordingly, the
`
`information disclosure statements are being considered by the examiner.
`
`Claim Objections
`
`Claims 5, 6 & 8 are objected to becauseofthe following informalities:
`
`Claims 5 & 6 depend on claim 4 andrecite “the inode map fingerprint”. There is
`
`insufficient antecedent basis for this limitation in the claim.
`
`Claim 8 depends on claim 7 and recites “the previous inode map fingerprints”.
`
`There is insufficient antecedent basis for the plural form of this limitation in the claim.
`
`Appropriate correction is required.
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 3
`
`Claim Rejections - 35 USC § 101
`
`35 U.S.C. 101 reads as follows:
`
`Whoever invents or discovers any new and useful process, machine, manufacture, or
`composition of matter, or any new and useful improvementthereof, may obtain a patent
`therefor, subject to the conditions and requirementsofthistitle.
`
`Claims 1-12 & 34 are rejected under 35 U.S.C. 101 because the claimed
`
`invention is directed to non-statutory subject matter.
`
`Regarding claim 1 (“file system”), the examiner found support in the specification
`
`at paragraph [176], which describes “Embodiments of the invention can be implemented
`
`in digital electronic circuitry, or in computer hardware, firmware, software, or in
`
`combinations of them.” As currently claimed, the file systems are capable of being
`
`implementedsolely in a software embodiment (“software per se”), and are therefore
`
`directed to non-statutory subject matter. Claim 2 does not cure the deficiency and is
`
`rejected for their dependency uponarejected claim.
`
`Regarding claims 3 (“computer-readable medium”) & 34 (“computer-readable
`
`medium”), the examiner found support in the specification at paragraph [176], which
`
`provides non-limiting examples and describes “Embodiments of the invention can be
`
`implemented as a computer program product, i.e., a computer program tangibly
`
`embodied in an information carrier, e.g., in a machine readable storage device, for
`
`execution by, or to control the operation of, data processing apparatus, e.g., a
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 4
`
`programmable processor, a computer, or multiple computers.” As currently claimed, the
`
`claims are capable of being implemented as propagated signals, and are therefore
`
`directed to non-statutory subject matter. Claims 4-12 do not cure the deficiency and are
`
`rejected for their dependency uponarejected claim.
`
`Claim Rejections - 35 USC § 112
`
`The following is a quotation of 35 U.S.C. 112(b):
`(b) CONCLUSION.—The specification shall conclude with one or more claimsparticularly
`pointing out and distinctly claiming the subject matter which the inventor or a joint inventor
`regards as the invention.
`
`The following is a quotation of 35 U.S.C. 112 (pre-AlA), second paragraph:
`The specification shall conclude with one or more claims particularly pointing out and distinctly
`claiming the subject matter which the applicant regards as his invention.
`
`Claims 9 & 12 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AlA),
`
`second paragraph, as being indefinite for failing to particularly point out and
`
`distinctly claim the subject matter which the inventor or a joint inventor, or for
`
`pre-AlA the applicant regards as the invention.
`
`Regarding claims 9 & 12, line 2 recites "the objects have reference counts".
`
`It is
`
`unclear which objects are being referred to. Specifically, claim 1 recites to data,
`
`metadata,file, and root objects, whereasclaim 4 recites a file system inode map object.
`
`Claim Rejections - 35 USC § 103
`
`In the event the determination of the status of the application as subject to AIA 35
`
`U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103)is incorrect, any
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 5
`
`correction of the statutory basis for the rejection will not be considered a new ground of
`
`rejection if the prior art relied upon, and the rationale supporting the rejection, would be
`
`the same under either status.
`
`The following is a quotation of pre-AIA 35 U.S.C. 103(a) which forms the basis
`
`for all obviousnessrejections set forth in this Office action:
`
`(a) A patent may not be obtained though the invention is not identically disclosed or described
`as set forth in section 102 of thistitle, if the differences between the subject matter sought to
`be patented and the prior art are such that the subject matter as a whole would have been
`obvious at the time the invention was made to a person having ordinary skill in the art to which
`said subject matter pertains. Patentability shall not be negatived by the manner in which the
`invention was made.
`
`This application currently namesjoint inventors. In considering patentability of the
`
`claims under pre-AlA 35 U.S.C. 103(a), the examiner presumes that the subject matter
`
`of the various claims was commonly ownedatthe time any inventions coveredtherein
`
`were made absent any evidence to the contrary. Applicant is advised of the obligation
`
`under 37 CFR 1.56 to point out the inventor and invention dates of each claim that was
`
`not commonly ownedatthe time a later invention was madein orderfor the examiner to
`
`consider the applicability of pre-AIA 35 U.S.C. 103(c) and potential pre-AIA 35 U.S.C.
`
`102(e), (f) or (g) prior art under pre-AIA 35 U.S.C. 103(a).
`
`Claims 1-8, 23, 26-28 & 34 are rejected under pre-AlA 35 U.S.C. 103(a) as
`
`being unpatentable over the article by Sean Quinlan & Sean Dorward entitled
`
`“Venti: A New Approach to Archival Storage”(cited in the IDS filed 05/28/2014,
`
`hereinafter “Quinlan") in view of Moulton et al. (US 2004/0148306 A1, cited in the
`
`IDS filed 05/28/2014, hereinafter “Moulton”).
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 6
`
`Regarding independentclaims 1, 3, 23 & 34, Quinlan discloses
`
`A file system [Quinlan, Abstract] comprising:
`
`the file system having a root object comprising a mapping of all object
`
`fingerprints in the file system [ Quinlan, page 4, § 4, second paragraph, disclosing
`
`“Applications use the block level service provided by Venti to store more complex data
`
`structures. Data is divided into blocks and written to the server. To enable this data to
`
`be retrieved, the application must record the fingerprints of these blocks. One approach
`
`is to pack the fingerprints into additional blocks, called pointer blocks, that are also
`
`written to the server, a process that can be repeated recursively until a single fingerprint
`
`is obtained. This fingerprint represents the root of a tree of blocks and correspondsto a
`
`hierarchical hash of the original data.”|; and
`
`wherein a change to the file system results in a change in the root object, and
`
`tracking changesin the root object providesa history offile system activity [Quinian,
`
`page 4, § 4, third paragraph, disclosing “A simple data structure for storing a linear
`
`sequenceof data blocks is shown in Figure 1. The data blocks are located via a fixed
`
`depth tree of pointer blocks whichitself is addressed by a root fingerprint. Applications
`
`can use such a structure to store a single file or to mimic the behavior of a physical
`
`device such as a tape or a disk drive. The write-once nature of Venti does not allow
`
`such a tree to be modified, but new versionsof the tree can be generatedefficiently by
`
`storing the new or modified data blocks and reusing the unchanged sections ofthe tree
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 7
`
`as depicted in Figure 2.” The write-once nature with the generation of new trees
`
`corresponds to tracking changes to provide a history.].
`
`Quinlan doesnotexplicitly disclose a digitally signed file system in which data,
`
`metadata andfiles are objects, each object having a globally unique and content-
`
`derived fingerprint and wherein object references are mappedbythe fingerprints.
`
`However, Moulton discloses
`
`a digitally signed file system [Moulton, 7 0035 & 0036]
`
`in which data, metadata andfiles are objects [Moulton, {| 0056, disclosing “With
`
`reference additionally now to FIG. 6, yet anotherlogic flow chart is shownillustrating a
`
`process 500 for the comparisonoffile hash or directory list hash values to existing
`
`directory list hash values and the addition of newfile or directory list hash values to the
`
`database directory list. The process 500 operates on stored data 502 which comprises
`
`an accumulatedlist offile names, file meta-data (e.g. date, time, file length, file type
`
`etc.) and the file's hash value for each item in a directory. At step 504, the hash function
`
`is run upon the contents ofthe directory list. Decision step 506 is operative to determine
`
`whether or not the hash value for the directorylist is in the set 212 of existing hash
`
`values 214. If itis, then the process 500 returns to add anotherfile hash or directorylist
`
`hash to a directory list. Alternatively, if the hash value for the directory list is not already
`
`in the database set 212, the hash value and data for the directory list are added to the
`
`database 212 set at step 508.”,
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 8
`
`each object having a globally unique and content-derived fingerprint [ Moulton,
`
`0035, disclosing “Particularly disclosed herein is a hash file system that manages the
`
`correspondence of one or more block(s) of data (including but not limitedto files,
`
`directories, drive images, software applications, digitized voice, and rich media content)
`
`together with one or more symbol(s) for that block of data, wherein the symbol may be a
`
`number, hash, checksum, binary sequence, or other identifier that is derived from the
`
`block of data itself andis statistically, probabilistically, or otherwise effectively unique to
`
`that block of data.”| and
`
`wherein object references are mappedbythe fingerprints [Moulton, ¢§ 0059 &
`
`0060, disclosing “The basic structure of the hash file system of the present inventionis
`
`essentially that of a "tree" or "bush" wherein the hash values 806 are used instead of
`
`conventional pointers. The hash values 806 are used in the recipes to point to the data
`
`or another hash value that could also itself be a recipe. In essence then, recipes can
`
`point to other recipes that point to still other recipes that ultimately point to some specific
`
`data that may, itself, point to other recipes that point to even more data, eventually
`
`getting down to nothing but data.’.
`
`Quinlan and Moulton are analogous art becausethey are in the same field of
`
`endeavor, hash file systems and data storage.
`
`It would have been obvious to oneof
`
`ordinary skill in the art at the time of Applicants’ invention to combine the hashedfile
`
`storage system of Quinlan with the cryptographic file system of Moulton to achieve
`
`efficient and deduplicated storage. The suggestion/motivation to combine is provided in
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 9
`
`Quinlan at page 2, § 3, first paragraph (“Venti is a block-level network storage system
`
`intendedfor archival data. The interface to the system is a simple protocol that enables
`
`client applications to read and write variable sized blocks of data. Venti itself does not
`
`provide the services ofa file or backup system, but rather the backend archival storage
`
`for these types of applications.”) and at page 6, § 4.3, first paragraph (“When combined
`
`with a small amount of read/write storage, Venti can be used as the primary location for
`
`data rather than a place to store backups.").
`
`Regarding claims 2 & 4, the combination of Quinlan and Moulton discloses the
`
`file system of claim 1, wherein:
`
`the file system includes an inode map object comprising a mapping of inode
`
`numbersto file object fingerprints [Quinian, page 2, § 3, second andthird paragraphs,
`
`disclosing “Venti identifies data blocks by a hash of their contents. By using a collision-
`
`resistant hash function with a sufficiently large output, it is possible to consider the hash
`
`of a data block as unique. Such a unique hashis called the fingerprint of a block and
`
`can be used as the addressfor read and write operations. This approach results in a
`
`storage system with a numberofinteresting properties. As blocks are addressed by the
`
`fingerprint of their contents, a block cannot be modified without changing its address;
`
`the behavioris intrinsically write-once. This property distinguishes Venti from most other
`
`storage systems, in which the address of a block and its contents are independent.”
`
`The examinerinterprets the hashed data blocks of Quinlan to correspondto inodes.]
`
`and
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 10
`
`wherein the fingerprint of the inode map object comprises a snapshotof thefile
`
`system [Quinlan, page 4, § 4, second paragraph, disclosing “This fingerprint represents
`
`the root of a tree of blocks and correspondsto a hierarchical hash ofthe original data.”|.
`
`Regarding claim 5, the combination of Quinlan and Moulton discloses the
`
`medium of claim 4, including: publishing the inode mapfingerprint to another computer
`
`system on a distinct object store [Quinlan, page 10, § 7, right column, third complete
`
`paragraph, disclosing “Additional protection could be obtained by using one or moreoff-
`
`site mirrors for the server. We have not yet implementedthis strategy, but the
`
`architecture of Venti makesthis relatively simple. A background process on the server
`
`copies newblocks from the data log to the mirrors. This copying can be achieved using
`
`the Venti protocol; the server is simply anotherclient to the mirror.’].
`
`Regarding claim 6, the combination of Quinlan and Moulton discloses the
`
`medium of claim 4, including: using the inode mapfingerprint as a snapshotof the file
`
`system for disaster recovery [Quinlan, page 10, § 7, right column, third complete
`
`paragraph. The examinernotes the off-site mirror copy may be usedfor disaster
`
`recovery.].
`
`Regarding claim 7, the combination of Quinlan and Moulton discloses the
`
`medium of claim 4, wherein: the inode map object contains a fingerprint of a previous
`
`inode map [Quinlan, page 4, § 4, Figures 1 & 2, disclosing previous inode maps in the
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`gray portion of Figure 2].
`
`Page 11
`
`Regarding claim 8, the combination of Quinlan and Moulton discloses the
`
`medium of claim 7, wherein: the previous inode mapfingerprints comprise a history of
`
`snapshots ofthe file system [Quinian, page 2, § 2, left column, second full paragraph,
`
`disclosing snapshots at somepoint in the past.].
`
`Regarding claim 26, the combination of Quinlan and Moulton discloses the
`
`methodof claim 23, including: adding, modifying or deleting a data objectin a file and
`
`generating a newfile object fingerprint.
`
`Regarding claim 27, the combination of Quinlan and Moulton discloses the
`
`method of claim 23, including: when the contentof a file object or data objectis
`
`changed, propagating the change up to the root object.
`
`Regarding claim 28, the combination of Quinlan and Moulton discloses the
`
`method of claim 27, including: performing the propagating step at one of: every I/O
`
`transaction; periodically; on demand; at a particular event.
`
`Claims 35-37 & 39-41 are rejected under pre-AlA 35 U.S.C. 103(a) as being
`
`unpatentable over Moulton in view of Quinlan.
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 12
`
`Regarding independent claim 35, Moulton discloses
`
`A system comprising:
`
`physical processor and storage devices providing access to data, metadata and
`
`files [Moulton, § 0050, operating system implements a file system for accessing mass
`
`storage via the hard disk controllers]; and
`
`wherein the data, metadata andfiles are objects [Moulton, § 0056, disclosing
`
`“With reference additionally now to FIG. 6, yet another logic flow chart is shown
`
`illustrating a process 500 for the comparison offile hash or directory list hash values to
`
`existing directory list hash values and the addition of newfile or directory list hash
`
`values to the databasedirectory list. The process 500 operates on stored data 502
`
`which comprises an accumulatedlist offile names, file meta-data (e.g. date, time, file
`
`length, file type etc.) and the file's hash value for each item in a directory. At step 504,
`
`the hash function is run upon the contents of the directory list. Decision step 506 is
`
`operative to determine whetheror not the hash value for the directorylist is in the set
`
`212 of existing hash values 214.If it is, then the process 500 returns to add anotherfile
`
`hashor directory list hash to a directory list. Alternatively, if the hash value for the
`
`directory list is not already in the database set 212, the hash value anddata for the
`
`directory list are addedto the database 212 set at step 508.”|,
`
`each object having a globally unique and content-derivedfingerprint
`
`[Moulton, § 0035, disclosing “Particularly disclosed herein is a hashfile system
`
`that manages the correspondenceof one or more block(s) of data (including but
`
`notlimited to files, directories, drive images, software applications, digitized
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 13
`
`voice, and rich media content) together with one or more symbol(s) for that block
`
`of data, wherein the symbol may be a number, hash, checksum, binary
`
`sequence, or other identifier that is derived from the block of data itself and is
`
`statistically, probabilistically, or otherwise effectively unique to that block of
`
`data.”),
`
`and wherein object references are indexed by the fingerprints [Moulton,
`
`qf 0059 & 0060, disclosing “The basic structure of the hash file system of the
`
`present invention is essentially that of a "tree" or "bush" wherein the hash values
`
`806 are used instead of conventional pointers. The hash values 806 are usedin
`
`the recipes to point to the data or another hash value that could also itself be a
`
`recipe. In essence then, recipes can point to other recipes that point to still other
`
`recipes that ultimately point to some specific data that may, itself, point to other
`
`recipes that point to even more data, eventually getting down to nothing but
`
`data.’].
`
`Moulton does not explicitly disclose wherein the indexing includes mapping of
`
`inode numbersto the file object fingerprints.
`
`However, Quinlan discloses wherein the indexing includes mapping of inode
`
`numbersto the file object fingerprints [Quinlan, page 2, § 3, second andthird
`
`paragraphs, disclosing “Venti identifies data blocks by a hashof their contents. By
`
`using a collision-resistant hash function with a sufficiently large output, it is possible to
`
`consider the hash of a data block as unique. Such a unique hashis called the fingerprint
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 14
`
`of a block and can be used as the address for read and write operations. This approach
`
`results in a storage system with a numberofinteresting properties. As blocks are
`
`addressedbythefingerprint of their contents, a block cannot be modified without
`
`changing its address; the behavioris intrinsically write-once. This property distinguishes
`
`Venti from most other storage systems, in which the address of a block and its contents
`
`are independent.” The examinerinterprets the hashed data blocks of Quinlan to
`
`correspondto inodes.].
`
`Moulton and Quinlan are analogous art because they are in the same field of
`
`endeavor, hash file systems and data storage.
`
`It would have been obvious to oneof
`
`ordinary skill in the art at the time of Applicants’ invention to combine the cryptographic
`
`file system of Moulton with the hashedfile storage system of Quinlan to achieveefficient
`
`and deduplicated storage. The suggestion/motivation to combine is provided in Quinlan
`
`at page 2, § 3, first paragraph (“Venti is a block-level network storage system intended
`
`for archival data. The interface to the system is a simple protocol that enables client
`
`applications to read and write variable sized blocks of data. Venti itself does not
`
`provide the services ofa file or backup system, but rather the backend archival storage
`
`for these types of applications.”) and at page 6, § 4.3, first paragraph (“When combined
`
`with a small amountof read/write storage, Venti can be used as the primary location for
`
`data rather than a place to store backups.").
`
`Regarding independent claim 36, Moulton discloses
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 15
`
`A file system [Moulton, Abstract] comprising:
`
`each data object comprising data or metadata [Moulton, J 0056, disclosing “With
`
`reference additionally now to FIG. 6, yet anotherlogic flow chart is shownillustrating a
`
`process 500 for the comparisonoffile hash or directory list hash values to existing
`
`directory list hash values and the addition of newfile or directory list hash values to the
`
`database directory list. The process 500 operates on stored data 502 which comprises
`
`an accumulatedlist offile names, file meta-data (e.g. date, time, file length, file type
`
`etc.) and the file's hash value for each item in a directory. At step 504, the hash function
`
`is run upon the contents ofthe directory list. Decision step 506 is operative to determine
`
`whether or not the hash value for the directory list is in the set 212 of existing hash
`
`values 214. If itis, then the process 500 returns to add anotherfile hash or directorylist
`
`hash to a directory list. Alternatively, if the hash value for the directory list is not already
`
`in the database set 212, the hash value and data for the directory list are added to the
`
`database 212 set at step 508.”| and
`
`each object having a content-based globally unique fingerprint as its object name
`
`[Moulton, § 0035, disclosing “Particularly disclosed herein is a hashfile system that
`
`manages the correspondence of one or more block(s) of data (including but notlimited
`
`to files, directories, drive images, software applications, digitized voice, and rich media
`
`content) together with one or more symbol(s) for that block of data, wherein the symbol
`
`may be a number, hash, checksum, binary sequence, or other identifier that is derived
`
`from the block of data itself andis statistically, probabilistically, or otherwise effectively
`
`unique to that block of data.”],
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 16
`
`the file object being a collection of data object names and having its own content-
`
`based globally unique fingerprint asits file object name [Moulton, § 0056, disclosing
`
`“With reference additionally now to FIG. 6, yet another logic flow chart is shown
`
`illustrating a process 500 for the comparison offile hash or directory list hash values to
`
`existing directory list hash values and the addition of newfile or directory list hash
`
`values to the databasedirectory list. The process 500 operates on stored data 502
`
`which comprises an accumulatedlist offile names, file meta-data (e.g. date, time, file
`
`length, file type etc.) and the file's hash value for each item in a directory. At step 504,
`
`the hash function is run upon the contents of the directory list. Decision step 506 is
`
`operative to determine whetheror not the hash value for the directorylist is in the set
`
`212 of existing hash values 214.If it is, then the process 500 returns to add anotherfile
`
`hashor directory list hash to a directory list. Alternatively, if the hash value for the
`
`directory list is not already in the database set 212, the hash value and data for the
`
`directory list are added to the database 212 set at step 508.”;
`
`a file system having two layers [Moulton, Figure 10] including:
`
`an object store layer including a mapping index of object names and
`
`physical object locations [Moulton, Figure 10 and ¢§ 0061 & 0062, disclosing
`
`“With reference additionally now to FIG. 10, a simplified diagram 900 is shown
`
`illustrative of a hash file system address translation function for an exemplary
`
`160 bit hash value 902. The hash value 902 includes a data structure comprising
`
`a front portion 904 and a back portion 906 as shown and the diagram 900
`
`illustrates a particular "0 of 1" operation that is used for enabling the use of the
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 17
`
`hash value 902 to go to the location of the particular node in the system that
`
`contains the corresponding data.”|; and
`
`a namespacelayer including a mapping index of data object namesfor
`
`eachfile object [Moulton, | 0055, disclosing “With reference additionally now to
`
`FIG. 5, another logic flow chart is shown depicting a comparison process 400 for
`
`the hash values 310 of each piece 306ofthe file to those of existing hash values
`
`214 maintained in the set 212. Particularly, at step 402, the hash values 310 for
`
`each piece 306 ofthe file are comparedto existing hash values 214 and new
`
`hash values 408 and corresponding new data pieces 406 are addedto the set
`
`212. In this way, hash values 408 not previously present in the database set 212
`
`are added togetherwith their associated data pieces 406. The process 400 also
`
`results in the production of records 404 showing the equivalence of a single hash
`
`valueforall file pieces with the hash values 310 of the various pieces 306.”].
`
`Moulton does not explicitly disclose a processing and storage apparatus for
`
`naming andstoring data objects and collections of data objects comprising file objects.
`
`However, Quinlan discloses a processing and storage apparatus for naming and
`
`storing data objects and collections of data objects comprising file objects [ Quinian,
`
`page 2, § 3, second and third paragraphs, disclosing “Venti identifies data blocks by a
`
`hashof their contents. By using a collision-resistant hash function with a sufficiently
`
`large output, it is possible to consider the hash of a data block as unique. Such a unique
`
`hashis called the fingerprint of a block and can be used as the address for read and
`
`
`
`Application/Control Number: 13/932,297
`Art Unit: 2155
`
`Page 18
`
`write operations. This approach results in a storage system with a numberofinteresting
`
`properties. As blocks are addressed by the fingerprint of their contents, a block cannot
`
`be modified without changing its address; the behavioris intrinsically write-once. This
`
`property distinguishes Venti from most other storage systems, in which the addressof a
`
`block and its contents are independent.”
`
`Moulton and Quinlan are analogous art because they are in the same field of
`
`endeavor, hash file systems and data storage.
`
`It would have been obvious to one of
`
`ordinary skill in the art at the time of Applicants’ invention to combine the cryptographic
`
`file system of Moulton with the hashedfile storage system of Quinlan to achieveefficient
`
`and deduplicated storage. The suggestion/motivation to combineis provided in Quinlan
`
`at page 2, § 3, first paragraph (“Venti is a block-level network storage system intended
`
`for archival data. The interface to the system is a simple protocol that enables client
`
`applications to read and write variable sized blocks of data. Venti itself does not
`
`provide the servicesofa file or backup system, but rather the backend archival storage
`
`for these types of applications.”) and at page 6, § 4.3, first paragraph (“When combined
`
`with a small amountof read/write storage, Venti can be used as the primary location for
`
`data rather than a place to store backups.").
`
`Regarding claim 37, the combination of Moulton and Quinlan dis

Accessing this document will incur an additional charge of $.
After purchase, you can access this document again without charge.
Accept $ ChargeStill 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.
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.

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