DCT
1:20-cv-00272
VMware Inc v. Cirba Inc
I. Executive Summary and Procedural Information
- Parties & Counsel:- Plaintiff: VMware, Inc. (Delaware)
- Defendant: Cirba Inc. (d/b/a Densify) (Canada)
- Plaintiff’s Counsel: Morrison & Foerster LLP
 
- Case Identification: 1:20-cv-00272, E.D. Va., 10/21/2019
- Venue Allegations: Venue is alleged to be proper in the Eastern District of Virginia because Defendant conducts business in the district, has offered for sale and sold infringing products there, and its Chief Marketing Officer lives and works in the district.
- Core Dispute: Plaintiff alleges that Defendant’s Densify.com SaaS service, a platform for managing and optimizing virtualized and cloud computing environments, infringes four patents related to resource allocation, scheduling, and management in such environments.
- Technical Context: The technology concerns the automated management of computing resources (CPU, memory, etc.) in complex data centers and cloud infrastructures, a critical function for ensuring performance and efficiency in modern IT operations.
- Key Procedural History: The complaint alleges that the United States Patent and Trademark Office cited a VMware patent application, which later issued as the ’995 patent, during the prosecution of a Cirba patent application, suggesting the possibility of pre-suit awareness of the technology.
Case Timeline
| Date | Event | 
|---|---|
| 2011-05-25 | ’842 Patent Priority Date | 
| 2012-07-02 | ’638 Patent Priority Date | 
| 2012-09-11 | ’995 Patent Priority Date | 
| 2015-06-25 | ’945 Patent Priority Date | 
| 2016-06-28 | ’995 Patent Issue Date | 
| 2017-02-09 | USPTO cites VMware application (related to ’995 Patent) during prosecution of a Cirba application | 
| 2017-09-19 | ’945 Patent Issue Date | 
| 2018-07-17 | ’638 Patent Issue Date | 
| 2019-04-16 | ’842 Patent Issue Date | 
| 2019-10-21 | Complaint Filing Date | 
II. Technology and Patent(s)-in-Suit Analysis
U.S. Patent No. 9,379,995 - “Resource allocation diagnosis on distributed computer systems based on resource hierarchy,” Issued June 28, 2016
The Invention Explained
- Problem Addressed: The patent describes the difficulty of managing resources in distributed computer systems (like virtualized data centers) using conventional, manual adjustments of "low-level controls" such as shares, limits, and reservations, which can introduce "operational overhead" and "unexpectedly impact" other users (’995 Patent, col. 1:35-45).
- The Patented Solution: The invention proposes a method to diagnose and recommend resource allocations by obtaining a "snapshot" of the system's current state and a "target resource allocation." It then "iteratively travers[es] a resource hierarchy" (e.g., from individual virtual machines up to clusters) to generate recommendations for configuration changes or capacity expansions to meet the target (’995 Patent, Abstract; col. 6:50-55). This automates the complex task of adjusting low-level controls.
- Technical Importance: This approach provided a systematic, automated way to optimize resource distribution in increasingly complex virtual environments, moving beyond manual, error-prone adjustments (’995 Patent, col. 1:35-45).
Key Claims at a Glance
- Asserted Independent Claims: Claim 1 (method), Claim 9 (non-transitory computer-readable medium).
- Essential Elements of Claim 1:- Obtaining a target resource allocation and a snapshot of the distributed computer system, the snapshot including configurations and resource usage information.
- Generating a resource allocation recommendation based on the target and snapshot by iteratively traversing a resource hierarchy.
- The recommendation specifies at least one resource configuration action or capacity expansion action to meet the target.
- Executing the resource allocation recommendation.
 
