gönczy lászló [email protected] · ahol a méret byte, a sávszélesség mbps ... udp datagram...

34
Teljesítménymodellezés Gönczy László Üzleti IT rendszerek modellezése Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Gönczy László [email protected]

Upload: others

Post on 20-Feb-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Teljesítménymodellezés

Gönczy László

Üzleti IT rendszerek modellezése

Budapesti Műszaki és Gazdaságtudományi Egyetem

Méréstechnika és Információs Rendszerek Tanszék

Gönczy László

[email protected]

Erőforrás szintű kapacitástervezés lépései

IT fe jlesztési terv

IT in frastruktúra

IT je llem zok

Terhelés leírás Teljes ítm énybecslés

Költségm odellek

Választottkö ltségm odell

Terhelésjellem zok

Terhelés m odell Teljes ítm énym odellek

Teljes ítm énym odell

Kalibrálás ésvalidálás

W hat-if analízis

Teljesítménymodellek

� Modellezés célja

o erőforrás foglalási problémák felderítése

o elosztott alkalmazások kommunikációs költségei

o rendszer változásának hatásai (pl. gyorsabb szerver)

( )Kiszolgálás Várakozás TénylegesKiszolgálás HálózatiKésleltetésT T T +T = +

o rendszer változásának hatásai (pl. gyorsabb szerver)

o előrejelzés támogatása

� Ökölszabályok: teljesítménymodell elfogadható, ha

o az erőforrások kihasználtságát 10%

o az áteresztőképességet 10%

o a válaszidőt 20% hibával becsli

Modellek fajtái

� Analitikus modell

o a rendszert egyenletekkel írja le, pl.

� Szimulációs modell

min min minRT RTT kérés FeldolgozásiIdő válasz= + + +

� Szimulációs modell

o szimulációt futtat

o az előfordulásnak megfelelő tranzakció gyakorisággal

o előny: általános vizsgálat ☺

o hátrány: drága, nehéz kifejleszteni �

Modellezési/becslési paradigma

Adottrendszer

ANALÍZIS

Tervezett rendszerteljesítménye

BECSLÉSMODELLEZÉS

Paraméterek

Modell építés

Adatgyűjtés

Teljesítménymérése

Modellkiértékelése

ModellváltoztatásValidálás

Modell kiértékelése

Paraméterekmeghatározása

Teljesítmény modell paraméterei

Teljesítmény

Rendszer paraméterek

Erőforrás paraméterek

Diszk hozzáférési idő

Késleltetés

Terhelés elosztás szabályai

Kapcsolatok / szálak max. száma

Hálózati protokoll, stb.

Teljesítménymodell

Erőforrás paraméterek

Terhelési paraméterekIntenzitás

Szolgáltatás igény

Lekérdezések száma / nap

Kliensek száma

Intenzitás változása (burst), stb.

Tranzakció által használt CPU idő

Adatbázis lekérdezés mérete, stb.

Sávszélesség

CPU sebesség, stb.

Szolgáltatás igény és idő

� Az i. erőforrásra:

Di: egy tranzakció átlagos szolgáltatásigénye

Vi: a tranzakció átlagos erőforrás használata

Si: egy használat átlagos erőforrás igénye

i i iD V S= ×más alakban

ii

i

DS

V=

Könnyebben meghatározható

Hálózati egyenletek

Egy üzenethez tartozó csomagok száma:

Összes protokoll overhead (n. hálózaton):

ÜzenetméretCsomagszám =

MaxSzegmensMéret

n nOverhead = Csomagszám×(TCPOvhd + IPOvhd + FrameOvhd )

ahol figyelembe vesszük a TCP, IP és a konkréthálózati protokollból eredő overhead-et

Hálózati egyenletek 2.

Üzenet továbbítási ideje az n. hálózatban

ahol a méret byte, a sávszélesség Mbps mértékegységű

( )nn 6

Üzenetméret +Overhead ×8SzolgáltatásIdő =

10 ×Sávszélesség

mértékegységű

Az n. hálózat kihasználtsága (utilization)

λ∑ jn j n

üzenetek

U = ×SzolgáltatásIdő

Hálózati protokollok

Protokoll PDU elnevezés Max. PDU (bájt) Overhead (bájt ) Max. AdatterületTCP segment 65,515 20 65,495UDP datagram 65,515 8 65,507IPv4 datagram 65,535 20 65,515IPv6 datagram 65,535 40 65,495ATM cell 53 5 48ATM cell 53 5 48Ethernet frame 1,518 18 1,500IEEE 802.3 frame 1,518 21 1,497IEEE 802.5 Token Ring frame 4,472 28 4,444FDDI (RFC 1390) frame 4,500 28 4,472

PDU = Protocol Data UnitMTU=Maximum Transmission Unit

