Smart NIC Rate Limiting via ECN Offload

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Explicit Congestion Notification (ECN) implementations are CPU-intensive and inflexible, particularly in virtual machine environments, as they require end-to-end compatibility and host ecosystem involvement, which is challenging for low-latency applications and does not effectively offload ECN processing to network adapter devices.

Innovation Solution

The solution involves offloading ECN processing to 'smart' network interface cards (NICs), which can handle congestion notifications and rate adjustments independently, eliminating the need for host software ecosystem involvement by using weighted random early detection (WRED) profiles and Differentiated Services fields to manage congestion without packet drops, thereby reducing network latency and improving bandwidth utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If ECN is implemented in the host ecosystem, then congestion notification can be provided, but CPU intensity increases and latency increases due to retransmission delay

Engineering Contradiction:
Improvecongestion notificationVSAvoidlatency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts ECN processing from the host ecosystem and relocates it to the network adapter device. The network adapter independently handles congestion detection, notification, and rate limiting without requiring host involvement, thereby eliminating the CPU-intensive processing and retransmission delay that occur in traditional host-based implementations.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The network adapter device acts as an intermediary between the host and the network. It receives packets from the host, detects congestion conditions, manages rate limiting, and sends notifications to the host only when necessary. This intermediary role allows congestion management to occur at the network level without burdening the host CPU.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If ECN is implemented in the host ecosystem, then congestion can be managed, but device complexity increases and flexibility is reduced

Engineering Contradiction:
Improvecongestion managementVSAvoidhost ecosystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts ECN functionality from the complex host ecosystem and implements it directly in the network adapter device. This eliminates the need for complex host software support, driver modifications, and coordination between multiple host components, while maintaining effective congestion management capabilities.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The network adapter device performs self-service by independently detecting congestion conditions, managing its own rate limiting, and generating notifications without requiring host intervention. This self-contained approach simplifies the overall system architecture by removing the complexity of host-based ECN implementation.

Inventive Principle:
Principle #25Self-service

3Reliability

If traditional ECN implementation is used, then congestion notification is provided, but productivity decreases due to CPU-intensive processing

Engineering Contradiction:
Improvecongestion notificationVSAvoidCPU processing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the productivity-consuming ECN processing tasks from the host CPU and relocates them to the network adapter device. The network adapter handles packet inspection, congestion detection, and rate limiting locally, eliminating the need for continuous CPU intervention and significantly improving host processing efficiency.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent replaces the mechanical CPU-based processing system with a hardware-accelerated network adapter system. By implementing ECN functionality in the network adapter's dedicated circuitry and memory, the system substitutes high-speed hardware processing for slower software-based CPU processing, thereby improving overall productivity.

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

Data Source

PatentUS11336581B2Automatic rate limiting based on explicit network congestion notification in smart network interface card
Publication Date: 2022.05.17 CISCO TECHNOLOGY INC
  • US11336581B2 patent drawing
  • US11336581B2 patent drawing
  • US11336581B2 patent drawing

AI summary

A method is provided by which a network adapter device receives a packet sent over a network from a peer, the packet including an enqueue timestamp indicating when the packet has been enqueued at the network adapter device. The network adapter device parses a header of the packet to detect whether the header includes bits indicating that the peer device is experiencing congestion, and obtains packet metadata of the packet and the enqueue timestamp of the packet. The network adapter device compares the packet metadata with information in a flow table to identify an entry in the flow table corresponding to a flow to which the packet metadata matches. The network adapter device sets a timer associated with the flow, the timer for use in scheduling transmission of a next packet provided by the host to be sent to the peer.