openflow mininet simulacija

4
Informacione tehnologije IT'15 EMULACIJA SDN MREŽA SOFTVERSKIM ALATOM MININET SDN NETWORK EMULATION WITH MININET SOFTWARE TOOL Matija Ratković, Slavica Tomović, Nikola Žarić, Milutin Radonjić, Igor Radusinović, Elektrotehnički fakultet Sadržaj: Mininet je softverski alat koji omogućava emulaciju softverski definisanih mreža baziranih na OpenFlow arhitekturi. Emulaciono okruženje koristi resurse jednog računara za kreiranje virtuelnih instanci mrežnih uređaja i hostova. Mininet instalacioni paket uključuje brojne ugrađene skripte za rad se nekim od standardnih mrežnih topologija, ali i nudi bogat set Python biblioteka koji omogućava brz razvoj i testiranje proizvoljnih mrežnih prototipova i protokola, programa za analizu i kontrolu saobraćaja. Kako emulirani host u Mininetu predstavlja jednu virtuelnu mašinu, na njemu se mogu pokretati i realne aplikacije za Linux računare. U ovom radu dat je pregled osnovnih funkcionalnosti Minineta i instrukcije za rad sa proizvoljnim topologijama. Abstract: Mininet is software tool that enables emulation of software-defined networks based on the OpenFlow architecture. Emulation environment uses the resources of a single computer to create virtual instances of network devices and hosts. Mininet installation package includes number of built-in scripts for emulation of several standard network topologies, but also offers reach set of Python libraries which allow fast development and testing of arbitrary network prototypes and protocols, programs for traffic analysis and control. Since emulated host in Mininet represents one virtual machine, real applications for Linux-based computers can be run on it as well. In this paper overview of basic Mininet functionalities is given, with instructions for emulation of arbitrary topologies included. 1. UVOD Osnovni koncepti Interneta zaživljeli su šezdesetih, a njegovi ključni protokoli osmišljeni su sedamdesetih godina. Poslije četiri decenije ogromnog uspjeha, najveći dio početnog dizajna ostao je nepromijenjen. Međutim, sada se razvijaju aplikacije koje se u mnogome razlikuju od onih koje su inicijalno korišćene, što sa sobom donosi novi set zahjeva u pogledu kvaliteta servisa, mobilnosti i bezbjednosti koje Internet nije u stanju da zadovolji zbog svojih ograničenja. Osnovni uzrok ovih problema je previše kompleksna kontrolna ravan koja je distribuirana u sve mrežne uređaje. Naime, u zastupljenoj mrežnoj arhitekturi svaki uređaj pored prosleđivanja učestvuje u izvršavanju drugih funkcija mreže. Ovakav koncept ne obezbijeđuje mrežnim aplikacijama apstrahovan pogled na fizičku strukturu mreže što je rezultovalo kompleksnošću kao jednim od osnovih ograničenja današnjih mreža. Zbog toga se, za današnje zahtjeve krosnika, prijeko potrebno upravljanje obavlja na vrlo problematičan način koji zahtijeva dobro poznavanje mrežne opreme i pojedinačno konfigurisanje uređaja, što značajno ograničava fleksibilnost pri implementiranju novih funkcionalnosti. Kao rezultat napora uloženih u prevazilaženje ovih problema nastao je koncept softverski definisanog umrežavanja (SDN-Software Defined Networking) [1]. Kod SDN arhitekture kontrolna logika je razdvojena od hardvera za prosleđivanje i prepuštena logički centralizovanom kontroleru. Kada bi se napravila analogija između SDN mreže i računara, kontroler bi predstavljao mrežni operativni sistem, koji ima globalni pregled mreže i pruža uvid u stanje svih njenih resursa. Kontroler vrši apstrakciju mrežnih resursa što omogućava pokretanje novih aplikacija i servisa tretirajući čitavu mrežu kao jedan logički entitet. Pri tome pruža automatsku izolaciju u skladu sa njihovim zahtjevima i prioritetima. Koncept programabilne mreže obećava bolju iskorišćenost resursa, jer se kotrolne odluke mogu dinamički prilagođavati promjenljivim uslovima. Jedan od trenutno velikih izazova u razvoju SDN-a je testiranje SDN aplikacija u realnom okruženju. S obzirom da je riječ o novoj tehnologiji, uprkos svom potencijalu koji ona ima, bez adekvatnog testiranja, primjena njenih aplikacija je veoma upitna. Činjenica je da mnogobrojni simulacioni alati mogu biti od velike pomoći prilikom analiziranja uticaja predložene izmjene na mrežu, ali praksa pokazuje da njihova predviđanja često nisu dovoljno precizna zbog pojednostavljenosti i ograničenosti korišćenih modela i podešavanja. Sa druge strane, eksperimentisanje u realnim uslovima je veoma teško jer mrežni operateri obično ne žele bilo kakvu modifikaciju svojih mreža ukoliko one nisu detaljno testirane kroz više prototipova ili pilota mreže. Stoga, testiranje na hardveru najčće podrazumijeva nabavku opreme koja je prilično skupa. Rješenje navedenog problema koje daje najbrže i pouzdane rezultate je emulacija. Radi se o softverskoj imitaciji, tj. kopiji realne mreže u okviru operativnog sistema jednog računara. U slučaju SDN-a, Mininet [2] je trenutno jedino rješenje koje nudi ovu mogućnost. U istraživačkim krugovima se pokazalo da Mininet sa iznenađujuće dobrim stepenom tačnosti emulira multi-gigabitne mreže sa hiljadama OpenFlow switch-eva, hostova i kontrolera [3]. Motivisani njegovim značajem za naučnu zajednicu koja se bavi istraživanjima u savremenim računarskim mrežama, u

