Sieťove softvérové simulátory pre IPTV kvalitu služieb

18. September, 2013, Autor článku: Kokoška Rastislav, Elektrotechnika
Ročník 6, číslo 9 This page as PDF Pridať príspevok

p16165_iconKvalita služieb (QoS) je dôležitá pre dátový manažment v preplnených sieťach, zvlášť v tých, ktoré prenášajú televízny tok prostredníctvom internetového protokolu, ktorý môže konkurovať iným službám dostupným v tejto sieti. Sieťové simulátory nám pomáhajú lepšie pochopiť celý proces QoS. Môžeme si lepšie uvedomiť účel QoS parametrov v simuláciách, a preto je dôležité používať správny sieťový simulátor. Rozhodli sme sa urobiť krátky prehľad sieťových simulátorov používaných v IPTV QoS výskume. Zosumarizujeme dostupné počítačové sieťové simulátory, ich výhody a nevýhody, hlavne ich možnosti spracovávania sieťových charakteristík, akou QoS nepochybne je.

1. Úvod

Tento článok popisuje a analyzuje niekoľko dostupných softvérov pre sieťové simulácie. Je to dôležitá časť nášho štúdia problému sieťovej kvality služieb, keď niekoľko tokov videa si konkuruje na jednom prenosovom kanáli, kde potrebujeme simulovať naše modifikácie protokolu. Pre náš výskum sme hľadali ten najlepší sieťový simulátor z tých, ktoré sú dostupné.

2. Sieťové simulátory

K rozhodnutiu sa, ktorý sieťový simulátor je najlepší, je možné použiť rôzne variácie parametrov a rôzne možnosti sieťových scenárov. Niekto môže uprednostňovať vyššiu rýchlosť, iný môže využívať počet komponentov knižnice pre simulácie alebo bude zohľadňovať programovací jazyk na základnej úrovni simulácie.

2.1. Simulátor NS3

NS3 je kontinuálny sieťový simulátor, ktorého podstata a modely simulácie sú implementované v C++. NS3 je vystavaný ako knižnica, ktorá môže byť staticky alebo dynamicky pripojená k hlavnému programu C++, ktorý definuje topológiu simulácie a štartuje simulátor. NS3 tiež exportuje takmer celé aplikačné rozhranie do programovacieho jazyka Python, umožňujúc tak importovať “NS3” modul takmer rovnakým spôsobom ako je prepojená NS3 knižnica ovládačmi v C++ [1]. V súčasnosti je verzia 3.17 dostupná na stiahnutie a NS-3.18 je naplánovaná na 14.august 2013. Používaním Gnuplot Class môžeme vytvárať n-dimenzionálne siete podľa potreby (Obr. 1)

p16246_01_obr01
Obr. 1 Príklad 3-dimenzionálnej siete pre simulátor NS3

V roku 2009 NS3 bolo stiahnuté asi 14,000 krát. V roku 2011 NS3 bolo stiahnuté 86,014 krát. Pokiaľ ide o uvedenie ns-3.13, 93 ľudí je uvedených ako autori.. NS3 sa primárne zameriava na výskumné a vzdelávacie využitie. NS3 softvér je úplne zdarma a je licencovaný na základe NU GPLv2 licencie, je verejne dostupný pre výskum, vývoj a použitie. NS3 je užitočný v IPTV simuláciách [7], a je tiež výbornou voľbou pre bezdrôtové sieťové simulácie[11]

2.1.1. Výhody v porovnaní s NS2:

  • NS3 funguje lepšie ako NS2 v zmysle pamäťového manažmentu,
  • agregačný systém zabraňuje nepotrebnému ukladaniu parametrov, a balíky neobsahujú nevyužitý rezervný priestor hlavičky,
  • NS3 využíva balík známy ako PyViz, čo je vizualizačný balík v reálnom čase na základe všeobecného programovacieho jazyka,
  • skript simulácie môže byť zapísaný ako C++ program, čo nie je možné v NS2. Vďaka schopnostiam moderného hardvéru čas kompilácie je kratší v porovnaní s NS2, NS3 sa môže s C++ úplne rozvíjať,
  • automatická dealokácia objektov je podporovaná používaním referenčného počítania (sleduje počet ukazovateľov na objekt); toto je výhodou pri práci s balíkom objektov,
  • vyrovnávacia pamäť korešponduje presne s prúdom bitov, ktoré sú vysielané v reálnej sieti,
  • používaním podtried sa pridávajú informácie k balíku; hlavička, ktorá pridáva informácie na začiatok vyrovnávacej pamäte, trajler, ktorý ich pridáva na koniec,
  • na rozdiel od NS2, je všeobecne veľmi jednoduchý spôsob ako určiť, či je pripojená špecifická hlavička[10].

