`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`Microsoft contends that the asserted claims of the ’132 Patent are invalid as anticipated by U.S. Patent No. 7,269,612
`(“Devarakonda”) prior art reference under various subsections of 35 U.S.C. § 102 as set forth in Microsoft’s invalidity contentions.
`
`As Devarakonda was filed on May 31, 2002, and published by the U.S. Patent and Trademark Office by no later than December 4,
`2003, Microsoft contends that it is prior art to the ’132 Patent under at least pre-AIA 35 U.S.C. § 102(e).
`
`Patent No. 8,671,132
`Claim 1
`1[Pre] A policy-based
`data management system
`comprising:
`
`Devarakonda
`
`To the extent the preamble is limiting, Devarakonda discloses a policy-based data management system.
`Specifically, Devarakonda discloses a policy based storage manager. For example, Devarakonda
`states:
`
`“The described implementations provide techniques for implementing a policy based management
`framework for associating data with storage resources.” Devarakonda at 2:25-27.
`
`“Provided are a method and data structures for generating data structures for use in storing data. A
`plurality of data structures are defined in a computer readable medium, wherein each data structure
`indicates a plurality of attributes and at least one function of a storage resource to store data. Policies
`are defined in the computer readable medium that associate data characteristics to data structures based
`on a correspondence of data characteristics and the attributes defined in the data structures, wherein
`each defined data structure is adapted to provide requirements to determine a storage resource to store
`associated data, and wherein the defined data structure is adapted to provide the storage resource with
`requirements for storing the data.” Devarakonda at 1:60-2:5.
`
`“Described implementations concern a comprehensive management platform for an environment that
`includes a variety of mission critical applications, large numbers of servers running different operating
`systems, storage systems with differing capabilities, and many network elements that interconnect
`servers with storage systems. Storage management deals with many levels or layers of the system: i.e.
`disk (storage) level, data level, and application level. Storage management is also multi-faceted: e.g.
`performance, recoverability, capacity planning, security, and installation aspects and handles transient
`as well as persistent aspects: e.g. I/O requests (transient) and data (persistent). The described
`implementations may present and utilize the following concepts: multi-level, inter-related policies,
`based on the layers of the storage environment, and mechanisms to establish these relationships; a
`
`1
`
`IPR2021-00831
`
`Daedalus EX2008
`Page 1 of 45
`
`
`
`Patent No. 8,671,132
`Claim 1
`
`1[a] a policy set
`comprising at least one
`service class rule;
`
`EXHIBIT C-2
`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`
`Devarakonda
`
`container concept that allows defining an arbitrary set of storage, management, and/or service classes
`as per the needs of a management solution and/or installation; a tighter integration between resource
`manager and policy manager, allowing for a dynamic behavior; a connector concept to provide a
`standard characterization of managed elements and to provide a semantic mapping from the standard
`characterization to the actual. The described implementations allow the integration of business
`objectives, specifying resource usage, availability, recoverability priorities; system model, specifying
`what changes should be noticed and how; metrics specifying what and how to measure the system, and
`when to raise “alarms”; and service contract, specifying the monitorable interactions with other
`components (e.g. application) of the information infrastructure.” Devarakonda at 3:3-33.
`Devarakonda discloses a policy set comprising at least one service class rule. Specifically,
`Devarakonda discloses a set of business enterprise policies at the storage, data, and application levels.
`The policy set including application and data policies. For example, Devarakonda states:
`
`“The above described policies 16, 18, and 20 are designed for the management of storage (and data
`residing on the storage) and are intended to satisfy business objectives. These policies 16, 18, 20 may
`be explicitly stated, or implied by/derived from other policies that reflect business practices and
`guidelines (i.e. business policies). Thus, the application 16, data 18, and storage policies 20 may be
`derived from the business policies. Examples of business policies include: financial transaction data
`must be kept for a certain period of time, employees must be paid at a certain day and time each
`month, up-to-the-minute copies of all financial records are to be stored in an off-site vault, etc.”
`Devarakonda at 5:23-34.
`
`“The first business policy implies a data policy that any data file containing financial transactions must
`have a minimum retention characteristic of a number of years from the last update. The second
`business policy implies an application policy determining when the payroll application must be run.
`The third business policy implies a data policy for the remote copying of specific data.” Devarakonda
`at 5:35-41.
`
`Devarakonda at Fig. 1:
`
`
`
`2
`
`IPR2021-00831
`
`Daedalus EX2008
`Page 2 of 45
`
`
`
`Patent No. 8,671,132
`Claim 1
`
`EXHIBIT C-2
`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`
`Devarakonda
`
`
`Devarakonda at Fig. 5:
`
`
`
`
`
`3
`
`IPR2021-00831
`
`Daedalus EX2008
`Page 3 of 45
`
`
`
`Patent No. 8,671,132
`Claim 1
`
`EXHIBIT C-2
`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`
`Devarakonda
`
`
`1[b] a file evaluation
`module configured to
`apply the service class rule
`to assign a service class to
`a file;
`
`
`Devarakonda discloses a file evaluation module configured to apply the service class rule to assign a
`service class to a file. Specifically, Devarakonda discloses software programs to apply rules to assign
`an application class and a data class to a file. For example, Devarakonda states:
`
`“FIG. 3 is a detailed view of the policy based storage management framework. FIG. 3 containers are
`
`
`
`4
`
`IPR2021-00831
`
`Daedalus EX2008
`Page 4 of 45
`
`
`
`Patent No. 8,671,132
`Claim 1
`
`EXHIBIT C-2
`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`
`Devarakonda
`
`abstract constructs and, in certain implementations, may be implemented as object oriented classes
`having certain associated properties and functions. Elements added to a container may inherit functions
`and properties provided by the container. Thus, making an element a member of a container makes the
`functions and properties included in that container available to that element. A container is a collection
`of logical attributes and associated functions. For example, a storage container may comprise a
`collection of logical storage attributes and management functions. Several physical storage elements
`may be used to support a storage container abstraction and hence the logical attributes of the container
`represent the physical attributes of the elements in an individualized as well as in an aggregate form.
`The attributes may refer to such aspects as reliability, performance, availability, and installability
`aspects of the elements. A specific container definition consists of a subset of the logical attributes. All
`elements supporting the container definition offer homogeneous attribute values. In embodiments
`where containers are implemented as an object oriented class, a container can be defined using a class
`definition in object oriented programming. The number of distinct container classes depends on the
`number of logical attributes at a given level.” Devarakonda at 5:64-6:22.
`
`“Application policies 16 may be used to control the manner in which a particular task accesses or
`consumes computational resources, or to prioritize that task relative to others. Application policies 16
`concern an application's requirements on the data that it generates or uses—and, indirectly, the storage
`on which that data resides. For instance, an application may have specific requirements for the speed
`and format of data access, or for recoverability of the data in the event of an outage. The speed of
`access may be a consequence of needing to achieve a certain transaction rate, and may potentially vary
`during application execution. Hence, different applications may require different access rates when
`accessing the same file, or may require different types of I/O (e.g. read vs. write, sequential vs.
`random). Additionally, synchronizing the backup of modified files may vary across applications; this is
`particularly significant if different applications have diverse synchronization requirements and have a
`file in common.
`
`To implement the application policies 16, application attributes 10 c are associated with the file when
`an application is accessing that file. The application attributes 10 c may include initial access delay,
`sustained access rate, I/O rate, I/O bandwidth, read/write ratio, sequential/direct access, aggregate
`backup/recovery criteria (e.g. outage time, currency). Application attributes 10 c may be collected into
`
`
`
`5
`
`IPR2021-00831
`
`Daedalus EX2008
`Page 5 of 45
`
`
`
`Patent No. 8,671,132
`Claim 1
`
`EXHIBIT C-2
`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`
`Devarakonda
`
`named sets of service classes. The association of such a set with an application's use of a file is one
`instance of an application policy 16. For instance, the service criteria may be used to determine
`whether data can be moved up and down the storage hierarchy.
`
`Data policies 18 are concerned with the data itself rather than any particular application's use of the
`data. These include criteria for the management of the data's life cycle, recoverability, and security. As
`with application policies, data policies may be based on data attributes 10 b. Data attributes 10 b
`include life cycle attributes and recoverability attributes. Life cycle attributes specify the length of time
`the data needs to be kept and the number of versions of the data that must be maintained. Life cycle
`policies prescribe what actions should (or must) be taken when the time period has elapsed or the
`number of versions is exceeded. Recoverability attributes indicate the number (and potentially the
`geographic location) of backup copies of the data, and the cyclic nature of the backups. Recoverability
`attributes are used to trigger a backup action, delete older backup copies, or restore data from a backup
`copy. Data attributes 10 b also include security attributes that define logical and physical security
`policies. Logical security is concerned with access lists (i.e. ‘who’ can access the data) and
`authorization levels (i.e. and do ‘what’ with it). Security attributes allow or deny access based on the
`requester's authorizations. Physical security relates to the placement of data on physically secure
`devices (e.g. in a locked room).” Devarakonda at 4:18-5:3.
`
`“FIGS. 6 a and 6 b illustrate operations performed by the policy managers 264, 284, and 304 in
`accordance with implementations of the invention to assign a storage resource 204 a, 204 b . . . 204 n
`to a data file. Control begins at block 400 upon the application policy manager 264 receiving a request
`to create or access a data file from an application server 202 a . . . 202 n system. The application policy
`manager 264 performs steps 400 through 408. If (at block 402) the data file does not have associated
`metadata indicating application 258 a, 258 b . . . 258 n, data 278 a, 278 b . . . 278 n, and storage 298 a,
`298 b . . . 298 n containers for the data file, then the application policy manager 264 determines (at
`block 404) the data characteristics, such as file name, time file generated, source application, user, data
`management requirements, business policies, etc., that may map to application 252, data 272, and
`storage 292 attributes From the application policies 256 (FIG. 5), the application policy manager 264
`determines (at block 406) the application attributes that correspond to the determined data
`characteristics gleaned form the data file. One application container 258 a, 258 b . . . 258 n is selected
`
`
`
`6
`
`IPR2021-00831
`
`Daedalus EX2008
`Page 6 of 45
`
`
`
`Patent No. 8,671,132
`Claim 1
`
`1[c] a file usage module
`configured to conduct
`operations on the file in a
`manner directed by the
`service class; and
`
`EXHIBIT C-2
`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`
`Devarakonda
`
`(at block 408) having application attributes 260 a, 260 b . . . 260 n that correspond to the application
`attributes determined from the data file characteristics.
`After selecting an application container 258 a, 258 b . . . 258 n, control proceeds to the data level 270
`(FIG. 5) where the data policy manager 284 determines (at block 410), from the data policies 276 the
`data attributes corresponding to the determined data characteristics. The data policy manager 284 then
`selects (at block 412) a data container 278 a, 278 b . . . 278 n that the data policies 276 define to be
`associated with the selected application container 258 a, 258 b . . . 258 n and any additional determined
`data characteristics that map to data attributes (additional data attributes may or may not be considered
`in selecting one data container 278 a, 278 b . . . 278 n that satisfies the requirements of the application
`attributes 260 a, 260 b . . . 260 n defined for the selected application container 258 a, 258 b . . . 258
`n).” Devarakonda at 14:6-50.
`Devarakonda discloses a file usage module configured to conduct operations on the file in a manner
`directed by the service class. Specifically, Devarakonda discloses software programs to conduct
`operations on the file based on the application and data containers assigned to the file. For example,
`Devarakonda states:
`
`“Each policy level 2, 4, and 6 allows policies to be defined for that level. Policies at any given level are
`defined in terms of attributes 10 a, 10 b, 10 c and management functions 12 a, 12 b, 12 c. Attributes 10
`a, 10 b, 10 c represent properties and characteristics of the managed environment (e.g. capacity of a
`disk, throughput rates needed for an application, most recent modification time on a file). They are
`further distinguished as intrinsic (static) and dynamic (time-varying). Intrinsic attributes do not change
`with time and hence they can be referenced but not reset. Dynamic attributes can be referenced and can
`be reset. Management functions 12 a, 12 b, 12 c are the basic mechanisms that perform the
`administration of the environment (e.g. creating a logical disk, mounting a file system, quiescing an
`application). Management functions 12 a, 12 b, 12 c may be invoked as the action part of a policy
`execution. Both policies 10 a, 10 b, 10 c and management functions 12 a, 12 b, 12 c may use intrinsic
`attributes and may reset dynamic attributes. In certain implementations, each higher-level policy can
`influence the next lower level policies through the attributes and management functions. Attributes at a
`higher level can be used in the next lower level policies, and management functions at a higher level
`may activate policies at the next lower level.” Devarakonda at 3:57-4:12.
`
`
`
`
`7
`
`IPR2021-00831
`
`Daedalus EX2008
`Page 7 of 45
`
`
`
`Patent No. 8,671,132
`Claim 1
`
`1[d] a communication
`module operable to
`communicate between the
`file evaluation module and
`a plurality of remote
`clients and configured to
`communicate with clients
`comprising at least two
`different computing
`platforms.
`
`EXHIBIT C-2
`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`
`Devarakonda
`
`“The policies 256, 276, and 296 also define for each of the application 258 a, 258 b . . . 258 n, 278 a,
`278 b . . . 278 n, and storage 298 a, 298 b . . . 298 n containers a set of management functions 262 a,
`262 b . . . 262 n, 282 a, 282 b . . . 282 n, 302 a, 302 b . . . 302 n that is a subset of the management
`functions 254, 274, and 294 available for the different levels. As each container defines a set of
`attributes, the management functions defined for that container define the functions that may be called
`to implement a storage environment and operations that will satisfy the attributes/requirements defined
`for that container. For instance, if one data container 258 a, 258 b . . . 258 n defines data attributes 260
`a, 260 b . . . 260 n that specify the archival of files after a certain period of time, then the management
`functions 262 a, 262 b . . . 262 n defined for that container would comprise the program calls to
`perform the archival of files as specified by the attributes for that container.” Devarakonda at 10:66-
`11:15.
`Devarakonda discloses a communication module operable to communicate between the file evaluation
`module and a plurality of remote clients and configured to communicate with clients comprising at
`least two different computing platforms. Specifically, Devarakonda discloses software programs
`communicating with application servers (clients) on different computing platforms. For example,
`Devarakonda states:
`
`“A plurality of application servers 202 a . . . 202 n may transmit data to network storage resources 204
`a, 204 b . . . 204 n over a network 206. Storage servers 208 a . . . 208 n include policy based storage
`manager programs 210 a . . . 210 n to route the data files, created by application server 202 a . . . . 202
`n applications (such as database applications or any other data processing application known in the art)
`to network storage resources 204 a, 204 b . . . 204 n based on the characteristics of the data files. FIG.
`4 shows that storage resources, such as 204 n, may be directly attached to a storage server 208 a. The
`application servers 202 a . . . 202 n may comprise any computational device known in the art (e.g., a
`workstation, personal computer, mainframe, server, laptop, hand held computer, telephony device,
`network appliance, etc.).” Devarakonda at 8:33-47.
`
`“An administrator using the GUI tool of the policy based storage manager 210 a . . . 210 n (FIG. 4) can
`configure the schema shown in FIG. 5, or a particular level of the schema, or the schema can be
`preconfigured. The schema may be executed by the policy based storage manager 210 a . . . 210 n
`when deciding how to route data files received from client applications to storage resources 204 a, 204
`
`
`
`8
`
`IPR2021-00831
`
`Daedalus EX2008
`Page 8 of 45
`
`
`
`Patent No. 8,671,132
`Claim 1
`
`EXHIBIT C-2
`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`
`Devarakonda
`
`b . . . 204 n. The schema shown in FIG. 5 may be implemented in a database system, in data structures
`and functions defined in an object oriented programming system, in an Extensible Markup Language
`(XML), etc. For instance, each container may be defined as an XML element and the attributes and
`management functions defined for the container may comprise XML attributes of the container
`element. Further the schema shown in FIG. 5 may be implemented within the Distributed Management
`Task Force (DMTF) Common Information Model (CIM), which uses a uniform object oriented
`modeling formalism that allows for an object-oriented schema across multiple organizations.”
`Devarakonda at 13:54-14:5.
`
`“Further, application vendors may develop and distribute application policies 256 and application
`policy managers 264 for their applications to map application attributes to specific application
`containers that then may be used at another level to provide further mapping. Middleware vendors that
`develop middleware on which the applications run may develop and distribute data policies 276 and
`data policy managers 284 to map application attributes and containers as well as other data
`characteristics to data containers 278 a, 278 b . . . 278 n, which are then passed to the storage system
`policy managers 304. In this way, different vendors and parties may separately provide the
`components at each level that will be used to categorize and define the data to eventually select a
`storage resource that satisfies the attributes/requirements specified by each component that uses the
`data, from the application, to middleware to the storage. Middleware comprises the program
`component that interfaces between the operating system and the application, and may be used to allow
`an application to run on different operating systems by providing an interface between the application
`and operating system. Alternatively, the data level may be defined by the application or some other
`non-middleware component.” Devarakonda at 13:1-23.
`
`Devarakonda at Fig. 4:
`
`
`
`
`9
`
`IPR2021-00831
`
`Daedalus EX2008
`Page 9 of 45
`
`
`
`Patent No. 8,671,132
`Claim 1
`
`EXHIBIT C-2
`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`
`Devarakonda
`
`
`
`
`
`
`Patent No. 8,671,132
`Claim 2
`The policy-based data
`management system of
`claim 1, wherein the file
`evaluation module is
`
`Devarakonda
`
`Devarakonda discloses that the file evaluation module is further configured to automatically assign the
`file to a storage pool. Specifically, Devarakonda discloses a software program configured to
`automatically assign the file to a storage resource and a storage container. For example, Devarakonda
`states:
`
`10
`
`
`
`
`
`IPR2021-00831
`
`Daedalus EX2008
`Page 10 of 45
`
`
`
`Patent No. 8,671,132
`Claim 2
`further configured to
`automatically assign the
`file to a storage pool.
`
`EXHIBIT C-2
`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`
`Devarakonda
`
`“The storage resources 204 a, 204 b . . . 204 n may comprise any storage device, storage system or
`storage subsystem known in the art that directly connects to the network 206 or is attached to another
`device, such as the case with storage resource 204 n attached to storage server 208 a. The storage
`resources 204 a, 204 b . . . 204 n may comprise a Just a Bunch of Disks (JBOD), Redundant Array of
`Independent Disk (RAID), Network Attached Storage (NAS), a virtualization device, tape library,
`optical disk library, etc. The network 206 may comprise any network system known in the art, such as
`a Local Area Network (LAN), Storage Area Network (SAN), Intranet, Wide Area Network (WAN),
`the Internet, etc. The storage servers 208 a . . . 208 n may comprise any device capable of managing
`application access to a storage resource, such as any server class machine, a storage controller,
`enterprise server, etc.” Devarakonda at 8:47-63.
`
`“FIG. 5 illustrates an alternative policy based manager schema to the schema shown in FIG. 3, that
`may be implemented in the policy based storage manager 210 a . . . 210 n (FIG. 4) to assign data files
`to storage resources 204 a, 204 b . . . 204 n. The schema of FIG. 5 is defined as having three levels, an
`application level 250, data level 270, and storage level 290. The application level 250 specifies
`business objectives and goals to relate to the storage resource management. Service level agreement
`objects may be specified at the application level 250, such as the quality or quantity of the overall
`service. The data level 270 represents the application requirements of the data and how the application
`will utilize the data. The storage level 290 represents the capabilities of the storage environment for
`storing, retrieving, and managing the data. An application server 202 a . . . 202 n (FIG. 4) generated
`data file may be defined at these different levels in order to allocate specific storage resources to the
`data file.” Devarakonda at 9:14-31.
`
`“Each level also may also include management functions 254, 274 and 294. The management
`functions 254, 274, and 294 define program mechanisms through which storage administration
`operations are performed. These are programs that run to properly allocate storage or route data to the
`physical storage resource 204 a, 204 b . . . 204 n that will store the data. The management functions
`254, 274, and 294 can be implemented in the software or hardware of storage resources 204 a, 204 b . .
`. 204 n, and or by other elements coupled to the storage resources. The storage attributes may define
`such aspects as the number of storage devices, the RAID level, the use of backup or “snapshot”
`programs, garbage collection, cache management, etc. Also included are the management function
`
`
`
`11
`
`IPR2021-00831
`
`Daedalus EX2008
`Page 11 of 45
`
`
`
`EXHIBIT C-2
`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`
`Devarakonda
`
`which comprise programs that manage movement of the data through a storage hierarchy, maintain
`backup copies of the data, and recover the data in the event of data loss or damage.” Devarakonda at
`10:13-29.
`
`“Likewise, the storage system policy manager 304 associates the data container 278 a, 278 b . . . 278 n,
`selected at the previous level, and any data characteristics with one storage container 298 a, 298 b . . .
`298 n. After the storage container 298 a, 298 b . . . 298 n is determined for a data file, the storage
`system policy manager 304 then associates the selected storage container 298 a, 298 b . . . 298 n to one
`of the storage resources 204 a, 204 b . . . 204 n, where each storage resource 204 a, 204 b . . . 204 n
`comprises a combination of storage hardware and software to implement a storage space capable of
`satisfying the logical storage 300 a, 300 b . . . 300 n attributes and management functions 302 a, 302 b .
`. . 302 n defined in the storage container 298 a, 298 b . . . 298 n.” Devarakonda at 11:46-58.
`
`Devarakonda
`
`Devarakonda discloses that the file evaluation module is configured to assign the storage pool to the
`file based on the service class. Specifically, Devarakonda discloses software program that is
`configured to assign the storage resource or storage container based on the application and data
`containers. For example, Devarakonda states:
`
`“Likewise, the storage system policy manager 304 associates the data container 278 a, 278 b . . . 278 n,
`selected at the previous level, and any data characteristics with one storage container 298 a, 298 b . . .
`298 n. After the storage container 298 a, 298 b . . . 298 n is determined for a data file, the storage
`system policy manager 304 then associates the selected storage container 298 a, 298 b . . . 298 n to one
`of the storage resources 204 a, 204 b . . . 204 n, where each storage resource 204 a, 204 b . . . 204 n
`comprises a combination of storage hardware and software to implement a storage space capable of
`satisfying the logical storage 300 a, 300 b . . . 300 n attributes and management functions 302 a, 302 b .
`. . 302 n defined in the storage container 298 a, 298 b . . . 298 n.” Devarakonda at 11:46-58.
`
`
`12
`
`Patent No. 8,671,132
`Claim 2
`
`Patent No. 8,671,132
`Claim 3
`The policy-based data
`management system of
`claim 1, wherein the file
`evaluation module is
`configured to assign the
`storage pool to the file
`based on the service class.
`
`
`
`
`
`IPR2021-00831
`
`Daedalus EX2008
`Page 12 of 45
`
`
`
`Patent No. 8,671,132
`Claim 3
`
`EXHIBIT C-2
`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`
`Devarakonda
`
`“In this way the policy managers 264, 284, and 304 at each level map the attributes/requirements at a
`given level into a predetermined container format readable by the next level. For instance, the data
`policy manager 284 associates capabilities defined by the application attributes 260 a, 260 b . . . 260 n
`specified for the application containers 258 a, 258 b . . . 258 n with data containers 278 a, 278 b . . .
`278 n that provide management functions 282 a, 282 b . . . 282 n capable of implementing the
`requirements specified by the application attributes 260 a, 260 b . . . 260 n in the associated application
`container 258 a, 258 b . . . 258 n and the data attributes 280 a, 280 b . . . 280 n defined for the data
`container 278 a, 278 b . . . 278 n. Likewise, the storage policy manager 304 associates capabilities
`defined by the data attributes 280 a, 280 b . . . 280 n specified for the data containers 278 a, 278 b . . .
`278 n with storage containers 298 a, 298 b . . . 298 n that provide management functions 302 a, 302 b .
`. . 302 n capable of implementing the requirements specified by the data attributes 280 a, 280 b . . . 280
`n in the associated data container 278 a, 278 b . . . 278 n and any storage attributes 300 a, 300 b . . .
`300 n defined for the storage container 298 a, 298 b . . . 298 n. The policy managers 264, 284, and 304
`in addition to considering the container attributes from a previous level when mapping to the container
`at the current level may or may not also consider any other characteristics of the data file, and/or the
`attributes at the current level associated with the determined characteristics, to associate containers
`with the containers or resources at the current level.” Devarakonda at 11:59-12:21.
`
`Patent No. 8,671,132
`Claim 4
`4[Pre] The policy-based
`data management system
`of claim 2, wherein the
`policy set further
`comprises at least one
`storage pool rule,
`
`Devarakonda
`
`Devarakonda discloses that the policy set further comprises at least one storage pool rule. Specifically,
`Devarakonda discloses that the policy set further comprises rules to assign a storage container and a
`storage resource to a file. For example, Devarakonda states:
`
`“After the storage container 298 a, 298 b . . . 298 n is determined for a data file, the storage system
`policy manager 304 then associates the selected storage container 298 a, 298 b . . . 298 n to one of the
`storage resources 204 a, 204 b . . . 204 n, where each storage resource 204 a, 204 b . . . 204 n
`comprises a combination of storage hardware and software to implement a storage space capable of
`satisfying the logical storage 300 a, 300 b . . . 300 n attributes and management functions 302 a, 302 b .
`. . 302 n defined in the storage container 298 a, 298 b . . . 298 n..” Devarakonda at 11:49-58.
`
`13
`
`
`
`
`
`IPR2021-00831
`
`Daedalus EX2008
`Page 13 of 45
`
`
`
`Patent No. 8,671,132
`Claim 4
`
`EXHIBIT C-2
`U.S. Patent No. 7,269,612 (“Devarakonda”)
`
`
`Devarakonda
`
`“This GUI tool would also allow the system administrator to define the application policies 256 to
`associate application containers and certain data characteristics (that may map to data attributes) with
`storage containers; to define the data policies 284 to associate data containers and certain data
`characteristics (that may map to storage attributes) with storage containers; and the storage policies
`304 to associate storage containers 298 a, 298 b . . . 298 n and certain data characteristics with storage
`resources 204 a, 204 b . . . 204 n based on the attributes the storage vendors provide for the storage
`resources. Alternatively, the storage system policy manager 304 may comprise a program that
`automatically selects a storage resource 204 a, 204 b . . . 204 n having storage vendor defined
`characteristics/attributes that are capable of satisfying the storage attributes 300 a, 300 b . . . 300 n
`defined for the storage container 298 a, 298 b . . . 298 n. The storage system policy manager 296 may
`map each storage container 298 a, 298 b . . . 298 n to one or more storage resources 204 a, 204 b . . .
`204 n if the storage vendor defined attributes for multiple storage resources 204 a, 204 b . . . 204 n are
`capable of satisfying the storage attributes 300 a, 300 b . . . 300 n for the storage containers 298 a, 298
`b . . . 298 n and any further considered data characteristics.” Devarakonda at 13:31-53.
`
`“The storage vendor of each storage resource 204 a, 204 b . . . 204 n would specify storage attributes
`306 a, 306 b . . . 306 n, respectively, that define the capabilities of the storage resource 204 a, 204 b . . .
`204 n they are providing. The storage system policy manager 304 maps the storage containers 298 a,
`298 b . . . 298 n to storage resources 204 a, 204 b . . . 204 n whose vendor defined storage attributes
`306 a, 306 b . . . 306 n are capable of satisfying the logical storage attributes 300 a, 300 b . . . 300 n
`required by the storage containers 298 a, 298 b . . . 298 n. In this way, the storage vendors specify
`logical storage attributes 306 a, 306 b . . . 306 n applicable to their storage resource 204 a, 204 b . . .
`204 n, which may comprise storage attributes defined according to industry wide standards, such as the
`storage attributes 292. The storage system policy manager 304 would query the storage attributes 306
`a, 306 b . . . 306 n defined by the storage vendor to