Finansije — operacije plaćanja Živi model

Radite u operativnom centru platnog switcha koji stoji između trgovaca i izdavalaca kartica. Svake minute stiže oko 400 transakcija u sekundi; svaka se ocjenjuje na prevaru, čeka slobodan konekcijski slot i prosljeđuje svom izdavaocu na odgovor. Model računa redove čekanja, istekla vremena, ponovne pokušaje klijenata, kompromis filtera prevara i izloženost stand-ina po udžbeničkim formulama. Iznosi su u generičkim novčanim jedinicama (u). Samo edukativna simulacija — nije finansijski, pravni ni investicioni savjet.

Šta ćete naučiti

Simulator

Vrijeme 0 min
Ponuđeno opterećenje (nove + ponovljene) 400 · Ponovni pokušaji 0 · Stopa odobravanja dobrih klijenata 99,9% · Vrijeme autorizacije 330 ms · Zauzeti konekcijski slotovi 69% · Serveri u radu 6 (+0) · Stopa prevara (udio odobrenog iznosa) 10,4 bp · Istekla vremena izdavaoca 0,0% · Izloženost stand-ina 0,00 M uFilter prevarat = 3,00σ✓ 99,9% · ? 0,0% · ✗ 0,1%Zaustavljene prevare 31%Stopa prevara (udioodobrenog iznosa) 10,4 bp400 tx/s · ↻ 0Autorizacijski serveri▶▶▶▶▶▶··················Zauzeti konekcijski slotovi 69%330 ms · ✗ 0,0%Izdavaoci A✓ 250 msIzdavaoci B✓ 250 ms⏱ 8 s · ⌛ 0,0% · Σ 0 uStopa odobravanja dobrih klijenata 99,9%Izloženost stand-ina 0,00 M u
  • Server u radu
  • Server se podiže
  • Slobodno mjesto u rack-u za server
  • Izdavalac odgovara normalno
  • Izdavalac spor ili nedostupan
  • Stand-in obrada uključena
  • Dolazne transakcije

Kontrole

Svaki server ima 32 konekcijska slota. Dodani serveri se podižu 5 minuta; svaki server se naplaćuje, bez obzira na to da li se podiže ili ne.

Prima najviše 90 % kapaciteta, a višak odmah odgovara s „pokušajte ponovo kasnije“, umjesto da ga pusti u red čekanja i da istekne.

Kako trgovci ponavljaju tehničku grešku (do 3 ponovna pokušaja). Odmah = u sljedećoj minuti; backoff = nasumično eksponencijalno čekanje, prosječna kašnjenja 1, 2 i 4 minute.

Transakcije s ocjenom na ovom pragu ili iznad njega se odbijaju. Ocjene su u standardnim devijacijama pravog saobraćaja: niže znači više zaustavljenih prevara i više odbijenih dobrih klijenata.

Ocjene toliko ispod praga dobijaju dodatnu provjeru klijenta umjesto odluke: 85 % pravih klijenata je završi, 5 % prevaranata prođe. 0 = isključeno.

Koliko dugo konekcijski slot čeka odgovor izdavaoca. Nakon toga switch šalje storno i koristi stand-in ili odbija s „izdavalac nedostupan“.

Kad izdavalac ne odgovori na vrijeme, switch odobrava u njegovo ime do ovog iznosa. Svako stand-in odobrenje je izloženost koju izdavalac nikad nije provjerio. 0 = isključeno.

Pokazatelji

Stopa odobravanja dobrih klijenata
99,9%
normalno
Vrijeme autorizacije
330ms
normalno
Stopa prevara (udio odobrenog iznosa)
10,4bp
normalno
Zauzeti konekcijski slotovi
69%
normalno
Stopa odobravanja, zdravi izdavaoci99,9 %
Dobri klijenti odbijeni pravilom za prevare1,3 ‰
Transakcije poslane na step-up0,0 %
Zaustavljene prevare31 %
Nove transakcije400 tx/s
Ponuđeno opterećenje (nove + ponovljene)400 tx/s
Ponovni pokušaji0 tx/s
Odbačeno (odgovoreno „pokušajte kasnije“)0 tx/s
Odbačeno u redu čekanja0,0 %
Istekla vremena izdavaoca0,0 %
Stand-in odobrenja0 tx/s
Serveri u radu6
Serveri se podižu0
Stopa troška servera36 u/h
Dosadašnji trošak servera0 u
Izloženost stand-ina0,00 M u
Dosad odobrene prevare0,00 M u
Dosad izgubljene dobre transakcije0,0 k tx
Transakcije koje čekaju ponovni pokušaj0 tx
Latencija izdavaoca grupe B (prosjek)250 ms