U.S. Patent No. 9,766,945 - “Virtual resource scheduling for containers with migration,” Issued September 19, 2017
The Invention Explained
- Problem Addressed: The patent addresses the complexity and potential resource wastage introduced by running "containers hosted on virtual machines" (’945 Patent, col. 1:18-35). Optimizing resource allocation in such a multi-layered environment (container-on-VM-on-host) is a significant technical challenge.
- The Patented Solution: The invention claims a method for scheduling resources by looking at the consumption of containers to determine the correct resource allocation for the host VMs. It involves determining resource availability on hosts, identifying opportunities for consolidation, calculating a target configuration for VMs, adding or removing resources to meet that target, and then allocating both VMs to hosts and containers to VMs based on the analysis (’945 Patent, col. 4:7-11; Abstract).
- Technical Importance: This technology provided a method to optimize infrastructure from the "top down" (starting with container needs) rather than the "bottom up" (starting with host capacity), aiming to reduce wasted physical resources in data centers running containerized applications (’945 Patent, col. 2:12-13).
Key Claims at a Glance
- Asserted Independent Claims: Claim 1 (method), Claim 8 (non-transitory computer readable storage medium), Claim 15 (system).
- Essential Elements of Claim 1:- Determining resource availability for hosts, resource allocation for VMs, and resource usage for containers.
- Identifying hosts on which VMs and containers can be consolidated.
- Calculating a target resource configuration for one or more VMs.
- Removing or adding resources to each VM to achieve the target configuration.
- Allocating the VMs to the hosts based on host resource availability.
- Allocating containers to the VMs based on the VM resource configuration and container resource usage.
 
Multi-Patent Capsule: U.S. Patent No. 10,025,638 - “Multiple-cloud-computing-facility aggregation,” Issued July 17, 2018
- Technology Synopsis: The patent addresses the challenge of managing computational services that are geographically dispersed across multiple, distinct cloud environments (e.g., private and public clouds) (’638 Patent, col. 1:65-2:3). The solution involves a "cloud-connector server" and "cloud-connector nodes" that cooperate to provide unified management, control, and transfer of workloads (e.g., virtual machines) across these different clouds (’638 Patent, Abstract).
- Asserted Claims: Independent Claims 10 (method) and 19 (data-storage device).
- Accused Features: The complaint alleges that each customer's Densify.com SaaS instance acts as a "cloud-connector server" that manages multiple distinct cloud computing environments (e.g., AWS, VMware) by deploying a "Densify Connector" (the alleged "cloud-connector node") within each environment (Compl. ¶¶62-63, 66).
Multi-Patent Capsule: U.S. Patent No. 10,261,842 - “System and method for managing a virtualized computing environment,” Issued April 16, 2019
- Technology Synopsis: The patent describes a predictive approach to resource management, aiming to solve problems with conventional "reactive" techniques that only make changes after performance issues arise (’842 Patent, col. 1:47-56). The invention receives a recommended change (e.g., migrating a VM), determines its impact on both current and future workload, calculates a combined impact, and only performs the change if the combined impact is above a certain threshold (’842 Patent, Abstract).
- Asserted Claims: Independent Claims 1 (method) and 12 (non-transitory computer-readable storage medium).
- Accused Features: The complaint alleges that Densify’s service uses predictive analytics to evaluate the current and future impact of its recommendations, such as through its "Control Console" and "Timeline Slider" features which simulate and forecast the effect of proposed changes (Compl. ¶¶80, 84-85).
III. The Accused Instrumentality
- Product Identification: The Densify.com SaaS service, including its "Real-Time Automation," "Proactive Automation," and "Control Console" features, and the associated "Densify Connector" software (Compl. ¶16, ¶38, ¶62).
- Functionality and Market Context: The complaint describes the accused service as a platform that analyzes utilization statistics from a customer's virtual and cloud environments to generate and implement recommendations for resource allocation (Compl. ¶16). It connects to customer environments like VMware vCenter and Amazon Web Services (AWS) via its "Densify Connector" to obtain operational data and system snapshots (Compl. ¶20-21). Based on user-defined policies (e.g., target CPU utilization), the service recommends and can automatically execute actions like resizing VMs, rebalancing workloads, and placing new workloads (Compl. ¶17, ¶23). A screenshot of the Densify dashboard shows its ability to provide recommendations for right-sizing CPU and memory for AWS instances (Compl. p. 12). The complaint positions the accused service as a direct competitor that interfaces with and provides capabilities for VMware's own customer environments (Compl. ¶11).
IV. Analysis of Infringement Allegations
’995 Patent Infringement Allegations
| Claim Element (from Independent Claim 1) | Alleged Infringing Functionality | Complaint Citation | Patent Citation | 
|---|---|---|---|
| obtaining a target resource allocation and a snapshot of the distributed computer system, wherein the snapshot includes configurations and resource usage information... | Densify customers define "policies" that set target resource allocations (e.g., target CPU utilization). The service then obtains resource utilization statistics ("a system snapshot") from the customer's environment via the Densify Connector. | ¶17-21 | col. 6:50-52 | 
| generating a resource allocation recommendation based on the target resource allocation and the snapshot by iteratively traversing a resource hierarchy... | The service performs analyses to identify optimization opportunities based on the policies and operational data. The complaint alleges the service "necessarily considers clusters, hosts, and virtual machines" and "prioritizes for resource allocation," which it equates with iteratively traversing a resource hierarchy. | ¶22, ¶25 | col. 6:52-55 | 
| wherein the resource allocation recommendation specifies at least one resource configuration action or at least one capacity expansion action... | The service generates recommendations such as "correctly sizing VMs," "rebalancing workloads," and provides "Bump-Up Recommendations" for adjusting CPU and memory capacity. A screenshot shows a "Bump-Up Recommendations" report with proposed changes to memory and CPU allocation (Compl. p. 11). | ¶23-24 | col. 6:55-60 | 
| executing the resource allocation recommendation on the distributed computer system. | The service's "Proactive Automation" and "Real-Time Automation" features apply the recommendations by sending instructions to the customer's environment (e.g., VMware vCenter) via PowerShell scripts and API calls, or by using Terraform templates for cloud environments. A diagram illustrates how the "Terraform Forwarder" applies recommendations to an AWS environment (Compl. p. 15). | ¶26-27 | col. 6:60-62 | 
- Identified Points of Contention:- Scope Questions: A central question may be whether the accused service's analysis, which considers different system levels (VMs, hosts, clusters), constitutes "iteratively traversing a resource hierarchy" as that term is used in the patent. The complaint’s support for this element appears inferential (Compl. ¶25).
- Technical Questions: The defense may question what evidence exists that the accused service performs a structured, iterative traversal from one hierarchical level to another, as opposed to a more holistic analysis that considers various factors simultaneously.
 
