Імплементація високонавантажених мережевих протоколів ІоТ систем

dc.contributor.advisorРемінний, Олександр Андрійович
dc.contributor.affiliationНаціональний університет "Львівська політехніка"
dc.contributor.authorШийка, Остап Андрійович
dc.contributor.authorShyika, Ostap Andriiovych
dc.coverage.placenameЛьвів
dc.date.accessioned2025-10-14T13:43:08Z
dc.date.created2024
dc.date.issued2024
dc.description.abstractУ кваліфікаційній роботі розроблено та реалізовано високопродуктивний HTTP-сервер, здатний ефективно обробляти вхідні мережеві запити за допомогою асинхронного неблокувального вводу-виводу на основі edge-triggered epoll. Особливістю цього сервера є застосування лише одного потоку обробки при збереженні високої продуктивності, що дозволяє обробляти понад 1100 запитів на секунду навіть при навантаженні 100 000 одночасно підключених клієнтів з рівнем конкурентності 20 000. На початковому етапі було проведено аналітичний огляд сучасних підходів до побудови високонавантажених серверів. Було розглянуто популярні підходи до мультиплексування вводу-виводу: select, poll, level-triggered epoll — та зроблено висновки щодо їх обмежень у контексті масштабованості, витрат на контекстні перемикання та енергоспоживання. Це дало підстави для обґрунтованого вибору саме edge-triggered epoll. З особливостей слід також зазначити, що були застосовані додаткові оптимізаційні архітектурні рішення для розподілення навантаження та keep-alive механізму. У практичній частині роботи реалізовано модульну архітектуру HTTP-сервера мовою програмування C, що включає: ? обробку запитів у неблокувальному режимі; ? підтримку HTTP протоколу відповідно до RFC 9110 [1], RFC 9112 [2], Chunked Transfer Coding та масштабовану обробку клієнтів. Для оцінки продуктивності використано Apache Benchmark (ab) — стандартний інструмент навантажувального тестування, який дозволяє змоделювати велику кількість одночасних клієнтів та проаналізувати стабільність, затримки та пропускну здатність реалізованого рішення. Отримані результати свідчать про високу ефективність розробленої системи: навіть за умов екстремально високої конкурентності система демонструє стабільну роботу та високу швидкодію. Економічна частина подає аналіз економічного ефекту від розробленого сервера. Висновок коротко підсумовує теоретичні та практичні наукові здобутки, які були отримані в процесі виконання роботи.
dc.description.abstractIn this qualification thesis, a high-performance HTTP server has been designed and implemented. It is capable of efficiently handling incoming network requests using asynchronous non-blocking input/output based on edge-triggered epoll. A distinctive feature of this server is the use of only a single processing thread while maintaining high throughput, allowing it to handle over 1100 requests per second even under a load of 100,000 simultaneously connected clients with a concurrency level of 20,000. At the initial stage, an analytical review of modern approaches to building highload servers was conducted. Common I/O multiplexing techniques were examined, including select, poll, and level-triggered epoll, and conclusions were drawn about their limitations in the context of scalability, context switching overhead, and power consumption. These findings formed the basis for the justified choice of edge-triggered epoll. Additional architectural optimization decisions were also applied to enable efficient load distribution and support for the keep-alive mechanism. In the practical part of the thesis, a modular HTTP server architecture was implemented in the C programming language, including: ? non-blocking request processing; ? support for the HTTP protocol according to RFC 9110 [1] and RFC 9112 [2], Chunked Transfer Coding, and scalable client handling. To evaluate performance, Apache Benchmark (ab) was used — a standard load testing tool that allows simulation of a large number of concurrent clients and provides analysis of the system’s stability, latency, and throughput. The results demonstrate the high efficiency of the developed system: even under extreme concurrency, the system maintains stable operation and high performance. The economic section presents an analysis of the economic impact of the developed server. The conclusion briefly summarizes the theoretical and practical scientific achievements obtained during the work.
dc.format.pages63
dc.identifier.citationШийка О. А. Імплементація високонавантажених мережевих протоколів ІоТ систем : кваліфікаційна робота на здобуття освітнього ступеня магістр за спеціальністю „6.122.00.09 — Системна інженерія (Інтернет речей)“ / Остап Андрійович Шийка. — Львів, 2024. — 63 с.
dc.identifier.urihttps://ena.lpnu.ua/handle/ntb/112271
dc.language.isouk
dc.publisherНаціональний університет "Львівська політехніка"
dc.relation.referencesenRFC 9110. URL: https://www.rfc-editor.org/rfc/rfc9110.html
dc.relation.referencesenRFC 9112. URL: https://www.rfc-editor.org/rfc/rfc9112.html
dc.rights.holder© Національний університет "Львівська політехніка", 2024
dc.rights.holder© Шийка, Остап Андрійович, 2024
dc.subject6.122.00.09
dc.subjectHTTP
dc.subjectepoll
dc.subjectклієнт
dc.subjectсервер. високонавантажені системи
dc.subjectоптимізація. Перелік використаних джерел: 1. RFC 9110. URL: https://www.rfc-editor.org/rfc/rfc9110.html 2. RFC 9112. URL: https://www.rfc-editor.org/rfc/rfc9112.html
dc.subjectHTTP
dc.subjectepoll
dc.subjectclient
dc.subjectserver
dc.subjecthigh-load systems
dc.subjectoptimization. 7
dc.titleІмплементація високонавантажених мережевих протоколів ІоТ систем
dc.title.alternativeImplementation of High-Performance Network Protocols for IoT Systems
dc.typeStudents_diploma

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
2024_61220009_Shyika_Ostap_Andriiovych_277919.pdf
Size:
1.64 MB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
2.91 KB
Format:
Plain Text
Description: