Network Interface Device Bypass Packet Count Maintenance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing networking devices using Software-Defined Networking (SDN) standards face challenges in accurately determining the correct packet count values for match table entries when packets are processed entirely by the Network Interface Device (NID) without passing through the host, leading to incorrect system entry packet counts.

Innovation Solution

The implementation of a novel method to maintain bypass packet counts on the NID and calculate the system entry packet count on-demand by summing entry packet counts from the host and bypass packet counts, ensuring accurate counting even when packets bypass the host processor.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If packets are processed entirely by the NID without passing through the host, then host processing load is reduced and productivity is improved, but the accuracy of system entry packet count values deteriorates because the host cannot directly increment counters for bypassed packets

Engineering Contradiction:
Improvepacket processing throughputVSAvoidsystem entry packet count accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent introduces an intermediary mechanism where the NID maintains bypass packet counts locally and acts as a mediator to provide accurate system entry packet count values to the host upon request. This allows the host to obtain precise counting information without needing to process every packet itself, thus resolving the contradiction between reduced host processing load and accurate packet counting.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The NID performs preliminary action by maintaining bypass packet counts in advance before the host requests system entry packet counts. This preliminary counting action enables the host to receive accurate aggregate counts without having processed the packets itself, thereby maintaining measurement precision while improving productivity.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If the host maintains all match table entries and packet count counters, then measurement precision of packet counts is improved, but device complexity and host processing burden increase

Engineering Contradiction:
Improvepacket count accuracyVSAvoidhost processing complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the packet counting function into two segments: the host maintains match table entries and requests packet count information, while the NID maintains bypass packet counts and provides them upon request. This segmentation reduces host processing complexity while maintaining measurement precision through coordinated counting between host and NID.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The NID performs self-service by autonomously maintaining bypass packet counts and responding to host requests for system entry packet counts. This self-service capability reduces the burden on the host to track every packet individually, thereby reducing device complexity while preserving accurate packet counting through the NID's local counting mechanisms.

Inventive Principle:
Principle #25Self-service

3Measurement precision

If the NID maintains bypass packet counts, then system entry packet count accuracy is improved, but memory usage and device complexity on the NID increase

Engineering Contradiction:
Improvesystem entry packet count accuracyVSAvoidmemory resources on NID
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent applies local quality by having the NID maintain bypass packet counts only for the specific bypass paths it handles, rather than maintaining all possible packet count information. This localized approach ensures system entry packet count accuracy for bypassed packets while minimizing the additional memory resources required on the NID.

Inventive Principle:
Principle #3Local quality

4Productivity

If on-demand system entry packet count calculation is implemented, then host processing load is reduced and productivity is improved, but response time for count requests may increase

Engineering Contradiction:
Improvehost processing efficiencyVSAvoidpacket count request response time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The NID performs preliminary action by maintaining bypass packet counts continuously in advance, so when the host requests system entry packet counts, the NID can immediately provide accurate counts without requiring time-consuming calculations or host reprocessing. This preliminary maintenance of counts reduces response time while keeping host processing load low.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9755910B1Maintaining bypass packet count values
Publication Date: 2017.09.05 NETRONOME SYSTEMS INC
  • US9755910B1 patent drawing
  • US9755910B1 patent drawing
  • US9755910B1 patent drawing

AI summary

A networking device includes a Network Interface Device (NID) and a host. Packets are received onto the networking device via the NID. Some of the packets pass along paths from the NID to the host, whereas others do not pass to the host and are processed by the NID. A bypass packet count for each path that passes from the NID to the host is maintained on the NID. It is determined, using a match table, that one of the packets received on the NID is to be sent to the host. The packet, however, is instead sent along a bypass path without going through the host (as it should have according to the host's match tables). The path that the packet would have traversed had the packet not been sent along the bypass path is determined and the bypass packet count associated with the determined path is incremented.