NIC Descriptor Engine Upgrade Without Reset

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for upgrading a descriptor engine for a network interface card (NIC) require cooperation from the NIC or its manufacturer, which can be cumbersome and necessitate system resets or power cycles.

Innovation Solution

A method that involves quiescing the transmit stream, stopping the descriptor engine from providing new receive descriptors, creating a copy of existing descriptors in memory, redirecting inbound traffic to memory, logging the configuration and state, updating the descriptor engine, and restoring the transmit configuration and state, allowing for upgrades without NIC cooperation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If existing methods are used to upgrade a descriptor engine for a NIC, then the upgrade process requires cooperation from the NIC or its manufacturer, but this results in system resets or power cycles being necessary

Engineering Contradiction:
Improveupgrade processVSAvoidsystem reset time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent applies preliminary action by quiescing the transmit stream and stopping the descriptor engine from providing new receive descriptors before performing the upgrade. This preparatory step ensures that no new descriptors are generated during the upgrade process, preventing the need for system resets or power cycles. The configuration and state are logged in advance, allowing the upgrade to proceed smoothly without interruption to the overall system operation.

Inventive Principle:
Principle #10Preliminary action

2Ease of manufacture

If the descriptor engine is stopped to perform an upgrade, then the upgrade can be performed, but inbound traffic must be redirected to memory

Engineering Contradiction:
Improveupgrade capabilityVSAvoidtraffic redirection mechanism
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The patent uses memory as an intermediary to redirect inbound traffic when the descriptor engine is stopped for upgrading. Instead of directly routing traffic through the descriptor engine, the system redirects inbound traffic to memory, where it can be temporarily stored. This intermediary approach allows the upgrade to proceed without loss of traffic handling capability, while avoiding the need for complex alternative routing mechanisms.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If receive descriptors are copied to memory during upgrade, then the NIC can maintain operation, but additional memory operations are required

Engineering Contradiction:
ImproveNIC operation continuityVSAvoidupgrade efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies the copying principle by creating a copy of receive descriptors already available to the NIC in memory before the upgrade. This ensures that the NIC continues to have access to valid receive descriptors during the upgrade process, maintaining operational reliability. The copied descriptors serve as a backup that allows the NIC to continue functioning while the descriptor engine is being upgraded, without requiring additional complex mechanisms.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10623255B2Upgrading a descriptor engine for a network interface card
Publication Date: 2020.04.14 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10623255B2 patent drawing
  • US10623255B2 patent drawing
  • US10623255B2 patent drawing

AI summary

A method for updating a descriptor engine for a network interface card (NIT) can include quiescing, by a processing device, a transmit stream to the NIC. The method can further include stopping, by the processing device, a descriptor engine from providing new receive descriptors to the NIC. The method can further include setting, by the processing device, a controller to redirect inbound traffic to the memory. The method can further include restoring, by the processing device, a transmit configuration and a transmit state of the descriptor engine subsequent to updating the descriptor engine.