Testovanie Paketového Filtru NIFIC V Prostredí Reálnej Siete
Total Page:16
File Type:pdf, Size:1020Kb
MASARYKOVA UNIVERZITA FAKULTA}w¡¢£¤¥¦§¨ INFORMATIKY !"#$%&'()+,-./012345<yA| Testovanie paketového filtru NIFIC v prostredí reálnej siete BAKALÁRSKA PRÁCA Michal Michalík Brno, jeseˇn2010 Prehlásenie Prehlasujem, že táto bakalárska práca je mojím pôvodným autorským dielom, ktoré som vypracoval samostatne. Všetky zdroje, pramene a literatúru, ktoré som pri vypracovaní používal alebo z nich ˇcer- pal, v práci riadne citujem s uvedením úplného odkazu na príslušný zdroj. Michal Michalík Vedúci práce: RNDr. Jan Vykopal ii Pod’akovanie Chcel by som pod’akovat’ najmä vedúcemu mojej práce RNDr. Jano- vi Vykopalovi za cenné rady, ochotu a trpezlivost’ pri vedení práce. Dalejˇ d’akujem mojim kolegom z projektu Liberouter za konštruk- tívne pripomienky a rady. V neposlednom rade chcem pod’akovat’ mojej rodine a priatel’ke za morálnu podporu. iii Zhrnutie Táto práca si kladie za ciel’ navrhnutie testov a otestovanie hárd- verovo akcelerovaného paketového filtru NIFIC pomocou reálnej sie- t’ovej premávky. Citatel’aˇ najskôr zoznámi s filtrom NIFIC a meto- dikou testu stratovosti, z ktorého navrhnuté testy vychádzajú. Dalejˇ práca rozoberá možnosti zachytávania, ukladania, preposielania a tak- tiež anonymizácie siet’ovej premávky. V praktickej ˇcastidefinuje ano- nymizaˇcnépožiadavky pre testovanie siet’ového zariadenia NIFIC a na základe získaných skúseností vytvára sadu testov. Súˇcast’ou práce sú aj výsledky týchto testov vo forme grafov a tabuliek namer- aných hodnôt. iv Kl’úˇcovéslová Liberouter, NIFIC, paketový filter, zachytávanie siet’ovej premávky, anonymizácia siet’ovej premávky, Pcap, Spirent Anue XGEM, testy siet’ových zariadení, stratovost’ paketov v Obsah 1 Úvod ................................ 1 2 Testovanie paketového filtru NIFIC .............. 3 2.1 NIFIC ............................. 3 2.2 Testovanie siet’ových zariadení .............. 4 2.2.1 Štatisticky významná vzorka . 5 2.2.2 Opakovatel’nost’ . 5 3 Možnosti príjmu a generovania paketov ........... 6 3.1 Knižnica Libpcap ...................... 8 3.2 Špecializované zariadenia . 10 3.2.1 Spirent TestCenter . 11 3.2.2 Agilent N2X . 12 3.2.3 Spirent Anue XGEM . 12 4 Analýza siet’ovej premávky ................... 14 4.1 Zloženie siet’ovej premávky . 14 4.1.1 OSI model . 14 4.1.2 Vrstva dátových spojov . 15 4.1.3 Siet’ová vrstva . 16 4.1.4 Transportná vrstva . 17 4.2 Analýza siet’ovej premávky . 18 4.2.1 Topológia . 18 4.2.2 Operaˇcnýsystém . 18 4.2.3 Služby . 19 4.2.4 Informácie generované užívatel’om . 19 4.3 Anonymizácia siet’ovej premávky . 20 4.3.1 Anonymizaˇcnénástroje . 21 4.3.2 Proces anonymizácie vzoriek . 22 5 Tvorba testov pre siet’ové zariadenie NIFIC . 23 5.1 Filtraˇcnépravidlá ...................... 23 5.2 Štatistické údaje zachytených vzoriek . 24 5.3 Priebeh testov ........................ 26 5.3.1 Test stratovosti paketov . 28 5.3.2 Test klasifikácie paketov podl’a IP adries . 28 5.3.3 Test klasifikácie paketov podl’a MAC adries . 29 5.3.4 Test klasifikácie paketov podl’a protokolov 4. vrstvy . 30 vi 5.3.5 Test klasifikácie paketov podl’a príznakov pro- tokolu TCP . 31 5.3.6 Test klasifikácie paketov podl’a rozsahov IP adries 31 5.3.7 Test ostrihávania paketov . 32 5.4 Zhrnutie výsledkov testov . 32 6 Záver ................................ 34 A Obsah priloženého CD ..................... 37 B Konfigurácia hostitel’ského poˇcítaˇca . 38 C Výsledky testov .......................... 39 C.1 Test stratovosti ........................ 40 C.2 Test klasifikácie paketov podl’a IP adries . 42 C.3 Test klasifikácie paketov podl’a MAC adries . 44 C.4 Test klasifikácie paketov podl’a protokolov 4. vrstvy . 46 C.5 Test klasifikácie paketov podl’a príznakov protokolu TCP .............................. 48 C.6 Test klasifikácie paketov podl’a rozsahov IP adries . 50 C.7 Test ostrihávania paketov . 52 D Popis gramatiky filtraˇcnýchpravidiel . 54 vii 1 Úvod Snaha o vyšší výkon a zlepšenie fungovania nástrojov je stará ako l’udstvo samo. V prostredí poˇcítaˇcovejtechniky sa túto potrebu snaží nap´lˇnat’ neutíchajúci vývoj nových hárdverových prvkov, ako aj ich softvérového vybavenia. Na zaruˇceniespätnej väzby programátorom a vedeniu projektov je potrebné požadované vlastnosti a oˇcakávané chovanie vyvíjaných produktov dôkladne a odborne overit’. Preto vo väˇcšineprojektov existuje tím l’udí zaoberajúcich sa testovaním. Inak tomu nie je ani v projekte Liberouter [7]. Jedná sa o iniciatívu spoloˇcnosti CESNET [2] za podpory Ma- sarykovej univerzity a Vysokého uˇcenítechnického v Brne (VUT). Ciel’om je vyvíjat’ vysokorýchlostné hárdverovo akcelerované sie- t’ové zariadenia obsahujúce programovatel’né ˇcipy FPGA1. Jedným z týchto zariadení je aj siet’ový paketový filter NIFIC. NIFIC je transparentný siet’ový prvok urˇcenýk súbežnému spra- covaniu paketov2 na vysokorýchlostných linkách s rýchlost’ou až do 10 Gb/s [7]. Variabilnost’ tohto zariadenia umožˇnujejeho nasade- nie do rôznych podmienok, na plnenie rozliˇcnýchúloh. Medzi naj- bežnejšie aplikácie patrí bezstavový firewall, inteligentný rozdel’o- vaˇcalebo replikátor tokov. V rámci projektu stále prebieha diskusia o d’alších možnostiach využitia tohto zariadenia. Úlohou testerského tímu v projekte je pomocou navrhnutých tes- tov hl’adat’ chyby, poukazovat’ na nedostatky a urˇcit’ výkonnostné vlastnosti testovaného zariadenia. Testy by mali prebiehat’ poˇcasce- lého vývoja produktov. Címˇ skôr je totiž chyba objavená, tým je ce- novo a ˇcasovomenej nároˇcnejšiejej odstránenie. Moja práca sa zameriava na testovanie pomocou reálnej premáv- ky. Na rozdiel od premávky generovanej zariadením na testovacie úˇcely(tzv. syntetickej premávky) sa testy s reálnou premávkou pri- bližujú podmienkam použitia zariadenia v praxi. Nasleduje krátky prehl’ad kapitol. Zoznámenie s testovaným zariadením NIFIC a opis metodiky tes- tovania sa nachádza v druhej kapitole. 1. FPGA je hárdverovo programovatel’ný logický ˇcip. 2. Paketom v našom texte oznaˇcujemesiet’ovú dátovú jednotku na l’ubovol’nej vrstve OSI modelu. 1 1. ÚVOD Ako s reálnou premávkou pracovat’ a aké nástroje na prácu ˇci testy s reálnou premávkou použit’ sa dozvedáme v tretej kapitole. Reálna premávka však obsahuje zneužitel’né údaje. O tom, z ˇcoho sa premávka skladá, aké informácie sa z nej dajú zistit’ a ako takejto analýze predchádzat’, nám hovorí štvrtá kapitola. Piata kapitola sa sústredí na samotnú tvorbu testov, príslušnú konfiguráciu zariadení a ich vzájomných spojov. 2 2 Testovanie paketového filtru NIFIC Dôležitou súˇcast’ou životného cyklu hárdverových zariadení a ich programového vybavenia je testovanie. Rovnako to platí aj pre pake- tový filter NIFIC. Ak však chceme nejaké zariadenie podrobovat’ tes- tom, musíme sa s ním najskôr zoznámit’. 2.1 NIFIC Zariadenie NIFIC je siet’ová karta podporujúca hárdverové filtrova- nie, konkrétne ostrihávanie, preposielanie a zahadzovanie paketov [7]. Pomocou PCI Express zbernice1 je zapojená do hostitel’ského poˇcí- taˇca.Je zložená z COMBOv2 karty [3], kde sa nachádza hárdverovo programovatel’ny FPGA ˇcip.V ˇnomje nahratý firmware zariadenia. Karta má dva fyzické ethernetové rozhrania s rýchlost’ou 10 Gb/s a jedno softvérové rozhranie, zapojené do PCI Express zbernice, ktoré je rozdelené na 14 virtuálnych rozhraní2. Dôležitou súˇcast’ou nakonfigurovaného zariadenia je súbor fil- traˇcnýchpravidiel. Tieto pravidlá identifikujú pakety podl’a vybra- ných údajov z protokolov 2. až 4. vrstvy OSI modelu [15], rozhrania, na ktorom bol paket prijatý a definujú operáciu nad paketom. NIFIC sa dá konfigurovat’ pravidlami jednak lokálne z hostitel’ského poˇcí- taˇcaalebo vzdialene pomocou konfiguraˇcnéhosystému Netopeer [7]. Filtraˇcnépravidlá vo verzii NIFIC 3.3.03 identifikujú premávku podl’a nasledujúcich položiek4 a ich kombinacii: • zdrojová a ciel’ová MAC adresa, • zdrojová a ciel’ová IPv4 adresa, • protokol 4. vrstvy, 1. PCI Express je zbernica poˇcítaˇca. Predstavuje sústavu vodiˇcov, pomocou ktorých je procesor spojený s pamät’ou a vstupno-výstupnými obvodmi. 2. Podrobnému opisu vybavenia a architektúry karty NIFIC sa vo svojej bakalárskej práci venoval Michal Truneˇcka. 3. Testovaná je práve verzia NIFIC 3.3.0 4. Obsah pravidiel je vysvetlený v 5. kapitole. 3 2. TESTOVANIE PAKETOVÉHO FILTRU NIFIC • zdrojové a ciel’ové porty TCP a UDP protokolu, • príznaky protokolu TCP, • vstupné rozhranie zariadenia. 2.2 Testovanie siet’ových zariadení Producenti niekedy výsledkami vlastných testov zahmlievajú nepria- znivé vlastnosti svojich produktov [14]. Takto môže ich zariadenie neprávom získat’ lepšie postavenie na trhu. Tomu sa dá predíst’ za- definovaním štandardných metód testovania. Vytváraním štandar- dov siete internet sa zaoberá organizácia IETF. IETF vydáva RFC dokumenty opisujúce správanie, metódy a ino- vácie systémov a zariadení, s príslušnost’ou k sieti internet. Pre testo- vanie paketového filtru NIFIC sa najviac hodí dokument RFC 2544 [14]. Ten za pomoci pojmov definovaných v RFC 1242 [13] popisuje me- tódy testovania pre siet’ové zariadenia. Takto namerané výsledky sú korektnejším ukazovadlom kvality produktov. Obsahu dokumentu RFC 2544 sa podrobnejšie vo svojej bakalárskej práci venoval Michal Truneˇcka[22]. My si predstavíme metodiku testovania stratovosti rámcov, z ktorej budeme pri našom testovaní vychádzat’. Stratovost’ rámcov percentuálne vyjadruje pomer množstva pri- jatých rámcov k množstvu oˇcakávanýchz testovaného zariadenia, vid’ rovnica 2.1. recieved frames frame loss rate = ∗ 100 (2.1) sent frames Meranie by malo byt’ postupne vykonávané od 100% (v našom prípade 10 Gb/s) rýchlosti zostupne po 10-percentných krokoch až po hranicu, kedy bola nameraná