Network Interface Port Mirroring via Completion Queue Events

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional port mirroring techniques in computer networks replicate traffic at the port level, leading to increased manufacturing costs and issues with packet loss or modification, failing to distinguish traffic from different virtual machines and requiring dedicated silicon technology.

Innovation Solution

Implementing network interface port mirroring at the host level, allowing for packet differentiation and mirroring close to the host, without dependency on intermediate devices or dedicated silicon, using completion events to trigger packet re-transmissions to a network analyzer.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If port mirroring is implemented at the port level using conventional techniques, then traffic can be replicated to a network analyzer, but dedicated silicon technology is required which increases manufacturing costs

Engineering Contradiction:
Improvetraffic mirroring capabilityVSAvoidmanufacturing cost
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

The patent uses software-based packet copying in the network interface device's memory instead of dedicated silicon hardware. The completion queue event triggers a software process that replicates packet data from the original transmission buffer to a mirror buffer, eliminating the need for expensive hardware replication circuits while maintaining the traffic mirroring capability

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent replaces the mechanical/hardware-based port-level mirroring system with a software-based implementation. Instead of using dedicated silicon technology and hardware ports for mirroring, the system uses software processes, memory buffers, and completion queue events to achieve the same traffic replication function at lower manufacturing cost

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If port mirroring is implemented at the port level, then traffic replication can be achieved, but packet loss or modification may occur

Engineering Contradiction:
Improvetraffic mirroring capabilityVSAvoidpacket integrity
Core Design Contradiction:
ReliabilityVSManufacturing precision

Solution Approach 1:

The patent triggers the packet mirroring action immediately when the completion queue event is generated, before the original packet transmission is fully completed. This preliminary action ensures that the mirror copy is created from the exact same data buffer that the original transmission uses, guaranteeing packet integrity and preventing any loss or modification that could occur with later copying methods

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a precise software copy of the packet data from the original transmission buffer to a mirror buffer using memory copying operations. This copying method ensures that the mirrored packet is an exact replica of the original, maintaining packet integrity without the loss or modification issues that can occur with hardware-based port-level mirroring

Inventive Principle:
Principle #26Copying

3Reliability

If port mirroring is implemented at the port level, then traffic can be replicated, but traffic from different virtual machines cannot be distinguished

Engineering Contradiction:
Improvetraffic mirroring capabilityVSAvoidtraffic differentiation capability
Core Design Contradiction:
ReliabilityVSMeasurement precision

Solution Approach 1:

The patent applies local quality by associating mirror buffers with specific virtual machine identifiers or communication pairs. Each virtual machine's traffic is mirrored to a dedicated buffer region with unique identifiers, allowing the network analyzer to distinguish and analyze traffic from different virtual machines separately while maintaining the overall traffic mirroring capability

Inventive Principle:
Principle #3Local quality

4Reliability

If conventional port mirroring techniques are used, then traffic replication can be achieved, but intermediate devices or dedicated silicon are required

Engineering Contradiction:
Improvetraffic mirroring capabilityVSAvoidhardware dependency
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements self-service by enabling the network interface device to perform traffic mirroring independently using its own existing resources (memory, completion queue events, and software processes). The device does not require external intermediate devices or dedicated silicon technology, as it uses its own completion queue events to trigger the mirroring process and its own memory buffers to store the mirrored traffic

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent makes the network interface device multi-functional by enabling it to perform both original packet transmission and traffic mirroring using the same hardware resources. The completion queue event mechanism and memory buffers serve dual purposes: managing the original transmission and triggering/ storing the mirrored copy, thereby eliminating the need for separate dedicated hardware components

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

Data Source

PatentUS9019978B2Port mirroring at a network interface device
Publication Date: 2015.04.28 CISCO TECHNOLOGY INC
  • US9019978B2 patent drawing
  • US9019978B2 patent drawing
  • US9019978B2 patent drawing

AI summary

A notification from a source host is received at a network interface device that indicates that a data packet is ready for transmission to a destination host. The data packet may be transmitted to the destination host via the network interface device, and a first completion queue event is generated. The first completion queue event may be used as a trigger to re-transmit the data packet to a port mirroring destination via the network interface device. In another example, a network interface device receives a data packet transmitted from a source host to a destination host. A first completion queue event is generated based on the receipt of the packet, and is used as a trigger to re-transmit the data packet to a port mirroring destination via the network interface device.