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

Методическое руководство по Network Simulator

.pdf
Скачиваний:
71
Добавлен:
12.04.2015
Размер:
474.34 Кб
Скачать

Создание трафиковой нагрузки

1.Создаем UDP агент и закрепляем его за узлом n0 set udp0 [new Agent/UDP]

$ns attach-agent $n0 $udp0

2.Создаем CBR трафик и закрепляем его за узлом n0 set cbr0 [new Application/Traffic/CBR]

$cbr0 set packetSize_ 500 $cbr0 set interval_ 0.005 $cbr0 attach-agent $udp0

3.Создание агента TCP и его присоединение к узлу n1 set tcp1 [new Agent/TCP]

$ns attach-agent $n1 $tcp1

4.Создание приложения FTP и присоединение его к агенту tcp1 set ftp [new Application/FTP]

$ftp attach-agent $tcp1

5.Создаем приемный агент для CBR трафика и закрепляем его за

узлом n3

set null0 [new Agent/Null] $ns attach-agent $n3 $null0

7.Создание агента получателя для tcp1 set sink1 [new Agent/TCPSink]

$ns attach-agent $n3 $sink1

8.Два CBR агента необходимо соединение с недействующим

агентом.

$ns connect $udp0 $null0 $ns connect $tcp1 $sink1

9.Необходимо, чтобы первый СBR агент начинал отправку пакетов в 0,5с и заканчивал в 4,5 с, а приложение FTP – в 1,0 с и 4,0 с соответственно.

$ns at 0.5 "$cbr0 start" $ns at 1.0 "$ ftp start" $ns at 4.0 "$ ftp stop" $ns at 4.5 "$cbr0 stop"

11

Запустите скрипт при помощи ns example2.tcl . После запуска про- граммы-аниматора смоделированная сеть имеет вид (рис. 4):

Рис. 4. Движение трафика по сети

Мониторинг очереди

Для мониторинга очереди в соединении от n2 к n3, нужно будет добавить только одну строку в ваш код.

$ns duplex-link-op $n2 $n3 queuePos 0.5

Запустите ns снова, и вы увидите модель, указанную на рис. 5.

Рис 5. Отображение очереди на узле 2.

Сначала будет видна очередь, а затем обратите внимание на то, как пакеты начнут падать, это должны быть только синие пакеты. Но нельзя предполагать, насколько это будет «справедливо» от простой очереди DropTail. Поэтому попытаемся улучшить очередь, используя SFQ (stochastic fair queueing – случайный порядок очереди) для соединения n2 с n3. Измените строку в коде для соединения n2 и n3 на следующую:

$ns duplex-link $n3 $n2 1Mb 10ms SFQ

12

Организация очереди будет более четкой. Будет падать одинаковое количество пакетов генерируемых с двух узлов (рис. 6).

Рис. 6. Потеря пакетов при использовании SFQ.

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

1.Что такое пакет? Время жизни пакета?

2.Почему пакет имеет ограниченное время жизни?

3.Из-за чего в симуляторе начинают теряться пакеты?

4.Что такое SFQ?

5.Какие виды соединений между узлами вы знаете? Приведите

пример.

6.Для чего нужен мониторинг очереди?

7.Что означает строка $ns duplex-link-op $n2 $n3 queuePos 0.5?

Задание к лабораторной работе № 2

Оценить среднюю задержку и число потерянных пакетов в зависимости от скорости передаваемой информации.

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

Условия: Время жизни сети 17 секунд. Остальные данные приведены в таблице 1 и рисунках 7, 8, 9.

13

Таблица 2. Исходные данные для моделирования

№ Вариан-

 

Параметры сети

 

та

Номер то-

Пропускная

Скорость

Пары генери-

 

пологии

способность

CBR

рующих узлов

 

 

канала,

трафика,

 

 

 

Мбит/с

кбит/с

 

1

1

1,5

512

1-5, 1-3, 2-6

2

2

2

1024

1-6, 5-2, 4-3

3

3

1

512

1-3,2-4, 5-1

4

1

0,5

256

1-5, 1-3, 2-6

5

2

1,5

512

