ANALIZA, MODELIRANJE IN SIMULACIJA VPLIVA PROMETA APLIKACIJ ZA IZMENJAVO DATOTEK P2P NA ZMOGLJIVOST OMREŽIJ Matjaž Fras, Jože Mohorko, Žarko Čučej Fakulteta za elektrotehniko, računalništvo in informatiko Univerza v Mariboru, Maribor, Slovenija Kjučne besede: P2P promet, samopodobnost, aplikacija, simulacija Izvleček: V zadnjih letih doživlja delež prometa, ki ga ustvarjajo P2P aplikacije za izmenjavo datotek skokovito rast. S svojo količino in intenzivnostjo znatno vpliva na zmogljivost omrežij. Namen članka je predstavitev metode za analizo in modeliranje takšnega prometa za potrebe simulacij. Na osnovi izmerjenega prometa smo ocenili statistične parametre za modeliranje tovrstnega prometa. V simulacijskem okolju OPNET smo zgradili testno omrežje, kjer se pretakajo poleg ostalih prometov še promet aplikacij P2P, ki smo ga modelirali s predlagano metodo. S simulacijami smo preučili vpliv P2P prometa na zmogljivost omrežja. Analysis, modeling and simulation of P2P file sharing traffic impact on networks' performances Key words: P2P traffic, self-similarity, application, simulation Abstract: Last yea^s CachneLogic research shows that, in January 2006, P2P traffic accounted for approximately 71% of all internet traffic, and was the main reason for internet traffic increasing. Figure 1 shows the trend of P2P traffic increase. The pioneer of P2P file sharing applications is very well-known Napster, which was created in 1999 by Shawn Fanning and used for sharing music files. Napster was finally destroyed by the music industry after Court proceedings. Napster, as a concept, had a great influence on developing file-sharing applications, such as eMula, Kazza, ^Torrent, LimeWire, Skype etc. In our research, we paid attention to the modeling of network traffic caused by P2P file sharing applications (P2P traffic). We measured P2P traffic using the Wireshark network traffic capture tool as shown in Figure 2. We created a self-similarity and long-range dependence analysis for the measured tests P2P traffics, the results of which are shown in Table 1, and in Figures 3 and 4. We also estimated the parameters for a statistical description of a P2P network separately for the processes of packet-size and inter-arrival time, which represent the main network traffic processes. The histogram method for distribution parameters' estimation is shown in Figure 5. These estimated distribution parameters were used for modeling a customized application of P2P network traffic in OPNET simulation tool. Using simulations with simple test networks, as shown in Figure 6, we represented the possibilities of simulating the impact of P2P network traffic on network performances. We show how the volume of P2P users impacts on other applications' performances (web time response shown in Figure 7 and link utilization shown in Figure 8.) 1. Uvod Trendi uporabe P2P (peer-to-peer) aplikacij za izmenjavo datotek iz leta v leto naraščajo, kar je pokazalo tudi poročilo CachneLogic research /1/. Tako je bilo januarja leta 2006 kar 71 procentov vsega svetovnega prometa prav prometa P2P, kar je posledica populizacije P2P aplikacij. Slika 1 kaže deleže prometa različnih aplikacij celotnega spletnega prometa zadnjih nekaj let. Začetek razvoja P2P aplikacij sega v leto 1999, ko je Shawn Fanning z Univerze Northeastern iz Bostona razvil prvo večjo in razvpito P2P aplikacijo z imenom Napster, ki je omogočala ilegalno izmenjavo glasbenih datotek. Glasbeni industriji je s podporo glasbenih izvajalcev le uspelo Napsterju s pomočjo sodišča preprečiti velik pohod. Kljub temu pa je Napster povzročil revolucionarni vpliv na načine (legalne in nelegalne) distribucije intelektualne lastnine. Pripomogel je k velikem razcvetu P2P aplikacij v začetku 21. stoletja, kot so eMula, eDonkey, Kazza, LimeWire, pTorrrent, Skype^ V članku bomo predstavili metode merjenja, analize in modeliranju omrežnega prometa, ki ga povzročajo P2P Slika 1: Poročilo CahneLogic o rasti internetnega prometa med leti 1993 in 2006 /1/. aplikacije (P2P promet). S pomočjo analize prometa običajnega uporabnika P2P aplikacij smo določili parametre statističnega opisa prometa. Te smo uporabili pri modeliranju za namene simuliranja takšnega prometa v simulacijskih orodjih, kot je npr. OPNET. Analizo P2P prometa smo izvedli na podlagi večih testnih vzorcev P2P prometov, ki smo jih izmerili s pomočjo programa za zajemanje omrežnega prometa (vohljači) v različnih omrežjih z različnimi prenosnimi zmogljivostmi. Izvedli smo analizo omrežnega prometa s stališča samopodobnosti prometa s pomočjo ocene Hurstovega parametra ter dolgega območja odvisnosti na podlagi avtokorelacijske funkcije /2, 3, 4, 5/. V okvirju analize prometa smo določili porazdelitve, ki se najbolje prilegajo histogramom izmerjenega prometa in ocenili pripadajoče parametre statističnega opisa naključnih procesov omrežnega prometa in sicer procesa velikosti paketov in časa med paketi. Ta dva procesa smo nato uporabili pri modeliranju aplikacije po meri v simulacijskem orodju OP-NET. V simulacijskem orodju smo nato modelirali še primer testnega omrežja v katerem smo pokazali vpliv P2P aplikacij na omrežne zmogljivost, ter odziv standardnih aplikacij kot so email, web browsing, FTP,... Članek sestavljajo naslednja poglavja. Drugo poglavje podaja metodo merjenja P2P prometa v omrežjih. Tretjo poglavje podaja kratko matematično ozadje samopodobnosti in dolgega območja odvisnosti, ter rezultate analize izmerjenih testnih prometov. Četrto poglavje podaja modeliranje prometa P2P aplikacije na podlagi opravljene analize. Peto poglavje podaja kratek opis testnega omrežja v simulacijskem okolju OPNET. V šestem poglavju so rezultati simulacij, kjer smo preučevali vpliv P2P aplikacij na lastnosti omrežja glede na število uporabnikov P2P aplikacij. Na koncu sledi še zaključek. 2. Merjenje P2P prometa Merjenje prometa, ki ga ustvarjajo aplikacije za izmenjavo datotek (P2P promet) smo izvedli s pomočjo programa za zajemanje prometa (popularno imenovan vohljač) Wireshark /12/. Tako ustvarjen promet za posamezne uporabnike tovrstnih aplikacij smo zajemali v različnih omrežjih z različnimi prenosnimi zmogljivostmi. Vsaka P2P aplikacija za izmenjavo datotek v P2P omrežju ima vlogo tako odjemalca kot tudi ponudnika. Zato smo zajet promet razdelili na promet, ki ga uporabnik prejema (vloga odjemalca) in pro- Slika 2: Uporabniški vmesnik Wireshark vohijača, ter časovni potek zajetega prometa aplikacije P2P v paketih na časovno enoto in sicer celotni promet, promet odjemalca in ponudnika. met, ki ga oddaja (vloga strežnika). Pri meritvi prometa smo s filtri izločili promet drugih aplikacij. Tabela 1 prikazuje osnovne parametre izmerjenih testnih P2P prometov, ki smo jih zajeli s pomočjo Wireshark vohljača. Tabela 1: Primeri izmerjenih P2P testnih prometov naključnega uporabnika P2P aplikacij. testni promet 1. testni promet (eMula) 2. testni promet (uTorrent) promet strežnika promet odjemalca promet strežnika promet odjemalca srednja vrednost (p/s) 101,66 88,96 1469,281 1093,795 srednja vrednost (kb/s) 87,513 22,094 1724,955 637,167 testni promet 3. testni promet (eMula) 4. testni promet (jiTorrent) promet strežnika promet odjemalca promet strežnika promet odjemalca srednja vrednost (p/s) 71,940 49,831 39,044 28,394 srednja vrednost (kb/s) 71,940 37,24 37,176 13,344 3. Analiza prometa 3.1 Samopodobnost in dolgo območje odvisnosti Analizo prometa smo izvedli z vidika samopodobnosti in dolgega območja odvisnosti. Opis omrežnega prometa z modelom samopodobnosti /2, 4, 5, 6, 7/ temelji na teoriji fraktalov. Ta model je nadomestil starejše modele omrežnega prometa, kot sta Poissonov in Markov /3/. Samopodobnost temelji na samopodobnosti časovnih zaporedij, ki jih podaja naslednja definicija /5, 9 10/: Naj bo X = (Xt, t = 0, 1, 2, ^) kovariančno stacionarni stohastični proces s stacionarno srednjo vrednostjo ^ = E/Xt/, končno varianco ö2 = E[(Xt - ^)2], avtokovariančno funkcijo Y(k) = E[(Xt - ^)(Xt+k - ju)], ki je odvisna le od vrednosti k, in avtokorelacijsko funkcijo r(k); rik) = k =0,1,2,... (1) Potem se avtokorelacijska funkcija asimptotično približuje k^oa, 0<ß 0 (npr. L1(t) = konstanta, L1(t) = log(t)). Če časovno zaporedje izpolnjuje pogoj v enačbi 2, potem takšno časovno zaporedje opisujemo kot samopodobno časovno zaporedje. Merilo samopodobnosti predstavlja Hurstov parameter, katerega določimo iz parametra ß in sicer: 2 0< ß <1 (3) Iz (3) sledi, da se v primeru samopodobnega prometa vrednost Hurstovega parametra med 0,5 in 1. Samopodobnost lahko vsebuje lastnost dolgega območja odvisnosti, pri katerem je vrednost novega stanja zelo močno odvisna od prejšnjih stanj. Značilnost takega procesa je visok nivo spremenljivosti na različnih časovnih skalah. V primeru agregiranega procesa na dolgih časovnih skalah pa proces ne teži h glajenju. Definirajmo stohastični proces, ki izpolnjuje relacijo 2, ter avtokorelacijsko funkcijo samopodobnosti drugega reda s predpisom r(k) = ^(k)/^2. Za vrednosti 0 < H < 1, H ^ 0,5 velja r{k)'= H{2Hr->oo (4) Za vrednosti 0,5 < H < 1 se avtokorelacijska funkcija r(k) asimptotično obnaša kot ck za vrednosti 0 < ß < 1, kjer je konstanta c > 0, ß = 2 - 2H in velja lirik) = 00 (5) Avtokorelacijska funkcija pada hiperbolično (počasi), zato ni sumabilna. Procesi s hiperboličnim upadanjem r(k) so stacionarni procesi z dolgim območjem odvisnosti. Kadar ima avtokorelacijska funkcija r(k) procesa X(t) končno vsoto, potem je proces s kratkim območjem odvisnosti. Eksponentno padanje avtokorelacijske funkcije k^oo, 00 (9) Parameter a imenujemo tudi parameter oblike (shape). Parameter k imenujemo parameter lokacije (local), ki je najmanjša možna vrednost naključne spremenljivke x. Poleg Paretove porazdelitve iz družine počasi pojemajočih porazdelitev, je pomembna tudi Weibullova /18/: a-l e ^ , x>0, a,k>0 (10) Parameter a imenujemo parameter oblike. Parameter k imenujemo parameter lokacije. Verjetnostne porazdelitve ter pripadajoče parametre porazdelitve stohastičnega procesa navadno ocenimo na osnovi histogramov, ki nam služijo kot referenca pri izbiri najbolj prilegajoče porazdelitve ter izračunu parametrov izbrane porazdelitve. Histogram je diskretni približek zvezne funkcije gostote verjetnosti. Pri analizi izmerjenega omrežnega prometa, statistično ovrednotimo oba naključna procesa prometa na podlagi histogramov in sicer proces velikosti paketov in procesa časa med paketi. Oceno porazdelitve in parametrov omrežnega P2P prometa smo izvedli s pomočjo orodja EasyFit, ki je prikazano na sliki 4. Natančnost aproksimac-ije histogramov s porazdelitvami verjetnosti ocenimo s pomočjo testov kot sta Kolmogorov-Smirnov ali Chi-squere / 13, 14, 15, 20/. Na podlagi opravljene analize izmerjenih testnih prometov (tabeli 1 in 2) smo zasnovali model P2P aplikacije za izmenjavo datotek. V simulacijskem okolju OPNET imamo na voljo veliko različnih načinov opisa omrežnega prometa /11/. Odločili smo se za modeliranje prometa s pomočjo aplikacij saj nam simulacijsko okolje ponuja že v naprej Slika 5: Primer ocene parametrov Weibuiiove porazdelitve za proces časa med paketi na podlagi izmerjenega histograma. pripravljene aplikacije, kot so npr. email, FTP ali spletno brskanje ter tudi možnost modeliranja aplikacije po meri, ki smo jo uporabili za modeliranje P2P prometa. P2P aplikacijo za izmenjavo datotek v simulaciji smo modelirali na podlagi aplikacije »database access«, v katero smo vnesli parametre, ki smo jih ocenili s pomočjo opisanih metod. Za opis procesa časa med transakcijami smo izbrali Weibull-ovo porazdelitev, medtem ko smo za opis procesa velikosti transakcij izbrali eksponentno porazdelitev. Za eksponentno porazdelitev smo se odločili na podlagi analize prometa, kjer smo s pomočjo avtokorelacijske funkcije ugotovili, da samopodoben promet aplikacij P2P v večini primerov vsebuje lastnost kratkega območja odvisnosti. Vrednost Hurstovega parametra je okoli 0,5, kar predstavlja tudi mejo med lastnostjo dolgega in kratkega območja odvisnosti. Izmerjeni prometi prav tako ne kažejo ekstremnih konic, kar je lastnost prometov z dolgim območjem odvisnosti, katere je primerno modelirati s Paretovo porazdelitvijo za proces velikosti paketov. P2P aplikacijo za izmenjavo datotek smo definirali tako, da nam v smeri od strežnika do odjemalca povzroči okoli 100kb/s kar znaša okoli 35pa-ketov/s ter v obratni smeri (odjemalec strežnik) približno polovico prometa strežnik-odjemalec. 5. Testno omrežje Za preučevanje vpliva P2P aplikacij za izmenjavo datotek na zmogljivost omrežja smo v simulacijskem okolju OPNET sestavili manjšo testno omrežje, ki predstavlja omrežje podjetja. Testno omrežje sestavljata dve manjši skupini uporabnikov, v katerih je po 40 (4x10) uporabnikov. V celotnem omrežju je torej 80 uporabnikov razdeljenih v skupine po 10 uporabnikov povezanih preko stikal, kot je prikazano na sliki 6. Vsaka skupina je povezana na stikalo s povezavo 100Mb/s. Stikali skupin sta povezana na glavno stikalo s 100Mb/s povezavo. To stikalo je povezano z internetom in dejansko predstavlja pasovno širino, ki jo lahko končni uporabnik zakupi od ponudnika internetnih storitev. Ta povezava predstavlja zakupljen ali najet vod z prenosno zmogljivostjo 10Mb/s. Na internet imamo priklopljene strežnike, ki predstavlja strežniško arhitekturo ponudnika internetnih storitev. S temi strežniki smo podprli standardne aplikacije, ko so brskanje po internetu, elektronska pošta in FTP prenos. Vsi strežniki so povezani na strežniško stikalo, ki je povezano v internet s povezavo 100Mb/s. Prav tako smo na internet povezali strežnike 3 zunanje P2P uporabnike na katere se bodo povezovali uporabniki P2P aplikacij iz podjetja. S simulacijo smo se skušali čim bolj približati realnim razmeram v komunikacijskih omrežjih. V simulacijskem orodju smo modelirali tri različne scenarije in sicer: 1. Vsi uporabniki (80) internet storitev uporabljajo le standardne aplikacije in sicer elektronsko pošto, FTP prenosi datotek in brskanje po spletu. 2. Ob tem da vsi uporabniki (80) uporabljajo standardne aplikacije prva skupina 40 uporabnikov uporablja še P2P aplikacije. 3. Ob tem, da vsi uporabniki (80) uporabljajo standardne aplikacije uporabljajo tudi vsi aplikacije P2P. Z različnim številom uporabnikov P2P aplikacij v testnem omrežju smo skušali pokazati, kako takšna uporaba vpliva na zmogljivosti omrežja. V simulacijskem okolju smo spremljali različne parametre omrežja, kot so zakasnitve, odzivni čas spletne strani, izkoriščenost povezav, kot bo prikazano v naslednjem poglavju. Slika 6: Testno omrežje za simuliranje vpliva prometa aplikacij P2P na zmogljivost omrežja 6. Rezultati simulacij Iz rezultatov simulacij treh scenarijev testnega omrežja iz slike 6, v katerem smo spreminjali število uporabnikov P2P aplikacij za izmenjavo datotek vidimo, kako uporaba le teh vpliva na razmere v celotnem omrežju. S povečevanjem uporabnikov P2P aplikacij se poveča P2P promet v omrežju, kar ima negativen vpliv na druge uporabljene aplikacije v omrežju. Graf na sliki 7 prikazuje odzivni čas spletne strani za vse tri scenarije. Kot smo tudi pričakovali, se v primerih večje uporabe P2P aplikacij povečuje odzivni čas spletnih strani. Slika 7-. Odzivnost spletne strani v odvisnosti od števila P2P uporabnikov na omejeni pasovni širini 10Mb/s za tri različne scenarije. Graf na sliki 8 prikazuje vpliv števila uporabnikov P2P aplikacij za deljenje datotek na povprečni časovni odziv spletne strani. Slika 8: Povprečni časovni odziv spletne strani v odvisnosti od števila uporabnikov P2P aplikacij za deljenje datotek v testnem omrežju. Slika 9 prikazuje izkoriščenost najete povezave, ki znaša 10Mb/s. V primeru uporabe standardnih aplikacij je izkoriščenost okoli 18 odstotna, v primeru naraščanja uporabnikov pa ta strmo narašča in pride v primeru, ko vsi uporabniki uporabljajo P2P aplikacije, v zasičenje. Slika 10 prikazuje izkoriščenosti najetega voda 10Mb/s podjetja v odvisnosti od števila uporabnikov P2P aplikacij za deljenje datotek v testnem omrežju na sliki 6. S simulacijo takšnega omrežja omogoča vpogled delovanja takšnega omrežja ter oceno vpliva posameznih parametrov na zmogljivost omrežja. 200 300 400 čas (s) Slika 9: Prepustnost prenosne povezave men internetom in glavnim stikalom kapacitet 10Mb/s. Slika 10:Izkoriščenost najetega voda v odvisnosti od števila uporabnikov P2P aplikacij. 6. Zaključek V članku smo predstavili metode analize in modeliranja omrežnega prometa na osnovi izmerjenega prometa, za namene simulacij. Kot primer uporabe metod smo izbrali preučevanje vpliva uporabe P2P aplikacij za izmenjavo datotek na lastnosti omrežja. Z meritvami in analizo smo ugotovili, da je v večini primerov promet P2P aplikacij samopo-doben, vendar pa ne vsebuje lastnosti dolgega območja odvisnosti, kar smo upoštevali v postopku modeliranja za opis statističnih procesov prometa. Iz rezultatov simulacije smo videli, da uporaba takšnih aplikacij zmanjša zmogljivost omrežja in negativno vpliva na ostale aplikacije, ki so nato deležne večjih zakasnitev. Seveda pri uporabi P2P aplikacij za izmenjavo datotek v javnih ustanovah in podjetjih ni potencialno škodljiva le zaradi zmogljivosti omrežja. Negativno vpliva tudi na delovno storilnost, povečuje možnost vdorov virusov, vzpodbuja nelegalno uporabo programske opreme in multimedijskih vsebin. Tehnični vidik teh problemov bi lahko rešili z zagotavljanjem kakovosti storitev (QoS), vendar se pa sistemski administratorji po navadi zatečejo k drugim rešitvam, kot so na primer administrativne prepovedi, zaklepanje vtičev (por-tov), omejevanje pravic v operacijskih sistemih, itd. Reference /1 / http://torrentfreak.com/bittorrent-the-one-third-of-all-internet-traffic-myth/. /2/ W. E. Leland, M. S. Taqqu, W. Willinger in D. V. Wilson, On the self-similar nature of Ethernet traffic (Extended version), IEEE/ ACM Transactions on Networking, Vol.2, pp.1-15, 1994. /3/ V. Paxon in S. Floyd, Wide area traffic: the failure of Poisson modeling, IEEE/ACM Transactions on Networking, 3(3): 226244, 1995. /4/ O. Sheluhin, S. Smolskiy in A. Osin (Author), Self-Similar Processes in Telecommunications, John Wiley & Sons, 2007. /5/ K. Park in W. Willinger, Self-Similar Network Traffic and Performance Evaluation, John Wiley & Sons, 2000. /6/ T. Karagiannis, M. Molle in M. Faloutos, Understanding the limitations of estimation methods for long-range dependence, University of California. /7/ M. Fras, J. Mohorko in Z. Cucej, Estimating the parameters of measured self similar traffic for modeling in OPNET, IWSSIP Conference, 2007, Maribor, Slovenia. /8/ W. Willinger, M. S. Taqqu, R. Sherman in D. V. Wilson, Self-similarity through high-variability: statistical analysis of Ethernet LAN traffic at the source level, IEEE/ACM Transactions on Networking, 5(1): 71-86, 1997. /9/ H. Yolmaz, IP over DVB: Management of self similarity, Master of Science, Bodazigi University, 2002. /10/ M. Z. Jiang, Analysis of wireless data network traffic, Master of Applied Science, Simon Fraser University, Vancouver, Canada, 2000. /11/ J. Mohorko, M. Fras in Ž. Čučej, Modeling of IRIS replication mechanism in tactical communication network with OPNET, IWSSIP Conference, 2007, Maribor, Slovenia. /12/ A. Orebaugh, G. Ramirez in J. Beale, Wireshark & Ethereal Network Protocol Analyzer Toolkit, Syngress Publishing, Inc., 2007. /13/ Chakravarti, Laha, in Roy, (1967). Handbook of Methods of Applied Statistics, Volume I, John Wiley and Sons, pp. 392-394. /14/ http://en.wikipedia.org/wiki/Kolmogorov-Smirnov_test /15/ http://en.wikipedia.org/wiki/Chi-square_goodness-of-fit_test. /16/ http://en.wikipedia.org/wiki/Exponential_distribution. /17/ http://en.wikipedia.org/wiki/Pareto_distribution. /18/ http://en.wikipedia.org/wiki/Weibull_distribution. /19/ R. Jamnik, Verjetnostni račun in statistika, DZS, Ljubljana, 1987. /20/ B. Vujičic, N. Cackov, S. Vujičic in L. Trajkovic, Modeling and Characterization of Traffic in Public Safety Wireless Networks, Simon Fraser University, Vancouver, Canada, SPECTS 2005 Matjaž Fras, Jože Mohorko, Žarko Čučej Fakulteta za elektrotehniko, računalništvo in informatiko Univerza v Mariboru, Smetanova 17, 2000 Maribor, Slovenija Tel: (+386 2) 220-7120 Email: matjaz.fras1@uni-mb.si Prispelo (Arrived): 04.04.07 Sprejeto (Accepted): 28.5.08