Hálózati környezet példa

KLIENS

ROUTER

LAN2:FDDI Gyűrű100 Mbps

MTU:4472 bájtR

LAN3:Token Ring16 MbpsMTU: 4444 bájt

Adatbázisszerver

LAN1:Ethernet10 MbpsMTU: 1500 bájt

Hálózati teljesítmény példa

Az előző hálózatban a kliens küld egy 300 bájtos kérést:

LAN1:

Overhead = TCPOvhd + IPOvhd + EthOvhd (1 csomag)

Ovhd1 = 20 + 20 +18 = 58

358×8

LAN2:

LAN3:

358×8SzolgIdő1= = 0.000286sec

10,000,000

368×8SzolgIdő2 = = 0.00002944sec

100,000,000

368×8SzolgIdő3 = = 0.000184sec

16,000,000

Hálózati teljesítmény példa 2.

� A szerver válaszol: 10000 bájtszegmentálás: 1460 bájt az egység

EthernetMéret – (TCPOvhd + IPOvhd) = 1500 – 40

7 csomag : 10000 = (6*1460 + 1240)

LAN3: ( )sec00524.0

8308,1528,16 =×+×

LAN2:

LAN1:

( )sec00524.0

000,000,16

8308,1528,16 =×+×

( ) ( )[ ]sec000838.0

000,000,100

8282020240,1282020460,16 =×+++++++×

( ) ( )[ ]sec00832.0

000,000,10

8182020240,1182020460,16 =×+++++++×

Hálózati teljesítmény példa 3.

� A kliens átlag percenként 3-szor lekérdezi az adatbázis szervert

Lekérdezés: 400 bájt, Válasz: 80% 8092 bájt, 20% 100,000 bájt

Milyen a hálózati kihasználtság?

Csomagok száma:

Kérdés:

Rövid válasz:

Hosszú válasz:

4 /1,460 1=

8,092 /1,460 6=

100,000 /1,460 69=

Hálózati teljesítmény példa 4.

Kérés Rövid válasz Hosszú válaszCsomagok száma 1 6 69Overhead (bájt) 58 348 4002Átviteli idő (ms) 0.366 6.75 83.2Csomagok száma 1 6 69Overhead (bájt) 68 408 4692Átviteli idő (ms) 0.0374 0.68 8.38Csomagok száma 1 6 69Overhead (bájt) 68 408 4692

LAN1

LAN2

LAN3Átviteli idő (ms) 0.234 4.25 52.3

Átlagos átviteli idő adott hálózaton:0.8× (KérésÁtvIdő+ RövidVálaszÁtvIdő)+ 0.2× (KérésÁtvIdő+ HosszúVálaszÁtvIdő)

Hálózati teljesítmény példa 5.

LAN1 LAN2 LAN30.0224 0.00223 0.0141

LAN1 LAN2 LAN340 4.5 0.4 2.880 9 0.9 5.6

120 13.4 1.4 8.5160 17.9 1.8 11.3200 22.4 2.3 14.1

Átlagos átviteli idő (s)

Kliensek száma

Kihasználtság (%)

Hasonlóan kiszámítható, ha megváltozik a kérések intenzitása.

200 22.4 2.3 14.1240 26.9 2.7 16.9280 31.4 3.2 19.7

Kihasználtság törvénye

� Kihasználtság törvénye (Utilization Law)

Ui: az i. erőforrás kihasználtsága

Bi: foglaltsági ideje a monitorozás alatt

T: mérési idő

i i i 0 i i 0 i i iU = B/T = B/(C /X) = (B /C )× X = S × X

T: mérési idő

C0: tranzakciók száma

Si: átlagos kiszolgálási idő

Xi: átlagos áteresztőképesség

λi: érkezési ráta

λ i iEgyensúly : = X

λi i i i iU = X ×S = ×S

További törvények

Forced Flow törvény:

Xi : az I. erőforrás áteresztőképessége

Vi : „látogatások” átlagos száma

X0: tranzakciók átlagos száma

Szolgáltatás igény törvénye (Service Demand):

i i 0X =V × X

Szolgáltatás igény törvénye (Service Demand):

i i i i 0 i i i 0D =V × S = (X /X )× (U/X) = U/X

Forced Flow Kihasználtság tv.

Little törvénye

T ideig figyeljük a rendszert

k rendszerben lévő kérések az intervallumban,

R

NX

Rendszerben töltött átl. idő

ÁteresztőképességRendszerben lévő kérések

fk az idő amíg k darab kérés van

a rendszerben

rk a rendszerben töltött idő összege

C0: ennyi kérés hagyta el a rendszert

∑ ∑k

k

k k

rN = k × f = k ×

T

∑ k0 k

0