Trend

Stopa odobravanja dobrih klijenata: — %100,00,0

Krizni scenariji

Nivo 1 · Vrhunac rasprodaje

Velika online rasprodaja počinje u 5. minuti i udvostručuje saobraćaj na oko 800 transakcija u sekundi tokom 45 minuta. Switch radi sa 6 servera, dimenzioniranih za običan dan s oko 70 % zauzetosti. Trgovci odmah ponavljaju svaku tehničku grešku. Zadržite dobre klijente odobrenima i odgovore brzima bez kupovine kapaciteta koji vam ne treba.

  • Prosječno odobravanje dobrih klijenata ≥ 95 % od početka rasprodaje
  • Prosječno vrijeme autorizacije ≤ 500 ms
  • Trošak servera ≤ 75 u

Nivo 2 · Talas prevara

U 5. minuti počinje upotreba paketa ukradenih podataka o karticama: udio prevara u saobraćaju skače s 0,1 % na 1 %. Prag odbijanja podešen je za obične dane (3σ), a step-up je isključen. Smanjite stopu prevara bez odbijanja dobrih klijenata.

  • Prosječna stopa prevara ≤ 25 bp
  • Prosječno odobravanje dobrih klijenata ≥ 98 %
  • Dobri klijenti odbijeni pravilom ≤ 5 ‰

Nivo 3 · Kvar izdavaoca

U 5. minuti izdavaoci grupe B — četvrtina cjelokupnog saobraćaja — usporavaju na prosječno vrijeme odgovora od 12 sekundi. Switch čeka odgovor do 8 s, nema stand-in i radi sa 6 servera. Održite protok za klijente zdravih izdavalaca, poslužite grupu B koliko god možete sigurno i držite izloženost stand-ina i trošak pod kontrolom.

  • Prosječno odobravanje za klijente zdravih izdavalaca ≥ 90 %
  • Prosječno odobravanje dobrih klijenata ≥ 86 %
  • Izloženost stand-ina ≤ 9 M u
  • Trošak servera ≤ 65 u

Osnova — model iza brojeva

Svaka relacija koju simulator koristi, s njenim izvorom. Konstante označene kao pretpostavke su ilustrativne kalibracije.