2.1.2. Dôležité poznámky k NS3:

  • NS3 nie je spätne kompatibilný s NS2; je vybudovaný tak, aby nahradil NS2,
  • NS3 je napísaný v C++; programovací jazyk Python môže byť voliteľne využitý ako rozhranie,
  • NS3 sa pokúša vyriešiť problémy prítomné v NS2,
  • v porovnaní s NS2 je veľmi limitovaný počet prístupových kódov vytvorených NS3,
  • NS3 má emulačný mód, ktorý umožňuje integráciu s reálnymi sieťami [10]

2.2. Opnet

Riverbed OPNET Modeler® Suite zahŕňa sadu protokolov a technológií, a uvádza prostredie sofistikovaného vývoja. Modelovaním všetkých druhov sietí a technológií (vrátane VoIP, TCP, OSPFv3, MPLS, IPv6, a ďalších), OPNET Modeler umožňuje analyzovať realistické simulované siete, aby sme mohli porovnať vplyv rôznych dizajnov technológií na navzájom prepojené správanie sa. OPNET Modeler Suite umožňuje testovať a demonštrovať technologické dizajny v realistických scenároch pred produkciou; zvýšiť sieťovú produktivitu a urýchliť čas predaja; rozvíjať vlastné (špeciálne) bezdrôtové protokoly a technológie; a vyhodnocovať posilnenia protokolov na báze štandardov [2].

V porovnaní s konkurenciou ponúka najrýchlejšie simulovanie oddelených tokov udalostí. Takisto šetrí čas v prístupe k najväčšej, najobsiahlejšej knižnici otvorených zdrojov, modelov simulácií jednotlivých udalostí pre IT priemysel. Otvorené rozhranie umožňuje integrovať externé objekty súborov, knižníc a iných simulátorov [2]. V posledných rokoch expandoval výskum v QoS pre IPTV využívajúc Opnet Modeler, kde simulácie pomáhajú pochopiť simuláciu globálne, od nastavenia parametrov ako služby, aplikácie, profily, modelové systémy, infraštruktúra a správanie sa používateľa pri meraní hodnôt QoS ako chvenie, omeškanie, priepustnosť a porovnávaním týchto výsledkov so štandardnými hodnotami tolerancie ITU-T a Thipon na určenie ideálnej radovej metódy pri optimalizácii QoS [8].

Vyše 25000 univerzitných profesorov a študentov používa produkty OPNET v elektroinžinierstve, počítačovej vede a príbuzných disciplínach. OPNET podporuje 4 simulačné technológie: Diskrétny simulátor udalostí (z angl. Discrete Event Simulation), Analýzu toku (z angl. Flow Analysis), Rýchlu predikciu (QuickPredict) a Hybridnú symuláciu (Hybrid Simulation) [13].

2.2.1. Editory Opnet Modeler

Projektový editor sa používa na konštrukciu a editovanie topológie sieťového modelu. Uzlový editor poskytuje operácie na podporu tvorby a editovania uzlových modelov. Procesový editor (Obr. 2) sa používa na špecifikáciu správania sa procesových modelov. Procesové modely používajú paradigmu konečného stavu na vyjadrenie správania sa, ktoré závisí od súčasného stavu a nového podnetu. Činnosť vykonávaná procesovými modelmi je opísaná vyjadreniami na základe jazykov C alebo C++. Tieto vyjadrenia sa môžu spájať so stavmi, prechodmi alebo špeciálnymi blokmi v rámci procesového modelu.

p16246_02_obr02
Obr. 2 Procesový editor Opnet

2.2.2. Akademická edícia IT Guru

Akademická edícia softvéru IT Guru bola vytvorená pre úvodnú úroveň sieťových kurzov a navrhnutá a testovaná na používanie s populárnymi laboratórnymi manuálmi v triede [12]. Výhodou je:

  • je postavená na základe komerčnej vezie IT Guru 9.1,
  • na stiahnutie z webovej stránky zadarmo,
  • veľmi zjednodušené licencovanie vo vzťahu ku komerčnej verzii IT Guru,
  • vstavaná „Application Characterization Environ-ment“ (ACE™) a bezdrôtové vybavenie,
  • špeciálne navrhnutý a testovaný na používanie v populárnych učebniciach a laboratórnych manuáloch,
  • 6-mesačná obnoviteľná licencia.

Obmedzenia akademickej edície IT Guru:

  • limitovaná kapacita importu a exportu,
  • limitovaná bezdrôtová funkčnosť,
  • iné moduly produktu nie sú podporované,
  • maximálny počet simulovaných udalostí je limitovaný počtom 50 miliónov,
  • maximálny počet prechodných uzlov je limitovaný počtom 20 [13].

