Original title:
XDP ovladač pro platformu NDK
Translated title:
XDP Driver for NDK Platform
Authors:
Hyroš, Richard ; Kekely, Lukáš (referee) ; Matoušek, Jiří (advisor) Document type: Bachelor's theses
Year:
2025
Language:
eng Publisher:
Vysoké učení technické v Brně. Fakulta informačních technologií Abstract:
[eng][cze]
Snahy dosáhnout vysokých internetových rychlostí vedou ke zjištění, že se CPU stává limitujícím prvkem. Jednou z nejnáročnějších částí zpracování paketů na CPU, je posílat je skrze network stack operačního systému. Tato část systému, která implementuje mimo jiné i L3 a L4 protokoly, představuje klasickou směnu rychlosti za pohodlnost. Z tohoto důvodu začaly vznikat technologie pro její obejití. Tyto technologie většinou přenáší celé zpracování do user-space. Toto je hlavní rozdíl XDP (eXpress Data Path), které se snaží dosáhnout stejného výkonu, ale stále fungovat v rámci kernelu. Dosahuje toho tím, že umožňuje vývojáři rozhodnout brzo v kernelovém ovladači, jestli bude paket poslán do network stacku, zahozen, nebo přesměrován přímo do user-space. Implementace tohoto ovladače je hlavním cílem této práce.
When trying to achieve high internet speeds, the CPU becomes a limiting factor. One of the most CPU-intensive parts of packet processing is sending packets through the Linux kernel network stack. Using this part of the operating system, which implements the L3 and L4 protocols and much more, is a trade of performance for convenience. That is why the technologies that circumvent the network stack emerged over time. These technologies usually take the whole packet processing to the user-space. In contrast, XDP (eXpress Data Path) is a technology that aims to achieve similar performance but still function as a part of the kernel itself by allowing the developer to decide early in the kernel network driver whether the packets should continue to the network stack, get filtered, or be redirected straight to the user-space. This driver implementation is the primary goal of this thesis.
Keywords:
AF_XDP; Linux; ovladač; XDP; zpracování paketů; AF_XDP; kernel driver; Linux; packet processing; XDP
Institution: Brno University of Technology
(web)
Document availability information: Fulltext is available in the Brno University of Technology Digital Library. Original record: http://hdl.handle.net/11012/252783