Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

521_Kokoreva,_e._V._Modelirovanie_v_srede_network_

.pdf
Скачиваний:
2
Добавлен:
12.11.2022
Размер:
2.27 Mб
Скачать

Рисунок 27 – Мониторинг очереди звена с потерями из-за помех

Рисунок 28 – Визуализация модели с потерями

51

Задание:

Разработать в симуляторе ns2 модель TCP сети в соответствии с вариантом из лабораторной работы №2. Добавить в неё модель потерь и получить зависимость заданного по варианту параметра от времени.

Для вывода характеристик использовать утилиту XGraph.

Продемонстрировать симуляцию в network animator.

Порядок выполнения:

1.Создать скрипт на языке Tcl для выполнения задания и сохранить его с расширением .tcl (например, lab5.tcl) в выбранную папку.

2.Добавить в скрипт модель ошибок, как описано в теоретической части данной лабораторной работы.

3.Добавить в скрипт строки для формирования входного файла программы XGraph (содержание файла время и заданный параметр).

4.Добавить в скрипт строки для формирования входного файла программы nam для визуализации процесса симуляции.

5.Добавить строки мониторинга по варианту.

6.Создать процедуру для записи результатов мониторинга в файл.

7.Добавить строки для вывода результатов на график.

8.Запустить эмулятор Linux и Х-сервер.

9.Перейти в выбранную папку командой cd.

10.Запустить скрипт на выполнение командой: ns lab5.tcl. 11.Отредактировать полученные зависимости таким образом, чтобы все оси

линии и подписи были хорошо видны. 12.Оформить отчёт по лабораторной работе. 13.Сдать и защитить работу.

14.Выйти из эмулятора командой exit.

Содержание отчёта:

1.Номер, название и цель лабораторной работы.

2.ФИО и группа студента, выполнившего лабораторную работу.

3.Номер варианта и задание к лабораторной работе.

4.Структура моделируемой сети.

5.Tcl-скрипт в соответствии с заданием.

6.Результаты выполнения лабораторной работы в графическом виде и в виде скриншотов.

7.Полученные трейс-файлы.

8.Описание выполнения лабораторной работы и полученных результатов.

9.Выводы по проделанной работе.

52

Контрольные вопросы:

1.Охарактеризуйте виды потерь в канале.

2.Каким образом задать модель ошибок в ns2?

3.Охарактеризуйте методы мониторинга передачи данных в канале.

4.Что содержат файлы трассировки мониторинга очередей?

5.Что содержат файлы для графического вывода утилитой XGraph?

6.Что содержат файлы трассировки для вывода анимации?

7.Каким образом можно задать распределение потерянных пакетов на линии?

Варианты заданий:

Таблица 5 – Исследуемый параметр канала с потерями

**

2 3

0 3

2 0

1 2

1 3

*

 

 

 

 

 

Ушедших пакетов (monitor-queue)

1

6

11

16

21

 

 

 

 

 

 

Ушедших Кбит/сек. (monitor-queue)

2

7

12

17

22

 

 

 

 

 

 

Потерянных пакетов (monitor-queue)

3

8

13

18

23

 

 

 

 

 

 

Потерянных Кбит/сек. (monitor-queue)

4

9

14

19

24

 

 

 

 

 

 

Потерянных пакетов/сек. (LossMonitor)

5

10

15

29

25

 

 

 

 

 

 

* Параметр и вид мониторинга. ** Звено.

53

Лабораторная работа №6

Моделирование беспроводных сетей

Цель работы: Овладеть основными принципами моделирования беспроводных сетей в среде ns2. Изучить свойства мобильного узла и механизмы маршрутизации. Научиться задавать начальные координаты, размер и движение узлов.

Краткая теория:

Ns2 позволяет создавать модели беспроводных локальных сетей и самоорганизующихся ad hoc сетей на основе стандарта IEEE 802.11.

1. Свойства мобильного узла

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

При создании мобильного узла необходимо определить сетевые компо-

ненты, механизм маршрутизации и топографию для обеспечения движения узла.

Для создания моделей беспроводных сетей в ns2 определены следующие сетевые компоненты:

Channel (канал);

Network Interface (сетевой интерфейс);

Radio Propagation Model (модель распространения радиоволн);

Antenna (антенна);

MAC Protocol (MAC протокол);

Queue Interface (механизм обслуживания очереди);

Link Layer (канальный уровень);

Address resolution protocol (протокол определения адреса) и др.

Важной составляющей моделирования ad hoc сети в симуляторе является механизм маршрутизации. Ns2 поддерживает пять таких механизмов:

1.Destination Sequence Distance Vector (DSDV) последовательность назначе-

ния векторного расстояния.

2.Dynamic Source Routing (DSR) – протокол динамического источника маршрутизации.

3.Temporally ordered Routing Algorithm (TORA) – алгоритм маршрутизации со временной упорядоченностью.

54

4.Ad hoc On-demand Distance Vector (AODV) протокол вектора расстояния по запросу.

5.Protocol for Unified Multicasting Through Announcements (PUMA) протокол единой многоадресной рассылки через сообщения.

2. Создание мобильного узла в ns2

Для создания модели беспроводной ad hoc сети необходимо задать свойства мобильного узла. Для этого определим набор переменных:

#тип канала

set val(chan) Channel/WirelessChannel ;

#модель распространения волн

set val(prop) Propagation/TwoRayGround ;

#тип интерфейса сети

set val(netif) Phy/WirelessPhy ;

#тип MAC

set val(mac) Mac/802_11;

#тип очереди интерфейса

set val(ifq) Queue/DropTail/PriQueue ;

#тип уровня связи (Link Layer) set val(ll) LL ;

#модель антенны

set val(ant) Antenna/OmniAntenna ;

#максимальное число пакетов set val(ifqlen) 100 ;

#число узлов set val(nn) 5 ;

#протокол маршрутизации set val(rp) DSDV ;

#пределы перемещения узлов по оси X set val(x) 300 ;

#пределы перемещения узлов по оси Y set val(y) 300 ;

Чтобы наблюдать за перемещением узлов в пределах топографической границы нужно создать объект класса Topography (топография):

set topo [new Topography]

$topo load_flatgrid $val(x) $val(y)

55

Кроме того необходим объект 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