Compute Storage Co-location for Cloud Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In cloud computing environments, the independent management of compute and storage resources leads to performance overhead due to network traffic and inefficient resource scheduling, as virtual machines and their allocated block storage often end up on separate hosts, with storage I/O operations being encapsulated in protocols and not optimized for direct exposure to virtual machines.

Innovation Solution

A method where the compute and storage components communicate to co-locate resources on the same host, allowing the compute component to send inquiry requests to the storage component for host information and jointly decide on resource placement, enabling direct attachment of storage to virtual machines via the hypervisor, reducing network traffic and optimizing resource allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If compute and storage resources are managed independently with separate scheduling components, then resource flexibility and scalability are improved, but resource allocation efficiency deteriorates as virtual machines and storage volumes often end up on separate hosts

Engineering Contradiction:
Improveresource flexibilityVSAvoidresource allocation efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent merges the scheduling decisions of compute and storage resources by enabling the compute component to query storage component availability and making joint placement decisions. This combination allows virtual machines and their required storage volumes to be co-located on the same host, improving resource allocation efficiency while preserving the flexibility of independent management architectures.

Inventive Principle:
Principle #5Merging (Combining)

2Adaptability or versatility

If storage resources are exported via network protocol to remote virtual machines, then resource distribution and accessibility are improved, but performance deteriorates due to network encapsulation overhead

Engineering Contradiction:
Improvestorage accessibilityVSAvoidstorage I/O performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by making storage resources available directly on the compute host before virtual machine deployment. The compute component queries storage availability in advance and places virtual machines on hosts where storage is already locally available, eliminating the need for subsequent network-based storage access and avoiding performance penalties from network encapsulation.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If block storage volumes are allocated independently of virtual machine placement, then storage management simplicity is improved, but performance deteriorates as storage I/O operations require network encapsulation

Engineering Contradiction:
Improvestorage management simplicityVSAvoidstorage I/O throughput
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent implements feedback by having the compute component query the storage component about volume availability and host location. This feedback mechanism enables the system to make informed joint placement decisions that optimize performance while maintaining automated management. The storage component provides information about where volumes are allocated, allowing compute to place virtual machines accordingly without complex manual configuration.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10972403B2Storage fast path
Publication Date: 2021.04.06 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • US10972403B2 patent drawing
  • US10972403B2 patent drawing
  • US10972403B2 patent drawing

AI summary

Method for controlling first and second resources in a system including first and second components managing the first and second resources, respectively and at least one host hosting the second resource in a cloud environment, one of the first and second components comprises a compute component and the other comprises a storage component, one of the first and second resources is a compute resource and the other is a storage resource, the method comprising: causing the first component to send an inquiry request including an inquiry relating to the second resource, to the second component; causing the second component to send an inquiry response including information on the at least one host, to the first component; causing the co-location of the first and second resources on a single host that is either the at least one host or a further host hosting the first resource, based on the inquiry response.