Bachelor's Thesis
Configuration API of the libnetconf2 Library According to the ietf-netconf-server YANG model
Final Thesis 960.3 kBAuthor of thesis: Bc. Roman Janota
Acad. year: 2023/2024
Supervisor: Ing. Jiří Matoušek, Ph.D.
Reviewer: doc. Ing. Tomáš Martínek, Ph.D.
Abstract:The aim of this thesis is to propose and implement a new application programming interface for the libnetconf2 library, which allows for configuration of a NETCONF server based on the ietf-netconf-server YANG model. The approach begins with an analysis of both the library and the model, followed by their comparison. Based on the results of the comparison, I then designed a new configuration interface, which takes YANG data describing the NETCONF server configuration as input. The proposed solution enables configuring the server in two ways. The former approach preserves the existing configuration and adjusts it based on a special operation attribute. The latter approach entirely replaces the previous configuration with the new one. The proposed solution comprises of two phases --- the creation and the application of configuration data. The focus then shifts to implementation, identifying flaws in the design that arose during implementation, and testing, which was initially done using my own test suite and then using an existing open-source NETCONF server called netopeer2. Additionally, this thesis describes my contribution to an open-source project libssh as well as to the ietf-netconf-server YANG model draft itself. The primary outcome of this work is the the ability for users of the libnetconf2 library to configure their NETCONF server in a standardized manner, as well as the ability to share the NETCONF server configuration in the form of configuration data. The new configuration interface is now part of the libnetconf2's main branch.
configuration, API, libnetconf2, NETCONF, YANG
Date of defence
11.06.2024
Result of the defence
Defended (thesis was successfully defended)
Grading
A
Process of defence
Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm A.
Topics for thesis defence
- Diagram 5.1 - kolize v názvech v rámci stromu. Do jaké míry je zaručeno, že stejné názvy nikdy nebudou ve stejné úrovni stromu? Pokud to nelze zaručit, jakým způsobem by jste váš algoritmus upravil?
- Na jakém stroji jste vaši implementaci testoval? Jaké testy jste použil?
Language of thesis
Czech
Faculty
Department
Study programme
Information Technology (BIT)
Composition of Committee
doc. Ing. Petr Matoušek, Ph.D., M.A. (předseda)
Dr. Ing. Petr Peringer (člen)
Ing. Matěj Grégr, Ph.D. (člen)
doc. Ing. Michal Španěl, Ph.D. (člen)
Ing. Lukáš Kekely, Ph.D. (člen)
Supervisor’s report
Ing. Jiří Matoušek, Ph.D.
Grade proposed by supervisor: A
Reviewer’s report
doc. Ing. Tomáš Martínek, Ph.D.
Grade proposed by reviewer: B