|
Mapping of packet processing from P4 Language to FPGA Technology
Kekely, Michal ; Fišer, Petr (oponent) ; Zilberman, Noa (oponent) ; Kořenek, Jan (vedoucí práce)
This thesis deals with the design of novel hardware architectures for packet classification. The main goal is to propose general and flexible hardware approaches capable of classifying packets on high-speed computer networks. The approaches need to be configurable via P4 language description and need to be scaleable to 100 Gbps and faster networks. The thesis starts with an analysis of the current state of the art in packet classification on high-speed networks. Based on the analysis, new architectures for packet classification are proposed. The architectures are designed with scalability, flexibility, and memory efficiency in mind. The goal is to achieve high throughput while maintaining P4-programmability and the ability to carry out general packet classification. Proposed approaches are further optimized and extended to be as efficient as possible. The first architecture uses the DCFL algorithm extended by a parallel TCAM memory, memory duplication and ruleset analysis. The goal is to achieve general packet classification, which has small memory requirements and offer a trade-off between the achieved throughput and the memory requirements. The second proposed approach is more specialized. It optimizes exact match packet classification by leveraging the distributed memories on FPGAs to speed up the Cuckoo hashing algorithm. The main goal is to achieve very high throughputs efficiently. Both approaches are further extended by proposing a caching mechanism that enables efficient external memory usage. Finally, all of the proposed mechanisms are evaluated on real network data, and the achieved results are shown.
|
|
Scrabble
Picek, Radomír ; Glembek, Ondřej (oponent) ; Smrž, Pavel (vedoucí práce)
Tato diplomová práce se zabývá stolní společenskou hrou SCRABBLE a její realizací v podobě počítačové hry. Postupně rozebírá všechny důležité aspekty, které mají vliv na výkonnost dané implementace. Především potom zvolení vhodných datových struktur pro uchování použité slovní zásoby, ovlivňujících efektivitu generování tahů a výběr vhodných algoritmů s ohledem na maximální rychlost. Zvláštní důraz je přitom kladen na inteligenci umělého protihráče a jeho schopnost konkurovat nejenom amatérům, ale i profesionálním hráčům SCRABBLU.
|
|
Vizualizace algoritmů pro vyhledání nejdelšího shodného prefixu
Fomiczew, Jiří ; Matoušek, Jiří (oponent) ; Kováčik, Michal (vedoucí práce)
Tato práce se zabývá návrhem a implementací programu pro vizualizaci algoritmů pro vyhledání nejdelšího shodného prefixu (LPM), což je jedna z nejdůležitějších operací při klasifikaci a směrování paketů v sítích TCP/IP. Je popsána jak základní teorie, tak vybrané algoritmy - Trie, Tree Bitmap a CPE. Dále je popsán návrh a implementace programu pro vizualizaci vyhledávacího procesu těchto algoritmů s důrazem na možné použití pro pedagogické účely. Nakonec jsou probrány možnosti budoucího vývoje a rozšíření programu.
|
|
Grafická demonstrace vybraného algoritmu pro vyhledání směru
Ohrádka, Marek ; Kaštil, Jan (oponent) ; Puš, Viktor (vedoucí práce)
Tato bakalářská práce se zabývá problematikou směrování v IP sítích, popisuje různé směrovací protokoly. Ukazuje možná řešení vyhledávání nejdelšího shodného prefixu, výhody a nevýhody jednotlivých řešení. Popisuje strukturu trie a její varianty. Detailně popisuje strukturu shape shifting trie, metodu jejího vytváření a způsob průchodu touto strukturou - vyhledávací algoritmus SST. Popisuje návrh a implementaci aplikace, která graficky demonstruje průběh vyhledávání v datové struktuře SST. Popisuje dekompozici problému a způsob jejího řešení v implementaci.
|
|
Mapování vyhledávacích tabulek z jazyka P4 do technologie FPGA
Kekely, Michal ; Matoušek, Jiří (oponent) ; Kořenek, Jan (vedoucí práce)
Diplomová práca sa zaoberá návrhom a implementáciou mapovania vyhľadávacích tabuliek jazyka P4 do technológie FPGA. Cieľom práce bolo popísať kľúčové princípy, ktoré je potrebné pochopiť na vytvorenie návrhu samotného mapovania a fungovania potrebných algoritmov, tieto princípy aplikovať v rámci implementácie a analyzovať výsledné riešenie z pohľadu rýchlosti a náročnosti na pamäť a zdroje cieľovej architektúry. Výsledok práce poskytuje konfigurovateľnú hardvérovú jednotku schopnú klasifikovať pakety a jej prepojenie na vyhľadávacie tabuľky jazyka P4. Riešenie využíva algoritmus DCFL a oproti algoritmom HiCuts a HyperCuts dosahuje v najhoršom prípade porovnateľné priepustnosti, ale vyžaduje podstatne menej pamäte.
|
|
Algoritmy pro vyhledání nejdelšího shodného prefixu
Sedlář, František ; Puš, Viktor (oponent) ; Tobola, Jiří (vedoucí práce)
V této bakalářské práci byly popsány základní algoritmy pro vyhledání nejdelšího shodného prefixu (LPM). K již existujícím implementacím v knihovně Netbench byl přidán další algoritmus - LC Trie. Všechny algoritmy, které knihovna obsahuje, byly testovány nad reálnými množinami IPv6 prefixů. Na základě zde získaných dat byly navzájem porovnány. Dále byly sepsány skripty pro stahování prefixů z významných zdrojů na internetu a testovací skripty k jednotlivým algoritmům.
|
|
Algoritmy pro vyhledání nejdelšího shodného prefixu
Sedlář, František ; Matoušek, Jiří (oponent) ; Tobola, Jiří (vedoucí práce)
Tato diplomová práce nejprve uvádí čtenáře do problematiky vyhledávání nejdelších shodných prefixů. Analyzuje a popisuje vybrané algoritmy se zaměřením na jejich rychlost, paměťovou náročnost a vhodnost pro hardwarovou implementaci. Na základě získaných poznatků představuje nový algoritmus Generic Hash Tree Bitmap. Ten je mnohonásobně rychlejší než jiné používané metody, zatímco jeho paměťové nároky jsou mnohdy nižší. Implementace algoritmu se stala součástí knihovny Netbench.
|
|
Systém slovenské morfologie založený na vzorech
Klocok, Andrej ; Dytrych, Jaroslav (oponent) ; Smrž, Pavel (vedoucí práce)
Cieľom tejto práce je zoznámenie sa s metódami morfologickej analýzy, reprezentáciou dát morfologických slovníkov, vytvorením systému technických vzorov pre flektívnu morfológiu slovenčiny. Z tohto systému je odvodený morfologický analyzátor, ktorý vstupné slová lematizuje, určí ich vzor a morfologickú značku, nástroj pre porovnávanie a vyhodnocovanie stemerov, ktorý hodnotí stemery na základe derivačného slovníka, nástroj na rekonštrukciu diakritiky, ktorý vznikol ako pomocný nástroj. V posledných kapitolách práce sú jednotlivé nástroje zhodnotené, analyzátor je porovnaný s dostupnou alternatívou, pomocou nástroja na hodnotenie stemerov sú porovnané dve implementácie slovenských stemerov a je naznačený ďalší vývoj jednotlivých nástrojov
|
|
Kompresní metody založené na kontextovém modelování
Gach, Tomáš ; Drábek, Vladimír (oponent) ; Bařina, David (vedoucí práce)
Cílem této práce je popsat základní vlastnosti kontextových kompresních metod. Proces modelování je uveden společně s principem aritmetického kódování. Postupně jsou představeny metody PPM, CTW a PAQ a je nastíněna možná implementace pravděpodobnostního modelu základní metody PPM. Je provedeno srovnání výkonnosti kontextových, slovníkových a v současnosti používaných metod komprese dat. Na základě dosažených výsledků jsou shrnuty možnosti využití metody PPM.
|
|
Scrabble pro mobilní telefony
Kaněčka, Ondřej ; Kunc, Michael (oponent) ; Schönecker, Rudolf (vedoucí práce)
Práce zkoumá možnosti vyhledávacích algoritmů a slovníkových datových struktur na platformách s omezeným výpočetním výkonem a dostupnou pamětí (typicky jde o mobilní telefony) a ukazuje jejich výhody a nevýhody v souvislosti s touto platformou. Konkrétně se zabývá jejich uplatněním ve známé stolní hře SCRABBLE. Používá Appel-Jacobsonův vyhledávací algoritmus na hledání možných tahů. Algoritmus má k dispozici slovník se všemi slovy, který je uložen v tzv. struktuře DAWG, která umožňuje slova rychle vyhledávat a současně zajišťuje kompresi obsažených slov, takže je velikost slovníku v paměti vzhledem k cílové platformě dostatečně malá. Výsledná Java aplikace pro mobilní telefon (MIDP 2.0) přidává grafické rozhraní a ovládání hry a umožňuje tak hraní hry SCRABBLE jak proti umělé inteligenci, tak proti jinému člověku.
|