В этой статье цикла мы обратим свое внимание на средства вывода результатов моделирования и классификацию примеров моделирования, прилагаемых к модулю Satellite.

Глава 7. Вывод результатов моделирования

Модуль Satellite способен выводить логи, специфичные для классов, путем включения объектов ns-3 LogComponent с различными уровнями логирования, обычно LOG_LEVEL_INFO. Для получения дополнительной информации о системе логирования, пожалуйста, обратитесь к главам руководства NS-3 по логированию. Модуль поддерживает набор статистики с использованием фреймворка сбора данных (Data Collection Framework, DCF). Доступная статистика представлена в следующем разделе.

7.1 Поддерживаемая статистика

Поддерживаемые модулем источники сбора статистики показаны в таблице 7.1.

Таблица 7.1: Поддерживаемая статистика

Название статистики

Применимые направления связи

Применимые уровни

1.

Пропускная способность (Throughput)

Оба направления

Приложение, устройство, MAC и PHY

2.

Задержка пакета (Packet delay)

Оба направления

Приложение, устройство, MAC и PHY

3.

Нагрузка сигнализации (Signalling load)

Оба направления

Устройство

4.

Размер очереди (в байтах) (Queue size)

Оба направления

LLC

5.

Размер очереди (количество пакетов) (Queue size)

Оба направления

LLC

6.

Запрос емкости (Capacity request)

Обратная линия

LLC

7.

Выделенные ресурсы (Resources granted)

Прямая линия

MAC

8.

SINR

Оба направления

PHY

9.

Ошибка пакета выделенного доступа (DA packet error)

Оба направления

PHY

10.

Ошибка пакета произвольного доступа CRDSA (RA CRDSA packet error)

Обратная линия

PHY

11.

Столкновение пакетов произвольного доступа CRDSA (RA CRDSA packet collision)

Обратная линия

PHY

12.

Ошибка пакета произвольного доступа Slotted ALOHA (RA Slotted ALOHA packet error)

Обратная линия

PHY

13.

Коллизии (столкновение) пакетов произвольного доступа Slotted ALOHA (RA Slotted ALOHA packet collision)

Обратная линия

PHY

14.

Запрос на передачу накопленных данных (Backlogged request)

Прямая линия

NCC

15.

Загрузка кадра (в соотношении выделенных символов) (Frame load)

Обратная линия

NCC

16.

Загрузка кадра (количество запланированных пользователей) (Frame load)

Обратная линия

NCC

17.

Использование волновой формы (Waveform usage)

Обратная линия

NCC

Фреймворк статистики по умолчанию отключен. Чтобы активировать его и, таким образом, позволить создавать выходные данные, пользователи могут использовать класс SatStatsHelperContainer. Первый шаг — создать экземпляр класса. Для этого конструктору передается объект SatHelper, используемый в симуляции:

Ptr<SatHelper> h = CreateObject<SatHelper> ();

h->CreateScenario (SatHelper::SIMPLE);

// ... (сокращено) ...

Ptr<SatStatsHelperContainer> s = CreateObject<SatStatsHelperContainer> (h);

Затем можно включить нужный тип вывода статистики, вызвав метод AddPerBeamRtnDevDelay:

s->AddPerBeamRtnDevDelay (SatStatsHelper::OUTPUT_SCALAR_FILE);

В объекте SatStatsHelperContainer доступно множество методов на выбор, их полный список см. в подразлеле 6.18.10. Каждый тип статистики имеет разный диапазон поддерживаемых вариантов вывода данных. Текстовая статистика, например, запрос емкости и запрос на передачу накопленных данных, поддерживает только вариант OUTPUT_SCATTER_FILE. Остальные типы статистики поддерживают следующие варианты:

  • OUTPUT_SCALAR_FILE 

  • OUTPUT_SCATTER_FILE 

  • OUTPUT_SCATTER_PLOT 

В дополнение к вышеуказанному, следующие варианты вывода применимы к статистике задержки пакета, размера очереди, выделенных ресурсов и SINR.

  • OUTPUT_HISTOGRAM_FILE 

  • OUTPUT_PDF_FILE 

  • OUTPUT_CDF_FILE 

  • OUTPUT_HISTOGRAM_PLOT 

  • OUTPUT_PDF_PLOT 

  • OUTPUT_CDF_PLOT 

Обратите внимание, что варианты вывода разделены на группу FILE или PLOT, как указано суффиксом в названии варианта. Группа определяет тип используемого агрегатора. Тип идентификатора определяет, как категоризуется статистика. Возможные варианты:

  • GLOBAL (вообще не категоризуется) 

  • PER_GW 

  • PER_BEAM 

  • PER_UT 

Статистика на уровне приложений также может принимать PER_UT_USER в качестве дополнительного идентификатора. Эти параметры указаны в названии каждого метода.

Как следует из названия, экземпляр объекта SatStatsHelperContainer действует как контейнер для нескольких вспомогательных классов (helpers). Поэтому можно включить более одного типа статистики, и они будут работать параллельно в одной симуляции, т.е. позволяя пользователям получать за один прогон симуляции более одного вывода статистики.

При обычной симуляции создаются многие сотни файлов с результатами собранной статистики.

7.2 Визуализация результатов

Если по замыслу разработчика во время симуляции узлы меняют свои геопозиции, для наглядного представления этого процесса используется инструмент NetAnim. Это оффлайн-аниматор, основанный на фреймворке Qt. Он анимирует ранее выполненное моделирование, используя XML-файл трассировки узлов, сгенерированный во время симуляции. В окне аниматора можно будет пронаблюдать в движении поведение узлов и например, как происходит переключение узла с одной точки доступа к WiFi на другую по мере увеличения расстояния. Следует заметить, что данное приложение не идеально. Оно нуждается в улучшении пользовательского интерфейса, стабильности работы.

7.2.1 Установка аниматора

Чтобы начать использовать NetAnim нужно клонировать его репозиторий в директории NS-3 и собрать. Для этого переходим в директорию NS-3:

$ cd ~/workspace_ns3.43/ns-3.43

Клонируем из сети репозиторий netanim:

$ git clone https://gitlab.com/nsnam/netanim.git

Переходим в папку netanim:

$ cd netanim

Создаем директорию сборки и переходим в нее:

$ mkdir build && cd build

Выполняем сборку аниматора:

$ cmake .. && cmake --build .

Сборка завершится сообщением в консоли:

[100%] Linking CXX executable netanim

[100%] Built target netanim 

Для того чтобы запустить NetAnim, нужно в основной директории NS-3 выполнить команду:

$ ./netanim/build/netanim&

Откроется окно визуального интерфейса с подсказкой, что нужен XML-файл трассировки узлов (результат симуляции). Внешний вид главного окна показан на рисунке 7.1.

Рисунок 7.1: Главное окно NetAnim
Рисунок 7.1: Главное окно NetAnim

7.2.2 Подготовка сценария к сбору данных для аниматора

Чтобы сценарий создал XML-файл трассировки узлов, его нужно соответствующим образом изменить его исходный код. Для этого выполним следующие действия.  Включите в список заголовочных файлов сценария библиотеку netanim-module.h:

#include «ns3/netanim-module.h»

В основную функцию main() , в той ее части где уже закончено определение мобильности узлов (Mobility Setup) добавьте строку:

