2008 II. 19.
Internetes alkalmazások forgalmának mérése és osztályozása
Február 19
Az óra rövid vázlata ●
kapacitás, szabad sávszélesség
●
ping, traceroute
●
pathcar, pcar
●
pathload
●
pathrate
●
pathchirp
●
BART
●
Sprobe
●
egyéb programok Február 19
Kapacitás, szabad sávszélesség ●
●
kapacitás –
maximálisan elérhető sebesség, ha nincs háttérforgalom
–
Ci az i. link kapacitása
–
C = mini=0...H Ci az útvonal kapacitása
szabad sávszélesség –
maximálisan elérhető sávszélesség, ha van háttérforgalom (adaptivitást figyelmen kívül hagyva)
–
ui az i. link kihasználtsága
–
A = mini=0...H Ci (1-ui) az útvonalon elérhető szabad sávszélesség
Február 19
PING, Traceroute ●
PING –
http://ftp.arl.army.mil/~mike/ping.html
–
ICMP (Internet Control Message Protocol) echo request/reply csomagpárok
–
Főleg diagnosztika – –
●
http://www.ieee802.org/1/pages/802.1ag.html http://www.itu.int/rec/T-REC-Y.1731/en
Traceroute (tracepath, tracert, pathping) –
TTL – time-to-live, ICMP time exceed
–
nincs rögzített útvonal az IP-ben
–
IP alatti rétegekről nem tudunk
Február 19
PingPlotter ●
MS Windows
Február 19
PING – hálózat állapota ●
Bizonyos esetekben a TCP forgalom jól detektálható –
“On the distribution of round-trip delays in TCP/IP networks”
Február 19
Pathcar, pcar
●
●
●
●
UDP csomagokat küldünk és ICMP válaszokat várunk különféle ttl beállításokkal befolyásoljuk az útvonal hosszát különféle méretű csomagokkal (VPS algoritmus) megfigyeljük a sávszélességet és késleltetést ismételt mérésekkel megfigyeljük a sorbanállást és csomagvesztést
Február 19
Sávszélesség becslés a pathcar, pcar programokkal ●
●
●
●
Feltételezések: –
ICMP csomag mérete elhanyagolható
–
a sorbanállás végén a csomag azonnal továbbítódik
–
ismételt mérések során látunk végig üres sorokat
–
ugyanaz az útvonal (oda-vissza, és ismétlésnél is)
rtt ≈(késl. + csomagm./sávsz.) + késl. A minimális késleltetésekre egyeneseket illesztünk (y = a + b*x) Az egyenesek különbségeit nézzük
http://www.caida.org/tools/utilities/others/pathchar/
Február 19
Pathload ●
●
●
●
●
SLoPS (self loading periodic streams) algoritmus a küldő és a fogadó oldal együttműködése szükséges a szabadon hagyott sávszélességet becsli a küldő egy csomagsorozatot küld egy becsült sávszélességgel, a csomagokba időbélyegeket tesz a vevő a beérkezési idők különbségéből megbecsüli, hogy az egyirányú késleltetés nő, vagy állandó marad
http://www.pathrate.org
Február 19
Pathrate ●
●
●
a küldő és fogadó oldal együttműködése szükséges a két pont közötti útvonal kapacitását becsli kétlépcsős –
csomagpárok segítségével meghatároz lehetséges kapacitásértékeket
–
csomagsorozatok segítségével kiválaszt egy kapacitásértéket a lehetségesek közül Február 19
Kapacitásbecslés csomagpárokkal (pathrate I.) ●
●
●
●
●
●
csomagpárokat küldünk a hálózatba megadott időközökkel a vevő oldalon mérjük a csomagpárok érkezési időközeit, sávszélességet becslünk keresztorgalom által okozott lokális maximumok (SDCR) pontos kapacitáshoz tartozó lokális maximum(CM) szűk keresztmettszet utáni kapacitásokhoz tartozó lokális maximumok (PNCM) a csomagméretek változtatásával változnak a lokális maximumok súlyai Február 19
Pontosítás csomagsorozatokkal (pathrate II.) ●
●
●
SLoPS algoritmuson alapul az így kapott kapacitásbecslés alatti lokális maximumokat a keresztforgalom hatásának tekintjük a kapacitásbecslés feletti lokális maximumok közül kiválasztjuk a legerősebbet
http://www.pathrate.org Február 19
Pathchirp ●
a küldő és fogadó oldal együttműködése szükséges
●
SLoPS jellegű algoritmuson alapul
●
a küldő csomagsorozatokat indít –
●
●
a csomagsorozatokon belül a szomszédos csomagok időközei exponenciálisan csökkennek
kevés mintavétellel több lépcsőben becsli a szabad sávszélességet ●
csomag párokból
●
“chirp”-ekből
●
simított átlag
a sorbanállásról is szolgáltathat információt
http://www.spin.rice.edu/Software/pathChirp/
Február 19
BART ●
●
●
●
●
●
a küldő és fogadó oldal együttműködése szükséges SLoPS jellegű algoritmuson alapul a küldő csomagpárokat indít különböző időközökkel a vevő az indítási időköz és beérkezési időköz különbségét méri (“strain”) a mérési eredményeket statisztikai úton dolgozza fel (Kálmán szűrő) a szabad sávszélességet becsli
http://www.barttool.org/
Február 19
Sávszélességbecslés BART-tal ●
elméleti összefüggés:
e: “strain”
szabad sávszélesség: B=-b/a
B ●
mérés:
elméleti görbe: e=au+b
u: próba sebessége
Vízszintes és függőleges zajok a görbén: ● vízszintes zaj: a sávszélesség váltakozik ● függőleges zaj: a mérés pontatlan Február 19
sprobe ●
●
●
csak egy mérési pont van (nem, vagy minimálisan kooperatív környezet) mérési pont -> távoli számítógép –
különböző méretű TCP SYN csomagokat küldünk egy távoli számítógép inaktív TCP portjaira (pl. kknnkk mintázat)
–
a távoli számítógép TCP RST csomagokkal válaszol
távoli számítógép -> mérési pont –
a mérőoldal egy TCP HTTP kapcsolatot hoz létre a távoli számítógéppel, és letölt egy weboldalt (esetleg más protokollal csinálja ugyanezt)
–
a letöltés során a távoli számítógép nagy valószínűséggel csomagpárokat (is) fog küldeni
http://sprobe.cs.washington.edu/
Február 19
Egyéb programok ●
●
●
ABwE: csomagpárok érkezési időközeinek váltakozását vizsgálja CapProbe: csomagpárok késleltetési időit összegzi, és a minimális összeg esetén mért időközből becsül kapacitást Iperf: összetett program (adó és vevőoldali funkciókkal), TCP paraméterek behangolásához, valamint UDP és multicast méréseket is támogat Február 19