• No results found

Destination Nästa hopp Kostnader

4 SIMULERINGS MILJÖ

I detta avsnitt introduceras en omfattande presentation om simulerings miljön OMNet ++.

4.1 OMNeT++

Det finns flera olika simulerings program så som OMNeT++[16], Ns2[17], Glomosim[19] och OPNET[19]. Vi har valt att använda oss av det förstnämnda. OMNeT++ är en utbyggbar, modulär komponentbaserad C++ simulering. Detta simuleringsprogram används främst för att bygga nätverks simulatorer och är ett standard verktyg för studerande av protokoller och modellering av

trådbundna samt trådlösa kommunikationsnätverk. En OMNeT++ modell är byggd av återanvändbara komponenter som kallas moduler[20]. Dessa moduler ansluts till varandra via grindar och kommunicerar genom att skicka meddelande till varandra. Moduler kan kombineras på olika sätt som LEGO bitar för att bilda sammansatta moduler. Den aktiva modulen kallas Enkla moduler och ligger i lägsta nivån i modell hierarkin och innehåller algoritmer av modellen som genomförs i C++. Enkla moduler kan grupperas i Sammansatta moduler och så vidare. Hela modellen kallas för ett nätverk[1] i OMNeT++. Figur 4 illustrerar hur ett nätverk i OMNet++ kan se ut, de gråa lådorna representerar Enkla moduler, de små vita lådorna föreställer grindar där meddelande skickas och tas emot och pilarna betecknar anslutningen mellan modulerna.

Figur 4, OMNeT++ modell hierarki. Pilarna mellan lådorna visar hur meddelandet skickas mellan

modulernas input och outputgrindar.

Användaren definierar modell strukturen i OMNeT++´s topologi beskrivnings språk, NED(Network Description). I NED filen förklaras ”Enkel” och ”Sammansatta modulerna”, därpå definieras parametrarna som ska användas i simulerings modell i en Ini.file (initialization file). Genom användning av resultat analyserings verktyg i OMNeT++ kan användaren se processen och visualisera simuleringsresultaten som sparas i vektor och skalär filer. 5 METOD

De metoder som har tillämpats är litteraturstudier och internetsökning för att få kunskap och information inom området.

Genom att börja studera allmänt om ad-hoc nätverk och dess tillhörande routingprotokoll samt rörelsemodeller, utvidgades kunskapen inom dessa delar och därpå drogs slutsatser om vilka routingprotokoll och rörelsemodell som passade detta projekt bäst.

Efter detta moment bestämdes simulerings programmet, som tidigare sagt var det Omenet++ som gällde, där routingprotokollen tillsammans med rörelsemodellerna simulerades. Nästa steg var att lära sig att handskas med OMNeT++. Med hjälp av handledningar, video exempel och texter från bl.a. ”omnetpp.org”, ”youtube.com” och

”google.com” fick vi förståelse om programmet och dess funktioner.

När programmet installerades följde det med en stor mängd inskrivna projekt som fanns i OMNet++s rika bibliotek. Dessa projekt användes för att provköras samt för att få kännedom om hur simuleringen och resultat granskning fungerar. I detta projekt har tre importerade projekt från OMNeT++s hemsida (omnetpp.org) förbrukats som underlag till simuleringen. De importerade projekten är MiXiM, adHocSim och inetmanet[19]. Dessa projekt infattade bl.a. olika rörelsemodeller och routingprotokoll och bland dem fann vi AODV, DSR, RWP och CS som tillämpades som underlag för vår simulering.

Efter all dessa studier påbörjades uppsättningen av scenariot i simulerings programmet. Första momentet var att skapa ett nytt projekt mapp och därpå byggda ett nätverk i Network Description File(ned.file) efter projektets scenario. NED filen kan redigeras både grafiskt och i text där användaren kan skifta mellan dessa två lägen. I grafiska läget kan man skapa sammansatta moduler och i text läget kan användaren arbeta med NED källan direkt. I NED filen skapades noder som representerade brandmännen,

rörelsemodeller som talade om hur dessa noder skulle förflytta sig och ett routingprotokoll infördes skulle se till att hitta den optimalaste vägen mellan noderna. Vårt nätverk utformades av fyra moduler: configurator,

cannelcontrol, host, fixhost. Dessa moduler innehöll på sin tur en mängd andra moduler. Efter detta moment

implementerades parametrarna för simuleringen och justerades i Initialization File (ini.file). Parametrarna kunde beröra allt från dröjsmål, antalet noder, data hastighet, antalet datapaket som skickas samt tas emot och hastigheten på noderna till våningens yta. Efter detta steg kunde simuleringen köras. Eftersom om att vi har valt att jämföra två routingprotokoll med hänsyn till två rörelsemodell, totalt fyra simuleringar utfördes som omfattade följande: Simulering 1: AODV med RWP

Simulering 2: AODV med CS Simulering 3: DSR med RWP Simulering 4: DSR med CS

Under simuleringens process kunde man iaktta hur noderna rörde på sig samt hur meddelandet skickades fram och tillbaka mellan noderna. Tabell 2 och 3 framför parametrarna som har definierats för simuleringen.

Tabell 2, Parametrarna för rörelsemodellerna

Tabell 3. Parametrar för simuleringen

Vi använde oss av Analysis Tools i simuleringen(IDE) för att visualisera simuleringsresultaten. Resultat från simuleringen sparades i vektor och skalär filer och resultat filerna vi fick fram var textbaserade och behandlas i Excel för att få det grafiskt, men kan även behandlas med Matlab eller andra verktyg.

6 RESULTAT

Resultaten har huvudsakligen fokuserats ner i en punkt, paketöverföringen. Med paketöverföring (PÖ) menas förhållandet mellan antalet skickade paket och antalet mottaget paket. Detta gjordes med hjälp av de registrerade resultaten från simuleringen som granskades och framställdes grafiskt med hjälp av Excel. Fyra olika simuleringar utfördes och antalet noder var densamma för alla simuleringar. Antalet noder var 15st som föreställde brandmännen i en brinnande byggnad, var en av noderna var fix som skulle kommunicera med en av de 14 rörliga noderna. Ytan för simuleringen har bestämdes till 500x500 m, där varje nod hade en kommunikations räckhåll på 10 m. Med detta menas att en nod kan kommunicera direkt med en annan nod som ligger inom 10m. Annars måste datapaketet som ska skickas till en nod som inte ligger inom kommunikations räckhåll gå igenom mellan liggande noderna tills den når destinationen.

För att jämföra vilken routingprotokoll som var effektivast utfördes fyra olika simuleringar. Dessa simuleringar var följande:

- AODV med RWP - DSR med RWP

- AODV med CS - DSR med CS

Figur 5 ch 6 framställer resultaten från simuleringarna som utfördes i OMNeT++.

Figur 5, visar protokollen AODV och DSR tillsammans med rörelsemodellen RWP

Tabell 6, visar protokollen AODV och DSR tillsammans med rörelsemodellen CS