1-6, 5-2, 4-3

6

3

2

1024

1-3,2-4, 5-1

7

1

1

512

1-5, 1-3, 2-6

8

2

0,5

256

1-6, 5-2, 4-3

9

3

1,5

512

1-3,2-4, 5-1

10

1

2

1024

1-5, 1-3, 2-6

11

2

1

512

1-6, 5-2, 4-3

12

3

0,5

256

1-3,2-4, 5-1

13

1

1,5

512

1-5, 1-3, 2-6

14

2

2

1024

1-6, 5-2, 4-3

15

3

1

512

1-3,2-4, 5-1

16

1

0,5

256

1-5, 1-3, 2-6

17

2

1,5

512

1-6, 5-2, 4-3

18

3

2

1024

1-3,2-4, 5-1

19

1

1

512

1-5, 1-3, 2-6

20

2

0,5

256

1-6, 5-2, 4-3

21

3

1,5

512

1-3,2-4, 5-1

22

1

2

1024

1-5, 1-3, 2-6

23

2

1

512

1-6, 5-2, 4-3

24

3

0,5

256

1-3,2-4, 5-1

14

Рис. 7 Топология 1

Рис. 8 Топология 2

Рис. 9 Топология 3

15

Лабораторная работа №3 Моделирование обрывов каналов связи в телекоммуникационных системах

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

Задачи:

1.Научится генерировать массив узлов в моделируемой сети

2.Научиться генерировать массивы каналов связи между узлами

3.Научится моделировать аварии (обрывы) каналов связи

4.Научится анализировать работоспособность сети при использовании динамических протоколов маршрутизации.

Основные сведения Создание топологии с бόльшим числом узлов.

Назовите TCL скрипт example3.tcl. В данный файл скопируйте скрипт из лабораторной работы №1

Как всегда, сначала создадим топологию, хотя в этот раз возьмем другой пример, который будет более удобным для создания более сложной топологии. Следующий код создает семь узлов и хранит их в массиве n() [8].

for {set i 0} {$i < 7} {incr i} { set n($i) [$ns node]

}

Обратите внимание, что массивы, как и другие переменные в Tcl не обязательно предварительно объявлять.

Теперь соединим узлы, создавая тем самым топологию «Кольцо». for {set i 0} {$i < 7} {incr i} {

$ns duplex-link $n($i) $n([expr ($i+1)%7]) 1Mb 10ms DropTail

}

После запуска скрипта топология моделируемой системы может отображаться не совсем корректно. Для придания топологии сети более корректного вида необходимо нажать клавишу «re-layout». После нажатия на клавишу «re-layout» должно получиться изображение, рис. 10.

16

Рис. 10. Топология «Кольцо»

Задание трафика в сети

Задание трафика в сети производится аналогичным способом как описано в л/р №2.

Создание UDP агента и закрепление его за узлом n(0) set udp0 [new Agent/UDP]

$ns attach-agent $n(0) $udp0

Создание CBR трафика и закрепление его за udp0 set cbr0 [new Application/Traffic/CBR]

$cbr0 set packetSize_ 500 $cbr0 set interval_ 0.005 $cbr0 attach-agent $udp0

Создание узла, принимающего трафик set null0 [new Agent/Null]

$ns attach-agent $n(3) $null0

Соединение узла-генератора с узлом приемником трафика. $ns connect $udp0 $null0

Создание расписания событий $ns at 0.5 "$cbr0 start"

$ns at 4.5 "$cbr0 stop"

Если запустить скрипт, то будет видно, как трафик проходит по наименьшему пути, от узла 0 к узлу 3 через узлы 1 и 2, как и ожидалось. Теперь добавим другое интересное свойство.

17

Моделирование обрывов каналов связи

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

$ns rtmodel-at 1.0 down $n(1) $n(2)

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

$ns rtmodel-at 2.0 up $n(1) $n(2)

При запуске скрипта будет видно, что между 1-й и 2-й секундой соединение разорвется, и все данные, отправленные из 0-го узла будут потеряны (рис. 11).

Рис. 11. Отказ соединения без использования динамической маршрутизации