Upload: sutkovic-jahjad

Post on 16-Sep-2015

19 views

Category:

Documents


4 download

DESCRIPTION

openflow mininet simulacija

TRANSCRIPT

  • Informacione tehnologije IT'15

    EMULACIJA SDN MREA SOFTVERSKIM ALATOM MININET SDN NETWORK EMULATION WITH MININET SOFTWARE TOOL

    Matija Ratkovi, Slavica Tomovi, Nikola ari, Milutin Radonji, Igor Radusinovi, Elektrotehniki fakultet

    Sadraj: Mininet je softverski alat koji omoguava emulaciju softverski definisanih mrea baziranih na OpenFlow arhitekturi. Emulaciono okruenje koristi resurse jednog raunara za kreiranje virtuelnih instanci mrenih ureaja i hostova. Mininet instalacioni paket ukljuuje brojne ugraene skripte za rad se nekim od standardnih mrenih topologija, ali i nudi bogat set Python biblioteka koji omoguava brz razvoj i testiranje proizvoljnih mrenih prototipova i protokola, programa za analizu i kontrolu saobraaja. Kako emulirani host u Mininetu predstavlja jednu virtuelnu mainu, na njemu se mogu pokretati i realne aplikacije za Linux raunare. U ovom radu dat je pregled osnovnih funkcionalnosti Minineta i instrukcije za rad sa proizvoljnim topologijama. Abstract: Mininet is software tool that enables emulation of software-defined networks based on the OpenFlow architecture. Emulation environment uses the resources of a single computer to create virtual instances of network devices and hosts. Mininet installation package includes number of built-in scripts for emulation of several standard network topologies, but also offers reach set of Python libraries which allow fast development and testing of arbitrary network prototypes and protocols, programs for traffic analysis and control. Since emulated host in Mininet represents one virtual machine, real applications for Linux-based computers can be run on it as well. In this paper overview of basic Mininet functionalities is given, with instructions for emulation of arbitrary topologies included.

    1. UVOD

    Osnovni koncepti Interneta zaivljeli su ezdesetih, a

    njegovi kljuni protokoli osmiljeni su sedamdesetih godina. Poslije etiri decenije ogromnog uspjeha, najvei dio poetnog dizajna ostao je nepromijenjen. Meutim, sada se razvijaju aplikacije koje se u mnogome razlikuju od onih koje su inicijalno koriene, to sa sobom donosi novi set zahjeva u pogledu kvaliteta servisa, mobilnosti i bezbjednosti koje Internet nije u stanju da zadovolji zbog svojih ogranienja. Osnovni uzrok ovih problema je previe kompleksna kontrolna ravan koja je distribuirana u sve mrene ureaje. Naime, u zastupljenoj mrenoj arhitekturi svaki ureaj pored prosleivanja uestvuje u izvravanju drugih funkcija mree. Ovakav koncept ne obezbijeuje mrenim aplikacijama apstrahovan pogled na fiziku strukturu mree to je rezultovalo kompleksnou kao jednim od osnovih ogranienja dananjih mrea. Zbog toga se, za dananje zahtjeve krosnika, prijeko potrebno upravljanje obavlja na vrlo problematian nain koji zahtijeva dobro poznavanje mrene opreme i pojedinano konfigurisanje ureaja, to znaajno ograniava fleksibilnost pri implementiranju novih funkcionalnosti. Kao rezultat napora uloenih u prevazilaenje ovih problema nastao je koncept softverski definisanog umreavanja (SDN-Software Defined Networking) [1]. Kod SDN arhitekture kontrolna logika je razdvojena od hardvera za prosleivanje i preputena logiki centralizovanom kontroleru. Kada bi se napravila analogija izmeu SDN mree i raunara, kontroler bi predstavljao mreni operativni sistem, koji ima globalni pregled mree i prua uvid u stanje

    svih njenih resursa. Kontroler vri apstrakciju mrenih resursa to omoguava pokretanje novih aplikacija i servisa tretirajui itavu mreu kao jedan logiki entitet. Pri tome prua automatsku izolaciju u skladu sa njihovim zahtjevima i prioritetima. Koncept programabilne mree obeava bolju iskorienost resursa, jer se kotrolne odluke mogu dinamiki prilagoavati promjenljivim uslovima.

    Jedan od trenutno velikih izazova u razvoju SDN-a je testiranje SDN aplikacija u realnom okruenju. S obzirom da je rije o novoj tehnologiji, uprkos svom potencijalu koji ona ima, bez adekvatnog testiranja, primjena njenih aplikacija je veoma upitna. injenica je da mnogobrojni simulacioni alati mogu biti od velike pomoi prilikom analiziranja uticaja predloene izmjene na mreu, ali praksa pokazuje da njihova predvianja esto nisu dovoljno precizna zbog pojednostavljenosti i ogranienosti korienih modela i podeavanja. Sa druge strane, eksperimentisanje u realnim uslovima je veoma teko jer mreni operateri obino ne ele bilo kakvu modifikaciju svojih mrea ukoliko one nisu detaljno testirane kroz vie prototipova ili pilota mree. Stoga, testiranje na hardveru najee podrazumijeva nabavku opreme koja je prilino skupa.

    Rjeenje navedenog problema koje daje najbre i pouzdane rezultate je emulacija. Radi se o softverskoj imitaciji, tj. kopiji realne mree u okviru operativnog sistema jednog raunara. U sluaju SDN-a, Mininet [2] je trenutno jedino rjeenje koje nudi ovu mogunost. U istraivakim krugovima se pokazalo da Mininet sa iznenaujue dobrim stepenom tanosti emulira multi-gigabitne mree sa hiljadama OpenFlow switch-eva, hostova i kontrolera [3]. Motivisani njegovim znaajem za naunu zajednicu koja se bavi istraivanjima u savremenim raunarskim mreama, u

  • Informacione tehnologije IT'15

    ovom radu dat je pregled osnovnih funkcionalnosti Minineta, ukljuujui i jedan primjer njegove primjene.

    Rad je organizovan na sledei nain. U drugom poglavlju predstavljeni su struktura i standardi za SDN mree. Tu je dat poseban osvrt na OpenFlow kao najzastupljeniji standard za komunikaciju izmeu SDN ureaja i kontrolera. U treem poglavlju su predstavljene osnovne funkcionalnosti Minineta i postupak rada sa razliitim topologijama. Takoe predstavljen je Mininet API (Application Programming Inteface), koji slui za efiksan razvoj novih mrenih aplikacija. U etvrtom poglavlju je dat primjer relizacije jednog mreog okruenja u ovom softverskom alatu, i rezultati emulacije pri zadatom saobraaju. Konano, u estom poglavlju su iznijeti osnovni zakljuci rada. 2. SDN STRUKTURA I STANDARDI

    Na Slici 1 je dat ematski prikaz nivoa mrene kontrole

    kod SDN mree. Raunarska mrea moe biti sama po sebi dosta kompleksna tako da njen globalni pregled podrazumijeva razmjenu velike koliine podataka. U tu svrhu je implementiran virtuelizacioni sloj, koji filtrira prikupljene informacije iz mree i kontrolnoj aplikaciji prosleuje samo one koje su joj potrebne. Ovakva organizacija omoguava laku implementaciju novih protokola i servisa jer se ne zahtijeva detaljno poznavanje implementacije postojeih mrenih funkcionalnosti.

    Mreni Operativni sistem

    Virtuelizacioni sloj

    Kontrolni program

    Mreni Ureaji

    Slika 1: Nivoi mrene kontrole kod SDN mree

    Kako je SDN kontrolna logika dislocirana van mree, veoma bitan aspekat za funkcionisanje i razvoj ove tehnologije je standardizacija komunikacije izmeu ravni podataka (ureaji za prosleivanje) i ravni kontrole gdje je smjetena mrena inteligencija. Aktuelni standardi u ovoj oblasti su SoftRouter [4], ForCES [5] i OpenFlow [6]. Kako je tema ovog rada Mininet, koji ima podrku za OpenFlow protokol, u nastavku e biti opisane neke od funkcionalnosti ovog standarda. Pored toga to je otvoreni protokol koji omoguava kontroleru da upravlja ureajima u ravni podataka (bilo fizikih bilo virtuelnih), OpenFlow u irem smislu definie standard i arhitekturu. Kao standard, OpenFlow predstavlja set specifikacija i funkcionalnosti koje mreni ureaj treba da ispunjava da bi bio tzv. OpenFlow switch. Sa aspekta mree kao cjeline OpenFlow moe biti posmatran i kao arhitektura koja definie tri dijela:

    1. OpenFlow(OF) switch mreni ureaj koji podrava OpenFlow protokol, tj. koji moe da prosleuje pakete prema instrukcijama SDN kontrolera, definisanim u tzv. tabeli tokova;

    2. Kontroler softverski program koji obavlja poslove kontrole i popunjava tabele tokova na OpenFlow switch-evima;

    3. Sigurnosni kanal interfejs koji povezuje kontroler sa OpenFlow switch-evima.

    Na Slici 2 je pikazana OpenFlow arhitektura. Kontroler je izmjeten van mree, i programira njeno ponaanje na nivou saobraajnog toka. To je znaajna promjena u odnosu na dananje mree, bazirane na IP protokolu, koje ne pruaju ovaj nivo kontrole.

    Slika 2: OpenFlow arhitektura

    OpenFlow omoguava daljinsko upravljanje mreom tako

    to dodaje, modifikuje i uklanja pravila za prosleivanje paketa. Kontroler proaktivno ili reaktivno donosi odluke rutiranja odreenog vijeka trajanja. Ove odluke se upisuju u tabelu tokova OF switch-a, tako da OF switch samo vri prosleivanje paketa ija se polja u zaglavlju poklapaju sa poljima koja su upisana u tabeli tokova. Paketi za koje ne moe nai poklapanje, tj. koji ne pripadaju ni jednom od ve definisanih tokova, alju se kontroleru. Kontroler odluuje da li e u tabelu tokova biti upisan novi tok, kojem ovaj paket pripada, ili e paket biti odbaen. Za definiciju toka u tabeli mogu se koristiti polja sa raznih nivoa TCP/IP arhitekture, ukljuujuih: izvorini i destinacioni broj porta, izvorinu i destinacionu IP adresa, izvorinu i destinacionu MAC adresa, VLAN ID i prioritet, ToS (Type of Service), tip Etherneta i identifikator interfejsa ureaja na koji je paket stigao. 3. MININET

    Mininet je besplaan softverski alat razvijen za Linux

    okruenja koji omoguava brzu izradu prototipova velikih mrea na ogranienim reusursima jednog raunara. Kreiran je zbog potrebe podsticanja istraivanja u oblasti SDN mrea. Uz pomo Minineta korisnici mogu kreirati novu mrenu funkcionalnost, ili potpuno novu arhitekturu, testirati je na velikim topologijama sa realnim saobraajem, i zatim primijeniti isti kod i testne skripte na komericijalnoj mrei. itava mrea se moe upakovati kao jedna virtuelna maina, tako da se moe prenositi sa raunara na raunar, pokretati i modifikovati od strane vie korisnika. Sama emulacija mree vri se posupkom "lake" virtuelizacije operativnog sistema, tako da jedan sistem oponaa itavu mreu koristei jedan

  • Informacione tehnologije IT'15

    kernel i korisniki kod. Hostovi kreirani u Mininetu ponaaju se kao pravi raunari. Mogu se kontrolisati putem SSH(Secure Shell) konekcije i izvravati realne aplikacije koje podrava Linux sistem na kojem je Mininet instaliran. Programi pokrenuti na hostovima alju pakete kroz emulirane Ethernet interfejse ija se kanjenje i propusnost mogu podeavati. Virtuelni OF switch ili ruter obrauje pakete kao pravi ureaj, emulirajui ponaanje u redovima ekanja.

    Prednosti Minineta su brzina i lakoa pokretanja raznih topologija, mogunost korienja gotovih alata za monitoring mree (npr. Wireshark [7]) i podrka za OpenFlow protokol. Pored toga, Mininet je kao open-source projekat lako dostupan i moe se pokrenuti na svakom raunaru koji zadovoljava minimalnu konfiguraciju od 2 GB RAM memorije i procesor sa minimum dva jezgra takta 1.2 GHz. Meutim, postoji nekoliko nedostataka. Kljuna stvar koju treba imati u vidu je da se prilikom ispitivanja performansi mree moraju korisiti sporiji linkovi (od 10 Mb/s ili 100Mb/s) umjesto standardno konfigurisanih 10 Gb/s linkova. Ovo ogranienje je posledica softverske prirode ureaja za prosleivanje koji dijele CPU i memorijske resurse, i obino imaju znatno slabije performanse od hardverskih reenja. Dalje, Mininet koristi jedan Linux kernel za sve virtuelne hostove, to znai da nije mogue pokretati softvere koji su dizajnirani za Windows ili neki drugi operativni sistem. Takoe, za emulaciju SDN mrea bitno je napomenuti da Mininet ne kreira kontrolnu logiku, ve se eljeni model rutiranja mora implementirati na odgovarajuem kontroleru koji se moe, ali ne mora, izvravati na istom raunaru.

    3.1 KREIRANJE TOPOLOGIJA

    Ako nije precizirano, prilikom pokretanja Mininet e emulirati osnovnu topologiju sa dva hosta, OpenFlow switch-em i standardnim kontrolerom. Pored osnovne topologije, preko komandne linije mogu se kreirati jo linearna, stablo, mesh i fat-tree topologija [3]. Za unijeti parametar k, linearna topologija sadri k OF switch-eva i k hostova. Svaki host povezan je na jedan od switch-eva. Stablo topologija sadri k nivoa i 2 hosta za svaki switch. Kod mesh topologije svi switch-evi su meupovezani. Fat-tree je jedna od standardnih topologija data centara. Nakon kreiranja topologije, startuje se Mininet CLI (Command Line Interface), u okviru kojeg se moe vriti dalja analiza. Na raspolaganju stoji veliki broj komandi za testiranje funkcionalnosti i performansi mree, kao to su: pingall - koja automatski pokree komandu ping za sve mogue kombinacije izvor-destinacija, i iperf - koja provjerava dostupnu propusnost na putanjama izmeu hostova.

    U sklopu Minineta je ugraen API za programiranje aplikacija u programskom jeziku Python. Ovaj API sadri razliite klase i podklase koje se koriste za kreiranje proizvoljnih topologija, razliitih modela OF switch-eva, hostova, linkova, kontrolera i drugih elemenata koji se mogu pokrenuti u Mininetu. Sa nekoliko linija Python koda mogue je napraviti skriptu koja kreira topologiju, izvrava viestruke komande na hostovima i prikazuje odgovarajue rezultate. Na primjer, skripta:

    from mininet.net import Mininet

    from mininet.topolib import TreeTopo tree4 = TreeTopo(depth=2,fanout=2) net = Mininet(topo=tree4) net.start() h1, h3 = net.hosts[0], net.hosts[2] print h1.cmd(ping %s % h3.IP()) net.stop() kreira stablo mreu od 4 hosta i 3 OF switch-a, i ping-uje jedan host sa drugog. Prilikom kreiranja proizvoljnih topologija uz odgovarajue klase mogue je podeavati propusnost linkova, unositi odreeno kanjenje ili gubitak paketa. U sklopu trenutne Mininet distribucije dolazi i vie gotovih aplikacija od kojih su posebno korisne: controllers.py - koja kreira OpenFlow mreu sa vie

    kontrolera; miniedit.py - GUI skripta pomou koje se mogu kreirati

    razne mrene topologije preko grafikog editora umjesto komandne linije. Ova skripta takoe nudi mogunost da se kreirana topologija eksportuje u odgovarajui kod u Python-u;

    mobility.py - koja demonstrira prebacivanje interfejsa sa jednog OF switch-a na drugi kao osnovni oblik migracije hosta kroz mreu;

    nat.py - primjer koji pokazuje kako se Mininet mrea moe povezati na Internet preko NAT(Network Address Translation) rutera.

    Ukoliko se prilikom pokretanja ne specificira drugaije, Mininet pokree default-ni OpenFlow kontroler koji vre samo uspostavljanje tokova u mrei, bez naprednijih opcija. Veoma znaajno svojstvo Minineta je mogunost pokretanja eksternih kontrolera, koji su neophodni za implementaciju naprednih funkcionalnosti. Bitno je napomenuti da bez eksternih kontrolera u Mininetu nee raditi ni najjednostavniji scenario mree sa petljama, odnosno viesttukim putanjama izmeu hostova. Kao reenje u takvim situacijama korisiti se POX kontroler [8], koji dolazi u sklopu Mininet paketa i izmeu ostalog sadri gotove skripte za imitaciju Spanning Tree protokola i L2/L3 prosleivanja.

    4. PRIMJER EMULACIJE

    U ovom poglavlju opisan je primjer emulacije u Mininetu. Pomou miniedit grafikog interfejsa [9] kreirana je mrena topologija sa Slike 4. Miniedit nudi razliite mogunosti prilikom kreiranja topologije. Na Slici 5 su prikazane opcije za podeavanje karakteristika linkova (propusnost, kanjenje, gubici) i OF switch-eva (IP adresa, model itd.). Nakon kreiranja topologije i podeavanja parametara pokretanje se moe izvriti na dva naina. Prvi je preko opcije RUN, koja pokree mreu kao pozadinski proces, pri emu se opcije testiranja konektivnosti izmeu hostova vre iz eksternog terminala. Druga opcija je eksportovanje Python skripte i kreiranje topologije preko komandnog interfejsa.

  • Informacione tehnologije IT'15

    Slika 4: Topologija u miniedit-u

    U ovom primjeru, jedan za drugim u razmacima od oko 3s, generisani su tokovi od hostova h1-h8 ka hostu h10 na kojem je pokrenut iperf [10] server. Svi tokovi osim h4-h10 i h5-h10 koriste TCP protokol na nivou transporta. Tokovi h4-h10 i h5-h10 su UDP tokovi protoka 3Mb/s, odnosno 4.5Mb/s. Linkovima je dodijeljen kapacitet od 10Mb/s.

    Slika 5: Opcije za podeavanje karakteristika linkova i OF

    switch-eva u miniedit-u

    Na Slici 6 je dat grafik protoka svakog od tokova tokom prvog minuta trajanja emulacije. Sa grafika se moe uoiti pad performansi prva tri toka nakon aktiviranja UDP toka h4-h10. Zbog odsustva mehanizama za kontrolu zaguenja kod UDP protokola, ovaj tok je zauzeo kapacitet linka s5-s7 to je dovelo do degradacije ostalih TCP tokova. Sa druge strane, link s6-s7 je prvo korien od strane UDP toka h5-h10. Tek naknadno je aktiviran TCP saobraaj od preostala tri hosta. Pokazuje se, a to je saglasno sa literaturom, da je u takvoj situaciji UDP saobraaj neznatno ugroen. Iz ovog se moe vidjeti da je ponaanje protokola emulirano na zadovoljavajui nain. Zbog nedostatka prostora, u ovom radu nijesmo predstavili rezultate preliminarne verifikacije istraivanja novih SDN aplikacija i algoritama rutiranja u Mininetu, koja je prethodila njihovoj implementaciji na test bedu razvijenom u sklopu Istraivakog centru za informaciono komunikacione tehnologije Elektrotehnikog fakulteta u Podgorici.

    5. ZAKLJUAK

    U ovom radu je prikazan softverski alat Mininet namijenjan za emulaciju i verifikaciju rezultata istraivanja u SDN mreama. Nakon upoznavanja sa ogranienjima

    aktuelne mrene arhitekture Interneta, opisana je arhitektura SDN mrea. Poseban naglasak je stavljen na OpenFlow protokol, kao dominantno zastupljen protokol za komunikaciju izmeu SDN kontrolera i mrenih ureaja.

    U radu su predstavljene razliite funkcionalnosti koje Mininet prua i demonstrirana njegova upotreba na primjeru jedne raunarske mree. Predstavljenim rezultatima je pokazano da Mininet oponaa realno mreno okruenje. Pored pregleda mogunosti ovog softvera, kroz rad su naglaena i njegova ogranienja koja treba imati u vidu prilikom emulacije kompleksnih scenarija.

    0

    2

    4

    6

    8

    10

    12

    0 10 20 30 40 50 60Pr

    opus

    nost

    (Mb/

    s)Vrijeme emulacije (s)

    h1h10 (TCP) h2h10 (TCP) h3h10 (TCP)h4h10 (UDP) h5h10 (UDP) h6h10 (TCP)h7h10 (TCP) h8h10 (TCP)

    Slika 6: Grafik propusnosti tokova

    ZAHVALNICA Rezultati istraivanja prezentovani u ovom radu su rezultati rada na projektu Fore-Mont finansiranim od strane EU kao dijela Sedmog okvirnog programa (Grant Agreement No. 315970 FP7-REGPOT- CT-2013) i naunog projekta FIRMONT (Ugovor broj 01-451/2012) finansiranog od strane Ministarstva nauke Crne Gore. LITERATURA [1] Open Networking Foundation, "Software Defined

    Networking: the new norm for networks," Web. White Paper, Retrieved Feb. 2015.

    [2] Mininet: http://mininet.org/ [3] B. Lantz, H. Brandon, and N. McKeown, "A network in a

    laptop: rapid prototyping for software-defined networks," 9th ACM SIGCOM , 2010.

    [4] T. V. Lakshman, T. Nandagopal, R. Ramjee, K. Sabnani, and T. Woo, "The SoftRouter Architecture," in Proc. ACM SIGCOMM, 2004

    [5] A. Doria, J. H. Salim, R. Haas, H. Khosravi, W. Wang, L. Dong, "Forwarding and Control Element Separation (ForCES) Protocol Specification," RFC 5810.

    [6] N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S. Shenker, and J. Turner, Openflow: enabling innovation in campus networks, SIGCOMM Comput. Commun. Rev., vol. 38, no. 2, pp. 6974, 2008.

    [7] Wireshark: https://www.wireshark.org/ [8] POX: http://www.noxrepo.org/pox/about-pox/ [9] Miniedit: http://techandtrains.com/category/miniedit/ [10] Iperf: https://iperf.fr/