2.3. Qualnet

Komunikačná simulačná platforma QualNet® je plánovací, testovací a tréningový nástroj, ktorý imituje správanie sa reálnej komunikačnej siete. Používatelia môžu hodnotiť základné správanie sa siete a testovať kombinácie charakteristík siete, ktoré majú pracovať. QualNet poskytuje obsiahle prostredie na navrhovanie protokolov, tvorbu a animáciu sieťových scenárov a analýzu ich činnosti. QualNet umožňuje používateľovi: navrhovať nové modely protokolov, optimalizovať nové a existujúce modely, navrhovať veľké drôtové a bezdrôtové siete využívajúc predkonfigurované alebo používateľom navrhnuté modely a analyzovať činnosť sietí, vykonať “čo ak?” analýze pre ich optimalizáciu.

Je dostupný pre operačný systém Microsoft Windows a tiež pre systémy Linux, je dostupný pre 32 ako aj 64- bitové verzie systémov. Desktop simulátora korešponduje s desktopom Opnetu [3] (Obr. 3). Pre QualNet môžete používať štandardné “triedy” prvkov, vrátane: terénu (fyzický terén v ktorom prebieha komunikácia) a počasia (popis rôzneho správania sa počasia a jeho dôsledkov na komunikáciu) [4]. Na univerzite Haute Alsace boli dosiahnuté experimentálne výsledky so sieťovým simulátorom QualNet. Činnosť adaptívneho plánovacieho mechanizmu bola lepšia ako tradičné plánovacie techniky pre dopravu [9].

p16246_03_obr03
Obr. 3 Desktop simulátora QualNet

2.3.1. Simulácia komunikácie na základe scenára

Špecifická sieťová topológia v QualNet-e je uvádzaná ako scenár. Scenár umožňuje používateľovi špecifikovať všetky sieťové komponenty a podmienky, za ktorých bude sieť v činnosti. To zahŕňa: detail terénu, efekty propagácie kanálu vrátane straty cesty, miznutie a tieňovanie, drôtové a bezdrôtové siete, sieťové vybavenie ako prepínače (switch), rozbočovače, smerovače (router), celú protokolovú kopu rôznych štandardných alebo používateľom nakonfigurovaných sieťových komponentov a aplikácií bežiacich na sieti. Väčšina z nich je voliteľná; môžete začať so základným sieťovým scenárom a špecifikovať toľko detailov koľko je potrebné pre zlepšenie presnosti vášho sieťového modelu[3].

2.3.2. Hlavné kľúčové charakteristiky QualNet

  • rýchlosť: podporovaná je rýchlosť v reálnom čase, aby bolo možné modelovanie softvéru v slučke. Vyššia rýchlosť umožňuje vývojárom modelov a dizajnérom sietí vykonávať viacnásobnú analýzu “what if” analyzovaním modelových, sieťových a prepravných parametrov v krátkom čase.
  • rozšíriteľnosť: QualNet môže bežať na klastrových, multijadrových a multiprocesorových systémoch pre modelovanie veľkých sietí s vysokou presnosťou.
  • presnosť modelu: používa sa vysoko detailná implementácia protokolových modelov na základe štandardov, vrátane pokročilých modelov pre bezdrôtové prostredie, aby sa umožnilo presnejšie modelovanie sietí reálneho sveta.
  • prenosnosť: QualNet a jeho knižnica modelov pracuje na širokom rade platforiem, vrátane operačných systémov Windows a Linux, distribuovaných a klastrových paralelných architektúrach a na 32 aj 64 bitovej počítačovej platforme. Používatelia teraz môžu v QualNet-e vyvíjať protokolový model alebo navrhovať sieť na svojom desktopovom alebo notebooku a potom ju preniesť do výkonného multiprocesorového Linuxového servera, aby spustili analýzu kapacity, činnosti a rozšíriteľnosti.
  • schopnosť prístavby: pre významné posilnenie hodnoty sieťového modelu sa QualNet môže pripojiť k iným hardvérovým a softvérovým aplikáciám, k reálnym sieťam alebo vizualizačnému softvéru tretej strany.

2.4 Matlab

