Оригинальность по АП.Вуз на 26 февраля 2023 года более 70%.
Оригинал документа в pdf, конвертация в Word автоматическая (в word могут быть недочеты, которые вы легко исправите самостоятельно).
Актуальность темы работы обусловлена интересом исследователей к изучению задач
моделирования процессов передачи даннах в компьютерных сетях. Реальное сетевое
оборудование дорого использовать для развёртывания экспериментальных стендов. В
качестве альтернативного решения есть несколько программ, например GNS3, Cisco
Packet Tracer, Putty Secure CRT, моделирующих оборудование сетей передачи данных.
Но не все средства имитационного моделирования сетей передачи данных позволяют
собирать данные с построенных в них моделях сетей.
Цель работы
Целью выпускной работы является демонстрация применимости Mininet в качестве
инструмента имитационного и натурного моделирования сетей передачи данных.
Задачи работы
Основными задачами данной работы являются:
1. Установка Mininet на рабочую станцию и моделирование простой сети.
2. Развёртывание экспериментального стенда с Mininet для воспроизведения экспе-
риментов.
3. Воспроизведение экспериментов с атаками на TCP-стек посредством моделирова-
ния в Mininet.
Для исследования применяются средства имитационного и натурного моделирования,
в частности Mininet.
Апробация работы
В ходе выполнения работы были получены результаты, представленные на XII Всерос-
сийской конференции с международным участием «Информационно-телекоммуникационные
технологии и математическое моделирование высокотехнологичных систем 2022» (ITTMM-
2022), 2022, (Москва, Россия, Российский университет дружбы народов).
Публикации
По теме выпускной квалификационной работы опубликован тезис [3].
Структура работы
Работа состоит из введения, трех глав, заключения, списка литературы.
Во введении отражена проблематика выбранной темы, актуальность данного иссле-
дования в современном мире, поставлены цели и задачи данной работы.
В первой части выполнен обзор литературных источников, посвященных теме вы-
пускной работы.
Во второй части описана установка Mininet, принцип работы Mininet для модели-
рования и проектирования реалистичных виртуальных сетей, работающих с реальным
ядром, коммутатором и кодом приложений на одной машине.
Третья часть посвящена моделированию процессов передачи данных в компьютер-
ных сетях на базе протокола TCP. Рассмотрены два эксперимента с атаками на стек
протоколов TCP.
В заключении сделаны основные выводы по результатам проведенных эксперимен-
тов.
В приложении приведено аннотирование описание фрагментов скриптов из экспери-
ментов.
Список используемых сокращений 3
Введение 4
1 О моделировании TCP/IP-сетей и воспроизводимости исследований 6
1.1 TCP и управление перегрузкой . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 О воспроизводимости исследований . . . . . . . . . . . . . . . . . . . . . . 9
1.3 Mininet как средство моделирования и анализа сетей передачи данных . 11
2 Развёртывание экспериментального стенда Mininet 14
2.1 Установка и настройка Mininet . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2 Описание синтаксиса моделирования простой сети в Mininet . . . . . . . 16
2.3 Установка и настройка Mininet в виртуальной среде . . . . . . . . . . . . 18
3 Воспроизведение исследований с помощью mininet 20
3.1 Краткое описание исходной модели . . . . . . . . . . . . . . . . . . . . . . 20
3.2 Воспроизведение эксперимента с атакой на оптимистический ACK некор-
ректно работающим TCP-приемником . . . . . . . . . . . . . . . . . . . . 21
3.3 Воспроизведение эксперимента с атаками на уровне TCP: управление пе-
регрузкой TCP с некорректно работающим TCP-приемником . . . . . . . 25
Заключение 28
A 29
A.1 Аннотированное описание скриптов проекта
misbehaving-receiver.git . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
A.2 Аннотированное описание скриптов проекта cs244-final-project . . . . . . 34
[1] Mininet. — URL: http://mininet.org/.
[2] Savage Stefan, Cardwell Neal, Wetherall David, Anderson Tom. TCP congestion control
with a misbehaving receiver // ACM SIGCOMM Computer Communication Review. —
1999. — Vol. 29, no. 5. — P. 71–78.
[3] Ассан Акосси Ж.-С. Применение Mininet для воспроизведения исследований сете-
вых протоколов и алгоритмов // Информационно-телекоммуникационные техно-
логии и математическое моделирование высокотехнологичных систем: материалы
Всероссийской конференции с международным участием. Москва, РУДН, 17–23
апреля 2022 г. — М. : РУДН, 2022.
[4] Transmission Control Protocol. — RFC 793. — 1981. — Sep. — URL: https://www.
[5] Braden Robert T. Requirements for Internet Hosts — Communication Layers. — RFC
1122. — 1989. — Oct. — URL: https://www.rfc-editor.org/info/rfc1122.
[6] Floyd Sally, Ramakrishnan Dr. K. K., Black David L. The Addition of Explicit
Congestion Notification (ECN) to IP. — RFC 3168. — 2001. — Sep. — URL: https:
//www.rfc-editor.org/info/rfc3168.
[7] Gont Fernando, Bellovin Steven. Defending against Sequence Number Attacks. — RFC
6528. — 2012. — Feb. — URL: https://www.rfc-editor.org/info/rfc6528.
[8] Gurtov Andrei, Henderson Tom, Floyd Sally, Nishida Yoshifumi. The NewReno
Modification to TCP’s Fast Recovery Algorithm. — RFC 6582. — 2012. — Apr. — URL:
https://www.rfc-editor.org/info/rfc6582.
[9] Stevens W. Richard. TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast
Recovery Algorithms. — RFC 2001. — 1997. — Jan. — URL: https://www.rfc-editor.
org/info/rfc2001.
[10] Paxson Dr. Vern, Allman Mark, Stevens W. Richard. TCP Congestion Control. — RFC
2581. — 1999. — Apr. — URL: https://www.rfc-editor.org/info/rfc2581.
[11] Partridge Dr. Craig, Allman Mark, Floyd Sally. Increasing TCP’s Initial Window. —
RFC 3390. — 2002. — Nov. — URL: https://www.rfc-editor.org/info/rfc3390.
[12] Blanton Ethan, Paxson Dr. Vern, Allman Mark. TCP Congestion Control. — RFC
5681. — 2009. — Sep. — URL: https://www.rfc-editor.org/info/rfc5681.
[13] Gu Yunhong, Grossman Robert L. UDT: An Application Level Transport Protocol for
Grid Computing // Second International Workshop on Protocols for Fast Long-Distance
Network. — 2004.
[14] Guojun Jin. Packet drop avoidance for high-speed network transmission protocol //
ITRE 2004. 2nd International Conference Information Technology: Research and
Education. — 2004. — P. 1–5.
[15] Leith Douglas J., Shorten Robert N. Next Generation TCP: Open Questions // Proc.
PFLDnet. — 2008.
[16] Hacker T., Smith P. Building a Network Simulation Model of the TeraGrid Network //
TeraGrid 2008 Conference. — 2008.
[17] Floyd Sally. HighSpeed TCP for Large Congestion Windows. — RFC 3649. — 2003. —
Dec. — URL: https://www.rfc-editor.org/info/rfc3649.
[18] Kelly Tom. Scalable TCP: Improving Performance in Highspeed Wide Area Networks //
SIGCOMM Comput. Commun. Rev. — 2003. — apr. — Vol. 33, no. 2. — P. 83–91. — URL:
https://doi.org/10.1145/956981.956989.
[19] Leith Douglas, Shorten Robert. H-TCP: TCP for high-speed and long-distance
networks // Proc. PFLDnet, Argonne. — 2004.
[20] Wei David X., Jin Cheng, Low Steven H., Hegde Sanjay. FAST TCP: Motivation,
Architecture, Algorithms, Performance // IEEE/ACM Transactions on Networking. —
2006. — Vol. 14, no. 6. — P. 1246–1259.
[21] TCP congestion control. — URL: https://en.wikipedia.org/wiki/TCP_congestion_
control.
[22] Mills K. L. Study of Proposed Internet Congestion Control Mechanisms. NIST special
publication. — DIANE Publishing Company, 2011. — ISBN: 9781437938999. — URL:
https://books.google.ru/books?id=0iQlXJvCRe8C.
[23] Welzl Michael. Network Congestion Control: Managing Internet Traffic. — Wiley, 2005.
[24] Jacobson V. Congestion Avoidance and Control // Symposium Proceedings on
Communications Architectures and Protocols. — SIGCOMM ’88. — New York, NY,
USA : Association for Computing Machinery, 1988. — P. 314–329. — URL: https:
//doi.org/10.1145/52324.52356.
[25] Stevens W. Richard. TCP/IP Illustrated. — Addison Wesley, 1994. — Vol. 1.
[26] Alston Jesse M., Rick Jessica A. A Beginner’s Guide to
Conducting Reproducible Research // The Bulletin of the Ecological
Society of America. — 2021. — Vol. 102, no. 2. — P. e01801. —
https://esajournals.onlinelibrary.wiley.com/doi/pdf/10.1002/bes2.1801.
[27] Parr C. S., and M. P. Cummings. Data sharing in ecology and evolution // Trends in
Ecology & Evolution. — Vol. 20.
[28] Roche D. G., Kruuk L. E. B., Lanfear R., Binning S. A. Public data archiving in ecology
and evolution: How well are we doing? // PLOS Biology. — Vol. 13:e1002295.
[29] Mislan K. A. S., Heer J. M., White E. P. Elevating the status of code in ecology //
Trends in Ecology & Evolution. — Vol. 31. — P. 4–7.
[30] Wickham H. Tidy data // Journal of Statistical Software. — 2014. — Vol. 59. — P. 1–23.
[31] Noble W. S. A quick guide to organizing computational biology projects // PLOS
Computational Biology. — 2009. — Vol. 5:e1000424.
[32] Marwick B., Boettiger C., Mullen L. Packaging data analytical work reproducibly using
R (and friends) // American Statistician. — 2018. — Vol. 72. — P. 80–88.