JÁL, M. Dynamické sítě se smíšenou topologií pomocí protokolu WireGuard [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2024.

Posudky

Posudek vedoucího

Rychlý, Marek

Student při řešení práce nebyl aktivní, proběh řešení a výsledky téměř nekonzultoval a ani po odkladu nebyl schopen dílo dokončit či alespoň konzultovat nutné kroky pro úspěšné dokončení. Přístup studenta k řešení práce hodnotím jako nevyhovující (F) .

Dílčí hodnocení
Kritérium Známka Body Slovní hodnocení
Informace k zadání Diplomové práce byla zaměřena na správu sítě založené na protokolu WireGuard s využitím různých technik distribuce konfigurace mezi uzly. Dle mého názoru se jednalo o středně obtížné a implementačně zaměřené zadání, které však nakonec nebylo splněno (malá hloubka i šířka řešení, nedokončená implementace).
Práce s literaturou Student pracoval převážně s v zadání doporučenou literaturou a samostatně dohledal technickou a produktovou dokumentaci k některým v práci zmiňovaným technologiím.
Aktivita během řešení, konzultace, komunikace Student pracoval samostatně volnějším tempem a výsledky příliš nekonzultoval. Dohodnuté termíny a výsledky byly v některých případech ze strany studenta opožděny nebo odloženy.
Aktivita při dokončování Student nestihl dokončit práci v řádném termínu a ani po odkladu nebyl schopen obnovit a dokončit práci (opět žádné konzultace ani při dokončování po odkladu). Technická zpráva ani finální podoba výsledného programového řešení se mnou nebyly konzultovány.
Publikační činnost, ocenění Bez publikací či ocenění.
Navrhovaná známka
F
Body
45

Posudek oponenta

Hranický, Radek

Pan Jál vytvořil uspokojivý základ pro diplomovou práci. Přínosy jeho díla tvoří teoretický rozbor protokolu WireGuard, analýza možných řešení a částečně funkční protyp nástroje ArcaneLink. To však na obhájitelnou diplomovou práci nestačí. Je nutné řešení dotáhnout a především detailně zdokumentovat, tj. jasně specifikovat návrh architektury, popsat implementaci (vč. testů) a prostor věnovat také zhodnocení vytvořeného nástroje. V závěru autor píše: "Věřím, že neúspěch u obhajoby povede k jejímu úspěšnému přepracovaní." Navrhuji tedy udělit hodnocení "F" a nechat studenta práci dopracovat do obhájitelné podoby.

Dílčí hodnocení
Kritérium Známka Body Slovní hodnocení
Náročnost zadání Jádrem práce mělo být vytvoření modulárního nástroje pro správu dynamických sítí VPN s protokolem WireGuard. Výsledek měl být důkladně otestován a zveřejněn formou open-source.
Rozsah splnění požadavků zadání Body 3 až 5 byly splněny pouze částečně. Kapitola o návrhu je svým obsahem hrubě nedostačující. Namísto plnohodnotného nástroje autor implementoval pouze částečně funkční prototyp. Implementace tohoto prototypu sice existuje, ale její popis v textu zcela chybí. Dále jsem nenašel zadáním požadované testy, ani jejich specifikaci. V závěru autor sice zmiňuje, že nástroj testoval, ale jakýkoli popis, jak vyhodnocení proběhlo, jsem hledal marně.
Rozsah technické zprávy Práce je velmi stručná. Dle app.fit.vut.cz/normostrany práce čítá pouze 25.55 normostran, tedy jen cca 51% minimálního rozsahu. Potíž je, že stručné jsou i dvě klíčové kapitoly popisující hlavní autorův přínos, tedy nástroj, který měl vytvořit. Kapitolu o návrhu řešení tvoří dvě strany textu a jedno schéma. Kapitola o implementaci má něco málo přes jednu stranu.
Prezentační úroveň technické zprávy 35 Technická zpráva působí spíše jako rozpracovaný koncept než hotová závěrečná práce. Dokument má logickou strukturu a jednotlivé kapitoly na sebe vcelku navazují. Pochopitelnost se však snižuje s rostoucí hodnotou čísla kapitoly, stejně jako klesá míra výskytu relevantního obsahu. Kapitola 2 přívětivým způsobem popisuje protokol Wireguard. Kapitola 3 diskutuje problematiku připojení uzlu. Obsah je kvalitní a doplňují jej vhodně zvolené názorné obrázky. Nerozumím však sekci 3.1, která nemá žádný obsah. V sekci 3.3 je také z nepochopitelných důvodů odkaz na obrázek 5.2, který s textem vůbec nesouvisí. Kapitola 4 popisuje analýzu možných způsobů řešení. Obsah je v pořádku, ale heslovitý způsob prezentace není příliš vhodný. Ocenil bych nějaký doprovodný text, který vysvětlí, jak spolu jednotlivé fragmenty textu, odrážky a výpisy souvisí. Od kapitoly 5 kvalita textu i informační hodnota dále degradují. Po specifikací požadavků autor vysvětluje, že nástroj bude fungovat ve dvou režimech. Následuje popis textového rozhraní, který by se však hodil spíše do kapitoly o implementaci, nebo do přílohy s návodem k použití. V kapitole se dále nachází schéma architektury, které však není nijak vysvětleno a chybí na něj z této kapitoly odkaz. Žádné další vysvětlení, jak má nástroj fungovat, zde není. Kapitola 6 o implementaci je pak zcela minimalistická a popisuje de facto jen výběr programovacího jazyka a použité knihovny. O implementaci samotné se čtenář nedozví vůbec nic. Zcela také postrádám popis testů a průběh zhodnocení vytvořeného nástroje. Stručné zhodnocení je pouze v závěru, kde sám autor uznává, že se zadání nepodařilo zcela splnit.
Formální úprava technické zprávy 53 Po jazykové stránce je práce psána příjemnou a čtivou češtinou. V některých pasážích se objevují drobné pravopisné chyby, překlepy, nebo zvláštní slovní spojení ("Configurační soubor"). Koncentrace těchto jevů však není nijak vysoká. Místy se také vyskytuje anglické pořadí slov ("PTR záznam", "TOML soubor", "WireGuard rozhraní" apod.).  Typografická stránka práce budí smíšené dojmy. Výpisy kódu jsou vhodně formátovány neproporciálním písmem, což oceňuji. Tabulky a některé obrázky však nejsou odkazovány z textu. A ty, které ano, jsou odkazovány nevhodně, viz řetězec "2.2.2.2:1234.3.2", kde první čtyři číslice tvoří IP adresu, další port a zbytek je odkaz na obrázek. V sekci 5.2.1 přetéká text přes okraj stránky. Obrázku 5.2 by prospělo větší písmo. V technické zprávě se také vyskytují osamocené sekce bez existence jiné sekce na téže úrovni.
Práce s literaturou 52 Bibliografie čítá celkem 9 pramenů, přičemž 6 z nich jsou online zdroje. Výběr zdrojů je relevantní k tématu. Autor však cituje výhradně celé odstavce, což nepovažuji za optimální, neboť není jasné, ke kterému tvrzení se citace váže. Práce s literaturou dále pokulhává v sekci 3.3, kde je množství převzatých informací bez uvedení zdroje.
Realizační výstup 42 Realizační výstup představuje prototyp nástroje ArcaneLink, rozsahově čítající asi 800 řádků kódu v jazyce Rust. Uvítal bych návod k instalaci a použití, neboť současné README mnoho nepomůže. Po mírném boji se mi však dílo podařilo úspěšně přeložit a spustit. Prototyp je částečně funkční, alespoň tedy modul pro OpenDHT. U modulu pro DNS je problém s nefunkční aktualizací DNS záznamů, což sám autor zdůvodňuje nevhodným výběrem knihoven. Zcela také chybí zadáním požadované testy. Nástroj měl být publikován jako open-source. Jediný repozitář, který jsem nalezl, je v README mezi odevzdanými soubory: https://github.com/Michal4K/arcanelink . Tento však není veřejně přístupný.
Využitelnost výsledků Při současném stavu je využitelnost výsledků minimální.
Navrhovaná známka
F
Body
45

Otázky

eVSKP id 153710