anim.UpdateNodeDescription(5, «Access-point»);
AnimationInterface anim(«animation.xml»); // Creates animation.xml file

Туда же (опционально) можно добавить дополнительные настройки:

anim.SetConstantPosition(node_ptr, x, y); // Set node position

anim.EnablePacketMetadata(true);      // Include packets metadata

anim.EnableIpv4L3ProtocolCounters();  // Protocol counters

Если потом, во время компиляции будут возникать ошибки с текстом примерно такого вида:

«Node:0 not found in Location table»

вам нужно будет указать координаты расположения узлов, как это показано в первой строчке листинга выше. Полный их список с пояснениями можно найти по ссылке: https://www.nsnam.org/docs/models/html/animation.html.

Следует упомянуть о полезной опции, которая позволяет узлу присвоить осмысленное название, что сделает анимацию более понятной:

anim.UpdateNodeDescription(5, «Access-point»);

В данном случае пятому узлу устанавливается текстовая метка.

В CMake-файл также нужно добавить строку ${libnetanim}, ниже показан пример для теста wifi-moving-hap-router:

build_lib_example(

    NAME wifi-moving-hap-router

    SOURCE_FILES wifi-moving-hap-router.cc

    LIBRARIES_TO_LINK  ${libsibgu-hap}

                       ${libinternet}

                       ${libwifi}

                       ${libflow-monitor

                       ${libnetanim}

)

Пример использования аниматора будет показан в одной из следующих статей.

Глава 8. Обзор примеров сценариев модуля Satellite

В данной главе дано краткое описание примеров использования модуля Satellite, находящихся в его папке examples ( ~/workspace_ns3.43/ns-3.43/contrib/satellite/examples).

Описание дополнено таблицей 8.1, описывающей аргументы командной строки для каждого из примеров. Часть тестов используют в своей работе загружаемые сцены эксперимента. Цель данной главы состоит в том, чтобы оградить читателя от «изобретения велосипеда», дав ему полный обзор «велопарка» модуля Satellite.  Прежде чем представить описание примеров, рассмотрим их классификацию по функционалу и протоколам спутниковой связи.

8.1 Утилиты, логирование и обучение

Эта группа примеров служит целям демонстрации отладки, обучения работы с модулем, настройки окружения, логирования событий и профилирования производительности системы.

  1. sat-environmental-variables-example 

  2. sat-generic-launcher 

  3. sat-log-example 

  4. sat-logon-example 

  5. sat-profiling-sim

  6. sat-training-example 

  7. sat-tutorial-example 

8.2 Протоколы произвольного доступа

Эта группа примеров моделирует методы множественного доступа, которые используются пользовательскими терминалами для инициализации связи или отправки данных по обратному каналу без предварительного выделения ресурсов. Основной фокус на протоколах семейства ALOHA (Slotted ALOHA, CRDSA) и E-SSA(Enhanced Spread Spectrum ALOHA).

  1. sat-random-access-crdsa-example

  2. sat-random-access-dynamic-load-control-example 

  3. sat-random-access-example  

  4. sat-random-access-slotted-aloha-collision-example 

  5. sat-random-access-slotted-aloha-example  

  6. sat-essa-example 

  7. sat-rtn-link-ra-example 

8.3 Управление ресурсами и DAMA

Примеры этой группы ориентированы на механизмы динамического распределения пропускной способности. Они моделируют запросы на емкость (Capacity Request), планировщики (Scheduler) и различные типы назначения ресурсов (RBDC, VBDC, CRA), а также сценарии с динамическим частотным планированием.

  1. sat-dama-http-sim-tn9  

  2. sat-dama-onoff-sim-tn9 

  3. sat-dama-sim-tn9

  4. sat-profiling-sim-tn8

  5. sat-dama-verification-sim 

  6. sat-dynamic-frequency-plan-example

  7. sat-rtn-link-da-example

  8. sat-rtn-system-test-example

8.4 Механизмы ARQ

Данная группа примеров посвящена моделированию протоколов автоматического повтора запросов для обеспечения надежности доставки данных. Проверяются работа ARQ (Automatic Repeat reQuest) как в прямом (от шлюза к пользователю), так и в обратном канале (от пользователя к шлюзу) в условиях наличия ошибок в канале.

  1. sat-arq-fwd-example 

  2. sat-arq-rtn-example

8.5 Модели трафика и приложений

Примеры в этой группе демонстрируют и тестируют передачу через спутниковую сеть различных типов трафика (CBR, OnOff, HTTP, VoIP, видео). Основное внимание уделяется настройке генераторов трафика и сбору статистики производительности приложения установленного на узле.

  1. sat-cbr-example 

  2. sat-cbr-full-example

  3. sat-cbr-stats-example

  4. sat-cbr-user-defined-example 

  5. sat-http-example

  6. sat-nrtv-example

  7. sat-onoff-example

  8. sat-multi-application-fwd-example

  9. sat-multi-application-rtn-example

  10. sat-group-example

  11. sat-vhts-example

8.6 Физический уровень, замирания и интерференция

Эта группа охватывает моделирование условий распространения сигнала. Сюда входят тесты для расчета бюджета линии связи, моделирования различных типов замираний (Loo, рэлеевские, марковские), использования внешних трейсов с уровнями интерференции и мощности сигнала, а также визуализации физических характеристик канала (BLER vs SINR).

  1. sat-link-budget-example

  2. sat-link-results-plot

  3. sat-list-position-ext-fading-example

  4. sat-loo-example

  5. sat-markov-fading-trace-example

  6. sat-markov-logic-example

  7. sat-rayleigh-example

  8. sat-trace-input-external-fading-example

  9. sat-trace-input-fading-example

  10. sat-trace-input-interference-example 

  11. sat-trace-input-rx-power-example

  12. sat-trace-output-example

  13. sat-per-packet-if-sim-tn9 

8.7 Мобильность, созвездия и хэндовер

Примеры моделируют движение спутников (LEO, GEO), мобильность пользовательских терминалов и процессы передачи обслуживания (handover) между лучами и шлюзами. Также включают утилиты для визуализации перемещения лучей и трекинга позиций.

  1. sat-beam-position-tracer 

  2. sat-constellation-example

  3. sat-gw-handover-example

  4. sat-handover-example

  5. sat-mobility-beam-tracer

  6. sat-mobility-example 

  7. sat-mobility-position-generator 

8.8 Специальные технологии и функции сети

Сюда отнесены примеры, моделирующие специфичные функции спутниковой связи, такие как переключение лучей (beam hopping), регенерация сигнала на борту спутника, multicast, синхронизация NCR и технологии для IoT (LoRa).

  1. sat-fwd-link-beam-hopping-example 

  2. sat-regeneration-collisions-example 

  3. sat-regeneration-example

  4. sat-multicast-example

  5. sat-ncr-example

  6. sat-iot-example

  7. sat-lora-example 

  8. sat-fwd-system-test-example 

8.9 Описание примеров

Данный раздел содержит более детально описание того, что делают примеры перечисленные в предыдущем разделе.

sat-arq-fwd-example

Моделирует работу ARQ (Automatic Repeat reQuest) в прямом канале (Forward Link ) спутниковой связи. Настраивает постоянную вероятность ошибок (10%), включает ARQ для прямого канала и настраивает параметры ARQ (максимальное количество повторных передач, размер окна, таймеры). Создает сцену с несколькими UT на луч и несколькими пользователями на каждый UT, применяет CBR для отправки данных от шлюза к пользователям UT.

sat-arq-rtn-example 

Моделирует работу ARQ в обратном канале ( Return Link) спутниковой связи. Настраивает постоянную вероятность ошибок (10%) для обратного канала, включает ARQ для обратного канала и настраивает параметры ARQ. Также настраивает параметры служб доступа (DaService0 и DaService3) для управления ресурсами. Создает сцену с несколькими UT на луч и использует CBR (Constant Bit Rate) для отправки данных от пользователей UT к шлюзу.

sat-beam-position-tracer 

Используется для отслеживания центра каждого луча спутниковой системы в начале симуляции и через заданные промежутки времени. Загружает сцену эксперимента (по умолчанию «constellation-leo-2-satellites») и выводит информацию о положении лучей (широта и долгота центра луча) для каждого спутника. Полезен для визуализации и анализа покрытия спутниковой системы.

sat-cbr-example

Демонстрирует использование CBR (Constant Bit Rate) в спутниковой сети. Позволяет настраивать размер пакета, интервал отправки и сцену теста (простая, расширенная или полная). Отправляет пакеты в обоих направлениях: от пользователя шлюза к пользователям UT и наоборот. Поддерживает различные сцены симуляции и может быть настроен для моделирования как прямого, так и обратного канала.

sat-cbr-full-example

Демонстрирует использование CBR в полной сцене спутниковой сети в прямом канале (Forward Link). Настраивает постоянную вероятность ошибок (20%), количество UT на луч и количество конечных пользователей на каждый UT. Создает полную сцену спутниковой сети и запускает приложение CBR для отправки данных от шлюза к пользователям UT.

sat-cbr-stats-example 

Демонстрация использования CBR в спутниковой сети с полным набором статистики. Пример позволяет настраивать размер пакета, интервал и тестовую сцену через командную строку. Использует предопределенные сцены (simple, larger, full) и создает двунаправленный трафик CBR (прямой и обратный каналы). Основное внимание уделяется демонстрации возможностей сбора статистики, включая задержки, пропускную способность, джиттер и другие параметры производительности спутниковой сети.

sat-cbr-user-defined-example 

Пример использования CBR с пользовательской сценой. Позволяет пользователю настраивать размер сцены от 1 до 72 лучей (по умолчанию используется один луч). В режиме CBR отправляет пакеты по обратному каналу (RTN ) от UT (терминала пользователя) к GW (шлюз). Пользователь может через командную строку изменять количество UT и конечных пользователей. Включает функцию обратного вызова (callback-функцию) для отслеживания запросов на емкость (Capacity Request).

sat-constellation-example 

Демонстрация спутниковых созвездий с возможностью выбора конкретного созвездия из доступных сцен эксперимента. Настраивает режим регенерации для прямого и обратного каналов, конфигурирует скорость межспутниковых линий (ISL ), использует для движения спутников модель подвижности SGP4. Создает двунаправленный трафик CBR и собирает различную статистику, включая пропускную способность, задержку, джиттер, метрики качества канала и статистику потерь пакетов в ISL. Основное внимание уделяется демонстрации возможностей многоспутниковых созвездий с межспутниковыми линиями связи.

sat-dama-http-sim-tn9 

Моделирует HTTP-трафик через спутниковую сеть с использованием DAMA (Demand Assigned Multiple Access). Симуляция использует один луч (beam ID 18) над Финляндией с одним пользовательским терминалом (UT) и одним конечным пользователем. Конфигурация включает 4 кадра с разным распределением полосы пропускания, режим планирования Conf-2 с динамическими временными слотами. Трафик моделируется от шлюза (GW) к пользователям UT.

sat-dama-onoff-sim-tn9 

Моделирует трафик с паттерном OnOff через спутниковую сеть. Использует один луч (beam ID 18) над Финляндией с 220 UT (70% загрузки системы) и одним конечным пользователем на UT. Поддерживает конфигурацию DAMA (RBDC или VBDC) и различные режимы передачи CR (RA slotted ALOHA, CDRSA, периодические управляющие слоты, CRAkbps). Включает конфигурацию замираний (дождь, марковские замирания отключены).

sat-dama-sim-tn9 

Моделирует CBR (Constant Bit Rate) трафик через спутниковую сеть. Использует один луч (beam ID 18) над Финляндией с 220 UT (80% загрузка системы) и одним конечным пользователем на UT. Использует RBDC с периодическими управляющими слотами. Поддерживает различные конфигурации NCC (Conf-0, Conf-1 или Conf-2) и различные типы замираний (марковские, дождевые).

sat-dama-verification-sim 

Моделирует CBR трафик для целей верификации. Использует один луч (beam ID 18) над Финляндией с 220 UT и одним конечным пользователем на UT. Использует RBDC с периодическими управляющими слотами. Конфигурация включает 3 кадра с разным распределением полосы пропускания. Предназначен для верификации работы системы с определёнными параметрами.

sat-dynamic-frequency-plan-example 

Моделирует сцену с динамическим планированием частот в спутниковой системе. Пример позволяет изменять C/N0 (отношение несущей к шуму) для пользовательских терминалов путём регулировки мощности передачи. Настройка включает различные шаблоны трафика, параметры кадров, распределение полосы пропускания и поднесущих. Особое внимание уделяется влиянию изменяющихся значений C/N0 на систему спутниковой связи.

sat-environmental-variables-example 

Демонстрирует использование класса переменных окружения в модуле спутниковой связи ns3. Показывает различные функции для определения путей к директориям, используемым модулем спутниковой связи, включая получение текущего рабочего каталога, пути к исполняемому файлу, пути к данным, пути к выводу и т.д. Это утилитарный пример, показывающий навигацию и управление путями файлов в Satellite.

sat-essa-example 

Создает сцену спутниковой связи с ESSA (Enhanced Spread Spectrum ALOHA). Настраивает модель произвольного доступа на использование E-SSA и устанавливает различные параметры, связанные с конфигурацией кадров, распределением полосы пропускания, свойствами несущих и коэффициентами расширения спектра. Моделирование создаёт трафик с использованием OnOff и собирает статистику об ошибках пакетов, столкновениях, пропускной способности и SINR (отношение сигнала к интерференции плюс шум).

sat-fwd-link-beam-hopping-example 

Демонстрирует конфигурацию beam hopping (переключение лучей) для прямого канала в спутниковой связи. Включает все лучи конкретного шлюза (GW-1) и устанавливает паттерн переключения лучей. Моделирование распределяет пользователей неравномерно по разным лучам и использует CBR трафик для тестирования системы. Собирает статистику о пропускной способности, времени обслуживания луча, задержке и SINR.

sat-fwd-system-test-example 

Выполняет системные тесты для прямого канала в спутниковой связи. Позволяет тестировать различные сцены, включая работу планировщика с включенным или выключенным ACM (Adaptive Coding and Modulation, адаптивное кодирование и модуляция), а также тестирование с марковскими замираниями. Пример может использовать модели трафика CBR или OnOff и предоставляет опции для отслеживания информации о BB-кадрах (Baseband), операций слияния. Разработан для тестирования различных аспектов системы связи по прямому каналу.

sat-generic-launcher 

Базовый «запускатель» симуляции спутниковой связи, который загружает сцену «geo-33E», включает CRDSA (Contention Resolution Diversity Slotted ALOHA) и позволяет настраивать параметры симуляции через XML-файл.

sat-group-example 

Моделирует несколько групп пользовательских терминалов с различными методами создания групп (вручную, по позиции или по номеру). Собирает статистику производительности (задержки, джиттер, пропускная способность) для разных групп и настраивает различные типы трафика (CBR, HTTP, VoIP).

sat-gw-handover-example 

Тестирует хэндовер (передачу обслуживания) как для шлюзов ( GW), так и для пользовательских терминалов в LEO созвездии из 2 спутников. Настраивает CBR-трафик на прямом и обратном каналах и собирает статистику пропускной способности на разных уровнях (спутник, луч, шлюз).

sat-handover-example 

Тестирует хэндовер только для пользовательских терминалов в GEO созвездии из 2 спутников. Включает в симуляции хэндоверы, настраивает CBR-трафик на прямом и обратном каналах и собирает статистику пропускной способности на разных уровнях (на спутник, на UT, на шлюз, на луч).

sat-http-example 

Демонстрирует использование модели HTTP-трафика в спутниковой сети. Создает HTTP-сервер на пользовательском узле шлюза и HTTP-клиенты на пользовательских узлах UT, используя протокол TCP. Позволяет выбирать различные тестовые сцены (простая, расширенная, полная) и собирает статистику потерь пакетов и пропускной способности.

sat-iot-example 

Создает сцену для моделирования Интернета вещей (IoT) через спутниковую связь. Настраивает специфические параметры для IoTкоммуникаций (частоты, полосы пропускания и т.д.), настраивает трафик Пуассона и CBR на обратном канале, собирает статистику SINR, мощности приёма и использования кадров.   sat-link-budget-example

Пример для расчета и анализа бюджета линии связи в спутниковой сети. Создает сцену с указанным ID луча, отправляет пакеты между пользователями, подключенными к шлюзу, и пользователями, подключенными к пользовательским терминалам. Параметры бюджета линии связи можно изменять через XML-файл без перекомпиляции.

sat-link-results-plot 

Пример для визуализации результатов моделирования линии связи спутниковой системы. Генерирует графики зависимости BLER (Block Error Rate) от SINR для различных схем модуляции (QPSK, 8PSK, 16QAM, 16APSK, 32APSK) и скоростей кодирования в стандартах DVB-RCS2 (Digital Video Broadcasting — Return Channel via Satellite, Second Generation) и DVB-S2(Digital Video Broadcasting SatelliteSecond Generation).

sat-list-position-ext-fading-example 

Пример демонстрирует использование списка пользовательских позиций с внешними замираниями (fading). Полезен при внедрении новых позиций и источников трасс внешнего замирания. Отправляет пакеты между пользователями, подключенными к шлюзу, и пользователями, подключенными к UT. Выводит информацию о созданных UT и бюджет линии связи для каждого полученного пакета.

sat-log-example 

Пример демонстрации класса журналирования сообщений для спутниковых симуляций. Показывает использование различных типов журналов: LOG_GENERIC, LOG_INFO, LOG_WARNING, LOG_ERROR, LOG_CUSTOM. Объясняет формат сообщений и организацию выходных файлов.

sat-logon-example 

Пример моделирования процесса регистрации (logon ) в спутниковой сети. Создает сцену с несколькими UT на луч и конечными пользователями на каждый UT. Настраивает кадры произвольного доступа и кадры регистрации, генерирует трафик и собирает статистику по пропускной способности и задержке.

sat-loo-example 

Демонстрация работы модели замираний Лоо ( Loo’s model fader), используемой в марковском замирании. Пример создает три фейдера с разными параметрами (линия прямой видимости, легкое и сильное затенение) и переключает их в процессе симуляции, выводя значения замираний.

sat-lora-example 

Пример создания сценария с конфигурацией LoRa (Long Range) в спутниковой сети. Настраивает параметры LoRa, создаёт сцену с несколькими лучами, пользовательскими терминалами и конечными пользователями, настраивает трафик LoRa и собирает статистику производительности.

sat-markov-fading-trace-example 

Пример для расчётов марковских замираний и создания трейсов замираний. Создаёт контейнер марковских замираний, собирает значения замираний в процессе симуляции и генерирует файл для визуализации трейса замираний с помощью Gnuplot.

sat-markov-logic-example 

Демонстрация логики работы класса марковской модели. Создаёт объект марковского замирания и выполняет расчёты замираний с разными углами возвышения, изменяя параметры в процессе симуляции.

sat-mobility-beam-tracer 

Сценарий для трассировки перемещения мобильного пользовательского терминала и определения лучей, которые он посещает. Загружает трейс мобильного UT и собирает статистику относительной скорости между спутником и UT.

sat-mobility-example 

Сценарий симуляции с низкоорбитальным спутником и Международной космической станцией (LEO, ISS — International Space Station). Настраивает симуляцию с движущимся спутником, настраивает трафик CBR и собирает статистику задержек. Позволяет настроить обновление позиции спутника при каждом запросе или с определённым периодом.

sat-mobility-position-generator 

Генератор позиций для спутниковой мобильности. Этот пример загружает сцену («geo-33E») и генерирует географические координаты для каждой позиции луча. В основном используется как утилита для вывода позиций, а не для полноценной симуляции связи.

sat-multi-application-fwd-example 

Моделирование нескольких приложений (OnOff и CBR) в прямом канале (FWD) от шлюза к пользовательским терминалам. Пример демонстрирует использование различных значений ToS (Type of Service) для разных типов приложений, создание сцены с несколькими UT на луч и несколькими конечными пользователями на каждый UT.

sat-multi-application-rtn-example 

Моделирование нескольких приложений (OnOff и CBR) в обратном канале (RTN) от пользовательских терминалов к шлюзу. Подобно примеру с прямым каналом, демонстрирует использование различных значений ToS для разных приложений, создание сцены с несколькими UT на луч и несколькими конечными пользователями на каждый UT.

sat-multicast-example 

Демонстрация функциональности multicast в спутниковых сетях. Пример создает группы multicast с источниками и получателями, поддерживает как предопределенные группы multicast для сцены «larger», так и произвольные группы для сцены «full». Устанавливает генераторы трафика CBR для групп multicast и приемники пакетов для получателей.

sat-ncr-example 

Моделирует спутниковую сеть с функциональностью NCR (Network Clock Reference). Настраивает параметры синхронизации часов, такие как drift, guard time, и таймауты синхронизации. Создает трафик CBR на прямом и обратном каналах для тестирования механизма синхронизации NCR в спутниковых сетях.

sat-nrtv-example 

Демонстрирует использование модели трафика NRTV (Non-Real-Time Video) в спутниковой сети. Устанавливает сервер NRTV на первом пользователе шлюза и клиентов NRTV на терминалах пользователя. Использует протокол TCP между приложениями и создает трассировки для клиентов NRTV.

sat-onoff-example 

Демонстрирует использование приложения OnOff в спутниковой сети. Позволяет настраивать размер пакета, скорость передачи данных, время включения/выключения, тестовую сцену и отправителя (GW, UT или оба). Создает приложения OnOff для отправки пакетов от GW к UT и/или от UT к GW в соответствии с заданными параметрами.

sat-per-packet-if-sim-tn9 

Сценарий моделирования для оценки производительности при помехах на уровне отдельных пакетов (связано с моделью трафика TN9(Traffic Model 9, модель сетевой игры)). Поддерживает различные конфигурации лучей (один луч или ко-канальные лучи) и конфигурации замирания (марковские или дождь).

Настраивает планирование RBDC и модели помех на уровне пакетов.

sat-profiling-sim-tn8 

Пример для моделирования профилирования производительности (связано с моделью трафика TN8(Traffic Model 8, модель потокового видео)). Поддерживает выбор между моделированием одного луча и полной сценой. Позволяет настраивать количество UT на луч. Создает трафик CBR и собирает различные статистики, такие как пропускная способность, задержка и загрузка символов кадра.

sat-profiling-sim 

Упрощенный пример профилирования симуляции. Настраивает базовую спутниковую сеть с управляемым количеством UT на луч и конечных пользователей на UT. Создает трафик CBR на прямом и обратном каналах. Включает журналы прогресса и создает по умолчанию статистику для обратного канала.

sat-random-access-crdsa-example 

Пример моделирования произвольного доступа с использованием только CRDSA (Contemporary Random Access) в спутниковой сети. Предназначен для отладки CRDSA с одним UT (терминалом пользователя). CRA (Capacity Request Assignment) отключен, динамическое управление нагрузкой RA(Random Access) отключено. Использует приложение CBR (Constant Bit Rate) в сцене с одним лучом, отправляющее пакеты по обратному каналу (RTN) от UT к шлюзу (GW).

sat-random-access-dynamic-load-control-example 

Пример моделирования произвольного доступа с включенным динамическим управлением нагрузкой. Использует модели RA на основе спецификации DVB-RCS2, CRA отключен. Код модифицирован для создания более высокой нагрузки по сравнению с базовым примером произвольного доступа. Режим работы между Slotted ALOHA и CRDSA задается параметром определяющим количество экземпляров.

sat-random-access-example 

Общий пример использования произвольного доступа в спутниковой сети. Использует модели RA на основе спецификации DVB-RCS2. CRA отключен, динамическое управление нагрузкой RA отключено. Режим работы между Slotted ALOHA и CRDSA задается параметром определяющим количество экземпляров.

sat-random-access-slotted-aloha-collision-example 

Пример моделирования произвольного доступа с использованием только Slotted ALOHA. Предназначен для отладки коллизий Slotted ALOHA с большим количеством UT. CRA отключен, динамическое управление нагрузкой RA отключено. Использует только Slotted ALOHA независимо от параметра количества экземпляров. Модифицирован для вывода логов только приёмника для Slotted ALOHA.

sat-random-access-slotted-aloha-example 

Пример использования произвольного доступа в спутниковой сети с использованием модели Slotted ALOHA. Предназначен для отладки Slotted ALOHA и позволяет устанавливать различные параметры произвольного доступа, такие как ограничения максимальной скорости, параметры отката и управления нагрузкой. Использует приложение CBR для отправки пакетов в обратном канале (RTN link) от UT к GW.

sat-rayleigh-example 

Пример использования класса релеевских замираний SatRayleighModel. Демонстрирует функциональность релеевского замирания, используемого в в марковских замираниях. Создает один экземпляр класса и в цикле выводит в консоль значения замирания во времени.

sat-regeneration-collisions-example 

Пример спутниковой регенерации с коллизиями. Позволяет указать уровень регенерации на прямом (FWD) и обратном (RTN) каналах, а также алгоритм произвольного доступа. Генерирует несколько статистик для проверки коллизий и ошибок там, где они должны возникать.

sat-regeneration-example 

Пример спутниковой регенерации сигнала. Позволяет запустить моделирование с трафиком CBR на прямом и обратном каналах и различными уровнями регенерации. На прямом канале: прозрачный, физический и сетевой уровни. На обратном канале: прозрачный, физический, канальный и сетевой уровни. Генерирует различные статистики.

sat-rtn-link-da-example 

Пример моделирования обратного канала с назначением по требованию (Demand AssignmentDA). Создает сцену со спутником с несколькими UT на луч и конечными пользователями на UT, использует CBR трафик в обратном канале.

sat-rtn-link-ra-example 

Моделирование обратного спутникового канала с использованием произвольного доступа (RA). Пример настраивает несколько пользовательских терминалов на луч и несколько конечных пользователей на каждый UT. Включает CRDSA (Contention Resolution Diversity Slotted ALOHA) как метод произвольного доступа. Создает трафик CBR на обратной линии связи и собирает статистику производительности.

sat-rtn-system-test-example 

Комплексный пример для тестирования различных аспектов обратной спутниковой связи. Включает несколько тестовых случаев (0-5) для проверки разных конфигураций:

  • планировщик с CRA (Constant Rate Assignment); 

  • планировщик с FCA (Fixed Capacity Assignment) и VBDC (Volume Based Dynamic Capacity); 

  • ACM с марковскими замираниями. 

управление ресурсами с различными комбинациями CRA, RBDC (Rate Based Dynamic Capacity) и VBDC. Поддерживает как CBR, так и OnOff модели трафика.

sat-trace-input-external-fading-example 

Демонстрация использования трасс внешнего замирания в симуляциях спутниковой связи. Включает трассы внешнего замирания из файлов, а также включает различные выходные трассы:

  • плотность интерференции; 

  • плотность мощности приёма; 

  • замирания; 

  • составной SINR. 

Использует модель марковских замираний в сочетании с трассами внешних замираний. Создает трафик как на прямом, так и на обратном канале связи.

sat-trace-input-fading-example 

Пример использования трасс замирания в качестве входных данных для симуляций спутниковой связи. Включает трассы замирания из файлов и создает трафик как на прямой, так и на обратной линии связи. Является более простой версией примера с внешним замиранием (sat-trace-input-external-fading-example), фокусируясь исключительно на трассах замираний.

sat-trace-input-interference-example 

Демонстрация использования трасс интерференции в качестве входных данных для симуляций спутниковой связи. Включает трассы плотности интерференции из файлов и создает трафик как на прямой, так и на обратной линии связи. Фокусируется на моделировании интерференции с использованием входных трасс.

sat-trace-input-rx-power-example 

Пример использования входных трасс плотности мощности приёма ( Rx power density). Моделирует передачу пакетов от пользователей, подключённых к шлюзу, к пользователям, подключённым к терминалам, и в обратном направлении. Использует заранее подготовленные трассы плотности мощности из папки rxpowertraces/input вместо расчёта мощности приёма в реальном времени.

sat-trace-output-example 

Пример генерации выходных трасс во время моделирования. Создаёт трассы для плотности помех, плотности мощности приёма, замираний и составного SINR. Результаты сохраняются в папку example-trace-output. Использует CBR-трафик и включает различные опции вывода трасс.

sat-training-example

Учебный пример, демонстрирующий полный процесс создания сценария моделирования от аргументов командной строки до запуска симуляции. Читает атрибуты по умолчанию из XML-файла, настраивает приложения OnOff в обратном канале, собирает статистику по задержке, итоговому SINR и пропускной способности.

sat-tutorial-example 

Обучающий пример, который показывает, как создавать различные сцены спутниковых сетей и настраивать их путём изменения атрибутов. Демонстрирует ручное создание и установку приложений в спутниковую сеть, включает опции выбора конфигураций суперкадра и показывает, как сохранять значения атрибутов в XML-файлы.

sat-vhts-example 

Моделирование сцены с VHTS (Very High Throughput Satellite) и настраиваемыми параметрами прямого и обратного каналов связи. Пример позволяет конфигурировать модели произвольного доступа (CRDSA или MARSALA), поддерживает мобильность пользовательских терминалов, настраивает различные параметры пропускной способности, длины пакетов и схемы модуляции. Моделирует трафик VoIP и HTTP, собирает статистику SINR, запросов пропускной способности, предоставленных ресурсов и другие показатели производительности спутниковой системы связи.

8.10 Аргументы командной строки примеров

В данном разделе описаны аргументы командной строки примеров, перечисленных в разделе 8.9. Аргументы, по сути, превращают каждый из примеров в мини-симулятор, поскольку дают возможность изменять параметры моделирования без необходимости перекомпиляции исполняемого файла примера или теста. Эта информация показана в таблице 8.1.

Таблица 8.1: Аргументы командной строки примеров

Название примера

Параметры и их описание

1.

sat-dama-onoff-sim-tn9

simLength - Длительность симуляции в секундах; utsPerBeam - Количество пользовательских терминалов (UT) на точечный луч; damaConf — Конфигурация DAMA (Demand Assigned Multiple Access); crTxConf - Конфигурация передачи запросов на ёмкость (CR).

2.

sat-arq-fwd-example

endUsersPerUt: Количество конечных пользователей на один терминал пользователя (UT) utsPerBeam: Количество терминалов пользователя (UT) на один луч

3.

sat-arq-rtn-example

endUsersPerUt: Количество конечных пользователей на один терминал пользователя (UT); utsPerBeam: Количество терминалов пользователя (UT) на один луч.

4.

sat-beam-position-tracer

Scenario: Загружаемая сцена симуляции.

5.

sat-cbr-example

beamIdInFullScenario: Идентификатор луча, где выбирается отправляющий/принимающий терминал пользователя (UT) в сцене FULL (используется только когда сцена — full); packetSize: Размер постоянного пакета в байтах; interval: Интервал отправки пакетов в секундах (например, 1 с); scenario: Используемый тестовая сцена (simple, larger или full).

6.

sat-cbr-full-example

endUsersPerUt: Количество конечных пользователей на один терминал пользователя (UT); utsPerBeam: Количество терминалов пользователя (UT) на один луч; packetSize: Размер постоянного пакета в байтах; interval: Интервал отправки пакетов в секундах (например, 1 с); simLength: Длительность симуляции в секундах.

7.

sat-cbr-stats-example

packetSize — Размер постоянного пакета в байтах; interval — Интервал отправки пакетов в секундах (например, 1 с); duration — Длительность симуляции (в секундах); scenario — Используемая тестовая сцена (simple, larger или full).

8.

sat-cbr-user-defined-example

endUsersPerUt - Количество конечных пользователей на UT; utsPerBeam — Количество UT на луч.

9.

sat-constellation-example

packetSize - Размер постоянного пакета в байтах; interval — Интервал отправки пакетов в секундах (например, 1 с); scenarioFolder — Папка со сценой (например, constellation-eutelsat-geo-2-sats-isls).

10.

sat-dama-http-sim-tn9

simLength — Длительность симуляции в секундах; utsPerBeam - Количество пользовательских терминалов (UT) на точечный луч; crTxConf — Конфигурация передачи запросов на ёмкость (CR).

11.

sat-dama-sim-tn9

simLength — Длительность симуляции в секундах; utsPerBeam — Количество пользовательских терминалов (UT) на точечный луч; nccConf — Конфигурация центра управления сетью (NCC); fadingConf — Конфигурация модели замираний сигнала.

12.

sat-dama-verification-sim

utsPerBeam — Количество пользовательских терминалов (UT) на точечный луч; packetSize — Размер пакета в байтах.

13.

sat-dynamic-frequency-plan-example

MaxCarrierSubdivision: Максимальное количество подразделений для одного несущего сигнала; FrameConfigType: Тип конфигурации кадра, используемый для суперкадра; UseVaryingCno: Симулировать изменяющееся C/N0 для UT вместо изменения их трафика со временем.

14.

sat-environmental-variables-example

Только стандартные аргументы UI, специфичные параметры отсутствуют.

15.

sat-environmental-variables-example

Только стандартные аргументы UI, специфичные параметры отсутствуют.

16.

sat-essa-example

modelPP: Режим помех на пакет (interferenceModePerPacket); traces: Отображение трассировок (displayTraces); utsPerBeam: Количество UT на точечный луч; simLength: Продолжительность симуляции в секундах; packetSize: Постоянный размер пакета в байтах; dataRate: Скорость передачи данных (например, 500 кб/с); onTime: Время, в течение которого отправка пакетов активна, в секундах; offTime: Время, в течение которого отправка пакетов неактивна, в секундах; frameAllocatedBandwidthHz: Выделенная полоса пропускания в Гц; frameCarrierAllocatedBandwidthHz: Выделенная полоса пропускания несущей в Гц; frameCarrierRollOff: Коэффициент спада (Roll-off factor ); frameCarrierSpacing: Коэффициент расстояния между несущими; frameSpreadingFactor: Коэффициент расширения несущей;

17.

sat-fwd-link-beam-hopping-example

simTime: Продолжительность симуляции; scaleDown: Уменьшение полосы пропускания для наблюдения различий при меньшем трафике.

18.

sat-fwd-system-test-example

testCase: Тестовый случай для выполнения. 0 = планировщик, ACM выключен, 1 = планировщик, ACM включен, 2 = ACM для одного UT; gwEndUsers: Количество конечных пользователей шлюза (GW). simLength: Продолжительность симуляции. traceFrameInfo: Трассировка (печать) информации о BB-кадре. traceMergeInfo: Трассировка (печать) информации о слиянии BB-кадров; beamId: Идентификатор луча; trafficModel: Модель трафика: либо «cbr», либо «onoff»; senderAppStartTime: Время запуска приложения отправителя (первого).

19.

sat-generic-launcher

Путь к XML-файлу с параметрами симуляции (по умолчанию: contrib/satellite/examples/generic-input-attributes.xml) Стандартные аргументы UI (добавляются через AddDefaultUiArguments).

20.

sat-group-example

UtsPerBeam: Количество UT на луч; PacketSize: Размер UDP пакета в байтах; Interval: Интервал CBR (в секундах или с указанием единицы); SimLength: Длительность симуляции (в секундах или с указанием единицы); Стандартные аргументы UI.

21.

sat-gw-handover-example

Стандартные аргументы UI (без дополнительных параметров командной строки).

22.

sat-handover-example

Стандартные аргументы UI (без дополнительных параметров командной строки).

23.

sat-http-example

scenario: Тестовая сцена (simple, larger или full); duration: Длительность симуляции (в секундах); Стандартные аргументы UI.

24.

sat-iot-example

Beam: ID луча (нельзя использовать несколько лучей); NbGw: Количество шлюзов (GW); NbUtsPerBeam: Количество UT на луч; NbEndUsersPerUt: Количество конечных пользователей на UT. QueueSize: Размер очереди спутника в пакетах; AppStartTime: Время запуска приложений (в секундах или с указанием единицы); SimLength: Длительность симуляции (в секундах или с указанием единицы); MaxPowerTerminalW: Максимальная мощность терминалов в Вт; RtnFeederLinkBaseFrequency: Базовая частота обратного канала фидера; RtnUserLinkBaseFrequency: Базовая частота обратного канала пользователя; RtnFeederLinkBandwidth: Полоса пропускания обратного канала фидера; Frame0_AllocatedBandwidthHz: Выделенная полоса пропускания для кадра в Гц; Frame0_CarrierAllocatedBandwidthHz: Выделенная полоса пропускания несущей для кадра в Гц; Frame0_CarrierRollOff: Коэффициент спада для кадра; Frame0_CarrierSpacing: Коэффициент расстояния между несущими для кадра; Стандартные аргументы UI.

25.

sat-link-budget-example

beam: Используемый луч для тестирования (1-72); latitude: Широта позиции UT (-90 ... 90.0); longitude: Долгота позиции UT (-180 ... 180); altitude: Высота позиции UT (в метрах).

26.

sat-link-results-plot

Нет настраиваемых параметров командной строки.

27.

sat-list-position-ext-fading-example

beamId: ID используемого луча; checkBeam: Проверка, что заданный луч является лучшим согласно настроенным позициям; utCount: Количество UT; usersPerUt: Пользователей на один UT; externalUtPositionFile: Входной файл позиций UT (в директории data/).

28.

sat-log-example

Нет настраиваемых параметров командной строки.

29.

sat-logon-example

Нет настраиваемых параметров командной строки.

30.

sat-loo-example

Нет настраиваемых параметров командной строки.

31.

sat-lora-example

modelPP: Режим интерференции для каждого пакета; traces: Отображение трассировок; utsPerBeam: Количество UT на точечный луч; simLength: Длительность симуляции в секундах; packetSize: Постоянный размер пакета в байтах; loraInterval: Интервал между двумя передачами для каждого UT в секундах; frameAllocatedBandwidthHz: Выделенная полоса пропускания в Гц; frameCarrierAllocatedBandwidthHz: Выделенная полоса пропускания несущей в Гц; frameCarrierRollOff: Коэффициент спада; frameCarrierSpacing: Коэффициент расстояния между несущими; frameSpreadingFactor: Коэффициент расширения несущей; firstWindowDelay: Задержка между окончанием передачи и открытием первого окна на конечном устройстве; secondWindowDelay: Задержка между окончанием передачи и открытием второго окна на конечном устройстве; firstWindowDuration: Длительность первого окна на конечном устройстве; secondWindowDuration: Длительность второго окна на конечном устройстве; firstWindowAnswerDelay: Задержка между окончанием приема и началом ответа в первом окне на шлюзе; secondWindowAnswerDelay: Задержка между окончанием приема и началом ответа во втором окне на шлюзе.

32.

sat-markov-fading-trace-example

Нет настраиваемых параметров командной строки.

33.

sat-markov-logic-example

Нет настраиваемых параметров командной строки.

34.

sat-mobility-beam-tracer

TraceFile: Путь к файлу трассировки для проверки лучей.

35.

sat-mobility-example

PacketSize: Размер UDP пакета (в байтах); Interval: Интервал CBR (в секундах или с указанием единицы); SimLength: Длительность симуляции (в секундах или с указанием единицы); UpdatePositionEachRequest: Включить вычисление позиции каждый раз при отправке пакета; UpdatePositionPeriod: Период обновления позиции спутника, если не обновлять при каждом запросе (в секундах или с указанием единицы).

36.

sat-mobility-position-generator

PosCount — Количество позиций для генерации на луч.

37.

sat-multi-application-fwd-example

endUsersPerUt — Количество конечных пользователей на UT; utsPerBeam — Количество UT на точечный луч; cbrProbability — Вероятность пользователей CBR; simLength — Длительность симуляции в секундах.

38.

sat-multi-application-rtn-example

endUsersPerUt — Количество конечных пользователей на UT; utsPerBeam — Количество UT на точечный луч; cbrProbability — Вероятность пользователей CBR; simLength — Длительность симуляции в секундах.

39.

sat-multicast-example

scenario — Тестовая сцена для использования (larger или full); preDefinedGroup — Предопределенная группа многоадресной рассылки для сцены larger (0 = все); fullScenarioReceivers — Количество приемников в полном сцене; sinkToAll — Добавить многоадресный приемник всем пользователям.

40.

sat-ncr-example

simLength — Длительность симуляции в секундах; beamIdID используемого луча; utsPerBeam — Количество UT на один луч; endUsersPerUt — Количество конечных пользователей на один UT; packetSize — Постоянный размер пакета в байтах; interval — Интервал между двумя UDP пакетами на один UT; guardTime — Время защиты в временных слотах в символах; clockDrift — Значение дрейфа часов UT в тиках в секунду.

41.

sat-nrtv-example

scenario — Используемая тестовая сцена (simple, larger или full); duration — Длительность симуляции (в секундах).

42.

sat-onoff-example

packetSize — Размер постоянного пакета (в байтах, например 512); dataRate — Скорость передачи данных (например 500 кб/с); onTime — Время, когда отправка пакетов включена (в секундах, например 1.0); offTime — Время, когда отправка пакетов выключена (в секундах, например 0.5); sender — Отправитель пакетов («ut», «gw» или «both»); scenario — Используемая тестовая сцена (simple, larger или full); simDuration — Длительность симуляции (время).

43.

sat-per-packet-if-sim-tn9

simLength — Длительность симуляции в секундах; utsPerBeam — Количество UT на один луч; beamConf — Конфигурация луча; fadingConf — Конфигурация замираний (0: марковские, 1: дождь).

44.

sat-profiling-sim-tn8

utsPerBeam — Количество UT на один луч; profilingConf - Конфигурация профилирования.

45.

sat-profiling-sim

utsPerBeam — Количество UT на один луч; endUsersPerUt — Количество конечных пользователей на один UT; simulationTime — Время симуляции.

46.

sat-ra-sim-tn9-comparison

utsPerBeam: Количество терминалов пользователя (UT) на один луч; numOfInstances: Количество экземпляров пакетов CRDSA; isNoisy: Если true, выводить сообщения журналирования.

47.

sat-ra-sim-tn9

utsPerBeam: Количество терминалов пользователя (UT) на один луч; raMode: Режим произвольного доступа (RA); simLength: Длительность симуляции в секундах; packetSize: Постоянный размер пакета в байтах; dataRate: Скорость передачи данных (например, 500 кб/с); onTime: Время активности отправки пакетов в секундах; offTime: Время неактивности отправки пакетов в секундах.

48.

sat-random-access-crdsa-collision-example

endUsersPerUt: Количество конечных пользователей на один терминал пользователя (UT); utsPerBeam: Количество терминалов пользователя (UT) на один луч.

49.

sat-random-access-crdsa-example

endUsersPerUt — Количество конечных пользователей на каждый терминал пользователя (UT); utsPerBeam — Количество терминалов пользователя (UT) на один луч; beamId — Идентификатор луча (по умолчанию 1); packetSize — Размер пакета в байтах (по умолчанию 20); interval — Интервал отправки пакетов (по умолчанию 0.01 секунды); simLength — Длительность симуляции (по умолчанию 1.00 с).

50.

sat-random-access-crdsa-example

endUsersPerUt — Количество конечных пользователей на каждый терминал пользователя (UT); utsPerBeam — Количество терминалов пользователя (UT) на один луч; beamId — Идентификатор луча (по умолчанию 1); packetSize — Размер пакета в байтах (по умолчанию 20); interval — Интервал отправки пакетов (по умолчанию 0.01 секунды); simLength — Длительность симуляции (по умолчанию 1.00 секунды).

51.

sat-random-access-dynamic-load-control-example

endUsersPerUt — Количество конечных пользователей на каждый терминал пользователя (UT); utsPerBeam - Количество терминалов пользователя (UT) на один луч (по умолчанию 30); beamId — Идентификатор луча (по умолчанию 1); packetSize — Размер пакета в байтах (по умолчанию 20); interval — Интервал отправки пакетов (по умолчанию 0.01 секунды); simLength — Длительность симуляции (по умолчанию 5.00 секунд).

52.

sat-random-access-example

endUsersPerUt — Количество конечных пользователей на каждый терминал пользователя (UT); utsPerBeam — Количество терминалов пользователя (UT) на один луч; beamId — Идентификатор луча (по умолчанию 1); packetSize — Размер пакета в байтах (по умолчанию 20); interval — Интервал отправки пакетов (по умолчанию 0.01 секунды); simLength — Длительность симуляции (по умолчанию 3.00 секунды).

53.

sat-random-access-slotted-aloha-collision-example

endUsersPerUt — Количество конечных пользователей на каждый терминал пользователя (UT); utsPerBeam — Количество терминалов пользователя (UT) на один луч (по умолчанию 30); beamId — Идентификатор луча (по умолчанию 1); packetSize — Размер пакета в байтах (по умолчанию 20); interval — Интервал отправки пакетов (по умолчанию 0.01 секунды); simLength — Длительность симуляции (по умолчанию 3.00 секунды).

54.

sat-random-access-slotted-aloha-example

endUsersPerUt: Количество конечных пользователей на один терминал пользователя (UT); utsPerBeam: Количество терминалов пользователя (UT) на один спутниковый луч.

sat-rayleigh-example

Нет настраиваемых параметров (только стандартные параметры UI).

55.

sat-regeneration-collisions-example

packetSize: Размер пакета в байтах; interval: Интервал отправки пакетов в секундах (например, 1 с); randomAccess: Выбор алгоритма произвольного доступа (SlottedAloha, Marsala, Crdsa, Essa) или DA; forwardRegeneration: Режим регенерации на прямом канале (transparent, regenerationphy или regenerationnetwork); returnRegeneration: Режим регенерации на обратном канале (transparent, regenerationphy, regenerationlink или regenerationnetwork).

56.

sat-regeneration-example

beamIdInFullScenario: Идентификатор луча, где выбирается отправляющий/принимающий UT в полной сцене; packetSize: Размер пакета в байтах; interval: Интервал отправки пакетов в секундах (например, 1 с); scenario: Используемая тестовая сцена (simple, larger или full); forwardRegeneration: Режим регенерации на прямом канале (transparent, regenerationphy или regenerationnetwork); returnRegeneration: Режим регенерации на обратном канале (transparent, regenerationphy, regenerationlink или regenerationnetwork).

57.

sat-rtn-link-da-example

endUsersPerUt: Количество конечных пользователей на один терминал пользователя (UT); utsPerBeam: Количество терминалов пользователя (UT) на один спутниковый луч.

58.

sat-rtn-link-ra-example

endUsersPerUt: Количество конечных пользователей на UT; utsPerBeam: Количество UT на луч; simLength: Длина симуляции в секундах.

59.

sat-rtn-system-test-example

testCase: Номер тестовой сцены (0...5); frameConf: Предопределенная конфигурация суперфрейма; trafficModel: Модель трафика (0 = CBR, 1 = OnOff); simLength: Длина симуляции в секундах; beamId: Идентификатор луча; utAppStartTime: Время запуска приложения.

60.

sat-trace-input-external-fading-example

packetSize: Размер пакета в байтах; interval: Интервал отправки пакетов в секундах; scenario: Используемая тестовая сцена (simple, larger или full).

61.

sat-trace-input-fading-example

packetSize: Размер пакета в байтах; interval: Интервал отправки пакетов в секундах; scenario: Используемый тестовая сцена (simple, larger или full).

62.

sat-trace-input-interference-example

packetSize: Размер пакета в байтах; interval: Интервал отправки пакетов в секундах; scenario: Используемая тестовая сцена (simple, larger или full).

63.

sat-trace-input-rx-power-example

packetSize — Размер постоянного пакета в байтах; interval — Интервал отправки пакетов в секундах (например, 1 с); scenario — Используемая тестовая сцена (simple, larger или full).

64.

sat-trace-output-example

packetSize — Размер постоянного пакета в байтах; interval — Интервал отправки пакетов в секундах (например, 1 с); scenario — Используемая тестовая сцена (simple, larger или full).

65.

sat-training-example

utsPerBeam — Количество терминалов пользователя (UT) на один луч; simDurationInSeconds — Продолжительность симуляции в секундах.

66.

sat-tutorial-example

scenario — Сцена для создания (simple, larger или full).

67.

sat-vhts-example

Beams — Идентификаторы используемых лучей (разделены символом «_»); NbGw - Количество шлюзов (GW); NbUtsPerBeam — Количество пользовательских терминалов (UT) на один луч; NbEndUsersPerUt — Количество конечных пользователей на один пользовательский терминал; AppStartTime — Время запуска приложений (в секундах или с указанием единицы измерения); SimLength — Длительность симуляции (в секундах или с указанием единицы измерения); RaModel — Выбранная модель произвольного доступа (CRDSA или MARSALA); DynamicLoadControl — Установите true для использования динамического управления нагрузкой; UtMobility — Установите true для использования мобильности пользовательских терминалов; mobilityPath — Путь к файлу мобильности; BurstLength — Длина пакета (может быть ShortBurst, LongBurst или ShortAndLongBurst); SuperFrameConfForSeq0 — Конфигурация суперфрейма, используемая для последовательности суперфреймов 0; FrameConfigType — Тип конфигурации фрейма, используемый для суперфрейма.

На этом мы заканчиваем обзор готовых примеров использования модуля Satellite. В следующей статье мы приступим к разработке собственных тестов.

Работа выполнена в рамках Программы создания и развития центра НТИ на базе МФТИ, Физтех по направлению («сквозной» технологии) Национальной технологической инициативы «Перспективные технологии для космических систем и сервисов» при реализации комплексного научно-исследовательского и опытно-конструкторского проекта “Разработка комплексной среды моделирования и проектирования гибридных инфокоммуникационных сетей наземного, стратосферного и космического сегментов с использованием параметрического и структурного синтеза”.