Для решения поиска обходного маршрута используется динамическая маршрутизация. Использование динамической маршрутизации обеспечивается написанием следующей строки:

$ns rtproto DV

18

При моделирование сети связи с использованием динамического протокола маршрутизации будет видно, как несколько маленьких пакетов проходят через сеть - это пакеты используемые для обмена маршрутной информацией между узлами. Когда соединение разорвется на первой секунде, по сети снова пойдут пакеты обновления, после чего будет определен обходной маршрут, по которому пойдут информационные пакеты (через узлы 6,5 и 4), рис. 12.

Рис. 12. Отказ соединения с использованием динамической маршрутизации

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

1. Какие достоинства и недостатки топологии построения сети «Кольцо» вы знаете?

2.Какие уровни OSI вы знаете?

3.Что такое маршрутизация? На каком уровне OSI применяется маршрутизатор?

4.Что такое динамическая маршрутизация?

5.Что такое отказ соединения?

6.Что означает строка $ns rtmodel-at 1.0 down $n(1) $n(2)?

7.Что необходимо для моделирования восстановление канала свя-

зи?

Задание к лабораторной работе №3.

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

19

Исходные данные представлены в таблице 3 и на рисунках 13-15. Дополнительно: время жизни сети 12 секунд.

Таблица 3. Исходные данные для моделирования

 

 

 

 

Параметры сети

 

 

 

 

 

 

 

 

 

 

№ Варианта

Номер топологии

Пропускная способность канала, Мбит/с

Скорость CBR трафика, кбит/с

Пары генерирующих узлов

Время обрыва ка-

налов

Время восстановления каналов

 

 

 

 

 

 

 

 

 

 

 

 

3-1,

2-3 - 5 сек.,

2-3 - 8 сек.

 

 

 

 

1-4 – 12

1

1

1,5

512

2-6,

1-4 –7

сек.,

сек. 5-6 -

 

 

 

 

5-3.

5-6 –10

сек..

 

 

 

 

 

 

 

15 сек.

 

 

 

 

 

1-5,

1-2 - 3 сек.,

1-2 - 10 сек.,

2

2

2

1024

2-3,

2-6 – 5

сек.,

2-6 – 9

сек.,

 

 

 

 

6-1

4-5 – 8

сек

4-5 – 11

сек

 

 

 

 

1-3,

1-6 - 3 сек

1-6 - 10 сек.,

3

3

1

512

2-5,

4-5 - 5 сек.,

4-5 – 9

сек.,

 

 

 

 

4-6

2-6 - 8 сек

2-6 – 11

сек

 

 

 

 

3-1,

2-3 - 5 сек.,

2-3 - 8 сек.

 

 

 

 

1-4 – 12

4

1

0,5

256

2-6,

1-4 –7

сек.,

сек. 5-6 -

 

 

 

 

5-3.

5-6 –10

сек..

 

 

 

 

 

 

 

15 сек.

 

 

 

 

 

1-5,

1-2 - 3 сек.,

1-2 - 10 сек.,

5

2

1,5

512

2-3,

2-6 – 5

сек.,

2-6 – 9

сек.,

 

 

 

 

6-1

4-5 – 8

сек

4-5 – 11

сек

 

 

 

 

1-3,

1-6 - 3 сек

1-6 - 10 сек.,

6

3

2

1024

2-5,

4-5 - 5 сек.,

4-5 – 9

сек.,

 

 

 

 

4-6

2-6 - 8 сек

2-6 – 11

сек

 

 

 

 

3-1,

2-3 - 5 сек.,

2-3 - 8 сек.

 

 

 

 

1-4 – 12

7

1

1

512

2-6,

1-4 –7

сек.,

сек. 5-6 -

 

 

 

 

5-3.

5-6 –10

сек..

 

 

 

 

 

 

 

15 сек.

 

 

 

 

 

1-5,

1-2 - 3 сек.,

1-2 - 10 сек.,

8

2

0,5

256

2-3,

2-6 – 5

сек.,

2-6 – 9

сек.,

 

 

 

 

6-1

4-5 – 8

сек

4-5 – 11

сек

20