MATLAB® je vysoko úrovňový jazyk s interaktívnym prostredím pre numerické výpočty, vizualizáciu a programovanie. Používaním MATLABu môžeme analyzovať dáta, rozvíjať algoritmy a vytvárať modely a aplikácie. Jazyk, nástroje a vstavané matematické funkcie nám umožňujú skúmať viacnásobné prístupy a dosiahnuť riešenie rýchlejšie ako s tabuľkovými procesormi alebo tradičnými programovacími jazykmi, ako napríklad C/C++ alebo Java™. MATLAB môžeme používať pre celú škálu aplikácií, vrátane spracovania signálov a komunikácií, spracovania obrázku a videa, kontrolu systémov, testovanie a meranie. Viac ako milión inžinierov a vedcov v priemysle a akadémiách používajú MATLAB, jazyk technických výpočtov. Je tiež dostupná verzia Matlabu pre Android, takže ju môžete používať s vaším smartfónom alebo akýmkoľvek zariadením používajúcim tento operačný systém[5].

2.4.1. Hlavné kľúčové charakteristiky Matlabu

  • vysoko úrovňový jazyk pre vizualizáciu a vývoj aplikácií,
  • interaktívne prostredie pre reťazový výskum a riešenie problémov,
  • matematické funkcie pre lineárnu algebru, štatistiku, Fourierovu analýzu, filtrovanie, optimalizáciu, numerickú integráciu a riešenie bežných diferenciálnych rovníc,
  • vstavaná grafika pre vizualizáciu dát a nástroje na tvorbu obvyklých zakreslení,
  • vývojové nástroje pre zlepšenie kvality kódov a údržbu,
  • nástroje na budovanie aplikácií s bežným grafickým rozhraním,
  • funkcie pre integráciu algoritmov na základe MATLABu s externými aplikáciami a jazykmi ako C, Java, .NET a Microsoft® Excel® [6]

Záver

Krátko sme zosumarizovali dostupné počítačové sieťové simulátory, ich výhody a nevýhody, predovšetkým ich možnosti zvládnuť charakteristické sieťové vlastnosti, akou kvalita služieb nepochybne je. Každý simulátor je unikátny. Sú simulátory pre vzdelávacie účely zdarma (NS3, Opnet IT Guru), alebo licencované simulátory s veľkými knižnicami. Môžete si zvoliť simulátor pracujúci v oboch systémoch Windows a Linux (QualNet). Dnes je dostupných veľa simulačných softvérov a je na požiadavkách používateľa, pre využitie ktorého sa nakoniec rozhodneme. Na základe našich doterajších skúseností so simuláciami Opnetu sme sa rozhodli naďalej používať simulátor Opnet s jeho hlavnými výhodami, ktorými sú knižnica sieťových nástrojov a zastúpenie grafických výsledkov.

Použitá literatúra

  1. A Discrete-Event Network Simulator,
    http://www.nsnam.org/docs/release/3.17/manual/singlehtml/index.html#document-events
  2. Network Simulation (OPNET Modeler Suite),
    http://www.riverbed.com/products-solutions/products/network-planning-simulation/Network-Simulation.html#Overview
  3. Scalable Network Technologies – QualNet,
    http://web.scalable-networks.com/content/qualnet
  4. Libraries of “Element” Models,
    http://web.scalable-networks.com/content/libraries-element-models
  5. Matlab – The Language of Technical Computing,
    http://www.mathworks.com/products/matlab/
  6. Matlab – Key features,
    http://www.mathworks.com/products/matlab/description1.html
  7. TRISNAWAN, P.H., BUDIARTO, R.: Priority-based QoS mechanism for multiple multicast IPTV streams, AINTEC ’09 Asian Internet Engineering Conference, pp.19-24, ACM, New York, ISBN: 978-1-60558-614-4, 2009
  8. MOBIU, A, WIDYAWAN, HARTANTO, R: Analysis Quality of Service from Internet Protocol Television (IP TV) Service, International Journal of Informatics and Communication Technology (IJ-ICT), Vol.1, No.2, pp. 100~108, ISSN: 2252-8776, 2012
  9. BRAHMIA, M.el. A, ABOUAISSA, A., LORENZ, P.: Adaptive scheduling mechanism for IPTV over WiMAX IEEE 802.16j networks, International Journal of Communication Systems, Wiley Online Library, 2012
  10. NS2 versus NS3,
    http://wrc-ejust.org/crn/images/Tutorials/ns2vsns3.pdf
  11. PIAMRAT, K., FONTAINE, P.: CLAP: Coordinated Lightweight Aps Architecture for Wireless IPTV Service in Home Networks. Technicolor, Cesson-Sévigné, ACM 978-4503-8/11/10. 2011
  12. IT Guru Academic Edition,
    http://www.opnet.com/university_program/itguru_academic_edition/
  13. DUNAYTSEV, R.: Network Simulators: Opnet Overview and Examples, Tampere University of Technology, 2010

Spoluautorom článku je Ján Valiska, Katedra elektroniky a multimediálnych komunikácii, FEI TU Košice, Slovenská Technicka Univerzita, Košice, Letná 9, 042 00 Košice

Napísať príspevok