k * rC

N = *T CX R

N = X × R

A Little törvény alkalmazása

� Levelezési szolgáltatást nyújtó portál2.000.000 regisztrált felhasználó, 30%-uk küld levelet csúcsterhelésnél (1 óra hosszú). Egy email feldolgozása 5.0 másodperc, 3.5 levelet küld egy felhasználó. Egy levél mérete átlagosan 7120 bájt.

Mekkora spool fájl szükséges?

Átlagos levélméret alapján

LevelekÁtlagosSzáma = Áteresztőképesség×Válaszidő

(2,000,000×0.30×3.5×5.0)= = 2916.67

3,600

SpoolFileMéret = LevelekÁtlagosSzáma×LevelekÁtlagosMérete

= 2916.67×7120 bájt = 20.767 Mb

A Little törvény alkalmazása 2.

� Webes bróker, 3 rétegű architektúra(Web szerver, Alkalmazás szerver, Adatbázis szerver)

o 1.1 millió felhasználó, 20000 használja a rendszert egyszerre (csúcsterhelés)

o A rendszer 3.6 millió kérést dolgoz fel óránként

o Minden kérés átlagosan 1.4 tranzakciót generál az adatbázis szerveren, ami a vállalati mainframe-en találhatószerveren, ami a vállalati mainframe-en található

o A mainframe 11500 kérést dolgoz fel másodpercenként

� Mennyi az átlagos válaszidő?

� A válaszidő mekkora részét tölti a válasz a mainframe-

en?

A Little törvény alkalmazása 3.

Az egész rendszer „fekete doboz”:

A mainframe a „fekete doboz”:

20,00020 sec

3,600,000 / 3,600

FelhasználókÁtlagosSzámaÁtlagosVálaszidő =

RendszerÁteresztőképesség

= =

A mainframe a „fekete doboz”:

A kettő aránya:

20,000 1.42.43 sec

11,500

TranzakciókÁtlagosSzámaÁtlagosVálaszidő

MainframeÁteresztőképesség=

×= =

1.4 2.43 sec17%

20.0 secMainframeHasználatRendszerHasználat

× = =

Könyvesbolt példa

� Bemenő adatok:

Mérhető értékek

Modellb ől kapjuk (CBMG, CSID)

Adat ÉrtékÖsszes session száma 35000Web szerver foglaltság összesen (sec) 1200DB szerver folglatság összesen (sec) 2100Mérési intervallum (sec) 3600Keresések száma/Session 2,50Web szerver kérés/Keresés 1,95DB szerver kérés/Keresés 0,95

� Mennyi egy keresés tranzakció DB szerver szolgáltatási ideje?

21000.025 sec

35000 2.5 0.95

DiSi

Vi= = =

× ×∑∑

(CBMG, CSID)DB szerver kérés/Keresés 0,95

Könyvesbolt példa 2.

� Web szerver és Adatbázis szerver

A Web szerver TCP fölött kommunikál, a kérés mérete 400 bájt, a

válasz 9150 bájt. A hálózat 100BASE-T Ethernet.

Milyen a hálózat kihasználtsága?

35,000 2.5 1KeresésekSzáma ×0

35,000 2.5 124.3

3,600 sec secKeresésekSzáma

XMérésiIntervallum

×= = =

4001

1460

91507

1460

kéréskérés

válaszkválasz

ÜzenetMéretCsomagokSzáma

MaxSzegmensMéret

ÜzenetMéretCsomagokSzáma

MaxSzegmensMéret

= = =

= = =

Könyvesbolt példa 3.

( ) ( )6 1460 58 1 390 58 8 × + + × + ×

6 6

( ) 8 (400 20 20 18) 810 10 100

0.366 msec

kérés kéréskérés

ÜzenetMéret OvhdSzolgIdő

Sávszélesség

+ × + + + ×= =× ×

=

( ) ( )6

6 1460 58 1 390 58 87.64 msec

10 100válaszSzolgIdő

× + + × + × = = ×

324.3 (0.366 7.64)10 19.5%

jn j n

üzenetek

U = ×SzolgáltatásIdő

−= × + =

∑ λ

Könyvesbolt példa 4.

� Bemenő adatok:

Adat ÉrtékÖsszes session száma 35000Web szerver foglaltság összesen (sec) 1200DB szerver folglatság összesen (sec) 2100Mérési intervallum (sec) 3600Keresések száma/Session 2,50Web szerver kérés/Keresés 1,95

Mérhető értékek

Modellb ől kapjuk

� Változhato vásárlók száma

o vásárlók viselkedése

o rendszer paraméterek (pl. fájlok átlagos mérete)

Web szerver kérés/Keresés 1,95DB szerver kérés/Keresés 0,95

