💳 Finansije — operacije platnog komutatora Živi model
Radite na operativnom pultu platnog komutatora koji stoji između trgovaca i izdavalaca kartica. Svakog minuta stiže oko 400 transakcija u sekundi; svaka se ocenjuje na prevaru, čeka slobodan slot za vezu i prosleđuje izdavaocu radi odgovora. Model iz udžbeničkih formula izračunava redove čekanja, istek vremena, ponovne pokušaje klijenata, kompromis protivprevarnog filtera i izloženost zamenskog odobravanja. Iznosi su u generičkim novčanim jedinicama (n.j.). Samo obrazovna simulacija — nije finansijski, pravni niti investicioni savet.
Šta ćete naučiti
Zašto ponovni pokušaji mogu da zaključaju preopterećen komutator u oluji ponovnih pokušaja čak i posle dodavanja kapaciteta — i kako odbacivanje opterećenja prekida petlju.
Kako prag ocene prevare menja gubitke od prevare za odbijene dobre klijente i zašto pravi prag zavisi od osnovne stope prevare.
Kako jedan spori izdavalac puni sve slotove za vezu (Litlov zakon) i koliko koštaju istek vremena i zamenska obrada.
Simulator
Vreme 0 min
▶Server u radu
⚙Server se pokreće
·Slobodno mesto za server u ormaru
✓Izdavalac odgovara normalno
⌛Izdavalac spor ili nedostupan
⇄Zamenska obrada uključena
•Dolazne transakcije
Kontrole
Svaki server ima 32 slota za vezu. Dodati serveri se pokreću 5 minuta; svaki server se naplaćuje, bez obzira da li se pokreće ili ne.
Prima najviše 90 % kapaciteta i višak odmah odbija odgovorom „pokušajte kasnije”, umesto da ga pusti da čeka u redu i istekne.
Kako trgovci ponavljaju tehničku grešku (do 3 ponovna pokušaja). Odmah = u narednom minutu; odlaganje = nasumično eksponencijalno odlaganje, prosečna kašnjenja 1, 2 i 4 minuta.
Transakcije sa ocenom na ovom nivou ili višom se odbijaju. Ocene su u standardnim devijacijama pravog saobraćaja: niže znači više zaustavljene prevare i više odbijenih dobrih klijenata.
Ocene toliko ispod praga dobijaju dodatnu proveru klijenta umesto odluke: 85 % pravih klijenata je završi, 5 % prevaranata prođe. 0 = isključeno.
Koliko dugo slot za vezu čeka odgovor izdavaoca. Posle toga komutator šalje storno i koristi zamensko odobravanje (stand-in) ili odbija sa porukom „izdavalac nedostupan”.
Kada izdavalac ne odgovori na vreme, komutator odobrava u njegovo ime do ovog iznosa. Svako zamensko odobrenje je izloženost koju izdavalac nikada nije proverio. 0 = isključeno.
Pokazatelji
Stopa odobravanja dobrih klijenata
99,9%
normalno
Vreme autorizacije
330ms
normalno
Stopa prevare (udeo odobrenog iznosa)
10,4bp
normalno
Zauzeti slotovi za vezu
69%
normalno
Stopa odobravanja, ispravni izdavaoci
99,9 %
Dobri klijenti odbijeni protivprevarnim pravilom
1,3 ‰
Transakcije poslate na dodatnu proveru
0,0 %
Zaustavljena prevara
31 %
Nove transakcije
400 tx/s
Ponuđeno opterećenje (nove + ponovljene)
400 tx/s
Ponovni pokušaji
0 tx/s
Odbačeno (odgovor „pokušajte kasnije”)
0 tx/s
Odbačeno u redu
0,0 %
Istek vremena izdavalaca
0,0 %
Zamenska odobravanja
0 tx/s
Serveri u radu
6
Serveri se pokreću
0
Brzina troška servera
36 u/h
Dosadašnji trošak servera
0 u
Izloženost zamenskog odobravanja
0,00 M u
Dosad odobrena prevara
0,00 M u
Dosad izgubljene dobre transakcije
0,0 k tx
Transakcije koje čekaju ponovni pokušaj
0 tx
Kašnjenje izdavalaca grupe B (prosek)
250 ms
Trend
Krizni scenariji
Nivo 1 · Vrhunac rasprodaje
Velika onlajn rasprodaja počinje u 5. minutu i udvostručuje saobraćaj na oko 800 transakcija u sekundi tokom 45 minuta. Komutator radi na 6 servera, dimenzionisanih za običan dan sa oko 70 % zauzetosti. Trgovci ponavljaju svaku tehničku grešku odmah. Zadržite odobravanje dobrih klijenata i brze odgovore, a da ne kupujete kapacitet koji vam ne treba.
Prosečno odobravanje dobrih klijenata ≥ 95 % od početka rasprodaje
Prosečno vreme autorizacije ≤ 500 ms
Trošak servera ≤ 75 n.j.
Nivo 2 · Talas prevara
U 5. minutu počinje upotreba serije ukradenih podataka o karticama: udeo prevare u saobraćaju skače sa 0,1 % na 1 %. Prag odbijanja je podešen za obične dane (3σ), a dodatna provera je isključena. Smanjite stopu prevare bez odbijanja dobrih klijenata.
Prosečna stopa prevare ≤ 25 bp
Prosečno odobravanje dobrih klijenata ≥ 98 %
Dobri klijenti odbijeni pravilom ≤ 5 ‰
Nivo 3 · Ispad izdavaoca
U 5. minutu izdavaoci grupe B — četvrtina celog saobraćaja — usporavaju na prosečno vreme odgovora od 12 sekundi. Komutator čeka odgovor do 8 s, nema zamensko odobravanje i radi sa 6 servera. Održite protok klijenata ispravnih izdavalaca, uslužite grupu B koliko možete bezbedno i držite pod kontrolom izloženost zamenskog odobravanja i trošak.
Prosečno odobravanje za klijente ispravnih izdavalaca ≥ 90 %
Prosečno odobravanje dobrih klijenata ≥ 86 %
Izloženost zamenskog odobravanja ≤ 9 M n.j.
Trošak servera ≤ 65 n.j.
Osnova — model iza brojeva
Svaka relacija koju simulator koristi, sa izvorom. Konstante označene kao pretpostavke su ilustrativne kalibracije.
Nove transakcije stižu osnovnom brzinom pomnoženom skokom prodaje; broj u minutu je nasumičan (Puasonov, normalna aproksimacija) uz malo naletnosti.
λ(t) = base × surge(t) (2-min lag); count/min ≈ N(60λ, √(60λ)) × (1 + N(0, 0.03))[2]Pretpostavka: broj slotova, vremena usluživanja i izdavaoca, razdvajanje ocena, stope prolaska dodatne provere, udeo uzaludnog rada, iznosi i cene su ilustrativne vrednosti za komutator srednje veličine, a ne podaci bilo koje stvarne mreže.
Binormalna ocena prevare: ocene pravih i lažnih transakcija su dve normalne krive na rastojanju d′; prag bira tačku na ROC krivoj.
genuine score ~ N(0,1), fraud ~ N(d′,1), d′ = 2.5; FPR(t) = 1 − Φ(t), TPR(t) = 1 − Φ(t − d′); AUC = Φ(d′/√2) ≈ 0.96[6][7]Pretpostavka: broj slotova, vremena usluživanja i izdavaoca, razdvajanje ocena, stope prolaska dodatne provere, udeo uzaludnog rada, iznosi i cene su ilustrativne vrednosti za komutator srednje veličine, a ne podaci bilo koje stvarne mreže.
Troškovno optimalni prag: odbij kada odnos verodostojnosti premaši odnos troškova ponderisan osnovnom stopom — deset puta češća prevara pomera ga za ln 10 / d′ ≈ 0,9σ niže.
Dodatna provera: ocene u opsegu ispod praga se proveravaju umesto da se o njima odlučuje.
scores in [t − b, t) are challenged: genuine pass 85 %, fraud pass 5 %; scores ≥ t declined[10]Pretpostavka: broj slotova, vremena usluživanja i izdavaoca, razdvajanje ocena, stope prolaska dodatne provere, udeo uzaludnog rada, iznosi i cene su ilustrativne vrednosti za komutator srednje veličine, a ne podaci bilo koje stvarne mreže.
Kašnjenje izdavaoca je eksponencijalno; slot je zauzet koliko traje kašnjenje ili istek vremena, šta god nastupi prvo.
L ~ Exp(mean m); E[min(L, T)] = m(1 − e^(−T/m)), P(L > T) = e^(−T/m); S = 80 ms + forwarded × Σ share·E[min(L,T)][2][9]
Litlov zakon: zauzeti slotovi = brzina dolazaka × vreme zadržavanja.
Erlang C: verovatnoća da transakcija čeka slobodan slot i verovatnoća da čeka duže od isteka reda od 2 s.
P(W > 2 s) = C(a, N)·e^(−(N/S − λ)·2 s), a = λS; mean wait = C / (N/S − λ)[1][2]
Iznad kapaciteta komutator troši rad i na zahteve koje kasnije odbaci, pa korisna propusnost opada kako opterećenje raste; odbacivanje opterećenja jeftino odbija višak.
λ ≥ N/S: goodput = (N/S − ω·λ)/(1 − ω), ω = 0.3; load shedding admits ≤ 0.9·N/S and answers the rest at once[4][5]Pretpostavka: broj slotova, vremena usluživanja i izdavaoca, razdvajanje ocena, stope prolaska dodatne provere, udeo uzaludnog rada, iznosi i cene su ilustrativne vrednosti za komutator srednje veličine, a ne podaci bilo koje stvarne mreže.
Ponovni pokušaji klijenata: svaka tehnička greška se ponavlja do tri puta, odmah ili sa nasumičnim eksponencijalnim odlaganjem.
failed attempt → retry with p = 0.95, ≤ 3 retries; immediate: next minute; backoff: delay ~ Exp(mean 1, 2, 4 min)[4][5]Pretpostavka: broj slotova, vremena usluživanja i izdavaoca, razdvajanje ocena, stope prolaska dodatne provere, udeo uzaludnog rada, iznosi i cene su ilustrativne vrednosti za komutator srednje veličine, a ne podaci bilo koje stvarne mreže.
Istek vremena izdavaoca, storno i zamensko odobravanje: iznosi su lognormalni, pa udeo ispod granice i odobreni obim slede iz normalne funkcije raspodele.
issuer timeout → reversal; stand-in approves if amount ≤ limit: P = Φ((ln L − μ)/σ), volume = e^(μ+σ²/2)·Φ((ln L − μ − σ²)/σ)[9][11]
Stopa prevare u baznim poenima odobrenog iznosa; 13 bp se koristi kao referentna skala za malih udaljenih plaćanja karticom.
32 slots per server, 2–24 servers, +5 min boot, 6 u per server-hour · switch time 80 ms · queue timeout 2 s · issuer latency 250 ms (group B = 25 % of traffic, ±15 % per minute) · amounts lognormal, median 40 u, σ = 1, fraud ×1.5 · ω = 0.3 · shedding at 90 % · reversal = 80 ms of switch timePretpostavka: broj slotova, vremena usluživanja i izdavaoca, razdvajanje ocena, stope prolaska dodatne provere, udeo uzaludnog rada, iznosi i cene su ilustrativne vrednosti za komutator srednje veličine, a ne podaci bilo koje stvarne mreže.
Nasumičnost: seedovan generator mulberry32; korišćene raspodele — uniformna, eksponencijalna (inverzna CDF), normalna (Box–Muller), Poasonova (Knuth). Seed je prikazan i može se deliti.
M. Harchol-Balter — Performance Modeling and Design of Computer Systems: Queueing Theory in Action (M/M/k, capacity provisioning) — Cambridge University Press, 2013