`Petition for Inter Partes Review
`
`DOCKET NO.: 2212123-00120 US1
`Filed on behalf of Springpath, Inc.
`By: Jason Kipnis, Reg. No. 40,680
`Theodoros Konstantakopoulos, Reg. No. 74,155
`Wilmer Cutler Pickering Hale and Dorr LLP
`950 Page Mill Road
`Palo Alto, CA 94304
`Tel: (650) 600-5036
`Email: Jason.Kipnis@wilmerhale.com
`
` Theodoros.Konstantakopoulos@wilmerhale.com
`
`UNITED STATES PATENT AND TRADEMARK OFFICE
`____________________________________________
`
`BEFORE THE PATENT TRIAL AND APPEAL BOARD
`____________________________________________
`
`Springpath, Inc.
`Petitioner
`
`v.
`
`SimpliVity Corporation,
`Patent Owner
`
`Case IPR2016-01779
`
`PETITION FOR INTER PARTES REVIEW OF
`U.S. PATENT NO. 8,478,799
`CHALLENGING CLAIMS 1–2, 7–13, 17–20, 27, and 33–35
`UNDER 35 U.S.C. § 312 AND 37 C.F.R. § 42.104
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`TABLE OF CONTENTS
`
`Introduction ........................................................................................................ 1(cid:3)
`I.(cid:3)
`II.(cid:3) Mandatory Notices ............................................................................................. 2(cid:3)
`A.(cid:3) Real Party-in-Interest ..................................................................................... 2(cid:3)
`B.(cid:3) Related Matters .............................................................................................. 2(cid:3)
`C.(cid:3) Counsel ........................................................................................................... 3(cid:3)
`D.(cid:3) Service Information ....................................................................................... 3(cid:3)
`III.(cid:3)
`Certification of Grounds for Standing ........................................................... 3(cid:3)
`IV.(cid:3)
`Overview of Challenge and Relief Requested ............................................... 3(cid:3)
`A.(cid:3) Prior Art Patents and Publications ................................................................. 4(cid:3)
`B.(cid:3) Grounds for Challenge ................................................................................... 4(cid:3)
`V.(cid:3) Brief Description of Technology ....................................................................... 4(cid:3)
`A.(cid:3) Overview of Computer File Systems ............................................................. 5(cid:3)
`1.(cid:3) Basic Components of File Systems ............................................................ 5(cid:3)
`2.(cid:3) Files ............................................................................................................ 5(cid:3)
`3.(cid:3) Directories .................................................................................................. 5(cid:3)
`4.(cid:3)
`Inodes ......................................................................................................... 6(cid:3)
`5.(cid:3) Content-Addressable File System .............................................................. 6(cid:3)
`B.(cid:3) Overview of the ’799 Patent .......................................................................... 7(cid:3)
`1.(cid:3) Alleged Problem ......................................................................................... 7(cid:3)
`2.(cid:3) Summary of Alleged Invention of the ’799 Patent .................................... 8(cid:3)
`3.(cid:3) The Challenged Claims ............................................................................ 14(cid:3)
`4.(cid:3) Prosecution History .................................................................................. 15(cid:3)
`Overview of the Primary Prior Art Reference ............................................. 18(cid:3)
`VI.(cid:3)
`A.(cid:3) Overview of Li ............................................................................................. 19(cid:3)
`VII.(cid:3) Claim Construction ...................................................................................... 21(cid:3)
`A.(cid:3) “fingerprint” ................................................................................................. 22(cid:3)
`B.(cid:3)
`“namespace file system” .............................................................................. 23(cid:3)
`
`i
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`VIII.(cid:3) Level of Ordinary Skill In The Art .............................................................. 24(cid:3)
`IX.(cid:3)
`Specific Grounds for Petition ...................................................................... 24(cid:3)
`A.(cid:3) Ground I: Claims 1-2, 7-9, 11-12, 17-20, 27, and 33-35 are anticipated by
`Li 24(cid:3)
`1.(cid:3)
`Independent Claim 1 ................................................................................ 24(cid:3)
`2.(cid:3) Claim 2: “The file system of claim 1, wherein: object references are
`mapped by the object fingerprints.” ................................................................. 36(cid:3)
`3.(cid:3) Claim 7: “The file system of claim 1, wherein: the file object mapping
`comprises a linear list, a tree structure or an indirection table.” ..................... 36(cid:3)
`4.(cid:3) Claim 8: “The file system of claim 1, wherein: the file objects include a
`root object having its own object fingerprint derived from all of the objects in
`the file system such that every object in the file system is accessible through
`the root object.” ................................................................................................ 37(cid:3)
`5.(cid:3) Claim 9: The file system of claim 8, wherein a change of content of any
`file system object changes the root object and tracking changes in the root
`object provides a history of file system activity. ............................................. 38(cid:3)
`6.(cid:3) Claim 11: “The file system of claim 1, wherein: the fingerprint is an
`cryptographic hash digest of the object content.” ............................................ 38(cid:3)
`7.(cid:3) Claim 12: “The file system of claim 1, wherein: the object size is
`variable. ............................................................................................................ 39(cid:3)
`8.(cid:3) Claim 17: The file system of claim 1, including: a stack wherein the
`object store comprises a lower portion of the stack and the file system
`comprises an upper portion of the stack. ......................................................... 39(cid:3)
`9.(cid:3) Claim 18: The file system of claim 1, wherein: the namespace file system
`and the object store are implemented in one or more of digital electronic
`circuitry, computer hardware, firmware, a computer program in a non-
`transitory machine readable storage device, or combinations thereof. ............ 40(cid:3)
`10.(cid:3)
`Independent Claim 19 ........................................................................... 41(cid:3)
`11.(cid:3) Claim 20: The method of claim 19, comprising: maintaining a location
`index for mapping object fingerprints and physical locations of the objects. . 42(cid:3)
`12.(cid:3) Claim 27: A computer program embodied in a non-transitory machine
`readable storage device comprising program code means which, when
`executed by a process, performs the steps of method claim 19. ...................... 43(cid:3)
`
`ii
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`13.(cid:3) Claim 33: The method of claim 19, including: maintaining in the object
`store a location index of object names and physical object locations. ............ 43(cid:3)
`14.(cid:3) Claim 34: The method of claim 19, wherein: the file object mapping is
`indexed by an offset into the content of the file, and comprises a linear list, a
`tree structure, or an indirection table. .............................................................. 44(cid:3)
`15.(cid:3) Claim 35: The method of claim 19, including: adding, modifying or
`deleting an object of the file and generating a new file object fingerprint. ..... 45(cid:3)
`B.(cid:3) Ground II: Claim 10 is obvious over Li in view of Sandberg .................... 46(cid:3)
`1.(cid:3) Claim 10: The file system of claim 1, wherein: the namespace file system
`is provided as a layer in a storage stack between a virtual file system layer and
`a block storage abstraction layer. ..................................................................... 46(cid:3)
`2.(cid:3) Motivation to Combine ............................................................................ 47(cid:3)
`C.(cid:3) Ground III: Claim 13 is obvious over Li .................................................... 50(cid:3)
`1.(cid:3) Claim 13: The system of claim 1, wherein: the file system is a POSIX
`standard compliant file system. ....................................................................... 50(cid:3)
`X.(cid:3) Conclusion ....................................................................................................... 51(cid:3)
`
`iii
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`Springpath, Inc. (“Springpath”) respectfully requests Inter Partes Review of
`
`claims 1–2, 7–13, 17–20, 27, and 33–35 of U.S. Patent No. 8,478,799 (the “’799
`
`patent”) (Ex. 1001) pursuant to 35 U.S.C. §§ 311-19 and 37 C.F.R. § 42.1 et seq.
`
`I. INTRODUCTION
`
`The ’799 patent claims a purportedly novel computer file system for naming
`
`and storing of files on computer storage devices. But in fact, the claimed file
`
`system merely combines well known techniques disclosed by Jinyuan Li and
`
`others nearly four years before the alleged invention. Decl. ¶ 24 (Ex. 1002).
`
`The ’799 patent is directed to a stacked file system, comprising two distinct
`
`storage systems: a namespace file system and an underlying object store (also
`
`referred to in the ‘799 patent as an “object file system”). The object store is used
`
`to host the data in the form of objects. The name of the object is derived from the
`
`object’s content using, for example, a strong cryptographic hash, and represents a
`
`“fingerprint” of the content. These fingerprints of the objects are globally unique
`
`because: (i) no two objects can have the same content (because in that case, they
`
`would by definition have the same fingerprint and therefore be the same object);
`
`and (ii) two objects with different content will always have different fingerprints.
`
`Object stores have an “index” that tracks all of the objects and associates each
`
`object’s name with its location. Decl. ¶ 25 (Ex. 1002).
`
`The ’799 patent describes a “namespace file system” at the top of the storage
`
`1
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`stack, which manages the files and directories that are stored within the object
`
`store. This namespace file system uses object fingerprints, instead of logical block
`
`numbers, to access content stored in the object store. All internal data structures of
`
`the ’799 namespace file system are themselves objects. Decl. ¶ 26 (Ex. 1002).
`
`Long before the ’799 patent’s June 26, 2009 priority date, others had already
`
`developed and used the same file system architecture. Secure Untrusted Data
`
`Repository (SUNDR), to Li et al. (“Li”) (Ex. 1003), for instance, which was
`
`published on 2004, describes a storage system that is constructed as a file system
`
`that is layered over an underlying content addressable block store. Specifically, as
`
`shown in Li’s drawings and corresponding description, Li discloses data structures
`
`that are identical to the ones claimed in the ’799 patent in the form of files,
`
`directories, inodes, and i-tables. Decl. ¶ 27 (Ex. 1002).
`
`II. MANDATORY NOTICES
`
`A. Real Party-in-Interest
`
`Springpath, Inc. (“Petitioner”) is the real party-in-interest.
`
`B. Related Matters
`SimpliVity has asserted the ’799 patent in SimpliVity Corp. v. Springpath,
`
`Inc., Civil Action No. 4:15-cv-13345-TSH (D. Mass. 2016). This proceeding may
`
`be affected by a decision in this instant proceeding. The Petitioner is filing another
`
`inter partes review petition for claims 1–2, 7–13, 17–20, 27, and 33–35 of the ’799
`
`2
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`patent. See IPR2016-01780.
`
`C. Counsel
`
`Lead Counsel: Jason Kipnis, (Registration No. 40,680).
`
`Backup Counsel: Theodoros Konstantakopoulos (Registration No.74,155);
`
`Mark D. Flanagan (pro hac vice to be requested); Louis W. Tompros (pro hac vice
`
`to be requested); and Keith L. Slenkovich (pro hac vice to be requested).
`
`D. Service Information
`
`E-mail: Jason.Kipnis@wilmerhale.com;
`
` Theodoros.Konstantakopoulos@wilmerhale.com.
`
`Post and hand delivery: Wilmer, Cutler, Pickering, Hale and Dorr, LLP
`
`
`
`
`
`
`
`
`
`950 Page Mill Road
`
`Palo Alto, CA 94304
`
`Telephone: 650-600-5036
`
`
`
`Fax: 650-858-6100
`
`Petitioner consents to service by E-mail.
`
`III. CERTIFICATION OF GROUNDS FOR STANDING
`
`Petitioner certifies pursuant to Rule 42.104(a) that the patent for which
`
`review is sought is available for inter partes review and that Petitioner is not
`
`barred or estopped from requesting an inter partes review challenging the patent
`
`claims on the grounds identified in this Petition.
`
`IV. OVERVIEW OF CHALLENGE AND RELIEF REQUESTED
`
`3
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`Pursuant to Rules 42.22(a)(1) and 42.104(b)(1)-(2), Petitioner challenges
`
`claims 1-2, 7-13, 17-20, 27, and 33-35 of the ’799 patent.
`
`A. Prior Art Patents and Publications
`
`Petitioner relies upon the patents listed in the Table of Exhibits, including:
`
`1.
`
`Secure Untrusted Data Repository (SUNDR), to Li et al. (“Li” (Ex.
`
`1003)), published in 2004. Li is prior art under 35 U.S.C. §102(b).
`
`2.
`
`Design and implementation of the Sun network filesystem, to Sandberg
`
`et al. (“Sandberg” (Ex. 1004)), published in 1985. Sandberg is prior art under 35
`
`U.S.C. §102(b).
`
`B. Grounds for Challenge
`
`Petitioner requests cancellation of claims 1-2, 7-13, 17-20, 27, and 33-35 of
`
`the ’799 patent (the “challenged claims”) as unpatentable under 35 U.S.C. § 102
`
`and § 103. This Petition, supported by the declaration of Dr. Darrell D. E. Long
`
`(“Decl”) (Ex. 1002) filed herewith, demonstrates that there is a reasonable
`
`likelihood that Petitioner will prevail with respect to cancellation of at least one
`
`challenged claim. See 35 U.S.C. § 314(a).
`
`V. BRIEF DESCRIPTION OF TECHNOLOGY
`
`The ’799 patent generally relates to the field of computer file system data
`
`structures and claims particular computer file systems for naming and storing of
`
`files on one or more computer storage devices, as well as related methods for
`
`4
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`naming and storing of files. Decl. ¶ 28 (Ex. 1002).
`
`A. Overview of Computer File Systems
`
`1. Basic Components of File Systems
`
`File systems include several data structures. For example, file systems have
`
`user visible structures, such as files and directories, as well as internal structures,
`
`such as superblocks, inodes, allocation maps, and transaction logs. Decl. ¶ 29 (Ex.
`
`1002).
`
`2.
`
`Files
`
`A file is a named collection of related data that appears to the user as a
`
`single, contiguous set of information that is retained in storage. To a user, a file is
`
`seen as a unit of logical storage where each file is identified by a name that is
`
`unique within the directory in which the file is located. To the computer, however,
`
`individual files are identified by numbers, rather than by their names and
`
`directories. Typically, individual files are not stored as contiguous blocks of data,
`
`but rather they are stored as multiple fragments scattered in various locations in
`
`storage. Decl. ¶ 30 (Ex. 1002).
`
`3. Directories
`
`Directories are data structures that include references to files and/or other
`
`directories. Directories can be considered a particular type of a file. Decl. ¶ 31
`
`(Ex. 1002).
`
`5
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`4.
`
`Inodes
`
`An inode is a data structure that is used to represent a file. In the UNIX
`
`operating system, for example, the data structure has a number of fields, including
`
`a reference count, permissions (user, group, other), additional bits, all of which
`
`comprise metadata about the file, and a number of pointers that reference the actual
`
`data blocks that compose the file. Typically there are a number of pointers that
`
`point directly to data blocks. A pointer can also point to a block of pointers known
`
`as a “single indirect block,” wherein each pointer in the single indirect block points
`
`to other data blocks. A pointer can also point to a block of pointers known as a
`
`“double indirect block,” wherein each pointer in the double indirect block points to
`
`a single indirect block, which in turn has pointers to specific data blocks. Each
`
`additional layer of indirection increases the size of the file that can be represented
`
`by the inode. Over time, the term “inode” has come to mean any root data
`
`structure that provides basic access information to metadata and data blocks that
`
`represent a file. Decl. ¶ 32 (Ex. 1002).
`
`5. Content-Addressable File System
`
`In a content-addressable file system, each file is internally represented by a
`
`name (i.e., fingerprint), rather than by a pointer representing its location. Each file
`
`is assigned an integer number derived by a hash function, e.g., a cryptographic
`
`hash function, of the file’s contents. A cryptographic hash function maps data of
`
`6
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`arbitrary size (e.g., contents of a file), to a data of fixed size (e.g., an integer
`
`number). Human-readable names can then be associated to the integer number and
`
`be used to access the file. An advantage of this approach is that identical data will
`
`be stored only once, because two data objects that have the same content will end
`
`up having the same name, i.e., they will end up being represented as a single copy
`
`of the same object. Decl. ¶ 33 (Ex. 1002).
`
`B. Overview of the ’799 Patent
`
`The ’799 patent issued from U.S. App. No. 12/823,922, which was filed on
`
`June 25, 2010, and claims priority, as continuation-in-part application, to U.S.
`
`App. No. 12/823, 452 filed also on June 25, 2010, and to U.S. Provisional App.
`
`No. 61/269,633, filed on June 26, 2009. ’799 patent at cover page (Ex. 1001). The
`
`purported invention of the ’799 patent relates to computer file system data
`
`structures and to methods and apparatus for the naming and storing of files. ’799
`
`patent at 1:6-8 (Ex. 1001). Decl. ¶ 34 (Ex. 1002).
`
`1. Alleged Problem
`
`The ’799 patent purports to address inefficiencies of legacy file systems.
`
`Specifically, the ’799 patent concludes, without providing any particular
`
`explanation, that “legacy file systems have tight control of the what (content) and
`
`the where (placement of data). This co-mingling of what and where, largely an
`
`7
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`artifact of history, results in an architecture that is difficult to extend to modern
`
`storage needs.” See ’799 patent at 6:57-61 (Ex. 1001). Decl. ¶ 35 (Ex. 1002).
`
`2.
`
`Summary of Alleged Invention of the ’799 Patent
`
`The ’799 patent’s claimed file system includes components that are identical
`
`to those in the prior art. Specifically, both the claimed and prior art file systems
`
`have content addressable file systems implemented as a stack, where the stack is
`
`comprised of a file system layered over an underlying content addressable object
`
`store. Decl. ¶ 36 (Ex. 1002).
`
`Fig. 1 of the ’799 patent illustrates various storage components in an
`
`operating system kernel. ’799 patent at 10:25-26 (Ex. 1001). The claimed file
`
`system is composed of namespace file system 107 that is stacked on top of a
`
`lightweight object file system 108 (also referred to as an “Object Store”). ’799
`
`patent at 10:48-49 (Ex. 1001). An annotated Fig. 1 of the ’799 patent is
`
`reproduced below. Decl. ¶ 37 (Ex. 1002).
`
`8
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`’799 Patent: Fig. 1 (Ex. 1001)
`
`“The namespace file system […] has files, a directory structure, links, a
`
`superblock, and so forth. The namespace file system doesn’t contain data directly,
`
`instead all data is stored in objects.” ’799 patent at 8:48-51 (Ex. 1001). Decl. ¶ 38
`
`(Ex. 1002).
`
`“An object store […] is a flat collection of opaque data (objects). Each
`
`object is unique, and has reference counts […]. An object’s name is a
`
`cryptographic hash of the object’s content, i.e., change the content and the name
`
`must change. Any sufficiently strong cryptographic hash is acceptable for
`
`generating object names (fingerprints).” ’799 patent at 8:9-16 (Ex. 1001). Decl. ¶
`
`9
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`39 (Ex. 1002).
`
`An annotated Fig. 2, reproduced below, shows components of the object
`
`store. Specifically, “[o]bject store 108 contains binary, opaque objects, examples
`
`of which are P 201, Q 202 and R 203. […] Each object has a name (fingerprint),
`
`which is a cryptographic digest (hash) of the object’s entire content, plus some site
`
`specific salt. In FIG. 2, the object names are denoted by H(p), H(q) and H(r).”
`
`’799 patent at 11:1-13 (Ex. 1001). Decl. ¶ 40 (Ex. 1002).
`
`’799 Patent: Fig. 2 (Ex. 1001)
`
`“An index structure 204 keeps track of object names, object locations, and
`
`object references. An object’s reference is incremented every time the object is
`
`10
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`written. The namespace file system 107 may generate what it thinks are many
`
`copies of the same object; the object store 108 only stores one, but keeps track of
`
`how many the namespace actually thinks it has.” ’799 patent at 11:14-19 (Ex.
`
`1001). Decl. ¶ 41 (Ex. 1002).
`
`According to the ’799 patent, “[o]bjects are relatively small, and frequently
`
`larger data structures are needed. The structure that aggregates objects is called an
`
`hnode.” ’799 patent at 8:51-53 (Ex. 1001). “An hnode, in the present
`
`embodiment, is a data structure that ties together content, such as a file.” Id, at
`
`8:58-59. FIG. 4, which is reproduced below, illustrates components of an hnode
`
`structure 401. “The hnode uses object identifiers (fingerprints) to identify content,
`
`rather than physical/logical block addressing that legacy inodes use. An hnode is a
`
`sequence of content, like a file, that can be randomly read, written, appended to,
`
`created, deleted and truncated.” ’799 patent at 12:52-57 (Ex. 1001). Decl. ¶ 42
`
`(Ex. 1002).
`
`11
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`’799 Patent: Fig. 4 (Ex. 1001)
`
`As the ’799 patent explains, “[a] data sequence is broken into discrete
`
`objects, for example, S 410, T 411 and U 412 in FIG. 4. The names of each object
`
`[comprising the content of the object represented by the hnode] are stored in a
`
`mapping table 402, which records the fingerprints of each of S, T and U.” ’799
`
`patent at 12:63-66 (Ex. 1001). Decl. ¶ 43 (Ex. 1002).
`
`12
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`’799 Patent: Fig. 5 (Ex. 1001)
`
`“A file 504 may be a thin wrapper that makes an hnode appear as a normal
`
`[…] file that can be opened, closed, read, written, and so forth. A directory 505 is
`
`another interpretation of an hnode 401. A directory 505 is a mapping 501 of inode
`
`numbers (an integer) to file names (a string).” ’799 patent at 13:28-33 (Ex. 1001).
`
`Decl. ¶ 44 (Ex. 1002).
`
`“An imap (“inode map”) 502 translates inode numbers (from directory 501)
`
`into an object digest (fingerprint). The object may represent an hnode (and
`
`therefore by extension, a file, directory or other imap), a structure such as a
`
`superblock, or other data.” ’799 patent at 13:37-41 (Ex. 1001). Decl. ¶ 45 (Ex.
`
`13
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`1002).
`
`According to the ‘799 patent, an imap “converts an inode number into an
`
`object fingerprint (name),” ’799 patent at 9:9-10 (Ex. 1001) and “enables the rest
`
`of the namespace file system to deal with inode numbers, which is essential, as
`
`many user level utilities need to see such a construct. In some sense, this provides
`
`an additional layer of indirection (or virtualization) over a traditional static inode
`
`table.” Id. at 9:13-17 (Ex. 1001). Decl. ¶ 46 (Ex. 1002).
`
`But as explained below, there is nothing novel about a content addressable
`
`file system, implemented as a stack of two file systems, that provide mappings of
`
`fingerprints to file system structures. Decl. ¶ 47 (Ex. 1002).
`
`3.
`
`The Challenged Claims
`
`This petition challenges claims 1-2, 7-13, 17-20, 27, and 33-35 of the ’799
`
`patent. Independent claim 1 describes a computer file system for naming and
`
`storing of files on one or more computer storage devices. ’799 patent at claim 1
`
`(Ex. 1001). Claim 1 also specifies additional well known features, including an
`
`object store holding objects having object fingerprints derived from the content of
`
`the object, as noted below. Decl. ¶ 48 (Ex. 1002).
`
`1. A computer file system for naming and storing of files on
`one or more computer storage devices, the system comprising:
`a namespace file system accessing an object store, the system
`
`14
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`including a memory and a hardware processor in communication with
`the memory, the processor for executing program instructions for
`accessing the object store using object fingerprints, the object store
`holding files, data and metadata as objects, each object having a
`globally unique object fingerprint derived from the content of the
`object and used to access the object store, wherein:
`each file object comprising a mapping of object fingerprints for
`the data objects or metadata objects of the file and the file object
`having its own object fingerprint derived from the fingerprints of the
`objects in the file, and wherein the object store further includes:
`an inode map object comprising a mapping of file system inode
`numbers and object fingerprints enabling the inode numbers to stay
`constant while the object fingerprints change as the file content
`changes; and
`directory objects, each directory object comprising a mapping
`of inode numbers and file names;
`wherein each of the inode map object and directory object has
`its own object fingerprint derived from the content of the respective
`object.
`The dependent claims add well-known details such as a root object, a tree
`
`structure, an indirection table, and a virtual file system layer. Decl. ¶ 49 (Ex.
`
`1002).
`
`4.
`
`Prosecution History
`
`The ’799 patent issued from U.S. App. No. 12/823,922, which was filed on
`
`June 25, 2010. The ’799 patent is a continuation-in-part application, to U.S. App.
`
`15
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`No. 12/823, 452 filed also on June 25, 2010, and to U.S. Provisional App. No.
`
`61/269,633, filed on June 26, 2009. As explained below, Applicant identified the
`
`following allegedly novel features of the invention:
`
`(cid:120) content derived fingerprints;
`
`(cid:120) file objects comprising a mapping of object fingerprints for the data
`
`objects and/or metadata objects of the file;
`
`(cid:120) an inode map object comprising a mapping of file system inode
`
`numbers and object fingerprints; and
`
`(cid:120) directory objects comprising a mapping of inode numbers and file
`
`names.
`
`Each of these features was disclosed in the prior art years before the priority
`
`date of the ’799 patent. Decl. ¶ 51 (Ex. 1002).
`
`On August 30, 2012, the Examiner rejected the claims in light of various
`
`prior art references.1 (Office Action dated Aug. 30, 2012 (Ex. 1006)). For
`
`example, claim 1 (application claim 13) was rejected over U.S. Publication No.
`
`2004/0148306 (“Moulton”) (Ex. 1007) and “Venti: A New Approach to Archival
`
`Storage” (“Quinlan”) (Ex. 1008). The Office Action asserted that Moulton
`
`discloses a namespace file system where files, data and metadata are objects, each
`
`
`1 The claims were also rejected under 35 U.S.C. §§ 101 and 112.
`
`16
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`object having a globally unique fingerprint derived from the content of the object,
`
`and each file object having a globally unique fingerprint derived from the content
`
`of the object. (Id. at 12-14.) The Office Action also asserted that Quinlan
`
`discloses a mapping of inode numbers to file object fingerprints. (Id. at 15.)
`
`On December 18, 2012, the applicant responded by amending the claims to
`
`include features such as “an inode map object” and “directory objects comprising a
`
`mapping of inode numbers and file names.” (Applicant’s Response dated
`
`December 18, 2012 at 2 (Ex. 1009). The applicant also cancelled some claims and
`
`added new claims further specifying the file system. The applicant argued that the
`
`amended claims with the additional limitations were distinct from the prior art
`
`because allegedly the invention stored “metadata as objects” and because the prior
`
`art did not disclose file objects comprising a mapping of object fingerprints, an
`
`inode map object comprising a mapping of file system inode numbers and object
`
`fingerprints, and directory objects comprising a mapping of inode numbers and file
`
`names. (Id. at 11.)
`
`On February 22, 2013, the Examiner rejected the amended claims in light of
`
`various new prior art references.2 (Final Office Action dated Feb. 22, 2013 (Ex.
`
`1010)). For example, claim 1 (application claim 13) was rejected over “JFS
`
`
`2 The claims were also rejected under 35 U.S.C. §§ 101 and 112.
`
`17
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`Layout: How the Journaled File System Handles the On-Disk Layout” to Steve
`
`Best and Dave Kleikamp (“Best”) (Ex. 1011). The Office Action asserted that
`
`Best disclosed all the limitations of then-pending application claim 13 (patent
`
`claim 1). (Id. at 11-12.)
`
`On May 8, 2013, the applicant responded by amending the independent
`
`claims to include features such as “each of the inode map object and directory
`
`object has its own object fingerprint derived from the content of the respective
`
`object.” (Applicant’s Response dated May 8, 2013 at 8 (Ex. 1012).)
`
`On May 29, 2014, the newly amended claims were allowed. (Notice of
`
`Allowance dated May 29, 2013) (Ex. 1013). The Examiner further amended the
`
`claims to overcome the 35 U.S.C. § 101 rejections, namely by adding a memory
`
`and hardware processor components. (Id. at 3.)
`
`The Examiner, however, did not consider Li. As discussed below, Li, alone
`
`or in combination, discloses the limitations the applicant has identified as allegedly
`
`novel, and, therefore, renders the challenged claims unpatentable.
`
`VI. OVERVIEW OF THE PRIMARY PRIOR ART REFERENCE
`
`The claimed invention of the ’799 patent – using content addressing in a file
`
`system implemented as a stack including two distinct storage systems – was well-
`
`known as of the June 26, 2009 priority date. Decl. ¶ 58 (Ex. 1002). Each of the
`
`18
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`prior art references relied upon in this petition has an effective filing date earlier
`
`than the earliest priority date of the ’799 patent.
`
`A. Overview of Li
`
`Li was published in 2004. It is therefore prior art to the ’799 patent under 35
`
`U.S.C. § 102(b).
`
`In 2004, Li introduced the Secure Untrusted Data Repository (SUNDR),
`
`which is a network file system designed to store data securely on untrusted servers.
`
`See Li at p. 121, left col. “Figure 1 shows SUNDR’s basic architecture. When
`
`applications access the file system, the client software internally translates their
`
`system calls into a series of fetch and modify operations, where fetch means
`
`retrieving a file’s contents or validating a cached local copy, and modify means
`
`making new file system state visible to other users. Fetch and modify, in turn, are
`
`implemented in terms of SUNDR protocol RPCs to the server.” See Li at p. 122,
`
`left col. An annotated Fig. 1 of Li is reproduced below adjacent to Fig. 4 of the
`
`’799 patent. Both Figures show a top level file system accessing a lower level
`
`object store. Decl. ¶ 60 (Ex. 1002).
`
`19
`
`
`
`U.S. Patent No. 8,478,799
`Petition for Inter Partes Review
`
`Li: Fig. 1 (Ex. 1003)
`
`’799 Patent: Fig. 1 (Ex. 1001)
`
`SUNDR is a content-addressable system. Li discloses accessing the blocks
`
`in a block store