Directory Delegation for Coherent Client-Side File Caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Maintaining cache coherency in client side caching systems is challenging as local cache information can become outdated when file system elements change on the server, leading to inefficiencies and resource utilization issues.

Innovation Solution

Implementing directory delegation in client side caching systems to manage file system elements and receive notifications of updates, allowing for cache updates and preloading to ensure accurate and up-to-date information in the local cache.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If client side caching is used to store state information locally, then network interactions are reduced and performance is improved, but cache coherency becomes difficult to maintain when file system elements change on the server

Engineering Contradiction:
ImproveperformanceVSAvoidcache coherency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system implements a feedback mechanism where the client receives notifications from the server when file system elements change. The directory delegation notification serves as feedback that triggers cache invalidation or updating, ensuring cache coherency is maintained without requiring continuous active polling. This allows the cache to remain reliable while still providing performance benefits through localized storage.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The client proactively requests directory delegation and sets up notification mechanisms in advance before changes occur. By establishing the delegation relationship beforehand, the system ensures that when changes happen, the client is already positioned to receive notifications immediately, maintaining cache coherency without delaying actions or requiring reactive polling.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the client continuously polls the server for updates to maintain cache coherency, then cache accuracy is improved, but network interactions increase and performance decreases

Engineering Contradiction:
Improvecache coherencyVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Instead of continuous polling, the system uses event-driven periodic action where the server sends notifications only when changes occur. This transforms the periodic action from a fixed time-based poll to an event-based trigger, maintaining cache coherency only when necessary while minimizing unnecessary network interactions and preserving performance.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The server automatically generates and sends notifications to the client when file system elements change, eliminating the need for the client to actively poll. This self-service mechanism ensures the client receives updates autonomously, maintaining cache coherency without the performance penalty of continuous client-initiated polling.

Inventive Principle:
Principle #25Self-service

3Reliability

If directory delegation is implemented to receive notifications of updates, then cache coherency is maintained with reduced network interactions, but device complexity increases

Engineering Contradiction:
Improvecache coherencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The directory delegation mechanism acts as an intermediary layer between the client and server. Instead of the client directly managing all cache coherency aspects through complex polling logic, the delegation intermediary handles the notification routing and change detection, simplifying the client's complexity while ensuring reliable cache coherency through structured communication protocols.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12505041B2Using directory delegation for client side cache operations
Publication Date: 2025.12.23 DELL PROD LP
  • US12505041B2 patent drawing
  • US12505041B2 patent drawing
  • US12505041B2 patent drawing

AI summary

Architectures and techniques are described that can leverage directory delegation functions or techniques in order to provide cache coherency. The disclosed techniques can operate for a client side cache that exists in either the user space or domain or the kernel space or domain. A directory delegation request can be transmitted to a file system server that requests a notification relating to updates to a specified file system element (e.g., a file). In response to receiving an associated directory delegation notification, information in the notification can be employed to perform a client side cache update procedure and/or a client side cache preload procedure.