Independent DMA Channel Reset for Network Traffic Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern network interface controller devices with multiple DMA channels lack the ability to independently reset or restart a single DMA channel without impacting other channels, leading to system-wide reboots in case of hardware, driver, or application crashes.

Innovation Solution

A method and system for independently managing network applications by monitoring DMA channels, allowing a specific DMA channel to be disabled and restarted without affecting other channels, enabling graceful recovery and continued operation of other applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If DMA channels share common resources to reduce device complexity, then device complexity is reduced, but the ability to independently reset individual channels is lost

Engineering Contradiction:
ImproveDMA channel structureVSAvoidIndependent channel reset capability
Core Design Contradiction:
Device complexityVSEase of operation

Solution Approach 1:

The patent divides the DMA subsystem into multiple independent channel segments, each with its own control registers and state machines. This segmentation allows individual channels to be reset independently while sharing common resources like the bus interface and memory controller, thus resolving the contradiction between device complexity and independent operation capability.

Inventive Principle:
Principle #1Segmentation

2Reliability

If a single DMA channel is reset to recover from crashes, then reliability of that channel is improved, but all other DMA channels must be reset causing system-wide disruption

Engineering Contradiction:
ImproveDMA channel recoveryVSAvoidSystem availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

By segmenting the DMA controller into independently controllable channels with separate reset logic, the system can isolate and reset only the failed channel while keeping other channels operational. This maintains system productivity during recovery operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary error detection and isolation mechanisms that prevent a single channel failure from propagating to other channels. Watchdog timers and error flags are configured to detect and contain failures at the individual channel level, preventing system-wide resets.

Inventive Principle:
Principle #9Preliminary anti-action

3Ease of operation

If DMA channels are fully isolated to enable independent reset, then ease of operation is improved, but device complexity increases

Engineering Contradiction:
ImproveIndependent channel managementVSAvoidDMA channel architecture
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent applies local quality by providing each DMA channel with its own control registers and state machines for independent management, while sharing common resources like the bus interface and memory controller. This selective isolation achieves independent channel control without duplicating all components, thus managing device complexity.

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP3001322B1Network devices with multiple fully isolated and independently resetable direct memory access channels and methods thereof
Publication Date: 2018.08.08 F5 NETWORKS INC
  • EP3001322B1 patent drawingFigure 1A
  • EP3001322B1 patent drawingFigure 1B
  • EP3001322B1 patent drawingFigure 2

AI summary

A method, computer readable medium, and system independently managing network applications within a network traffic management device communicating with networked clients and servers include monitoring with a network device a plurality of applications communicating over a plurality of direct memory access (DMA) channels established across a bus. In a coherent restart, the interface controller of a network device receives 404 a request, for example by enabling a bit located in DMA packet buffers, from a first application communicating over a first DMA channel in the plurality of DMA channels to restart the first DMA channel. In response to the request, the first DMA channel is disabled 406 with the network device while allowing other executing applications in the plurality of applications to continue 408 to communicate over other DMA channels in the plurality of DMA channels. A state of the first DMA channel is cleared 413 independently from other DMA channels in the plurality of DMA channels, and communications for the first application over the first DMA channel are resumed 414, 416 with the network device. Alternatively, a non-coherent restart is based on the detection of a software crash or a malfunction of an application associated with DMA channels, or any other unexpected event involving the operation of one or more independently resettable DMA channels. In this case, a reboot of the malfunctioning software or application can be a possible solution.