Átlagos Web szerver szolg. igény (DWS) msec 13,71

Átlagos DB szerver szolg. igény (DDB) msec 24,00

Átlagos Web szerver szolg. idő (SWS) msec 7,03

Átlagos DB szerver szolg. idő (SDB) msec 25,26

Modellb ől kapjuk (CBMG, CSID)

Kiszámolható

Könyvesbolt példa 5.

Milyen lesz a szerverek kihasználtsága, ha

megduplázódik a felhasználók száma (csúcsterhelés)?

o megduplázódik a Session-ök száma

o tfh. nem változik a felhasználók viselkedése

2 35,000 2.50.01371 66.67%U X D

× ×= × = × =

Fejleszteni kell az adatbázisszervert!!!

02 35,000 2.5

0.01371 66.67%3600

WS WSU X D× ×= × = × =

0 48.61 0.024 116.7%DB DBU X D= × = × =

Könyvesbolt példa 6.

Milyen lesz a hálózat kihasználtsága, ha a képek

mérete megduplázódik?

Az egyszerűség kedvéért tfh. a keresés válaszának mérete is

megduplázódik. Ha minden más változatlan (válasz 18300 bájt):

( ) ( )12 1460 58 1 780 58 8 × + + × + × ( ) ( )6

12 1460 58 1 780 58 815.24 msec

10 100válaszSzolgIdő

× + + × + × = = ×

324.3 (0.366 15.24)10 36%

jn j n

üzenetek

U = × SzolgáltatásIdő

−= × + =

∑ λ

Könyvesbolt példa 7.

Milyen lesz a teljesítmény, ha megváltozik a

felhasználók viselkedése és átlagosan 50%-kal többet

keresnek az oldalon?

Átbocsátást és kihasználtságot számolunk.

35,000×3.75 135,000×3.75 136,46

3,600 sec0X = =

01

36.45 0.01371 sec 49.97%sec

WS WSU X D= × = × =

01

36.45 0.024 sec 87.48%sec

DB DBU X D= × = × =

Kritikus!

Szűk keresztmetszet, skálázhatóság

� Szűk keresztmetszet:

o azok az erőforrások, melyek korlátozzák a teljesítményt

o analízis maximális terhelésnél (pesszimista érték)

� Nem mindig kell pontos szám

o Aszimptotikus Határérték Analízis

(Asymptotic Bound Analysis)(Asymptotic Bound Analysis)

� Fogalmak

o K: erőforrások száma

o Di: szolgáltatásigény az i. erőforráson

o Dmax: a legnagyobb szolg. igény

o Dmin: a legkiseb szolg. igény

o λmax: érkezési ráta

Nyílt modellek

� Nincs explicit korlát a rendszerben lévő kérésekre

� Ha az egyensúly teljesül:

� 3 rétegű architektúra példa maxmax

1D

λ ≤

� Mi a szűk keresztmetszet?

� Mennyi a max. áteresztőképesség?

Réteg Szerverek száma Szolg. átl. igénybevétele Átl. s zolg. id őWeb szerver 5 1,8 110 msecAlkalmazás szerver 3 2,5 230 msecDB szerver 2 2,3 180 msec

Egy tipikus E-Business szolgáltatás adatai

Nyílt modellek 2.

1.80.110 0.0396 sec

5

0.192 sec

0.207 sec

WSWS WS

WS

ASAS AS

AS

DBDB DB

DB

VD S

N

VD S

N

VD S

N

= × = × =

= × =

= × =

Az adatbázis szerver a sz űk keresztmetszet

DBN

1 14.83

0.207 sec secλ ≤ =

Tranzakciók max. gyakorisága

0

4.83 szolgáltatás2.1

2.3 secDB

DB

XX

V≤ = =

E-Business szolgáltatások max. gyakorisága (Forced Flow)

Zárt modellek

� Felső korlát a kérések számára vonatkozóan (N)

� Ideális eset: nincs kérés várakozási sorban

( ) ( )

( )

0

1

i

i

U NX N

D

U N

=

≤( )0

max

1X N

D≤

( )0total

NX N

D≤

Little tv.

( )

( )0

1

1i

i

U N

X ND

≤Service Demand tv.

maxD

( )0

1min ,

maxN

X NDtotal D ≤

Zárt modellek 2.

� Példa: az előbbi 3 rétegű architektúraEgyszerre max. 20 kliensnek nyújt szolgáltatást: N = 20

0.0396 sec 0.192 sec 0.207 sec 0.4386 sectotal WS AS DBD D D D= + + = + + =

( ) 20 120 min ,X ≤ ( )

( )

( )

0

0

0

20 min ,0.4386 sec 0.207 sec

1 120 min 45.59 ,4.83

sec sec

120 4.83

sec

X

X

X