Network File System Filter Driver for Cache Coherency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network file systems do not facilitate cache coherency requests from components outside the network file system, limiting the ability of clients to cache data from servers and requiring costly modifications or forgoing caching altogether.

Innovation Solution

A server-side filter component intercepts and decodes requests for server functionality, including cache coherency mechanisms, allowing clients to access server-executed services and manage cache coherency independently of the network file system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If local caching is implemented to reduce access times, then data access speed is improved, but system complexity increases due to cache coherency management requirements

Engineering Contradiction:
Improvedata access speedVSAvoidcache coherency management complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent introduces a filter driver as an intermediary component between the file system and the storage device. This filter driver intercepts and manages caching operations, acting as a mediator that handles cache coherency protocols without requiring modifications to the existing file system or storage device. The filter driver translates high-level file operations into appropriate cache management actions, resolving the contradiction by adding complexity only where needed while preserving simplicity elsewhere in the system.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the caching functionality into a separate filter driver module that operates independently from the main file system. This segmentation allows the cache coherency management to be handled by a dedicated component with specialized logic, while the rest of the file system remains unchanged. The filter driver can be inserted or removed without affecting other system components, thus reducing overall system complexity while maintaining fast data access capabilities.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If network file system components are modified to permit cache coherency requests, then caching capability is improved, but modification costs and system risk increase

Engineering Contradiction:
Improvecaching capabilityVSAvoidmodification cost
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent implements the caching functionality as a nested filter driver that operates within the existing file system architecture. The filter driver is positioned between the file system and the storage device, nesting the caching logic within the existing operational framework. This nested structure allows the system to gain enhanced caching capabilities without requiring modifications to the core file system or storage device, thereby avoiding high modification costs and reducing system risk.

Inventive Principle:
Principle #7Nested doll (Nesting)

Solution Approach 2:

The patent creates a virtual copy of the storage interface through the filter driver, which implements caching logic without modifying the original storage device or file system. The filter driver maintains a cached copy of data in memory and intercepts read/write operations, presenting a virtualized storage interface to the file system. This copying approach enables improved caching capability while keeping the original system components unchanged, thus avoiding modification costs and reducing risk.

Inventive Principle:
Principle #26Copying

3Ease of operation

If remote data storage is used to reduce local hardware needs, then data accessibility is improved, but system latency increases

Engineering Contradiction:
Improvedata accessibilityVSAvoidsystem latency
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-loading data into the cache buffer before it is actually needed by the file system. The filter driver anticipates storage operations and performs caching actions in advance, such as pre-reading data that is likely to be accessed soon. This preliminary caching action reduces the time required for actual data access operations, thereby reducing system latency while maintaining the accessibility benefits of remote storage.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent ensures continuity of useful action by maintaining an active cache buffer that continuously holds frequently accessed data. The filter driver keeps the cache populated and ready, ensuring that data access operations can continue without interruption or delay. This continuous caching mechanism bridges the latency gap between remote storage and local access, maintaining both accessibility and fast response times.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS11720529B2Methods and systems for data storage
Publication Date: 2023.08.08 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11720529B2 patent drawing
  • US11720529B2 patent drawing
  • US11720529B2 patent drawing

AI summary

Disclosed are systems and methods for requesting operations at a remote server utilizing a network file system. A client may encapsulate a request for a cache coherency mechanism as an encapsulated message and provide the encapsulated message to a network file system executing on the client. The network file system may be configured to prevent the request for server functionality from being transmitted to the remote server. The client may also cause, via the network file system, the encapsulated message to be transmitted to the remote server.