Consistent Hashing for Cached Device Resource Routing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing mobile wireless communication systems with cloud-native architectures face challenges in efficiently caching state information for devices, leading to increased latency and resource inefficiencies due to inconsistent interface disparities and dynamic scaling issues.
Innovation Solution
Implementing consistent hashing with temporary IDs that include a pool ID and resource ID, allowing devices to be assigned to pools with processing services likely to have cached data, thereby optimizing resource allocation and reducing latency through cache hits.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If state information is cached in processing services, then processing speed and resource utilization improve, but system complexity increases due to interface disparities and dynamic scaling issues
Solution Approach 1:
The patent segments the identifier space into multiple pools, where each pool is assigned to specific processing services. This segmentation allows the system to manage complexity by dividing the caching responsibility across multiple independent pools rather than handling all state information in a single undifferentiated cache system.
Solution Approach 2:
The patent introduces a new dimension to the identifier space by adding pool identifiers to the traditional resource identifiers. This creates a two-dimensional addressing scheme (pool ID + resource ID) that enables efficient routing to cached data while maintaining scalability, as new pools can be added without disrupting existing identifier structures.
2Loss of time
If devices are assigned to specific processing services for caching, then latency is reduced through cache hits, but load balancing becomes difficult due to interface disparities
Solution Approach 1:
The patent implements dynamic pool assignment where processing services can be assigned to different pools based on current system conditions, device types, and cache availability. This dynamic approach allows the system to optimize for both latency (by routing to services with cached data) and load balancing (by distributing devices across multiple pools and services).
Solution Approach 2:
The patent changes the parameter structure of device identifiers by incorporating pool identifiers alongside resource identifiers. This parameter expansion enables flexible routing decisions based on multiple factors including cache status, service load, and device characteristics, thereby achieving both low latency and effective load balancing.
3Adaptability or versatility
If cloud-native architecture is adopted for dynamic scaling, then system adaptability improves, but state information caching efficiency deteriorates due to interface disparities
Solution Approach 1:
The patent creates a universal pool identifier system that works across different cloud-native interfaces and service types. The pool ID structure is designed to be interface-agnostic, allowing the same caching mechanism to function efficiently across diverse microservices, containerized applications, and distributed processing units, thereby maintaining caching efficiency while supporting dynamic scaling.
Solution Approach 2:
The patent introduces pool identifiers as an intermediary layer between the device/request and the specific processing service. This intermediary abstraction decouples the caching mechanism from interface-specific details, allowing efficient state information retrieval while supporting the dynamic and heterogeneous nature of cloud-native architectures.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method for allocating a device-specific resource from one or more databases is provided. The method includes receiving, at an interface, a coupling identifier including a pool identifier and a resource identifier, as part of a processing request from a requesting entity, the processing request including a request for the device-specific resource, wherein the coupling identifier associates the requesting entity with the device-specific resource based on the resource identifier, extracting, at the interface, the pool identifier from the coupling identifier, identifying, by the interface, the processing service in which the device-specific resource associated with the resource identifier is cached, based on the pool identifier, and transmitting, from the interface to the identified processing service, at least a part of the processing request to process the cached requested device-specific resource.