Shared Multi-Port Storage for Concurrent Cloud Game Loading
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cloud gaming services face inefficiencies in storage resource utilization due to processor saturation, leading to underutilization of local storage devices, even when they have available bandwidth and capacity.
Innovation Solution
Implementing a shared local storage device accessible via multiple ports, allowing concurrent access and utilization by multiple hosted devices, with a data manager to control access and concurrency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If each hosted device has dedicated local storage, then access speed and reliability are improved, but storage resource utilization efficiency deteriorates
Solution Approach 1:
The patent merges the storage resources of multiple hosted devices into a single shared storage device. Multiple hosted devices (first hosted device, second hosted device, etc.) connect to the same storage device through different ports, allowing them to share storage capacity while maintaining individual access paths. This resolves the contradiction by improving utilization efficiency through sharing while preserving reliability through dedicated access ports.
Solution Approach 2:
The storage device is designed with multi-functionality to serve multiple hosted devices simultaneously. It provides universal access capability through multiple ports, enabling any connected hosted device to read/write data regardless of which port initiated the request. This multi-functional design improves resource utilization while maintaining reliable access for all devices.
2Productivity
If a single shared storage device is used by multiple hosted devices, then storage resource utilization efficiency is improved, but concurrent access control complexity increases
Solution Approach 1:
The patent segments the storage access control into device-specific namespaces. Each hosted device has its own namespace (first namespace, second namespace, etc.) that isolates its data from other devices. The storage device controller manages these segmented namespaces, allowing concurrent access control without complex coordination between devices. This segmentation reduces control complexity while maintaining efficient shared resource utilization.
Solution Approach 2:
The storage device controller acts as an intermediary between multiple hosted devices and the shared storage. It mediates concurrent access requests by managing namespaces and coordinating data access, eliminating the need for complex peer-to-peer coordination. This intermediary approach simplifies control complexity while enabling efficient multi-device utilization.
3Reliability
If storage devices are dedicated to each hosted device, then data isolation and security are improved, but system cost increases
Solution Approach 1:
The patent combines multiple dedicated storage devices into a single shared storage device while maintaining data isolation through namespaces. Instead of allocating separate physical storage to each hosted device, the system merges storage resources and uses software-based namespaces to provide logical isolation. This reduces the quantity of storage hardware needed (lowering cost) while maintaining data isolation and security through the namespace mechanism.
Solution Approach 2:
The patent creates virtual copies of storage spaces through namespaces. Each hosted device gets a virtual view of the shared storage as its own dedicated space, copying the isolation characteristics of dedicated storage without requiring physical duplication. This allows data isolation and security at lower system cost by using software-based virtualization rather than physical redundancy.
Data Source
AI summary
A content provider system includes: a repository to store a catalog of content; a storage device including at least a first port and a second port; a first hosted device connected to the first port over a first storage interface for access to the storage device, and to execute content stored in the storage device to provide the content to a first user device; a second hosted device connected to the second port over a second storage interface for access to the storage device, and to execute the content stored in the storage device to provide the content to a second user device; and one or more processing circuits to control access to the storage device from the first and second ports by the first and second hosted devices.


