Network Interface Controller Offloading in Linux
Název práce v češtině: | Akcelerace síťových karet v Linuxu |
---|---|
Název v anglickém jazyce: | Network Interface Controller Offloading in Linux |
Klíčová slova: | hardwarová akcelerace síť Linux Traffic Control |
Klíčová slova anglicky: | hardware offloading network Linux Traffic Control |
Akademický rok vypsání: | 2017/2018 |
Typ práce: | diplomová práce |
Jazyk práce: | angličtina |
Ústav: | Katedra distribuovaných a spolehlivých systémů (32-KDSS) |
Vedoucí / školitel: | prof. Ing. Petr Tůma, Dr. |
Řešitel: | skrytý - zadáno a potvrzeno stud. odd. |
Datum přihlášení: | 14.02.2018 |
Datum zadání: | 16.02.2018 |
Datum potvrzení stud. oddělením: | 21.02.2018 |
Datum a čas obhajoby: | 12.06.2018 09:00 |
Datum odevzdání elektronické podoby: | 10.05.2018 |
Datum odevzdání tištěné podoby: | 11.05.2018 |
Datum proběhlé obhajoby: | 12.06.2018 |
Oponenti: | doc. Ing. Lubomír Bulej, Ph.D. |
Zásady pro vypracování |
Modern network interface controllers try to assist the software in network frame processing, offering a way to offload packet classification and modification to the hardware. The means of configuration of these features are specific to each vendor, and only proprietary drivers can fully use them. The current scheme of Linux drivers is similar though - the drivers fetch tables from the Traffic Control subsystem and try to match the tc configuration to what the card is capable of, offloading parts of the tc work to the hardware. This grew organically as an ad-hoc way to at least partially use the offloading features.
The goal of this thesis is to explore the hardware offloading features of several chosen NICs using resources such as data sheets, source codes, etc. Then, the goal is to design a configuration mechanism for features that are common, important or expected to be common in near future. The purpose of such mechanism would be to allow the system administrator to use the power of these NICs while abstracting differences between them and providing a sensible interface, avoiding usage of proprietary drivers. Availability of this unified configuration mechanism would clean up the code and ease development of NIC drivers. The implementation part of the thesis is a demonstrator, showing how real-world scenarios would be configured and transformed into a configuration for a selected NIC. |
Seznam odborné literatury |
Almesberger, W.: Linux Network Traffic Control - Implementation Overview
Hadi Salim, J.: Linux Traffic Control Classifier-Action Subsystem Architecture Hubert, B.: Linux Advanced Routing & Traffic Control Fastabend, J.: net: implement mechanism for hw based qos. git.kernel.org. commit id 4f57c087de9b Fastabend, J.: net: sched: add cls u32 off- load hooks for netdevs. git.kernel.org. commit id a1b7c5fd7fe9 |