DPDK Helper Process for Unresponsive Application Data Transfer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data processing systems using the Data Plane Development Kit (DPDK) face challenges in efficiently transmitting and receiving data over networks, particularly when applications become unresponsive, as they lack a seamless mechanism for kernel-mode intervention and protocol processing without disrupting user-space operations.
Innovation Solution
A data processing system is designed with a processor subsystem that includes a non-operating system functionality using DPDK for network interface support and protocol processing, along with helper processes executing in user-mode to manage data transmission and reception, ensuring continuous data transfer and reception even when applications are unresponsive by utilizing pseudo virtual interfaces and virtual interface code for communication between user and kernel levels.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If DPDK user-level libraries and NIC drivers are used for network data processing, then packet processing speed is improved, but the system lacks kernel-mode intervention capability when applications become unresponsive
Solution Approach 1:
The patent introduces a helper process as an intermediary component that bridges user-space DPDK functionality and kernel-mode operations. When the application becomes unresponsive, the helper process (running in user-mode) can still access the data buffer and connection state, then invoke kernel-mode functions through a pseudo virtual interface to complete the data transmission. This mediator enables kernel intervention without disrupting the user-space DPDK framework, resolving the contradiction between high-speed packet processing and system reliability.
2Productivity
If user-level protocol processing is implemented, then data transmission efficiency is improved, but continuous data transfer cannot be ensured when applications are unresponsive
Solution Approach 1:
The patent ensures continuous data transfer by implementing a helper process that monitors application responsiveness and can continue data transmission operations independently. When the application becomes unresponsive, the helper process detects this state and takes over the data transmission task using kernel-mode functions, ensuring the useful action of data transfer continues without interruption. This maintains both high productivity through user-level processing and continuous operation through kernel backup mechanisms.
3Reliability
If DPDK data plane functionality is provided at user level, then network performance is improved, but kernel-mode protocol processing cannot intervene seamlessly
Solution Approach 1:
The patent creates a universal interface layer that supports both user-space DPDK operations and kernel-mode protocol processing. The pseudo virtual interface serves multiple functions: it allows normal user-level data plane operations to proceed efficiently, while also providing a mechanism for kernel-mode functions to intervene when needed. This multi-functional design maintains network performance benefits of user-level processing while adding kernel intervention capability through a unified interface.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A data processing system has a poll mode driver and a library supporting protocol processing. The poll mode driver and the library are non-operating system functionalities. An application is provided. An operation system is configured while executing in kernel mode and in response to the application being determined to be unresponsive, use a helper process being an operating system functionality executing at user-mode to cause a receive or transmit mode of the application to continue.