Cross-Protocol File System Locking via Per-Protocol Inodes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Enforcing locking semantics between different file server protocols can be complex, leading to potential data corruption when systems fail to enforce shared mode requests across protocols like CIFS and NFS.

Innovation Solution

Implementing a cross-locking protocol mechanism with per-protocol inodes and a protocol usage table that allows the file system to determine and manage access requests from different file server protocols, ensuring appropriate locking by associating each file system object with multiple in-memory inodes corresponding to respective file server protocols.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a file system supports multiple file server protocols (CIFS, NFS, etc.), then the adaptability and versatility of the system is improved, but the complexity of enforcing locking semantics across protocols increases and data corruption risks arise

Engineering Contradiction:
Improvemulti-protocol supportVSAvoidlocking semantics enforcement
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the locking mechanism by creating separate per-protocol inodes for different file server protocols (CIFS, NFS, etc.). Each protocol has its own inode structure that tracks locking semantics independently, allowing the system to handle multiple protocols without cross-protocol interference and complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a protocol usage table as an intermediary data structure that mediates between multiple protocols. This table stores and manages the locking state information for each protocol, serving as a central coordination mechanism that simplifies cross-protocol locking enforcement without requiring complex inter-protocol communication.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the file system enforces shared mode requests across different protocols, then data integrity is improved, but the device complexity and operational overhead increase

Engineering Contradiction:
Improvedata integrityVSAvoidcross-protocol locking mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the locking state management for multiple protocols into a unified protocol usage table. This table consolidates the locking information from different protocols into a single data structure, enabling centralized enforcement of data integrity rules without requiring separate complex mechanisms for each protocol.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The per-protocol inode structure is designed to be universal across different file server protocols. Each protocol has its own inode that follows the same structure and locking semantics, allowing the system to handle CIFS, NFS, and other protocols uniformly while maintaining data integrity through consistent locking enforcement.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Measurement precision

If per-protocol inodes are implemented for each file system object, then cross-protocol locking accuracy is improved, but the memory consumption and system resource usage increase

Engineering Contradiction:
Improvelocking state trackingVSAvoidmemory resources
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent implements a nested structure where per-protocol inodes are organized within a hierarchy that includes the protocol usage table. This nesting allows the system to share common data structures and metadata across protocols, reducing redundant memory allocations while maintaining precise locking state tracking for each protocol.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS9507797B2Cross-protocol locking with a file system
Publication Date: 2016.11.29 HEWLETT PACKARD ENTERPRISE DEV LP
  • US9507797B2 patent drawing
  • US9507797B2 patent drawing
  • US9507797B2 patent drawing

AI summary

A file system is to be shared by multiple file servers according to respective different file server protocols, and the file system is to implement cross-protocol locking in access of file system objects of the file system. A file system denies access to a particular file system object from a first file server protocol in response to a data structure referred to by an inode indicating that an access from a second different file server protocol of the particular file system object is present.