SMB Protocol Transport Layer Processing for NAS Write Performance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network file sharing systems face inefficiencies in write performance when writing data to network attached storage devices, particularly due to the need for multiple read operations to process Server Message Block (SMB) protocol messages.

Innovation Solution

The proposed solution involves reading a transport packet header and an SMB header, checking the command field to determine if it indicates a write command, and conditionally reading the SMB data payload only if it does, thereby optimizing the number of read operations and improving write performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple read operations are performed to process SMB protocol messages, then complete protocol processing is achieved, but write performance deteriorates

Engineering Contradiction:
Improveprotocol processing completenessVSAvoidwrite performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies partial action by performing selective read operations only when necessary. Instead of always reading the entire SMB message payload, the system reads only the header portion to examine the command field, and only performs additional reads of the payload when the command indicates data transfer is required. This reduces unnecessary I/O operations while maintaining complete protocol processing when needed.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent implements preliminary action by first reading the SMB header to determine the command type before deciding whether to read the payload. This preliminary examination of the command field allows the system to make an informed decision about subsequent read operations, avoiding unnecessary data reads and improving write performance while ensuring complete processing when required.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the SMB data payload is always read, then complete message processing is ensured, but the number of read operations increases

Engineering Contradiction:
Improvemessage processing completenessVSAvoidnumber of read operations
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs partial reads by only reading the SMB header portion of the message to examine the command field. When the command indicates a write operation, the system then reads the payload. This selective reading approach reduces the total number of read operations and time spent on I/O while ensuring complete message processing is achieved when necessary.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent implements preliminary action by first reading the SMB header to determine the command type before deciding whether to read the payload. This preliminary examination allows the system to make an informed decision about subsequent read operations, reducing unnecessary data reads and time spent on I/O operations while maintaining complete processing when required.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If conditional read operations are implemented, then write performance is improved, but protocol processing complexity increases

Engineering Contradiction:
Improvewrite performanceVSAvoidprotocol processing logic
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements preliminary action by first reading the SMB header to determine the command type before deciding whether to read the payload. This preliminary examination of the command field provides the basis for conditional logic that improves write performance. The conditional processing, while adding some complexity, is justified by the significant performance gains from reducing unnecessary read operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3804244B1Systems and methods for transport layer processing of server message block protocol messages
Publication Date: 2024.06.12 TUXERA
  • EP3804244B1 patent drawingFigure 1
  • EP3804244B1 patent drawingFigure 2
  • EP3804244B1 patent drawingFigure 3

AI summary

This disclosure describes techniques for network file sharing. In one example, this disclosure describes systems and techniques for enabling network file sharing by processing server message block protocol messages. In one example, the systems and techniques for processing server message block protocol messages include transport layer processing of server message block protocol messages.