Ethernet Data Stream Recording via User-Space Polling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High-speed data acquisition systems face challenges with low CPU utilization, poor system compatibility, and complex deployment and packaging due to high data bandwidth requirements, particularly with traditional Ethernet-based systems that suffer from high packet loss and system load issues.

Innovation Solution

The method involves isolating CPU cores, uninstalling kernel network card drivers, creating hugepage memory pools, and initializing 10-gigabit network cards using the sysfs file system to enable user-space polling and disk recording, utilizing worker threads for efficient packet reception and processing, and leveraging NVMe SSDs for improved write performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional PCAP library is used for packet capturing, then system compatibility is maintained, but packet loss rate increases and system load becomes high when bandwidth exceeds 1 Gbps

Engineering Contradiction:
Improvepacket loss rateVSAvoidbandwidth handling capability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the packet capturing function from the traditional kernel-based PCAP library and implements it in user space through a custom driver. This separation allows the system to handle high bandwidth without being constrained by kernel interrupt processing limitations, thereby reducing packet loss while maintaining compatibility.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent replaces the traditional mechanical interrupt-driven packet capturing mechanism with a polling-based user-space implementation. This substitution eliminates the bottleneck of kernel interrupt handling and enables continuous high-speed data capture with minimal packet loss.

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

2Power

If dedicated data acquisition network card with hardware acceleration is used, then CPU load is significantly reduced and high-bandwidth data recording is achieved, but cost increases

Engineering Contradiction:
ImproveCPU loadVSAvoidcost
Core Design Contradiction:
PowerVSEase of manufacture

Solution Approach 1:

The patent implements self-service by enabling the general-purpose network card to perform high-speed packet capturing through user-space polling without requiring dedicated hardware acceleration. The system leverages the existing network card capabilities combined with optimized software implementation, eliminating the need for expensive dedicated hardware while achieving similar performance benefits.

Inventive Principle:
Principle #25Self-service

3Productivity

If PF_RING framework is used for high-speed network packet processing, then packet capture rate is significantly increased, but OS compatibility requirements increase and deployment complexity increases due to special driver module installation

Engineering Contradiction:
Improvepacket capture rateVSAvoiddeployment complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts the complex driver module installation requirement from the PF_RING framework and implements a simplified user-space solution. By moving packet processing to user space through polling, the system achieves high packet capture rates without requiring special kernel driver modules, thereby reducing deployment complexity while maintaining compatibility.

Inventive Principle:
Principle #2Taking out (Extraction)

4Speed

If DPDK is used for packet processing, then transmission efficiency is optimized and bandwidth exceeds 10 Gbps, but development environment complexity increases and packaging and deployment becomes cumbersome

Engineering Contradiction:
Improvetransmission efficiencyVSAvoiddevelopment environment complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent adopts a simpler, more flexible approach compared to DPDK's complex development environment. Instead of requiring sophisticated build systems and dependency management, the implementation uses straightforward user-space polling code that can be deployed without complex packaging, making it more suitable for rapid deployment while maintaining high transmission efficiency.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Data Source

PatentUS11941449B2Ethernet data stream recording method and system for high-speed data acquisition system
Publication Date: 2024.03.26 INST OF AUTOMATION CHINESE ACAD OF SCI
  • US11941449B2 patent drawing
  • US11941449B2 patent drawing
  • US11941449B2 patent drawing

AI summary

The field of high-speed data acquisition and network data processing, and particularly relates to an Ethernet data stream recording method, an Ethernet data stream recording system, and an Ethernet data stream recording device for a high-speed data acquisition system. It is intended to solve problems such as a low utilization rate of CPU, poor system compatibility, difficulty in packaging and deployment and low reliability of system transmission of the traditional high-speed data acquisition system. The method of the present disclosure includes: isolating a preset number of CPU cores after a Linux operating system is booted; uninstalling a kernel network card driver of the operating system and creating a hugepage memory pool; for each 10-gigabit network card, allocating a corresponding data-receiving buffer pool and a corresponding lock-free FIFO buffer, and initializing a PCIE register of each 10-gigabit network card such that each 10-gigabit network card enters into an acquisition state; and continuously receiving packets acquired by each 10-gigabit network card in a driving manner of user space polling and performing disk recording. According to the present disclosure, the utilization rate of CPU, system compatibility and transmission reliability are improved and the difficulty in packaging and deployment is decreased.