Diplomová práce

Optimization and implementation of AF_KTLS in user-space applications

Ananya Chatterjee
Anotace

AF_KTLS is a kernel module that introduces parts of TLS and DTLS protocols to the Linux kernel. User-space applications can transparently use AF_KTLS type socket to perform encryption and decryption of traffic. This thesis provides an analysis of the AF_KTLS module and identifies use cases where it could be used to optimize performance for user-space applications. The changes required for the optimization …více

Abstract

AF_KTLS is a kernel module that introduces parts of TLS and DTLS protocols to the Linux kernel. User-space applications can transparently use AF_KTLS type socket to perform encryption and decryption of traffic. This thesis provides an analysis of the AF_KTLS module and identifies use cases where it could be used to optimize performance for user-space applications. The changes required for the optimization …více

Zadání práce
AF_KTLS is a kernel module that introduces parts of TLS and DTLS protocols to the Linux kernel. After a handshake is done in userspace all the key material is passed to the Linux kernel via appropriate socket system calls supported by AF_KTLS. After that, the user-space application can transparently use AF_KTLS type socket that transparently performs encryption and decryption of traffic. The main advantage of using AF_KTLS lies in applications that serve static content that can be sent using sendfile(2) system call or by applications that do not necessarily need decrypted content available in user-space. An example of such applications could be OpenConnect VPN where AF_KTLS could be used to optimize copies from user-space to kernel-space and vice versa just for encryption or decryption. A similar use-case can be found also in TCP/HTTP balancer HAProxy. This work will extend the AF_KTLS [1, 2] kernel module that introduces parts of TLS [3] and DTLS protocols to the Linux kernel.

The goal of this thesis is to analyse possible use-cases and scenarios where AF_KTLS could be beneficial and to propose changes in user-space applications or directly inside AF_KTLS module implementation that would lead to optimization.

The student will also implement the changes, evaluate benchmarks on implemented changes and suggest other optimization alternatives, based on bottlenecks found in benchmarks.

The student will also implement some changes as agreed with the supervisor and technical consultant, evaluate benchmarks on implemented changes and suggest other optimization alternatives, based on bottlenecks found in benchmarks.
Práce zkontrolována:
19. 12. 2017 08:34, prof. RNDr. Václav Matyáš, M.Sc., Ph.D., učo 344
Plný text práce
1,3 MB / soubor PDF
Jazyk práce
angličtina angličtina
Termín obhajoby
1. 2. 2018
Práce byla úspěšně obhájena

Vedoucí

prof. RNDr. Václav Matyáš, M.Sc., Ph.D., učo 344
KPSK FI MU

Oponent

Ing. Milan Brož, Ph.D., učo 168968
KPSK FI MU

Konzultant

Ing. Fridolín Pokorný
Red Hat Czech

Masarykova univerzita Fakulta informatiky
Studijní program
Informatika
  • Přidání souboru

    Soubor nebo složku lze nahrát pomocí tlačítka Přidat.
  • Další operace se soubory

    Podrobnosti lze zjistit označením příslušného řádku.
  • Pohled pro experty

    Pro častou práci je možné zvolit režim Více možností.
  • Vyhledávání souborů

    Vyhledávaný výraz můžete zadat přímo do adresního řádku.
  • Rychlý přístup k souborům

    Pomocí funkce Nedávné je možné se rychle vrátit k právě prohlíženým souborům. Oblíbené soubory je také možné označit Hvězdičkou.