You are here: Home / RTLWS Submitted Papers / 
2026-06-10 - 04:52

Dates and Events:

OSADL Articles:

2024-10-02 12:00

Linux is now an RTOS!

PREEMPT_RT is mainline - What's next?


2023-11-12 12:00

Open Source License Obligations Checklists even better now

Import the checklists to other tools, create context diffs and merged lists


2023-03-01 12:00

Embedded Linux distributions

Results of the online "wish list"


2022-01-13 12:00

Phase #3 of OSADL project on OPC UA PubSub over TSN successfully completed

Another important milestone on the way to interoperable Open Source real-time Ethernet has been reached


2021-02-09 12:00

Open Source OPC UA PubSub over TSN project phase #3 launched

Letter of Intent with call for participation is now available



Real Time Linux Workshops

1999 - 2000 - 2001 - 2002 - 2003 - 2004 - 2005 - 2006 - 2007 - 2008 - 2009 - 2010 - 2011 - 2012 - 2013 - 2014 - 2015

13th Real-Time Linux Workshop from October 20 to 22 at the Faculty of Electrical Engineering, Czech Technical University in Prague

Announcement - Hotels - Directions - Agenda - Paper Abstracts - Presentations - Registration - Abstract Submission - Sponsoring - Gallery

Controlling Real-Time Network Performance through Early Demultiplexing

Salvatore Del Popolo, University of Trento
Luca Abeni, University of Trento

In general-purpose operating system kernels, the performance of applications that receive and send network packets can be affected by other applications using the network.This is due to the fact that the networking stack processes all the packets in softirq context, regardless of the process or thread which is going to receive them. Hence, a high-bitrate flow of packets destinated to a non real-time process can delay packets destinated to real-time process (or even force the kernel to drop some important "real-time packets").

Early demultiplexing has been proposed in the past as a technique to solve similar problems, by moving packet processing to the receiving task's context. In this way, the network QoS can be controlled by modifying the scheduling parameters of the receiving task (as an additional result, the time spent in processing incoming network packets is correctly accounted to the receiving application, instead of the network softirq).

This paper presents an implementation of early demultiplexing on a modern Linux kernel, showing how this technique allows to increase the predictability of processes which are receiving network traffic. The presented implementation is not intrusive: network device drivers don't need to be modified, no kernel threads are required and code modifications are limited.