’945 Patent Infringement Allegations
| Claim Element (from Independent Claim 1) | Alleged Infringing Functionality | Complaint Citation | Patent Citation | 
|---|---|---|---|
| determining a resource availability for one or more hosts, a resource allocation for one or more virtual machines (VMs), and a resource usage for one or more containers | The service determines VM and host resource utilization via the Densify Connector and also determines container resource utilization to optimize the nodes on which containers run. | ¶39, ¶41 | col. 5:1-5 | 
| identifying the one or more hosts on which VMs and containers can be consolidated based on the resource availability | The service identifies hosts for VM placement to "balance" workloads and identifies host placements for containers to "reduce the number of required hosts." A slide titled "Key outcomes" from a Densify presentation shows a bullet point for "container analysis" to transform workloads onto new hosting models (Compl. p. 22). | ¶43-46 | col. 5:6-9 | 
| calculating a target resource configuration for one or more VMs | The service calculates recommendations for right-sizing VMs based on user-defined policies (e.g., target CPU and memory utilization percentages). | ¶47-49 | col. 5:10-11 | 
| removing or adding resources to each of the one or more VMs for which a target resource configuration was calculated... | The service transmits instructions to remove or add resources to VMs via its "Densify Connectors," using features like "Hot Add" functionality in VMware environments to adjust CPU and memory. | ¶50 | col. 5:12-16 | 
| allocating the one or more VMs on the one or more hosts based on the resource availability of the one or more hosts | The service uses "Proactive automation" and VMware's vMotion capabilities to place and rebalance VMs on hosts to maintain "optimal efficiency." | ¶51 | col. 5:17-20 | 
| allocating the one or more containers to be executed in the one or more VMs based on the resource configuration of each VM and the resource usage of each container. | The service's "workload sizing and stacking capabilities" determine optimal request values for containers and allocate them to VMs, optimizing for workload density within the broader context of the virtual machine's resources. | ¶52-53 | col. 5:21-25 | 
- Identified Points of Contention:- Scope Questions: A point of contention may be whether the accused service's analysis and recommendations meet the specific, multi-step sequence of claim 1, particularly the distinct steps of calculating VM configurations, allocating VMs to hosts, and then allocating containers to VMs.
- Technical Questions: The analysis may focus on whether the accused service's container optimization is primarily focused on the container level (e.g., setting container requests/limits) or if it performs the claimed method of first reconfiguring the host VM and then allocating the container based on that new VM configuration.
 
