Show simple item record

Implementace protokolu QUIC pro .NET
dc.contributor.advisorJežek, Pavel
dc.creatorZikmund, Radek
dc.date.accessioned2021-02-25T09:08:35Z
dc.date.available2021-02-25T09:08:35Z
dc.date.issued2021
dc.identifier.urihttp://hdl.handle.net/20.500.11956/124659
dc.description.abstractQUIC je general-purpose síťový protokol transportní vrstvy, který byl navržen jako náhrada TCP a TLS pro HTTP/3. QUIC je postaven nad UDP a poskytuje vždy zašif- rované spojení schopné paraleního přenosu vícero proudů dat. V porovnání s TCP, QUIC slibuje nižší dobu odezvy, větší flexibilitu congestion control a řešení head-of-line blocking problému, který se vyskytuje v multiplexovaných HTTP/2 spojeních. Nejnovější verze .NET - .NET 5 - byla vydána s experimentální podporou pro QUIC, která je založena na knihovně MsQuic napsané v jazyce C. Nicméně, při imple- mentování nových feature ve standartních knihovnách v .NET jsou preferovány vlastní implementace přímo v .NET místo přidávání závislostí na nativních knihovnách, protože implementace v .NET jsou snáze udržovatelné a v některých případech dokonce i více výkonné. Tato práce zkoumá proveditelnost implementace QUIC protokolu v jazyce C# jakožto budoucí náhrady stávajícího řešení pro vydání v .NET 6 nebo pozdější verzi. Výsledkem této práce je fork oficiálního repozitáře .NET runtime s částečnou imple- mentací QUIC protokolu v jazyce C#. Tato práce implementovala podmnožinu QUIC specifikace dostačující pro základní zhodnocení výkonu. Jako součást práce jsme provedli měření propustnosti a odezvy naší implementace a předchozí implementace založené na knihovně...cs_CZ
dc.description.abstractQUIC is a general-purpose transport layer network protocol proposed as the replace- ment for TCP and TLS in HTTP/3. QUIC is based on UDP and provides always- encrypted connections able to transmit multiple streams of data in parallel. 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 latest release of .NET - .NET 5 - has shipped with experimental support for QUIC based on the MsQuic C library. However, when implementing new features in stan- dard .NET libraries, purely .NET implementations are preferable to adding dependencies on native libraries because .NET implementations offer better maintainability and - in some cases - even better performance. This thesis explores the viability of a purely C# QUIC implementation as a future replacement for .NET 6 or later release. This thesis's result is a fork of the official .NET runtime repository with partial C# implementation of the QUIC protocol. We implemented a subset of the QUIC speci- fication, which is sufficient for a basic performance evaluation. As part of the thesis, we have benchmarked the throughput and latency of our and the MsQuic-based QUIC implementation and compared them to TCP's performance in two environments: LAN and...en_US
dc.languageEnglishcs_CZ
dc.language.isoen_US
dc.publisherUniverzita Karlova, Matematicko-fyzikální fakultacs_CZ
dc.subjectQUIC|.NET|network protokolen_US
dc.subjectQUIC|.NET|síťový protokolcs_CZ
dc.titleQUIC protocol implementation for .NETen_US
dc.typediplomová prácecs_CZ
dcterms.created2021
dcterms.dateAccepted2021-02-04
dc.description.departmentDepartment of Distributed and Dependable Systemsen_US
dc.description.departmentKatedra distribuovaných a spolehlivých systémůcs_CZ
dc.description.facultyMatematicko-fyzikální fakultacs_CZ
dc.description.facultyFaculty of Mathematics and Physicsen_US
dc.identifier.repId224048
dc.title.translatedImplementace protokolu QUIC pro .NETcs_CZ
dc.contributor.refereeDingle, Adam Thomas
thesis.degree.nameMgr.
thesis.degree.levelnavazující magisterskécs_CZ
thesis.degree.disciplineSoftware and Data Engineeringen_US
thesis.degree.disciplineSoftwarové a datové inženýrstvícs_CZ
thesis.degree.programInformatikacs_CZ
thesis.degree.programComputer Scienceen_US
uk.thesis.typediplomová prácecs_CZ
uk.taxonomy.organization-csMatematicko-fyzikální fakulta::Katedra distribuovaných a spolehlivých systémůcs_CZ
uk.taxonomy.organization-enFaculty of Mathematics and Physics::Department of Distributed and Dependable Systemsen_US
uk.faculty-name.csMatematicko-fyzikální fakultacs_CZ
uk.faculty-name.enFaculty of Mathematics and Physicsen_US
uk.faculty-abbr.csMFFcs_CZ
uk.degree-discipline.csSoftwarové a datové inženýrstvícs_CZ
uk.degree-discipline.enSoftware and Data Engineeringen_US
uk.degree-program.csInformatikacs_CZ
uk.degree-program.enComputer Scienceen_US
thesis.grade.csVýborněcs_CZ
thesis.grade.enExcellenten_US
uk.abstract.csQUIC je general-purpose síťový protokol transportní vrstvy, který byl navržen jako náhrada TCP a TLS pro HTTP/3. QUIC je postaven nad UDP a poskytuje vždy zašif- rované spojení schopné paraleního přenosu vícero proudů dat. V porovnání s TCP, QUIC slibuje nižší dobu odezvy, větší flexibilitu congestion control a řešení head-of-line blocking problému, který se vyskytuje v multiplexovaných HTTP/2 spojeních. Nejnovější verze .NET - .NET 5 - byla vydána s experimentální podporou pro QUIC, která je založena na knihovně MsQuic napsané v jazyce C. Nicméně, při imple- mentování nových feature ve standartních knihovnách v .NET jsou preferovány vlastní implementace přímo v .NET místo přidávání závislostí na nativních knihovnách, protože implementace v .NET jsou snáze udržovatelné a v některých případech dokonce i více výkonné. Tato práce zkoumá proveditelnost implementace QUIC protokolu v jazyce C# jakožto budoucí náhrady stávajícího řešení pro vydání v .NET 6 nebo pozdější verzi. Výsledkem této práce je fork oficiálního repozitáře .NET runtime s částečnou imple- mentací QUIC protokolu v jazyce C#. Tato práce implementovala podmnožinu QUIC specifikace dostačující pro základní zhodnocení výkonu. Jako součást práce jsme provedli měření propustnosti a odezvy naší implementace a předchozí implementace založené na knihovně...cs_CZ
uk.abstract.enQUIC is a general-purpose transport layer network protocol proposed as the replace- ment for TCP and TLS in HTTP/3. QUIC is based on UDP and provides always- encrypted connections able to transmit multiple streams of data in parallel. 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 latest release of .NET - .NET 5 - has shipped with experimental support for QUIC based on the MsQuic C library. However, when implementing new features in stan- dard .NET libraries, purely .NET implementations are preferable to adding dependencies on native libraries because .NET implementations offer better maintainability and - in some cases - even better performance. This thesis explores the viability of a purely C# QUIC implementation as a future replacement for .NET 6 or later release. This thesis's result is a fork of the official .NET runtime repository with partial C# implementation of the QUIC protocol. We implemented a subset of the QUIC speci- fication, which is sufficient for a basic performance evaluation. As part of the thesis, we have benchmarked the throughput and latency of our and the MsQuic-based QUIC implementation and compared them to TCP's performance in two environments: LAN and...en_US
uk.file-availabilityV
uk.grantorUniverzita Karlova, Matematicko-fyzikální fakulta, Katedra distribuovaných a spolehlivých systémůcs_CZ
thesis.grade.code1
uk.publication-placePrahacs_CZ
uk.thesis.defenceStatusO


Files in this item

Thumbnail
Thumbnail
Thumbnail
Thumbnail
Thumbnail
Thumbnail
Thumbnail

This item appears in the following Collection(s)

Show simple item record


© 2025 Univerzita Karlova, Ústřední knihovna, Ovocný trh 560/5, 116 36 Praha 1; email: admin-repozitar [at] cuni.cz

Za dodržení všech ustanovení autorského zákona jsou zodpovědné jednotlivé složky Univerzity Karlovy. / Each constituent part of Charles University is responsible for adherence to all provisions of the copyright law.

Upozornění / Notice: Získané informace nemohou být použity k výdělečným účelům nebo vydávány za studijní, vědeckou nebo jinou tvůrčí činnost jiné osoby než autora. / Any retrieved information shall not be used for any commercial purposes or claimed as results of studying, scientific or any other creative activities of any person other than the author.

DSpace software copyright © 2002-2015  DuraSpace
Theme by 
@mire NV