Nove transakcije stižu osnovnom brzinom puta skok prodaje; broj u minuti je slučajan (Poissonov, normalna aproksimacija) uz malo nagomilavanja.
λ(t) = base × surge(t) (2-min lag); count/min ≈ N(60λ, √(60λ)) × (1 + N(0, 0.03))[2]Pretpostavka: broj slotova, vremena obrade i izdavaoca, razdvajanje ocjena, stope prolaza step-upa, udio uzaludnog rada, iznosi i cijene su ilustrativne vrijednosti za srednje veliki switch, a ne podaci nijedne stvarne mreže.
Binormalna ocjena prevare: ocjene pravih i lažnih transakcija su dvije normalne krive udaljene 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 obrade i izdavaoca, razdvajanje ocjena, stope prolaza step-upa, udio uzaludnog rada, iznosi i cijene su ilustrativne vrijednosti za srednje veliki switch, a ne podaci nijedne stvarne mreže.
Troškovno optimalan prag: odbij kad omjer vjerovatnoća premaši omjer troškova ponderisan osnovnom stopom — deset puta više prevara pomjera ga ln 10 / d′ ≈ 0,9σ niže.
decline when e^(d′x − d′²/2) ≥ (1 − π)·c_FP / (π·c_FN) ⇒ t* = [ln((1 − π)c_FP/(π c_FN)) + d′²/2] / d′[8][7]
Step-up: ocjene u pojasu ispod praga se dodatno provjeravaju umjesto da se o njima odluči odmah.
scores in [t − b, t) are challenged: genuine pass 85 %, fraud pass 5 %; scores ≥ t declined[10]Pretpostavka: broj slotova, vremena obrade i izdavaoca, razdvajanje ocjena, stope prolaza step-upa, udio uzaludnog rada, iznosi i cijene su ilustrativne vrijednosti za srednje veliki switch, a ne podaci nijedne stvarne mreže.
Latencija izdavaoca je eksponencijalna; slot je zauzet za latenciju 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]
Littleov zakon: zauzeti slotovi = brzina dolaska × vrijeme zadržavanja.
busy slots = λ·S (Little) ⇒ utilization = λ·S / (32 × servers)[3]
Erlang C: vjerovatnoća da transakcija čeka slobodan slot i vjerovatnoća da čeka duže od isteka reda čekanja 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 switch troši rad i na zahtjeve koje kasnije odbaci, pa korisna propusnost pada 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 obrade i izdavaoca, razdvajanje ocjena, stope prolaza step-upa, udio uzaludnog rada, iznosi i cijene su ilustrativne vrijednosti za srednje veliki switch, a ne podaci nijedne stvarne mreže.
Ponovni pokušaji klijenta: svaka tehnička greška ponavlja se do tri puta, odmah ili s nasumičnim eksponencijalnim čekanjem.
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 obrade i izdavaoca, razdvajanje ocjena, stope prolaza step-upa, udio uzaludnog rada, iznosi i cijene su ilustrativne vrijednosti za srednje veliki switch, a ne podaci nijedne stvarne mreže.
Istek vremena izdavaoca, storno i stand-in: iznosi su lognormalni, pa udio ispod limita i odobreni obim slijede iz normalne CDF.
issuer timeout → reversal; stand-in approves if amount ≤ limit: P = Φ((ln L − μ)/σ), volume = e^(μ+σ²/2)·Φ((ln L − μ − σ²)/σ)[9][11]
Stopa prevara u baznim bodovima odobrenog iznosa; 13 bp koristi se kao referentna skala za male udaljene kartične plaćanja.
fraud rate = approved fraud amount / approved amount × 10,000 bp (reference scale: 13 bp)[10]
Ostale radne konstante koje model koristi.
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 obrade i izdavaoca, razdvajanje ocjena, stope prolaza step-upa, udio uzaludnog rada, iznosi i cijene su ilustrativne vrijednosti za srednje veliki switch, a ne podaci nijedne stvarne mreže.

Nasumičnost: mulberry32 generator sa seedom; korištene raspodjele — uniformna, eksponencijalna (inverzna CDF), normalna (Box–Muller), Poissonova (Knuth). Seed se prikazuje i može se dijeliti.

Izvori

  1. Teletraffic Engineering Handbook — Erlang C formula; waiting-time distribution for M/M/n, FCFS — ITU-D Study Group 2 Question 16/2 (V. B. Iversen), 2005
  2. M. Harchol-Balter — Performance Modeling and Design of Computer Systems: Queueing Theory in Action (M/M/k, capacity provisioning) — Cambridge University Press, 2013
  3. J. D. C. Little — A Proof for the Queuing Formula: L = λW — Operations Research 9(3):383–387, 1961
  4. Site Reliability Engineering — Ch. 22 Addressing Cascading Failures (retries, randomized exponential backoff, load shedding, work on requests past their deadline) — Beyer, Jones, Petoff, Murphy (eds.), O'Reilly, 2016
  5. N. Bronson, A. Aghayev, A. Charapko, T. Zhu — Metastable Failures in Distributed Systems — HotOS ’21, ACM, 2021
  6. T. Fawcett — An introduction to ROC analysis — Pattern Recognition Letters 27(8):861–874, 2006
  7. R. J. Bolton, D. J. Hand — Statistical Fraud Detection: A Review — Statistical Science 17(3):235–255, 2002
  8. C. Elkan — The Foundations of Cost-Sensitive Learning — IJCAI 2001, 2001
  9. ISO 8583-1:2003 Financial transaction card originated messages — Interchange message specifications — Part 1 (authorization, reversal messages) — ISO/TC 68/SC 9, 2003
  10. Commission Delegated Regulation (EU) 2018/389 — RTS on strong customer authentication, Annex: reference fraud rates (0.13 % for remote card payments up to EUR 100) — Official Journal of the European Union, 2018
  11. N. L. Johnson, S. Kotz, N. Balakrishnan — Continuous Univariate Distributions, Vol. 1 (lognormal distribution, partial moments) — Wiley, 1994

Ko se time bavi profesionalno

Edukativni model — nije za operativne odluke. Stvarni objekti kalibriraju svaku konstantu prema vlastitoj opremi i podacima.