NIC Packet Timing Control Using PTP Feedback and Fill Packets

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Typical Network Interface Controllers (NICs) lack precise control over packet transmission times due to operating system scheduling limitations and input/output bus jitter, limiting their ability to manage transmit times to only a few milliseconds.

Innovation Solution

The method involves a computer network host establishing an expected transmit time for packets and adjusting it based on actual transmission times, using Precision Time Protocol (PTP) timestamping and enqueuing additional packets to ensure precise timing, allowing for more control over packet transmit times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If typical NICs are used for packet transmission, then device complexity is reduced and ease of operation is improved, but transmission timing precision deteriorates to only a few milliseconds

Engineering Contradiction:
Improvetransmission timing precisionVSAvoidNIC control mechanism complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary timing control mechanism that sits between the operating system and the NIC. This intermediary layer uses PTP timestamping and queuing mechanisms to bridge the gap between coarse OS scheduling and fine-grained transmission timing requirements, achieving microsecond-level precision without requiring complete redesign of the NIC hardware

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs preliminary actions by pre-queuing packets with calculated timing information before they reach the NIC. The host calculates expected transmit times in advance and prepares packets for transmission at precisely scheduled moments, allowing the NIC to simply execute pre-planned transmission sequences without real-time decision-making complexity

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If OS scheduling and I/O bus jitter are present, then ease of operation is maintained, but transmission timing control precision deteriorates

Engineering Contradiction:
Improvetransmit time control precisionVSAvoidoperating system scheduling simplicity
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The patent implements feedback mechanisms where the system continuously monitors actual transmission times and compares them against expected times. This feedback loop allows the system to detect and compensate for timing deviations caused by OS scheduling and I/O bus jitter, maintaining precision without requiring complex real-time OS modifications

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The timing control function is segmented into separate components: the OS handles high-level scheduling, while a dedicated timing control layer handles microsecond-level precision requirements. This segmentation allows each layer to operate independently at its optimal complexity level, with the timing control layer compensating for OS scheduling variations

Inventive Principle:
Principle #1Segmentation

3Measurement precision

If packets are enqueued with precise timing control, then transmission timing precision is improved, but device complexity and processing overhead increase

Engineering Contradiction:
Improvepacket transmit time precisionVSAvoidhost and NIC coordination complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system enables self-service by allowing the timing control mechanism to autonomously manage packet queuing and transmission timing without requiring constant host intervention. Once packets are enqueued with timing information, the NIC and timing control layer handle the precise transmission automatically, reducing ongoing coordination complexity

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12052332B2Computer network packet transmission timing
Publication Date: 2024.07.30 CISCO TECHNOLOGY INC
  • US12052332B2 patent drawing
  • US12052332B2 patent drawing
  • US12052332B2 patent drawing

AI summary

Establishing an expected transmit time at which a network interface controller (NIC) is expected to transmit a next packet. Enqueuing, with the NIC and before the expected transmit time, a packet P1 to be transmitted at the expected transmit time. Upon enqueuing P1, incrementing the expected transmit time by an expected transmit duration of P1. Transmitting at the NIC's line rate and timestamping enqueued P1 with its actual transmit time. Adjusting the expected transmit time by a difference between P1's actual transmit and P1's expected transmit time. Requesting, before completion of transmitting P1, to transmit a P2 at time t(P2). Enqueuing, in sequence, zero or more P0, such that the current expected transmit time plus the duration of the transmission of the P0s at the line rate equals t(P2). Transmitting at the line rate each enqueued P0. Upon enqueuing each P0, incrementing, for each P0, the expected transmit time by the expected transmit duration of the P0. Enqueuing P2 for transmission directly following enqueuing the final P0. Transmitting, by the NIC, enqueued P2 at t(P2).