V. Key Claim Terms for Construction
’995 Patent
- The Term: "iteratively traversing a resource hierarchy" (Claim 1)
- Context and Importance: This term is the core of the "generating" step and appears to be the primary technical novelty over simple, non-hierarchical analysis. The infringement allegation for this element relies on inference (Compl. ¶25), suggesting its definition will be a key point of dispute. Practitioners may focus on whether this requires a specific, ordered, step-by-step traversal (e.g., analyze all VMs, then all hosts, then all clusters) or if it can cover a more flexible analysis that considers relationships between hierarchical levels.
- Intrinsic Evidence for Interpretation:- Evidence for a Broader Interpretation: The specification is not highly specific on the traversal method, stating the algorithm "iteratively traverses a resource hierarchy in the distributed computer system" to generate a recommendation (’995 Patent, col. 6:52-55). This lack of a prescribed algorithm could support a broader reading covering any analysis that accounts for hierarchical relationships.
- Evidence for a Narrower Interpretation: The detailed description of the algorithm in the patent's pseudo-code shows a process that starts at a specific node (a VM) and then iterates through its parents in the hierarchy ("for Each parent in RP hierarchy do CurNode = CurNode.parent") (’995 Patent, col. 12, lines 23-24). This could support a narrower construction requiring a specific bottom-up traversal. Figure 4 also explicitly depicts a multi-layered hierarchy with a "root," "1st layer," "2nd layer," and "3rd layer," reinforcing the structured nature of the hierarchy (’995 Patent, Fig. 4).
 
’945 Patent
- The Term: "consolidated" (Claim 1)
- Context and Importance: The step of "identifying the one or more hosts on which VMs and containers can be consolidated" is a predicate for the subsequent calculation and allocation steps. The meaning of "consolidated" will be critical. Practitioners may focus on whether "consolidation" requires actually moving workloads to fewer physical hosts to increase density, or if it can more broadly mean any form of optimization or rebalancing.
- Intrinsic Evidence for Interpretation:- Evidence for a Broader Interpretation: The term is used generally in the claim. The specification discusses optimizing hardware resources and achieving "better consolidation" through "Ideal placement of host VMs in a server farm" (’945 Patent, col. 4:7-11), which does not strictly require reducing the number of active hosts.
- Evidence for a Narrower Interpretation: The background section discusses the problem of resource wastage and states that embodiments "reduce wastage of underlying physical resources in a datacenter" (’945 Patent, col. 2:12-13). This purpose suggests "consolidation" implies increasing density to free up physical resources, a narrower definition than mere rebalancing.
 
VI. Other Allegations
- Indirect Infringement: The complaint alleges induced infringement for all four patents. The allegations are based on Defendant’s technical and marketing materials, including user manuals, videos, and datasheets, which allegedly instruct and encourage customers to use the Densify.com SaaS service in a manner that practices the claimed methods (Compl. ¶30-31, ¶56, ¶73, ¶91).
- Willful Infringement: Willfulness is not explicitly pleaded with pre-suit knowledge allegations. For each patent, the complaint alleges knowledge "at least since VMware filed this Complaint," framing the potential for post-filing willful infringement (Compl. ¶29, ¶55, ¶72, ¶90).
VII. Analyst’s Conclusion: Key Questions for the Case
- A core issue will be one of algorithmic equivalence: does the accused service’s proprietary optimization analysis, which considers policies and utilization data across different system levels, perform the specific, structured process of "iteratively traversing a resource hierarchy" as claimed by the ’995 patent? The case may depend on whether VMware can prove the accused software follows this specific procedural path, versus merely achieving a similar outcome through a different analytical method.
- A second key question will concern the sequence of operations for container management: does the accused service practice the distinct, ordered steps of first calculating and applying a target resource configuration for a virtual machine, and only then allocating containers to that reconfigured VM, as required by the ’945 patent? The dispute may focus on whether the accused service's container and VM optimization is a single, integrated process rather than the sequential method claimed.
- A third central question will be one of definitional scope across multiple patents: can the patent terms "cloud-connector server" and "cloud-connector node" (’638 Patent) be construed to read on the accused Densify.com SaaS instance and its deployed "Densify Connector"? Similarly, can the accused service's "Timeline Slider" forecasting feature (’842 Patent) be shown to perform the claimed method of calculating a "combined impact on current and future workload" and acting based on a threshold?