Original title:
Graf řízení toku programů v jazyce P4
Translated title:
Control Flow Graph for P4 Programs
Authors:
Ponek, Timotej ; Šišmiš, Lukáš (referee) ; Kekely, Lukáš (advisor) Document type: Bachelor's theses
Year:
2022
Language:
cze Publisher:
Vysoké učení technické v Brně. Fakulta informačních technologií Abstract:
[cze][eng]
Koncept SDN sa postupne stal jedným z najpopulárnejších riešení správy sietí. Umožňuje rýchlu rekonfigurovateľnosť sieťových zariadení tak, aby odrážala aktuálne požiadavky a taktiež umožňovala rýchle testovanie nových riešení. Týmto podporuje pokrok v sieťovej oblasti. Táto práca sa venuje jazyku P4, ktorý je jednou z implementácií konceptu SDN. Prínosom práce je zlepšenie časti existujúceho open-source prekladača jazyka P4, ktorá slúži na generovanie grafov riadenia toku programu. Nová implementácia zachytáva tok programu aj vo vnútri tabuliek a akcií, čo umožňuje ľahšie kontrolovať výstup prekladu a ďalej optimalizovať prekladač pre potreby redukcie mŕtveho kódu. Taktiež poskytuje možnosť generovať fullgraf vo formáte dot a preddefinovanom json formáte, ktorý zachytáva tok programu naprieč všetkými funkčnými blokmi daného P4 programu.
Concept of SDN gradually became one of the most popular solutions for network management. It allows rapid reconfigurability of network devices, to reflect actual demands and to enable quick testing of new solutions, which supports overall advance in networking. This thesis focuses on P4 programming language, which is one of the implementations of SDN concept. The goal of this thesis is improvement of the existing open-source P4 compiler. More precisely, extension of a part used to generate control flow graphs. New implementation captures program flow even inside match-action tables and actions, which allows easier checking of compiler output and further optimization of compiler to reduce dead code. It also provides option to generate a fullgraph in dot format and a predefined json format that captures the flow of the program across all function blocks of the P4 program.
Keywords:
compiler; control flow graph; dot; fullgraph; match-action table; OpenFlow; P4; p4c; SDN; visitor; dot; fullgraf; graf riadenia toku; návštevník; OpenFlow; P4; p4c; prekladač; SDN; vyhľadávacia tabuľka
Institution: Brno University of Technology
(web)
Document availability information: Fulltext is available in the Brno University of Technology Digital Library. Original record: http://hdl.handle.net/11012/207243