Кроме того необходим объект GOD (General Operation Director), который используется для хранения глобальной информации о состояниях симулируемой мобильной беспроводной сети.
#Создаём GOD
create-god $val(nn)
Для конфигурирования канала создаётся его объект или несколько для разных узлов:
set chan1 [new $val(chan)]
set chan2 [new $val(chan)]
Далее в соответствии с заданными выше параметрами необходимо произвести конфигурирование узла:
$ns node-config -adhocRouting $val(rp) \ -llType $val(ll) \ -macType $val(mac) \ -ifqType $val(ifq) \ -ifqLen $val(ifqlen) \ -antType $val(ant) \ -propType $val(prop) \ -phyType $val(netif) \ -topoInstance $topo \ -channel $chan1 \ -agentTrace ON \ -routerTrace ON \ -macTrace OFF \ -movementTrace OFF \
После того как мы задали конфигурацию узла можно создать сами узлы (необходимое их количество):
for {set i 0} {$i < $val(nn) } {incr i} { set n($i) [$ns node]
#разрешить – 1, запретить – 0 случайное движение $n($i) random-motion 0
#радиус изображения узла
$ns initial_node_pos $n($i) 20
3. Другие параметры модели беспроводной сети
Дадим описание ещё нескольких команд ns2, специфичных для моделей беспроводных сетей.
56
Для просмотра процесса симуляции в network animator необходимо создать файл трассировки следующими командами:
#Создаем файл для запуска программы с помощью NAM:
set namtrace [open wireless.nam w]
$ns namtrace-all-wireless $namtrace $val(x) $val(y)
Можно задать размеры узлов, например:
$ns initial_node_pos $n($i) 100
Начальные координаты X, Y, Z местоположения узлов задаются следующим образом:
$n($i) set X_ 50.0 $n($i) set Y_ 50.0 $n($i) set Z_ 0.0
Для того чтобы задать передвижение узлов (отличное от случайного) в определённое время необходимо задать at-событие:
$ns_ at 1.0 "$n($i) setdest 250.0 400.0 20.0"
Параметрами команды setdest являются: координаты X и Y конечной точки движения и скорость движения.
Агенты, параметры трафика, at-события, файлы трассировки и другие объекты и команды применяются так же, как в лабораторных работах №№2-5.
4. Пример симуляции беспроводной ad hoc сети
Параметры мобильного узла и модели заданы так, как это описано в разделах 2-3.
На рисунке 29 можно видеть фрагмент анимации процесса моделирования беспроводной ad hoc сети. Характеристики, полученные в результате симуляции, представлены на рисунке 30.
Рисунок 29 – Пример симуляции ad hoc сети
57
Рисунок 30 – Производительность каналов, Кбит/сек.
Задание:
Разработать в симуляторе ns2 модель беспроводной сети в соответствии с вариантом.
Сеть состоит из четырёх мобильных узлов, два из которых являются передатчиками, два – приёмниками. Узлы-передатчики генерируют UDP-трафик, с приложением по варианту.
Начальное местоположение узлов, направление и скорость движения задать произвольно. Узлы-передатчики – неподвижные, узлы-приёмники - мобильные.
Используя агенты LossMonitor в узлах-приёмниках, получить зависимости заданного параметра от времени. Для вывода характеристик использовать утилиту XGraph.
Продемонстрировать симуляцию в network animator.
Порядок выполнения:
1.Создать скрипт на языке Tcl для выполнения задания и сохранить его с расширением .tcl (например, lab6.tcl) в выбранную папку.
2.Добавить в скрипт строки для формирования входного файла программы
XGraph (содержание файла время и заданный параметр).
3.Добавить в скрипт строки для формирования входного файла программы nam для визуализации процесса симуляции.
4.Добавить команды мониторинга и численной обработки по варианту.
5.Создать процедуру для записи результатов мониторинга в файл.
58
6.Добавить строки для вывода результатов на график.
7.Запустить эмулятор Linux и Х-сервер.
8.Перейти в выбранную папку командой cd.
9.Запустить скрипт на выполнение командой: ns lab6.tcl.
10.Отредактировать полученные зависимости таким образом, чтобы все оси линии и подписи были хорошо видны.
11.Оформить отчёт по лабораторной работе.
12.Сдать и защитить работу.
13.Выйти из эмулятора командой exit.
Содержание отчёта:
1.Номер, название и цель лабораторной работы.
2.ФИО и группа студента, выполнившего лабораторную работу.
3.Номер варианта и задание к лабораторной работе.
4.Структура моделируемой сети.
5.Tcl-скрипт в соответствии с заданием.
6.Результаты выполнения лабораторной работы в графическом виде и в виде скриншотов.
7.Полученные трейс-файлы.
8.Описание выполнения лабораторной работы и полученных результатов.
9.Выводы по проделанной работе.
Контрольные вопросы:
1.Что такое мобильный узел, и какими свойствами он обладает?
2.Как задать передвижение узлов в ns2?
3.Охарактеризуйте методы мониторинга передачи данных в беспроводном канале.
4.Опишите механизмы маршрутизации в беспроводной сети, реализуемые симулятором ns2.
5.Каким образом задать параметры канала и метод маршрутизации в ns2?
6.Приведите особенности ad hoc сетей.
7.Что такое MAC и LLC протоколы? Охарактеризуйте их особенности для се-
тей IEEE 802.11.
59
Варианты заданий:
Таблица 6 – Исследуемый параметр беспроводного канала
** |
0 2 |
0 3 |
1 0 |
1 2 |
1 3 |
|
1 3 |
2 1 |
2 3 |
3 0 |
0 2 |
||
* |
TORA |
DSDV |
AODV |
DSR |
PUMA |
|
|
||||||
|
|
|
|
|
|
|
Средний размер принятого пакета, |
1 |
2 |
3 |
4 |
5 |
|
байт |
||||||
|
|
|
|
|
||
Производительность, бит/сек. |
6 |
7 |
8 |
9 |
10 |
|
|
|
|
|
|
|
|
Производительность, пакет/сек. |
11 |
12 |
13 |
14 |
15 |
|
|
|
|
|
|
|
|
Потери, пакет/сек. |
16 |
17 |
18 |
19 |
20 |
|
|
|
|
|
|
|
|
Входная нагрузка, Кбит/сек. |
21 |
22 |
23 |
24 |
25 |
|
|
|
|
|
|
|
* Параметр.
** Узлы-источники; Узлы-приёмники; Механизм маршрутизации.
60