Programmable Network Switch In-Line Data Operations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data storage systems, high-performance networking can lead to bottlenecks in data requests due to in-line operations performed by storage controllers or servers, especially with the emergence of high-speed networking technologies like Software Defined Networking (SDN).

Innovation Solution

Implementing a programmable network switch that performs in-line operations such as load-balancing, Quality of Service (QoS), and failure handling while data is in transit, reducing the need for additional storage controllers and minimizing network traffic by routing commands directly between clients and Data Storage Devices (DSDs) without intermediate storage controllers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If in-line operations are performed by storage controllers or servers, then data storage operations can be executed, but network bandwidth is consumed and performance bottlenecks occur

Engineering Contradiction:
Improvedata storage operation throughputVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent extracts in-line operations from storage controllers and servers and relocates them to network switches. This moves the processing function from the storage path to the network path, allowing operations like load balancing, QoS, and failure handling to be performed without consuming storage network bandwidth, thereby resolving the bottleneck issue.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The network switch acts as an intermediary device between clients and storage devices. It performs in-line operations on data packets while they are in transit through the network, without requiring the data to be processed by storage controllers or servers. This mediator approach enables operations to be performed without impacting storage network performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If additional storage controllers are deployed to handle in-line operations, then operation capability is improved, but system cost increases

Engineering Contradiction:
Improvein-line operation capabilityVSAvoidnumber of storage controllers
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent makes network switches multi-functional by enabling them to perform in-line operations traditionally handled by storage controllers. The network switch simultaneously performs its standard routing function and additional operations like load balancing, QoS, and failure handling, eliminating the need for separate storage controller infrastructure and reducing system complexity.

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

3Ease of operation

If data requests are processed through intermediate storage controllers, then data operations can be performed, but latency increases

Engineering Contradiction:
Improvedata request processingVSAvoidrequest latency
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent removes intermediate storage controllers from the data request path and relocates processing functions to network switches. This extraction shortens the request path from client to storage device, eliminating the latency introduced by intermediate controllers while maintaining full operational capability through the network switch's in-line processing.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11297010B2In-line data operations for storage systems
Publication Date: 2022.04.05 WESTERN DIGITAL TECHNOLOGIES INC
  • US11297010B2 patent drawing
  • US11297010B2 patent drawing
  • US11297010B2 patent drawing

AI summary

A programmable network switch includes at least one pipeline including a packet parser configured to parse packets received by the programmable network switch. The programmable network switch further includes a plurality of ports for communication with a plurality of Data Storage Devices (DSDs). Packets comprising commands are received by the programmable network switch to perform at least one of retrieving data from and storing data in the plurality of DSDs. The commands are sent by the programmable network switch to the plurality of DSDs via the plurality of ports, and the use of each port for sending the commands is monitored. According to one aspect, it is determined which port to use to send a command based on the monitored use of at least one port of the plurality of ports.