Témata prací (Výběr práce)Témata prací (Výběr práce)(verze: 368)
Detail práce
   Přihlásit přes CAS
QUIC protocol implementation for .NET
Název práce v češtině: Implementace protokolu QUIC pro .NET
Název v anglickém jazyce: QUIC protocol implementation for .NET
Klíčová slova: QUIC|.NET|síťový protokol
Klíčová slova anglicky: QUIC|.NET|network protokol
Akademický rok vypsání: 2019/2020
Typ práce: diplomová práce
Jazyk práce: angličtina
Ústav: Katedra distribuovaných a spolehlivých systémů (32-KDSS)
Vedoucí / školitel: Mgr. Pavel Ježek, Ph.D.
Řešitel: Mgr. Radek Zikmund - zadáno a potvrzeno stud. odd.
Datum přihlášení: 06.04.2020
Datum zadání: 06.04.2020
Datum potvrzení stud. oddělením: 29.04.2020
Datum a čas obhajoby: 04.02.2021 09:00
Datum odevzdání elektronické podoby:05.01.2021
Datum odevzdání tištěné podoby:05.01.2021
Datum proběhlé obhajoby: 04.02.2021
Oponenti: Adam Dingle, M.Sc.
 
 
 
Zásady pro vypracování
QUIC is a general-purpose transport layer network protocol proposed as the replacement for TCP and TLS in HTTP/3. QUIC combines UDP and TLS and provides abstraction of always-encrypted multiplexed streams of data. Compared to TCP, QUIC promises lower latency, better congestion control flexibility and a solution to head-of-line blocking occurring in multiplexed HTTP/2 connections.

The goal of this thesis is to provide a partial C# implementation of the QUIC protocol for .NET. The implementation should replace the current experimental QUIC support based on the msquic native library. Thesis implementation should target improving portability, maintainability, and simplifying experiments with QUICs loss detection and congestion control algorithms. While TLS is an integral part of the QUIC protocol, the goal of this thesis is not to reimplement TLS but to choose an appropriate existing implementation and incorporate it into the solution.

The resulting pilot implementation of the protocol should support at least reliably sending data through a controlled testing environment between a demo client and server applications on at least one platform supported by .NET Core. However, the implementation should be extensible to cover the entire QUIC specification. The student should closely cooperate with the Microsoft development team to ensure eventual mergeability into the master .NET Core branch.
Seznam odborné literatury
* QUIC RFCs:
+ https://datatracker.ietf.org/doc/draft-ietf-quic-transport/
+ https://datatracker.ietf.org/doc/draft-ietf-quic-tls/
+ https://datatracker.ietf.org/doc/draft-ietf-quic-recovery/
* Books:
+ Learning HTTP/2: a practical guide for beginners, Stephen Ludin-Javier Garza, O'Reilly, 2017 (ISBN 978-1-4919-6244-2)
 
Univerzita Karlova | Informační systém UK