Засоби для моделювання спеціалізованих та сенсорних мереж бездротового доступу: симулятори роботи комп’ютерних мереж NS-2 та NS-3
Розглядаються та порівнюються існуючі програмні засоби для моделювання бездротових сенсорних та спеціалізованих мереж, а саме NS-2 та NS-3. Наводяться приклади роботи в стимуляторі NS-2....
Gespeichert in:
Datum: | 2009 |
---|---|
Hauptverfasser: | , , , |
Format: | Artikel |
Sprache: | Ukrainian |
Veröffentlicht: |
Інститут проблем моделювання в енергетиці ім. Г.Є. Пухова НАН України
2009
|
Schriftenreihe: | Збірник наукових праць Інституту проблем моделювання в енергетиці ім.Г.Є.Пухова НАН України |
Online Zugang: | http://dspace.nbuv.gov.ua/handle/123456789/21633 |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Назва журналу: | Digital Library of Periodicals of National Academy of Sciences of Ukraine |
Zitieren: | Засоби для моделювання спеціалізованих та сенсорних мереж бездротового доступу: симулятори роботи комп’ютерних мереж NS-2 та NS-3 / М. Зеляновський, Алхіхі Мухамад, Аль-бдур Нашат, Самі Аскар // Збірник наукових праць Інституту проблем моделювання в енергетиці ім.Г.Є.Пухова НАН України. — К.: ІПМЕ ім. Г.Є.Пухова НАН України, 2009. — Вип. 51. — С. 203-210. — Бібліогр.: 5 назв. — укр. |
Institution
Digital Library of Periodicals of National Academy of Sciences of Ukraineid |
irk-123456789-21633 |
---|---|
record_format |
dspace |
spelling |
irk-123456789-216332011-09-30T12:17:35Z Засоби для моделювання спеціалізованих та сенсорних мереж бездротового доступу: симулятори роботи комп’ютерних мереж NS-2 та NS-3 Зеляновський, М. Алхіхі Мухамад Аль-бдур Нашат Самі Аскар Розглядаються та порівнюються існуючі програмні засоби для моделювання бездротових сенсорних та спеціалізованих мереж, а саме NS-2 та NS-3. Наводяться приклади роботи в стимуляторі NS-2. In this article the NS-2 and NS-3 network simulator tools are reviewed and compared. Examples of network modeling for NS-2 tool are given. 2009 Article Засоби для моделювання спеціалізованих та сенсорних мереж бездротового доступу: симулятори роботи комп’ютерних мереж NS-2 та NS-3 / М. Зеляновський, Алхіхі Мухамад, Аль-бдур Нашат, Самі Аскар // Збірник наукових праць Інституту проблем моделювання в енергетиці ім.Г.Є.Пухова НАН України. — К.: ІПМЕ ім. Г.Є.Пухова НАН України, 2009. — Вип. 51. — С. 203-210. — Бібліогр.: 5 назв. — укр. XXXX-0067 http://dspace.nbuv.gov.ua/handle/123456789/21633 621.311 uk Збірник наукових праць Інституту проблем моделювання в енергетиці ім.Г.Є.Пухова НАН України Інститут проблем моделювання в енергетиці ім. Г.Є. Пухова НАН України |
institution |
Digital Library of Periodicals of National Academy of Sciences of Ukraine |
collection |
DSpace DC |
language |
Ukrainian |
description |
Розглядаються та порівнюються існуючі програмні засоби для моделювання бездротових сенсорних та спеціалізованих мереж, а саме NS-2 та NS-3. Наводяться приклади роботи в стимуляторі NS-2. |
format |
Article |
author |
Зеляновський, М. Алхіхі Мухамад Аль-бдур Нашат Самі Аскар |
spellingShingle |
Зеляновський, М. Алхіхі Мухамад Аль-бдур Нашат Самі Аскар Засоби для моделювання спеціалізованих та сенсорних мереж бездротового доступу: симулятори роботи комп’ютерних мереж NS-2 та NS-3 Збірник наукових праць Інституту проблем моделювання в енергетиці ім.Г.Є.Пухова НАН України |
author_facet |
Зеляновський, М. Алхіхі Мухамад Аль-бдур Нашат Самі Аскар |
author_sort |
Зеляновський, М. |
title |
Засоби для моделювання спеціалізованих та сенсорних мереж бездротового доступу: симулятори роботи комп’ютерних мереж NS-2 та NS-3 |
title_short |
Засоби для моделювання спеціалізованих та сенсорних мереж бездротового доступу: симулятори роботи комп’ютерних мереж NS-2 та NS-3 |
title_full |
Засоби для моделювання спеціалізованих та сенсорних мереж бездротового доступу: симулятори роботи комп’ютерних мереж NS-2 та NS-3 |
title_fullStr |
Засоби для моделювання спеціалізованих та сенсорних мереж бездротового доступу: симулятори роботи комп’ютерних мереж NS-2 та NS-3 |
title_full_unstemmed |
Засоби для моделювання спеціалізованих та сенсорних мереж бездротового доступу: симулятори роботи комп’ютерних мереж NS-2 та NS-3 |
title_sort |
засоби для моделювання спеціалізованих та сенсорних мереж бездротового доступу: симулятори роботи комп’ютерних мереж ns-2 та ns-3 |
publisher |
Інститут проблем моделювання в енергетиці ім. Г.Є. Пухова НАН України |
publishDate |
2009 |
url |
http://dspace.nbuv.gov.ua/handle/123456789/21633 |
citation_txt |
Засоби для моделювання спеціалізованих та сенсорних мереж бездротового доступу: симулятори роботи комп’ютерних мереж NS-2 та NS-3 / М. Зеляновський, Алхіхі Мухамад, Аль-бдур Нашат, Самі Аскар // Збірник наукових праць Інституту проблем моделювання в енергетиці ім.Г.Є.Пухова НАН України. — К.: ІПМЕ ім. Г.Є.Пухова НАН України, 2009. — Вип. 51. — С. 203-210. — Бібліогр.: 5 назв. — укр. |
series |
Збірник наукових праць Інституту проблем моделювання в енергетиці ім.Г.Є.Пухова НАН України |
work_keys_str_mv |
AT zelânovsʹkijm zasobidlâmodelûvannâspecíalízovanihtasensornihmerežbezdrotovogodostupusimulâtorirobotikompûternihmerežns2tans3 AT alhíhímuhamad zasobidlâmodelûvannâspecíalízovanihtasensornihmerežbezdrotovogodostupusimulâtorirobotikompûternihmerežns2tans3 AT alʹbdurnašat zasobidlâmodelûvannâspecíalízovanihtasensornihmerežbezdrotovogodostupusimulâtorirobotikompûternihmerežns2tans3 AT samíaskar zasobidlâmodelûvannâspecíalízovanihtasensornihmerežbezdrotovogodostupusimulâtorirobotikompûternihmerežns2tans3 |
first_indexed |
2025-07-02T21:49:46Z |
last_indexed |
2025-07-02T21:49:46Z |
_version_ |
1836573510428786688 |
fulltext |
203© М.Ю.Зеляновський, Алхіхі Мухамад, Аль-бдур Нашат, Самі Аскар
УДК 621.311
М.Ю.Зеляновський, Алхіхі Мухамад, Аль-бдур Нашат, Самі Аскар
ЗАСОБИ ДЛЯ МОДЕЛЮВАННЯ СПЕЦІАЛІЗОВАНИХ ТА
СЕНСОРНИХ МЕРЕЖ БЕЗДРОТОВОГО ДОСТУПУ: СИМУЛЯТОРИ
РОБОТИ КОМП’ЮТЕРНИХ МЕРЕЖ NS-2 ТА NS-3
Розглядаються та порівнюються існуючі програмні засоби для
моделювання бездротових сенсорних та спеціалізованих мереж, а саме NS-2 та
NS-3. Наводяться приклади роботи в стимуляторі NS-2.
In this article the NS-2 and NS-3 network simulator tools are reviewed and
compared. Examples of network modeling for NS-2 tool are given.
Вступ
Однією з основних задач, що постають перед розробниками сенсорних
та спеціалізованих мереж, стає забезпечення масштабованості та необхідних
надійності, довговічності, швидкодії мережі [1]. Цього важко досягти без
використання належних засобів для їх моделювання.
В статті описані одні з найбільш відомих та потужних, на момент
написання статті, програмні засоби для моделювання бездротових, зокрема
сенсорних та спеціалізованих мереж – NS-2 та NS-3.
NS-2 та NS-3
NS-2 (Network Simulator версія 2) є об’єктно-орієнтованим
стимулятором дискретних в часі подій, розроблений у Каліфорнійському
університеті Берклі. NS-2 дозволяє моделювання локальних мереж та WAN і
підтримує моделювання протоколів TCP та UDP, маршрутизації в мережах як
з дротовим, так і з бездротовим доступом [2].
Розробка NS почалась ще у 1989 і за останній час ця система постійно
вдосконалюється. NS являє собою програму з відкритим кодом, що працює
під UNIX-подібними системами. Призначення NS – освіта та дослідження в
мережних технологіях.
Рис.1. Базова структура симуляторів NS-2 та NS-3
204
NS-3 (версія 3) є повністю новим симулятором на базі NS-2. Основна
відмінність від NS-2 – відсутність OTcl (OTcl, скорочення від MIT Object
Tcl), а використання програмування виключно на C++ та Python [3].
Відмінності між NS-2 та NS-3 подано в наступній таблиці.
Табл.1
NS-2 NS-3
Перший реліз 1996 2008
Базова платформа NS-1 та REAL simulator ns-2, GTNets, YANS
Архітектура OTcl та C++ C++ та Python
Мова скриптів OTcl Python
Візуалізація NAM ns3-viz, pyviz, nam,
iNSpect
Тип симуляції послідовна розподілена
Дві мови програмування в одному симуляторі
NS використовує дві мови, оскільки має два типи операцій для
виконання. З одного боку, детальна симуляція протоколу вимагає мови
програмування, яка може ефективно маніпулювати байтами, заголовками
пакетів і яка водночас повинна забезпечувати можливість втілення
алгоритмів, що працюють з великими масивами даних. Для цієї задачі
необхідна висока швидкість виконання. Забезпечення низьких часових затрат
циклу розробки (запуск симуляції, пошук помилки в коді, виправлення
помилки, ре-компіляція, повторна симуляція) є менш важливим [4].
З іншого боку, велика кількість досліджень в галузі мережевих
технологій вимагає незначних змін параметрів, змін в конфігурації мережі
або швидкого перегляду можливих сценаріїв роботи. В цьому випадку
згаданий вище ітераційний процес розробки є більш важливим, а швидкість
виконання ролі не відіграє, оскільки конфігурування відбувається лише на
початку симуляції.
Для цих двох різних задач NS використовує дві мови програмування. У
NS-3 це C++ та Python. У NS-2 це C++ та OTcl відповідно. Тому:
• OTcl – використовується для конфігурування, настройки, одноразових
дій; у випадку коли існуючі об’єкти C++ повністю підходять для
поставленої задачі;
• C++ – використовується у випадку, коли необхідна обробка пакетів або
потоку; якщо з якихось причин існуючий C++ клас не підходить для
поставленої задачі.
До прикладу, лінії зв’язку є OTcl-об’єктами, що об’єднують в собі
різноманітні затримки, формування черг пакетів, моделі втрат в каналі.
Якщо експеримент може бути здійснено з використанням таких об’єктів –
нема потреби у C++. Якщо ж потрібне дещо специфічне (інша організація
черги, інша модель втрат) – потрібен новий об’єкт C++.
205
Приклад моделювання бездротової мережі у NS-2
Для моделювання вибрано 4 вузли мережі. Вузли «0» та «1», кожен з
яких є генератором UDP пакетів, вузол «2» - маршрутизатором і вузол «3» -
кінцевим приймачем. Пакети UDP мають розмір 500 байт та передаються
кожні 5 мс з кожного вузла. Пропускна здатність кожного каналу 1 МБіт/с.
Скрипт *.tcl, що дозволяє промоделювати таку мережу (коментарі після
знаку «#»):
#Створюємо об’єкт симулятора
set ns [new Simulator]
#Визначаємо кольори для пакетів даних, що надсилаються з вузла 1 і 2 відповідно
$ns color 1 Blue
$ns color 2 Red
#Створємо та відкриваємо файл, в якому буде мітитись результат трасування
set nf [open out.nam w]
$ns namtrace-all $nf
#Визначаємо процедуру, що буде викликатись по закінченню трасування
proc finish {} {
global ns nf
$ns flush-trace
#Закриваємо файл з результатами трасування
close $nf
#Викликаємо візуалізатор результату трасування NAM
exec nam out.nam &
exit 0
}
#Створюємо 4 вузли
set n0 [$ns node]
set n1 [$ns node]
set n2 [$ns node]
set n3 [$ns node]
#Визначаємо з’єднання між вузлами
$ns duplex-link $n0 $n2 1Mb 10ms DropTail
$ns duplex-link $n1 $n2 1Mb 10ms DropTail
#Для зєднання між вузлами 2 і 3 використаємо Stochastic Fair Queuing – намагаємось
#розподілити порівну можливість передавати дані
$ns duplex-link $n3 $n2 1Mb 10ms SFQ
#Визначаємо розміщення вузлів на діаграмі
$ns duplex-link-op $n0 $n2 orient right-down
$ns duplex-link-op $n1 $n2 orient right-up
$ns duplex-link-op $n2 $n3 orient right
#Спостерігаємо за чергою пакетів між вузлами 2 і 3
$ns duplex-link-op $n2 $n3 queuePos 0.5
#Створюємо агента UDP та приєднуємо його до вузла 0
set udp0 [new Agent/UDP]
$udp0 set class_ 1
$ns attach-agent $n0 $udp0
# Створюємо джерело трафіку з CBR та приєднуємо його до агента UDP
set cbr0 [new Application/Traffic/CBR]
$cbr0 set packetSize_ 500
$cbr0 set interval_ 0.005
$cbr0 attach-agent $udp0
#Створюємо агента UDP та приєднуємо його до вузла 1
set udp1 [new Agent/UDP]
206
$udp1 set class_ 2
$ns attach-agent $n1 $udp1
# Створюємо джерело трафіку з CBR та приєднуємо його до агента UDP
set cbr1 [new Application/Traffic/CBR]
$cbr1 set packetSize_ 500
$cbr1 set interval_ 0.005
$cbr1 attach-agent $udp1
#Створюємо нульового агента приймача для вузла 3
set null0 [new Agent/Null]
$ns attach-agent $n3 $null0
#Зєднуємо передавачі з приймачем
$ns connect $udp0 $null0
$ns connect $udp1 $null0
#Визначаємо розклад для агентів CBR
$ns at 0.5 "$cbr0 start"
$ns at 1.0 "$cbr1 start"
$ns at 4.0 "$cbr1 stop"
$ns at 4.5 "$cbr0 stop"
#Викликаємо процедуру завершення після симуляції протягом 5-ти секунд
$ns at 5.0 "finish"
#Запускаємо симуляцію
$ns run
Для безпосередньої симуляції зберігаємо поданий вище текст у файлі з
розширенням .tcl і викликаємо з командного рядка NS-2, передавши ім’я
файлу, наприклад:
mihalek@ubuntu-test:~/Документи/tcl$ ns example44.tcl
Очікувані результати симуляції
Пакет розміром в 500 байт надсилається 200 разів в секунду з вузлів «0»
та «1». Тому фактична завантаженість каналів між вузлами «0» та «2»
(однаково як і між «1» та «2») рівна 0,8 Мбіт/с. Отже для забезпечення
передачі даних без втрат до вузла «3» канал між вузлами «2» та «3» мав би
мати пропускну здатність в 1,6 МБіт/с, що є більшим за визначену пропускну
здатність для каналу між вузлами «2» та «3» 1 МБіт/с. Тому очікуємо втрати
пакетів на цьому каналі.
Симуляція
Зазначимо, що експерименти з системою NS-2 проводились на
віртуальній машині з ОС UBUNTU 9.04. В результаті отримуємо файл з
результатами симуляції out.nam, що підхоплюється компонентою NAM
(Network Animator Tool), яка і відображає результати симуляції на екрані, а
також дозволяє прослідкувати поведінку мережі в часі. На рис.2 подано
вигляд вікна NAM під час симуляції роботи мережі.
На рис.2 показано:
1. Кнопки управління перебігом відображення симуляції.
2. Повзунок для визначення кроку симуляції.
3. Відкинуті пакети.
207
4. Пакети за якими в даний момент велось спостереження (див. пункт 5).
5. Інформація про пакети:
I. з вузла «0»: CBR відісланий в момент 3,986 мс після початку
симуляції, розмір 500 байт;
II. з вузла «1»: CBR відісланий в момент 3,982 мс після початку
симуляції, розмір 500 байт.
6. Лінія часу симуляції з повзунком, що дозволяє переміститись в
довільний момент.
7. Графіки відслідковування:
I. завантаженість каналу між вузлами «0» та «2»;
II. завантаженість каналу між вузлами «1» та «2»;
III. завантаженість каналу між вузлами «2» та «3»;
IV. відкинуті пакети під час проходження вузла «2».
Рис.2. Результати симуляції мережі
Як видно з вікна симуляції, втрати при передачі дійсно присутні (див.
пункт 7 з пояснень до рис. 2). З графіків у вікні NAM важко судити чи дійсно
відкинутими будуть 60% зі всіх пакетів, що надходять до вузла «2».
Спробуємо дослідити це більш детально. Для цього використаємо
можливість трасування та відображення графіків засобами NS-2.
208
Трасування та побудова графіків на основі файлів трасування
Для зручнішого аналізу результатів трасування слід дещо змінити
скрипт симуляції. Замість створення одного нульового агента-приймача
створюємо 2 агенти, що мають можливість відслідковувати втрати на лініях
«0-3» та «1-3» і приєднуємо їх до вузла «3»:
set sink0 [new Agent/LossMonitor]
$ns attach-agent $n3 $sink0
set sink1 [new Agent/LossMonitor]
$ns attach-agent $n3 $sink1
$ns connect $udp0 $sink0
$ns connect $udp1 $sink1
Створюємо та відкриваємо нові файли для результатів трасування:
set f0 [open zavantazhenist1.tr w]
set f1 [open zavantazhenist2.tr w]
Пишемо процедуру запису результатів трасування в файл (коментарі
після знаку «#»):
proc record {} {
global sink0 sink1 f0 f1
#Беремо екземпляр симулятора
set ns [Simulator instance]
#Встановлюємо час через який процедура буде викликана знову
set time 0.5
#Записуємо у змінні кількості втрачених та прийнятих пакетів від вузлів «0» та «1»
set bw0 [$sink0 set nlost_]
set bw1 [$sink0 set npkts_]
set bw2 [$sink1 set nlost_]
set bw3 [$sink1 set npkts_]
#Беремо поточний час
set now [$ns now]
#Вираховуємо фактичну пропускну здатність в каналі «2-3» та пропускну здатність
#якої не вистачає для передачі всіх пакетів без втрат. Записуємо ці дані у файл
puts $f0 "$now [expr (($bw0+$bw2)*500)/$time*8/1000000]"
puts $f1 "$now [expr (($bw1+$bw3)*500)/$time*8/1000000]"
#Скидуємо кількості втрачених та прийнятих пакетів в 0 бо відслідковуємо
#зміну завантаженості в часі
$sink0 set nlost_ 0
$sink0 set npkts_ 0
$sink1 set nlost_ 0
$sink1 set npkts_ 0
#Призначаємо виконання цієї процедури наступного разу
$ns at [expr $now+$time] "record"
}
Також мусимо змінити розклад подій, додавши на початок перший
виклик процедури запису:
$ns at 0.0 "record"
І, насамкінець, змінюємо процедуру завершення симуляції, в якій тепер
мусимо закрити додаткові файли:
close $f0
close $f1
та передати файли з результатами трасування до XGRAPH:
exec xgraph zavantazhenist1.tr zavantazhenist2.tr -geometry 800x400 -lw 5 &
209
Після запуску симуляції з командного рядка побачимо наступне вікно
XGRAPH.
Рис.3 Результати симуляції, подані у вигляді графіка
Пояснення до рис.3:
1. Вісь ординат – завантаженість у Мбіт/с.
2. Легенда:
I. Zavantazhenist1.tr – фактична завантаженість каналу «2-3»;
II. Zavantazhenist1.tr – пропускна здатність каналу «2-3», якої не
вистачає для передачі всіх пакетів без втрат.
3. Вісь абсцис – поточний момент часу у секундах.
Згідно розкладу подій вузол «0» починає передавати дані в момент часу
0,5 с після початку симуляції (позначено точкою «А» на рис.3). Саме з цього
моменту фактична завантаженість починає зростати, що є цілком логічним.
Вона досягає 0,8 Мбіт/с – працює лише вузол «0». З першої секунди починає
працювати вузол «1» і фактична завантаженість зростає до максимально
можливого значення в 1 Мбіт/с («В» на рис.3). З цього моменту (1,2 с після
початку симуляції – точка «Б» на рис.3) починають з’являтись відкинуті
пакети і кількість їх зростає. Нестача пропускної здатності досягає свого
максимуму в 0,6 Мбіт/с, що і було передбачено раніше. Вузол «1» припиняє
передачу в момент 4 с, кількість відкинутих пакетів спадає і в момент 4,3 с
відкинуті пакети відсутні (точка «Г» на рис.3), фактична завантаженість
каналу спадає з максимально можливого значення 1 Мбіт/с до 0,8 Мбіт/с,
оскільки працює лише один вузол. В момент часу 4,5 с вузол «0» припиняє
передачу і фактична завантаженість каналу спадає до нуля (точка «Д» на
рис.3).
210 © Р.С.Колодій, О.В. Тимченко
Висновки
Розглянутий приклад належить до найпростіших. Симулятор NS-2 має
дуже велику кількість компонент, що дозволяють моделювати як мережі з
дротовим так і бездротовим доступом, включаючи стандарти 802.11, а також
сенсорні та спеціалізовані бездротові мережі. NS-2 дозволяє моделювати
мережі із набагато складнішою топологією та написання власних компонент
для мереж різних типів [5]. NS-2 є дуже потужним інструментом для
моделювання комп’ютерних мереж.
Водночас NS-2 досяг свого піку розвитку і вся увага науковців та
розробників зараз зосереджена на симуляторі NS-3, який містить багато
імпортованих з NS-2 моделей і завдяки архітектурним змінам обіцяє стати
засобом для моделювання з набагато більшою функціональністю та
гнучкістю.
1. М.Ю. Зеляновський, О.В. Тимченко. Інтелектуальна система для бездротових
спеціалізованих сенсорних та мереж персонального радіусу дії: програмно-апаратна
платформа вузла бездротової мережі // Моделювання та інформаційні технології. Зб.
наук. пр. ІПМЕ НАН України. – Вип.49. – К.: 2008. – С. 185-193.
2. http://www.isi.edu/nsnam/ns/tutorial/
3. http://www.nsnam.org/docs/ns-3-overview.ppt
4. Тимченко О.В., Зеляновський М.Ю. Методи і протоколи обміну даними сенсорних
мереж // Зб. наук. пр. ІПМЕ НАН України. – Вип.46. – К.: 2008. – С. 176-183.
5. Introduction to Network Simulator NS2, Issariyakul, Teerawat, Hossain, Ekram,2009,
X, 400 p. 74 illus., Hardcover, ISBN: 978-0-387-71759-3.
Поступила 29.01.2009р.
УДК 621.3
Р.С.Колодій1), к.т.н., доцент, О.В. Тимченко1) 2), д.т.н., професор
ВИКОРИСТАННЯ СЕНСОРНИХ МЕРЕЖ ДЛЯ МОБІЛЬНОГО
МОНІТОРИНГУ ЕКГ
Вступ
В останній час у світі розробляються багато проектів для моніторингу
стану пацієнтів в реальному масштабі часу, наприклад, проект UbiMon
(Ubiquitous Monitoring Environment for Wearable and Implantable Sensors),
1 Національний університет „Львівська політехніка”, Інститут телекомунікацій, радіоелектроніки
та електронної техніки, каф. Телекомунікацій, вул.С.Бандери, 12, 79013, Львів, Україна
2 Akademia Humanistyczno-Ekonomiczna, Łódż, Poland
|