11. gyaorlat: VoIP átvitel; Forgalmi méretezés O.11.1. Késleltetése a VoIP átvitel során Azt, hogy mennyi beszédszegmenst tudun egy csomagba tenni, a beszédmintá ésleltetéséne maximális megengedett értée határozza meg. (Ez 10ms 200ms, irodalmi forrástól és használati módtól függően). A befolyásoló tényező a szegmenshossz (t sz ), az, hogy mennyi szegmenst paolun egy csomagba (n = t p /t sz ), a ódoló műödési sebességéből adódó ésleltetés (p d ), a csomag-továbbítási idő (T) (pl. amíg az első csomagot megérezettne teinthetjü a deódoláshoz), a jelterjedésből faadó ésleltetés (), a vevő oldali sorbanállási (t r ), valamint icsomagolási ésleltetés (p d ). Ha egy csomagban n beszédszegmens van, aor a ésleltetés: = n t sz + p d + T + + t r + p d O.11.2. Hagyományos tömegiszolgálás-elmélet A távözlési hálózato és erőforráso tervezéséne folyamatát megönnyítő tömeg-iszolgálási és sorbanállási elmélete az élet számos területére beszivárogta. Itt csa eze első jelentős épviselőivel, az ú.n. Erlang formuláal foglalozun. Az Erlang B-formula anna a számítására szolgál, hogy ha egy adott (nagy) soaságú felhasználótömeg által felajánlott forgalom iszolgálásához bizonyos számú iszolgáló egységet (pl. szerver, beszédáramör, bani pénztáros, stb.) tudun alalmazni, aor mennyi lesz a bloolási valószínűség, azaz anna a valószínűsége, hogy egy felhasználó nem jut azonnal iszolgálóhoz. Az Erlang C-formula segítségével ezzel szemben anna a valószínűségét tudju iszámolni, hogy a felhasználóna váraoznia ell a iszolgálásra. gyaorlatban enne a számításához a felajánlott forgalom és a iszolgáló száma mellett még olyan összetevőet is figyelembe veszne, mint az átlagos és maximális váraozási idő. A formulában A a felajánlott forgalom, N pedig a iszolgáló száma. Az előadáson a formulá így szerepelte: A felajánlott forgalmat a hívásintenzitás és az átlagos tartási idő szorzataént számíthatju: A = h. 1
Itt h az átlagos tartási idő, pedig a hívásintenzitás, azaz adott idő alatt indított híváso száma. A mértéegységere csa az a szabály van, hogy az idődimenzió egyezzene. A felajánlott forgalom mértéegysége erlang (E). Egy iszolgáló átlagos ihasználtsága így számítható: a = A/N [1-P B ]. A iszolgálás időtartamána (pl. híváshossza..) eloszlását jó özelítéssel számíthatju az exponenciális eloszlás eloszlásfüggvényével: 2
P.11.1. VoIP sávszélesség tervezés -alapozás VoIP-átviteli megvalósításunhoz a G.723.1 ode.3bps bitsebességű változatát (ACELP, Algebraic Code Excited Linear Prediction) használju. Ennél a odenél egy beszédszegmens mérete: l p = 20 byte; egy csomagba egy beszédszegmenst csomagolun. Tudju emellett, hogy az átvitel során használt csomagfejrésze önmaguban (a beszédszegmense nélül) 7 byte-ot teszne i. a) Mennyi a beszéd csomagsebessége? b) Mennyi a hívásonénti sávszélesség? Megoldás: a) Mennyi a beszéd csomagsebessége? Egy csomagban a hasznos adato mérete: n l p = 20 byte. (n= 1 esetünben) Ebből a nyers beszéd csomagsebessége =.3bit/s / 20 8bit = 33.12 pps (pacet per second), azaz a ode ilyen sebességgel adja i magából az adatoat. b) A teljes csomag, mindenféle fejrészeel: 7byte + 20 byte = 7 byte. A hívásonénti sávszélesség: B c = 7 8 [bit/pacet] 33.12 pps = 17.7bit/s. P.11.2. VoIP sávszélesség tervezés icsit részletesebben Cégün egyi telephelyére hagyományos telefon-alözpont helyett VoIP megvalósítást választun. Ismerjü a övetező ritériumoat: Kode: G.729 Egy beszédminta mérete: l p = byte Egy beszédminta szegmens hossza: t p = ms A ódolási és csomagolási ésleltetés csomagonént az adó és a vevő oldalon is egyaránt: d p = ms Tudju emellett, hogy a csomagfejrésze a övetező többlet-információval terheli a beszédinformációt hordozó csomagoat: Layer2 alagutazás (tunneling) overhead (CRC-t is tartalmazza): byte IP header: 20 byte UDP header: 8 byte RTP header: 12 byte (Frame flag: 1 byte) A vevő oldalon a sorbanállási ésleltetés nem haladja meg a ms-t. a) Meora a forrássebesség? b) Mennyi a beszéd csomagsebessége? c) Mennyi a hívásonénti sávszélesség? d) Hogyan módosul ez, ha a hívásfelépítési/arbantartási vezérlőüzenete miatt még további % forgalmi terheléssel számolun? Megoldás: a) A forrássebesség a ode adatai alapján: v s = l p / t p = (8 )bit / 0,01s = 8 bit/s b) Először is tisztázzu, mennyi beszédszegmens fér egy csomagba úgy, hogy nem lépjü túl a ésleltetési ívánalmaat! Ha egy csomagban n beszédszemens van, aor a ésleltetés (lásd a bevezetőben is): = n t sz + p d + T + + t r + p d A szegmenshossz (t sz =ms) adott. A ódoló műödéséből és a csomagolásból (tömörítés, loo-ahead, ) adódó ésleltetés (pacetizing delay) további p d = ms, csomagonént. 3
A csomagtovábbítási idő ennél már 2.08Mbps előfizetői hozzáférési vonalon is egy nagyságrenddel isebb (b. 0 byte-os csomagoal számolva - miért eorával!? - is T0. ms-os értéet apun). A jelterjedési időből adódó ésleltetés nem elhanyagolható mértéű. Üvegszálban cca. 200 000 m/s. A Föld legtávolabbi pontjára 20 000 m a ésleltetés =0 ms, más érdés, hogy nem ezzel a worst case-el szota számolni (inább 70ms). A vevő oldali ésleltetésre (t r ) a sorbanállás (max. ms-ra szota tervezni), valamint a icsomagolás (p d ) miatt ell számítani. Eze alapján [ms] = n + + 0. + 0 + + = n + 120. Ha a ésleltetésre adott 10 ms-os orlátot be szeretnén tartani, aor n = 2 beszéd-szegmenset tudun egy csomagba csomagolni (de aár 3 is beleférhetne, ha szélsőségesen tervezün). Így teszne a G.729-et használó gyártó is. Egy csomagban a hasznos adato mérete: n l p = 20 byte. Ebből a nyers beszéd csomagsebessége = 8bit/s / 20 8bit = 0 pps (pacet per second), azaz a ode ilyen sebességgel adja i magából az adatoat. c) A teljes csomag, mindenféle fejrészeel: 7byte + 20 byte = 7 byte. A hívásonénti sávszélesség: B c = 7 8 [bit/pacet] 0 pps = 2,8bit/s. d) Tanultu, hogy (főleg) a hívásfelépítési/arbantartási vezérlőüzenete miatt még további b. % forgalmi terheléssel érdemes számolni. A hívásonénti valódi sávszélesség-igény (+%): 28,1 bit/s P.11.3 A tartási idő eloszlása A híváso hány százaléa után fizetne 30, 0, 90, illetve annál több forintot azo, ai olyan tarifacsomagot választotta, amiben minden megezdett percért 30 forintot ell fizetni, ha tudju, hogy az ő beszélgetései átlagos tartási ideje 2 perc? (A híváshossza eloszlása nagyon jó özelítéssel exponenciálisna teinthető.) Megoldás Ha a híváshossza eloszlása exponenciálisna teinthető, és átlagu 2 perc, aor a percet véve alapegységént az eloszlás paramétere: = 0.. Az exponenciális eloszlás eloszlásfüggvénye: 30 forintot aor fizet valai, ha megezdte a hívást, és evesebb, mint 1 percet telefonált eor a behelyettesítendő változó x = 1. F exp (x=1) = 0.393, azaz a hívást indító 39.3%-a így jár. 0 forintot az 1 és 2 perc özötti hosszúságú hívást bonyolító fizetne: F exp (x=2) F exp (x=1) = 0.321 0.393 = 0.238, azaz a híváso 23.8%-át érinti ez. 90 forintot a 2 és 3 perc özötti hosszúságú hívást bonyolító fizetne: F exp (x=3) F exp (x=2) = 0.779 0.321 = 0.18, azaz a híváso 1.8%-a ilyen. Több, mint 90 forintot 1 F exp (x=3) = 0.2231, azaz a telefonáláso 22.31%-áért fizetne. P.11.. Az Erlang B formula és diagram bevezetéséhez Egy szerver állomáshoz a liense a nyilvános telefonhálózaton eresztül csatlaozhatna. Egy forgalmas órában átlagosan 120 hívás érezi és egy-egy hívás iszolgálásána várható értée 20 perc. a) Meora a felajánlott forgalom? b) Hány telefonos interfészre van szüség, ha azt aarju, hogy a foglaltság valószínűsége ne haladja meg a 2%-ot? c) Hány %-os egy interfész ihasználtsága?
d) Meora az egyidejűleg foglalt interfésze darabszámána várható értée? Megoldás: a) A felajánlott forgalmat a hívásintenzitás és az átlagos tartási idő szorzataént számíthatju: A = h. A feladatban a felajánlott forgalom: A = h = 20 [perc] 2 [1/perc] = 0 erlang. b) A feladat megoldásához használju az Erlang B diagramoat. A 2% bloolási valószínűség görbéje a 0 erlangos vonalat 0 alatt metszi tehát legalább 0 iszolgáló (telefonos interfész) ell. Megjegyezhetjü, hogy ha E1-es vonalaban gondolozun, aor 2 étirányú E1-re van szüségün (ez tipiusan 0 beszédcsatorna). c) Egy interfész átlagos ihasználtsága a = A/N [1-P B ] itt N a iszolgáló száma, esetünben 1, P B a bloolási valószínűség, esetünben 2%. Azaz: a = 0 / 0 [1-0.02] = 0.78. Az átlagos ihasználtság tehát 78.% (bő háromnegyed-gőzzel megy átlagosan). d) Ha egy interfész átlagos ihasználtsága 78.% és van 0 ( vagy aármennyi ) ilyen interfészün, aor a so független, átlagos ihasználtságú interfész alotta rendszer átlagos ihasználtsága is 78.% lesz. Az 0 interfészből egyidejűleg várhatóan 0 0.78, azaz 0 lesz foglalt. ( Milyen érdees, hogy számszailag ez megegyezi a felajánlott forgalommal. ) P.11.. Hívástartási valószínűség és Erlang B még egyszer Egy tömegiszolgáló rendszerben (ahol a felhasználó száma jóval nagyobb a iszolgáló egysége számánál) méréseel megállapítottu, hogy a hívásintenzitás értée a forgalmas órában 2.8 hívás félpercenént, valamint hogy a másfél percnél hosszabb ideig tartó híváso gyaorisága (előfordulási valószínűsége) 0.. a) Meora a felajánlott forgalom? b) Hány iszolgáló egységet ell telepíteni, ha a torlódás valószínűsége nem haladhatja meg a 0.01% szintet? c) Mennyi lesz így a rendszer átlagos ihasználtsága?
Megoldás Többféleéppen megoldhatju a feladatot csa figyeljün a dimenzió egyeztetésére! Egy hagyományos megoldás: a) Perces időalappal számolva az exponenciális eloszlás 1. perc feletti maradéát : 1 F exp (x=1.) = e - 1. = 0., amiből - 1. = ln 0. = - 0.8 = 0.30 A felajánlott forgalom: A = h i - ahol a i a hívásintenzitás - nem ugyanaz, mint az exp. eloszlás paramétere - semmi özü egymáshoz!! Képletszerűen véletlenül mindettőre ugyanazzal a betűvel hivatozun de nem a épleteet sulyolju, ugye, hanem a jelentésüet. (Könnyítésül itt önhatalmúan i indexet használo). i = 2.8 / 0.perc =.9 hívás percenént. Itt h az átlagos tartási idő, ami épp az exp. eloszlás várható értééne reciproa, azaz h = 2.9 perc (mivel ilyen időalappal számoltun). Ezeből A = 2.9 [perc].9 [1/perc] = 1.8 erlang. (Megj: 1. perces, vagy bármi más időalappal számolva ugyanez jön i, csa jól ell egyeztetnün.) b) A iszolgáló egysége száma (a 0.01%-nál isebb bloolási valószínűséghez) legalább 31. Megjegyezhetjü, hogy ha E1-es vonalaban gondolozun, aor hivatalosan nem elegendő egyetlen étirányú E1 a maga 30 beszédcsatornájával. Ellenben mérnöö vagyun ( leszün ), így más tényező figyelembevételével (pl. ár/érté arány) iegyezhetün egy étirányú E1-ben. c) A rendszer (vagy aár) egy interfész átlagos ihasználtsága a = A/N [1 P B ] itt N a iszolgáló száma, esetünben 31, P B a bloolási valószínűség, esetünben 0.01%. Azaz: a = 1.8 / 31 [1-0.0001] = 0.703. Az átlagos ihasználtság tehát 7.03% - ami jóval evesebb, mint a orábbi példában. Ez a bloolási valószínűségre adott szigorúbb övetelményne öszönhető.
P.11. Kiszolgáló számána tervezése Egy új banfió tervezésénél arra számítana, hogy a banban óránént 0 ügyfél fordul majd meg, és átlagosan mindenivel 1 percet foglalozi az illetées ügyintéző. Mennyi ügyintézőne ell helyet biztosítani, ha a vezetés azt a szoatlan módszert és minőségi mutatót szeretné bevezetni és betartani, hogy nincs váraozásra lehetőség, és több ügyfélne ell úgy éreznie a banba, hogy azonnal iszolgáljá, mint olyanna, ai nem talál magána iszolgálót. Megoldás A felajánlott forgalom: A = h i. Itt h=0.2 óra (negyedóra), i =0/óra. Ebből a felajánlott forgalom: A= erlang. Ebben az esetben a bloolási valószínűséget Erlang B épleténe segítségével határozhatju meg: P ( A) N N A N! A N 0! Itt N a iszolgáló száma, A pedig a felajánlott forgalom. A feladat szerint P N (A)<0. adott, de az Erlang B reverz éplet számolása macerás. Most emiatt szemléltessü a megoldást a nyers erő módszerével, próbálozzun iszolgálóval. P 1 2 3 ( )! 0 1 2 3 0. 7 0! 1 1! 2! 3!! Ez tehát.7%-os bloolás, azaz az ügyfele majd 2/3-a váraozni észül. Több ügyintéző ell. Nézzü tovább a brute force számolást. (Ha megvanna a részeredménye, aor nem annyira brutális ) P 1 2 3 ( )! 0 1 2 3 0. 0! 1 1 2 3!!! Ez.%-os bloolás, azaz ha biztosan pontosa a iindulási adato, aor nem elég iszolgáló. Még egy asztalt ell vennün, és nagyobb irodahelyiséget? P 1 2 3 ( )! 0 1 2 3 0. 8 0! 1 1 2 2 120 720 Ezzel el is éreztün a megoldáshoz: iszolgálóval már 0% alatt lehet tartani a erlangos forgalom bloolását. (Ugyanez icsit erőltetetten mondható el mai telefonos példával mert már nem nagyon vanna ennyire türelmes előfizetőel műödő bloolásos rendszere. Elég csa ránézni az Erlang B diagramoon megjelenített bloolási valószínűség-görbére. Ha valaine van edve/ideje, felvezethet műszai bloolás-igényehez özelibb példát, 3 erlang forgalommal, és szerverrel; itt a bloolási valószínűség.22%-ra jött i. Több szerverrel, vagy nagyobb forgalmaal számolni értelemszerűen nem nagyon lehet fejben.) 7