Подготовка курса Моделирование сетей передачи данных
Курс Моделирование сетей передачи данных.
Содержание
1 Предназначение курса
- Курс описывает не аналитическое моделирование (modeling) сетей, а моделирование путём создания натурного стенда на основе виртуализации (simulation).
- Изучается не теоретическая, а операциональная часть модели.
2 Информация по предмету
- Наименование дисциплины: Моделирование сетей передачи данных
- Объем курса:
- 4 кредита,
- 144 часа
- контактные часы: 54 часа
- самостоятельная работа: 63 часа
- контроль: 27 часов
- Курс: 4
- Семестр: 7
- Модуль: 14 (E)
- Продолжительность курса: 9 недель
- Лекции: 18 часов (2 часа/нед)
- Лабораторные работы: 36 часов (4 часа/нед)
3 БРС
| Активность | Количество | Баллы за единицу | Общие баллы |
|---|---|---|---|
| А1.1 | 14 | 3 | 42 |
| А1.2 | 14 | 2 | 28 |
| А2 | 8 | 1 | 8 |
| А3 | 1 | 12 | 12 |
| A4 | 1 | 10 | 10 |
| 100 |
Активности
- А1.1: Лабораторные работы. Выполнение.
- А1.2: Лабораторные работы. Самопроверка и взаимопроверка.
- А2: Тесты к лекциям работам.
- А3: Доклады по темам.
- A4: Итоговый контроль знаний (тест).
Разделы
- Р1: Введение в моделирование сетей передачи данных
- Р2: Моделирование производительности сетей передачи данных
Темы
- T1. Генерация трафика.
- T2. Эмуляция сетей.
- T3. Настройка пропускной способности сети.
- T4. Управление перегрузкой TCP.
- T5. Задержки и размер буфера TCP.
- T6. Повышение пропускной способности TCP.
- T7. Буферы маршрутизатора.
- T8. Контроль скорости TCP.
4 Активности
4.1 Лабораторные работы
4.2 Лекции
- Современные технологии межсетевого уровня IP.
- Параметры TCP.
- Формирование трафика на границе сети.
- Назначение, разновидности и основные функции маршрутизаторов.
- Динамическая маршрутизация.
- Статическая маршрутизация.
- Качество сетевого обслуживания (QoS).
- Средства QoS коммуникационного узла. Протоколы сигнализации QoS и службы QoS IP-уровня.
4.3 Темы докладов
- Обзор возможностей системы моделирования Mininet.
- Генераторы трафика. Особенности в разных системах моделирования.
- Эмуляция сетей передачи данных: особенности моделирования задержки передачи данных.
- Эмуляция сетей передачи данных: особенности моделирования потери, дублирования, переупорядочивания пакетов.
- Обзор алгоритмов управления трафиком:
- Алгоритм скользящего временного окна с 2 цветным маркером (Time Sliding Window with Two Color Marking).
- Алгоритм трёхцветного маркера для одного входящего потока (A Single Rate Three Color Marker).
- Двухпараметровый трёхцветный маркер (Two Rate Three Color Marker).
- Token Bucket Filter (TBF) или «маркерное ведро».
- Обзор алгоритмов управления перегрузками:
- Механизм приоритетной обработки трафика (Priority Queue).
- Алгоритм стохастического справедливого обслуживания (Stochastic Fairness Queueing, SFQ).
- Алгоритм взвешенного обслуживания (Weighted Queuing, WQ).
- Взвешенное справедливое обслуживание (Weighted Fair Queuing, WFQ).
- Алгоритм обработки очередей с малой задержкой (Low Latency Queuing, LLQ).
- Дисциплина взвешенного циклического обслуживания (Weighted Round Robin, WRR).
- Алгоритмы избежания перегрузок: обзор различных алгоритмов случайного раннего обнаружения (Random Early Detect, RED) перегрузки.
- Особенности различных типов протокола TCP (TCP Tahoe, TCP Reno, TCP New Reno, TCP Vegas, TCP Westwood).
- Обзор моделей TCP: TCP Hybla, BIC-TCP, CUBIC TCP, TCP Illinois, TCP-Veno.
- Традиционное управление перегрузкой TCP: HTCP, Cubic, Reno.
- Управление перегрузкой TCP на основе скорости: BBR.
- Задержки и размер буфера TCP.
- Повышение пропускной способности TCP с помощью параллельных потоков.
- Измерение справедливости TCP.
- Контроль скорости TCP.
- Влияние MSS на пропускную способность.
5 Программа для РПД
5.1 Генерация трафика
Методы создания искусственного сетевого трафика, приближенного к реальному. Рассматриваются классические модели источников: постоянный битрейт (CBR), переменный битрейт (VBR) и самоподобный трафик (на основе распределений Парето или дробного броуновского движения). Обсуждаются статистические характеристики: интервалы между пакетами, размеры пакетов, пуассоновский и взрывной (on/off) режимы. Демонстрируются утилиты и фреймворки для генерации трафика (Iperf, D-ITG, TRex), а также методы калибровки параметров под реальные данные.
5.2 Эмуляция сетей
Принципы эмуляции как промежуточного звена между моделированием и натурным экспериментом. Объясняется отличие эмуляции от симуляции: реальный стек протоколов работает с виртуальными сетевыми интерфейсами и управляемыми задержками/потерями. Изучаются популярные эмуляционные среды (Mininet, GNS3, NetEm, CORE). Обсуждаются возможности внесения искажений: фиксированные и вариативные задержки, джиттер, потеря пакетов, дублирование, изменение порядка. Затрагиваются вопросы масштабируемости и интеграции эмуляторов с реальным оборудованием.
5.3 Настройка пропускной способности сети
Методы управлением пропускной способностью в сетевых экспериментах. Обсуждаются программные и аппаратные ограничители скорости: tc (Linux traffic control), шейперы на базе HTB, TBF, полицеры на основе RED/token bucket. Рассматривается настройка полосы на маршрутизаторах и коммутаторах с использованием ACL, QoS классов, CBWFQ. Демонстрируется измерение реальной пропускной способности с помощью iperf и netperf, учёт протокольных накладных расходов (Ethernet, IP, TCP). Обсуждается влияние конкурирующих потоков на эффективную пропускную способность.
5.4 Управление перегрузкой TCP
Анализ механизмов управления перегрузкой TCP (congestion control) как ключевой элемент стабильности Интернета. Рассматриваются классические алгоритмы: Tahoe (Slow Start, Congestion Avoidance, Fast Retransmit), Reno (Fast Recovery), NewReno. Изучаются фазы медленного старта и избегания перегрузки, переменные cwnd (окно перегрузки) и ssthresh. Демонстрируется реакция TCP на потерю пакетов (тайм-аут, тройной ACK). Обсуждаются современные алгоритмы: Cubic (по умолчанию в Linux), BBR (модель на основе измерений полосы и RTT).
5.5 Задержки и размер буфера TCP
Связь задержки в сети (RTT) и размера буферов маршрутизаторов с производительностью TCP. Обсуждается формула «правило полосы задержки» (bandwidth-delay product, BDP) для определения необходимого размера окна. Анализируется проблема Bufferbloat — чрезмерное буферизация, приводящее к высоким задержкам (RTT) при невысокой потере пакетов. Рассматриваются алгоритмы активного управления очередью (AQM), такие как CoDel и PIE, которые ограничивают задержку. Экспериментально демонстрируется влияние размера буфера на пропускную способность и время отклика.
5.6 Повышение пропускной способности TCP
Изучаются методы увеличения эффективной пропускной способности TCP в высокоскоростных и длиннотяжёлых сетях (большое BDP). Рассматриваются модификации: TCP Window Scaling (опция масштабирования окна), Selective Acknowledgment (SACK) для выборочного подтверждения, TCP Timestamps (защита от обёртки номера последовательности). Обсуждаются высокоскоростные алгоритмы: H-TCP, Scalable TCP, FAST TCP, а также проблема честности (fairness) при совместной работе с классическими реализациями. Анализируется влияние аппаратного ускорения (checksum offload, TSO, LRO) на пропускную способность.
5.7 Очередь в маршрутизаторе
Дисциплины обслуживания очередей (queueing disciplines) в маршрутизаторах и коммутаторах. Рассматриваются простейшие схемы: FIFO (первым пришёл — первым обслужен), приоритетная очередь (PQ), взвешенное справедливое обслуживание (WFQ). Изучаются механизмы предотвращения переполнения очереди: RED (Random Early Detection) и его варианты (WRED, ARED). Анализируются параметры RED (min_th, max_th, max_p) и влияние на поведение TCP. Демонстрируется настройка очередей в Linux (tc) и Cisco. Обсуждается измерение длины очереди и задержки в реальном времени.
5.8 Контроль скорости TCP
Методы внешнего управления скоростью передачи TCP-потоков, помимо встроенного механизма перегрузки. Рассматриваются шейперы на отправителе (через изменение cwnd с помощью BPF-программ или библиотеки libtcp), прокси-серверы (TCP Splitting), применение AQM с ECN (явное уведомление о перегрузке) для передачи сигнала о снижении скорости. Обсуждается протокол TCP BBR (Bottleneck Bandwidth and RTT) как альтернативный подход, моделирующий оптимальную точку работы на графике полоса–задержка. Затрагивается контроль скорости на стороне приложения (адаптивное видео, pacing) и его взаимодействие с сетевыми механизмами.
6 Переработка курса
- Сети. Натурное моделирование
- Статья: Воспроизводимые исследования при моделировании сетей
- Предложено отказаться от Mininet.
- Поскольку поддержка его оставляет желать лучшего.
- Также есть желание добавить имитационное моделирование.
6.1 Модуль 1. Введение в экспериментальную методологию
6.1.1 Лабораторная работа №1. Знакомство с инструментами и воспроизводимость эксперимента
- Инструменты: Kathará, ns-3, iperf3, Python (pandas, matplotlib).
- Цель: Освоить базовые принципы работы с эмулятором и симулятором, научиться проводить воспроизводимые измерения.
- Постановка задачи:
- Установить Kathará и ns-3, запустить простейшие сценарии («Hello, World!»).
- В Kathará собрать эмуляцию сети «клиент-сервер» с одним маршрутизатором.
- В ns-3 создать аналогичную симуляцию сети «точка-точка».
- В обоих инструментах измерить пропускную способность TCP с помощью iperf3 (Kathará) и встроенного приложения BulkSend (ns-3).
- Варьируемые параметры: Количество запусков (5, 10, 20).
- Метрики: Средняя пропускная способность, стандартное отклонение, доверительный интервал.
- Эксперимент: Провести серию из 20 запусков в каждом инструменте, рассчитать среднее и доверительный интервал.
- Анализ: Построить гистограммы распределения пропускной способности для Kathará и ns-3. Сравнить разброс результатов.
- Выводы:
- Какой инструмент дает более стабильные результаты?
- Как обеспечить воспроизводимость эксперимента?
6.1.2 Лабораторная работа №2. Влияние параметров канала на пропускную способность
- Инструменты: Kathará, tc (NetEm), iperf3.
- Цель: Исследовать совместное влияние задержки и потерь пакетов на пропускную способность TCP и UDP.
- Постановка задачи: Собрать эмуляцию сети «клиент-сервер» с возможностью управления параметрами канала через tc.
- Варьируемые параметры:
- Задержка: 5, 10, 20, 50, 100 мс.
- Вероятность потерь: 0%, 0.1%, 0.5%, 1%, 2%.
- Метрики: Пропускная способность TCP (Mbps), пропускная способность UDP (Mbps), джиттер.
- Эксперимент: Для каждой комбинации (задержка × потери) провести по 10 запусков, усреднить результаты.
- Анализ: Построить тепловую карту (heatmap) зависимости пропускной способности от задержки и потерь для TCP и UDP. Построить 3D-график.
- Выводы:
- Как потери и задержка совместно влияют на TCP и UDP?
- Почему TCP более чувствителен к потерям?
- При каких условиях UDP оказывается предпочтительнее?
6.2 Модуль 2. Исследование транспортного уровня
6.2.1 Лабораторная работа №3. Влияние размера окна TCP на пропускную способность в “длинном жирном канале”
- Инструменты: Kathará, iperf3, настройка параметров ядра Linux (sysctl).
- Цель: Исследовать влияние размера окна TCP на пропускную способность при большой задержке.
- Гипотеза: При большой задержке (RTT = 100 мс) пропускная способность TCP лимитируется размером окна, и увеличение окна (window scaling) повышает throughput до насыщения.
- Эксперимент:
- Установить канал с задержкой 100 мс и отсутствием потерь.
- Менять максимальный размер окна TCP (через
net.ipv4.tcp_rmem,net.ipv4.tcp_wmem) от 64 КБ до 16 МБ. - Для каждого значения измерить пропускную способность iperf3.
- Данные: Построить график
Throughput vs. Window Size. - Выводы:
- Сравнить с теоретической формулой
Throughput ≤ Window / RTT. - Где наступает насыщение?
- Есть ли ограничения со стороны оборудования или операционной системы?
- Сравнить с теоретической формулой
6.2.2 Лабораторная работа №4. Сравнение алгоритмов управления перегрузкой TCP в условиях случайных потерь
- Инструменты: Kathará, NetEm, iperf3, анализ PCAP (Wireshark/tcpdump).
- Цель: Сравнить поведение алгоритмов TCP Cubic и Reno в условиях случайных потерь.
- Гипотеза: Cubic более устойчив к потерям, чем Reno, при больших задержках, так как он менее агрессивно уменьшает окно.
- Эксперимент:
- Настроить канал с задержкой 20 мс.
- Варьировать потери: 0.0%, 0.1%, 0.3%, 0.5%, 1.0%.
- Для каждого уровня потерь провести замеры с алгоритмом Reno (переключение через
net.ipv4.tcp_congestion_control) и Cubic. - Захватить трафик (tcpdump) и построить график изменения размера окна во времени для одного уровня потерь.
- Метрики: Средняя пропускная способность, количество повторных передач (retransmissions), справедливость (при двух параллельных потоках).
- Анализ: Построить графики
Throughput vs. Loss Rateдля Reno и Cubic. Построить график изменения окна TCP во времени. - Выводы:
- Какой алгоритм обеспечивает более высокую среднюю скорость при высоких потерях? Почему?
- Как это связано с механизмами AIMD?
6.2.3 Лабораторная работа №5. Анализ поведения TCP в условиях переменной задержки (мобильные сети)
- Инструменты: ns-3 (модуль PointToPoint с изменяемой задержкой, мобильность).
- Цель: Исследовать, как TCP реагирует на быстрые изменения RTT, характерные для мобильных сетей.
- Гипотеза: Резкие изменения RTT приводят к ложным срабатываниям механизма управления перегрузкой и снижению пропускной способности.
- Эксперимент:
- Создать симуляцию с двумя узлами, где задержка канала меняется по синусоидальному закону (имитация движения).
- Запустить TCP-передачу.
- Измерить пропускную способность и RTT во времени.
- Метрики: Мгновенная пропускная способность, RTT, размер окна.
- Анализ: Построить графики изменения RTT, окна и пропускной способности во времени на одном рисунке.
- Выводы:
- Как TCP адаптируется к переменной задержке?
- Какие механизмы позволяют смягчить негативные эффекты?
6.3 Модуль 3. Исследование уровня сети и маршрутизации
6.3.1 Лабораторная работа №6. Влияние метрик OSPF на распределение трафика и время сходимости
- Инструменты: Kathará, FRRouting, ping, traceroute, Python-скрипты для измерения времени.
- Цель: Исследовать, как изменение стоимости (cost) интерфейсов OSPF влияет на распределение трафика и время сходимости при отказе.
- Гипотеза: Изменение cost позволяет балансировать трафик между несколькими путями, но увеличивает время сходимости при отказе.
- Эксперимент:
- Собрать топологию из 5 маршрутизаторов с двумя альтернативными путями.
- Назначить разные cost так, чтобы один путь был предпочтительным.
- Измерить пропускную способность между двумя хостами при разных cost.
- Имитировать отказ предпочтительного канала (отключить интерфейс) и замерить время сходимости (потерю пакетов) с помощью ping с интервалом 0.1 с.
- Данные: Построить график изменения задержки и потерь во времени при отказе. Сравнить время сходимости для разных настроек таймеров OSPF (hello, dead).
- Выводы:
- Как влияет стоимость на распределение трафика?
- Как таймеры OSPF влияют на время восстановления?
- Есть ли компромисс между балансировкой и временем сходимости?
6.3.2 Лабораторная работа №7. Сравнение протоколов маршрутизации в масштабируемой сети (OSPF vs. BGP)
- Инструменты: Kathará, FRRouting (OSPF, BGP).
- Цель: Сравнить поведение протоколов внутренней (OSPF) и внешней (BGP) маршрутизации в условиях изменения топологии.
- Гипотеза: BGP обеспечивает более гибкую политику маршрутизации, но медленнее сходится при отказах, чем OSPF.
- Эксперимент:
- Собрать топологию из двух автономных систем (AS), каждая с несколькими маршрутизаторами.
- Внутри каждой AS настроить OSPF, между AS — BGP.
- Имитировать отказ канала внутри AS и между AS.
- Измерить время сходимости и изменение таблиц маршрутизации.
- Метрики: Время сходимости, количество анонсированных маршрутов, размер таблицы маршрутизации.
- Анализ: Построить временные диаграммы изменения доступности сетей при отказах.
- Выводы:
- В каких сценариях предпочтительнее использовать OSPF, а в каких — BGP?
- Какова роль политик в BGP?
6.3.3 Лабораторная работа №8. Исследование алгоритмов маршрутизации в сетях с ячеистой топологией (Mesh)
- Инструменты: ns-3 (модуль Mesh, WiFi).
- Цель: Сравнить производительность проактивных (HWMP) и реактивных протоколов маршрутизации в беспроводных ячеистых сетях.
- Гипотеза: В статической ячеистой сети проактивный протокол (HWMP) обеспечивает меньшую задержку, но создает больший служебный трафик, чем реактивный.
- Эксперимент:
- Создать симуляцию ячеистой сети из 10–20 узлов (например, сетка 4×4).
- Настроить протоколы HWMP (proactive) и AODV (reactive).
- Генерировать трафик между случайными парами узлов.
- Метрики: Средняя задержка, PDR (Packet Delivery Ratio), служебный трафик (routing overhead), пропускная способность.
- Анализ: Построить графики зависимости метрик от числа узлов и интенсивности трафика.
- Выводы:
- Какой протокол лучше подходит для статических ячеистых сетей?
- Как масштабируемость влияет на производительность?
6.4 Модуль 4. Имитационное моделирование: очереди и управление перегрузками
6.4.1 Лабораторная работа №9. Влияние размера буфера на пропускную способность и задержку при множестве TCP-потоков
- Инструменты: ns-3 (PointToPoint, QueueDisc).
- Цель: Исследовать влияние размера буфера маршрутизатора на производительность сети с множеством TCP-потоков.
- Гипотеза: Увеличение буфера повышает пропускную способность (меньше потерь из-за переполнения), но резко увеличивает задержку (эффект «буферизации» — bufferbloat).
- Эксперимент:
- Топология: N клиентов (N = 5, 10, 20) → 1 маршрутизатор (с буфером) → 1 сервер.
- Варьировать размер буфера: 5, 10, 20, 50, 100, 200 пакетов.
- Запускать одновременную передачу от всех клиентов (FTP-подобный трафик).
- Метрики: Средняя пропускная способность на всех потоках, средняя задержка, коэффициент потерь, справедливость (индекс Джини).
- Анализ: Построить графики
Throughput vs. Buffer SizeиAverage Delay vs. Buffer Sizeдля разных N. - Выводы:
- Есть ли оптимальный размер буфера?
- Объяснить с точки зрения теории массового обслуживания (M/M/1/K).
- Как число потоков влияет на оптимальный размер буфера?
6.4.2 Лабораторная работа №10. Сравнение алгоритмов управления очередями (DropTail vs. RED vs. CoDel)
- Инструменты: ns-3 (модуль QueueDisc).
- Цель: Сравнить производительность алгоритмов управления очередями DropTail, RED и CoDel в условиях высокой загрузки.
- Гипотеза: CoDel и RED позволяют снизить среднюю задержку и избежать глобальной синхронизации TCP, но ценой небольшого снижения пропускной способности.
- Эксперимент:
- Топология: 20 TCP-потоков, проходящих через один узел.
- Настроить DropTail, RED (с различными
min_th,max_th,max_p) и CoDel. - Измерить задержку, джиттер, пропускную способность, количество потерянных пакетов.
- Метрики: Средняя задержка, джиттер, пропускная способность, количество потерянных пакетов, CDF задержки.
- Анализ: Построить CDF (кумулятивные функции распределения) задержки для каждого алгоритма. Сравнить пропускную способность при высокой загрузке (90–95%).
- Выводы:
- Какой алгоритм предпочтительнее для голосового трафика? Для данных?
- Как RED и CoDel решают проблему bufferbloat?
6.5 Модуль 5. Беспроводные и мобильные сети
6.5.1 Лабораторная работа №11. Влияние скорости движения узлов на производительность протоколов маршрутизации MANET
- Инструменты: ns-3 (модули WiFi, Mobility, AODV, OLSR).
- Цель: Сравнить производительность проактивного (OLSR) и реактивного (AODV) протоколов маршрутизации в мобильных ad-hoc сетях.
- Гипотеза: При высокой мобильности реактивный AODV будет иметь больший PDR, чем проактивный OLSR, из-за быстрой адаптации, но ценой большей задержки и служебного трафика.
- Эксперимент:
- Сеть из 50 узлов, случайно перемещающихся в области 1000×1000 м (модель Random Waypoint).
- Варьировать максимальную скорость: 0, 2, 5, 10, 20 м/с.
- Для каждого протокола и скорости измерить метрики.
- Метрики: PDR (Packet Delivery Ratio), средняя задержка, служебный трафик (routing overhead).
- Анализ: Построить графики зависимости PDR, Delay, Overhead от скорости для AODV и OLSR.
- Выводы:
- Для каких сценариев (стационарных, мобильных) какой протокол предпочтительнее?
- Какова цена адаптации в AODV?
6.5.2 Лабораторная работа №12. Моделирование сотовой сети LTE: влияние числа абонентов и планировщика
- Инструменты: ns-3 (модуль LTE, EPC).
- Цель: Исследовать влияние числа абонентских устройств (UE) и типа планировщика на пропускную способность и задержку в сети LTE.
- Гипотеза: Увеличение числа UE ведет к снижению средней пропускной способности на пользователя, но общая пропускная способность растет до насыщения. Планировщик Proportional Fair (PF) обеспечивает лучший баланс между пропускной способностью и справедливостью, чем Round Robin (RR).
- Эксперимент:
- Одна базовая станция (eNodeB), количество UE от 1 до 100.
- Каждое UE генерирует UDP-трафик с постоянной скоростью.
- Протестировать планировщики: RR и PF.
- Метрики: Средняя и суммарная пропускная способность, средняя задержка, справедливость (индекс Джини).
- Анализ: Построить графики зависимости суммарной пропускной способности и задержки от числа UE для RR и PF.
- Выводы:
- Определить точку насыщения для каждого планировщика.
- Какой планировщик обеспечивает более справедливое распределение ресурсов?
- Объяснить с учетом механизмов планирования.
6.6 Модуль 6. Продвинутые темы: SDN, безопасность, гибридное моделирование
6.6.1 Лабораторная работа №13. Эмуляция SDN-сети с P4-коммутаторами
- Инструменты: Kathará + P4 (поведенческая модель BMv2), контроллер (например, ONOS или Ryu).
- Цель: Изучить принципы программируемых сетей (P4) и эмуляцию SDN с помощью Kathará.
- Постановка задачи:
- Собрать эмуляцию сети с несколькими P4-коммутаторами и хостами.
- Написать простую P4-программу, реализующую пересылку на основе MAC-адресов (L2-коммутатор).
- Подключить контроллер для управления таблицами пересылки.
- Модифицировать P4-программу для реализации маршрутизации на основе IP-адресов (L3).
- Варьируемые параметры: Тип пересылки (L2 vs. L3), количество правил в таблицах.
- Метрики: Пропускная способность, задержка, время установки потока.
- Эксперимент: Измерить задержку и пропускную способность при L2- и L3-пересылке. Сравнить с традиционной маршрутизацией.
- Анализ: Построить графики задержки и пропускной способности для разных типов пересылки.
- Выводы:
- В чем преимущества P4-коммутаторов?
- Каковы накладные расходы на программируемость?
6.6.2 Лабораторная работа №14. Гибридная эмуляция: интеграция Kathará и ns-3 через TapBridge
- Инструменты: Kathará, ns-3 (с EmuNetDevice или TapBridge).
- Цель: На практике реализовать гибридный подход, объединяющий натурную эмуляцию (реальные стеки протоколов) и имитационное моделирование (масштабируемая симулированная сеть).
- Гипотеза: Гибридный стенд позволяет тестировать реальное сетевое приложение (например, видеоконференцию) в условиях масштабируемой симулированной среды с контролируемыми параметрами.
- Эксперимент:
- В Kathará поднять два хоста с реальным стеком TCP/IP.
- В ns-3 создать симуляцию большой транзитной сети (например, 100 узлов с P2P-каналами).
- Соединить хосты Kathará с симуляцией через TapBridge так, чтобы их трафик проходил через симулированную сеть.
- Запустить iperf3 между хостами и измерить пропускную способность при разных уровнях кросс-трафика в симулированной сети.
- Для верификации повторить эксперимент в чистой симуляции ns-3 с аналогичными параметрами.
- Метрики: Пропускная способность, задержка, потери пакетов.
- Анализ: Сравнить пропускную способность, полученную через гибридный стенд, с результатами чистой симуляции. Построить графики зависимости пропускной способности от уровня кросс-трафика.
- Выводы:
- Насколько точно эмуляция отражает поведение симуляции?
- Каковы ограничения гибридного подхода (накладные расходы, синхронизация)?
- В каких задачах гибридное моделирование незаменимо?
6.7 Рекомендации по оформлению отчетов
- Каждая лабораторная работа должна оформляться как научный отчет, содержащий:
- Введение: Цель, гипотеза, краткое описание методологии.
- Описание эксперимента: Топология, варьируемые параметры, метрики, количество запусков.
- Результаты: Таблицы с данными, графики (с подписями осей и легендой), доверительные интервалы.
- Анализ: Интерпретация графиков, сравнение с теорией.
- Выводы: Подтверждение или опровержение гипотезы, практические рекомендации.
- Приложение: Код скриптов (для ns-3) или конфигурационные файлы (для Kathará).
7 Оценивание
8 Ресурсы
8.1 Запись занятий
- Rutube: Моделирование сетей передачи данных
- VKvideo: Моделирование сетей передачи данных
- Платформа: Моделирование сетей передачи данных
- Youtube: Моделирование сетей передачи данных
- Телемост
