金融——支付運營 即時模型

你在一台支付交換機的運營台工作,這台交換機位於商戶和發卡行之間。每一分鐘,交易以每秒約 400 筆的速度到達;每筆都會被評估欺詐分數,等待空閒的連線槽位,再轉發給其發卡行取得回應。模型按教科書公式計算排隊、逾時、客戶端重試、欺詐篩查的取捨,以及代批的風險敞口。金額以通用貨幣單位(u)計。僅為教育模擬——並非財務、法律或投資建議。

你會學到甚麼

模擬器

時間 0 min
提供的負載(新交易 + 重試) 400 · 重試 0 · 正常客戶批准率 99.9% · 授權時間 330 ms · 忙碌的連線槽位 69% · 服務中的伺服器 6 (+0) · 欺詐率(佔批准金額的比例) 10.4 bp · 發卡行逾時 0.0% · 代批風險敞口 0.00 M u欺詐篩查t = 3.00σ✓ 99.9% · ? 0.0% · ✗ 0.1%已攔截的欺詐 31%欺詐率(佔批准金額的比例) 10.4 bp400 tx/s · ↻ 0授權伺服器▶▶▶▶▶▶··················忙碌的連線槽位 69% · 330 ms✗ 0.0%A 組發卡行✓ 250 msB 組發卡行✓ 250 ms⏱ 8 s · ⌛ 0.0% · Σ 0 u正常客戶批准率 99.9% · 代批風險敞口 0.00 M u
  • 伺服器服務中
  • 伺服器啓動中
  • 空置的伺服器機櫃位置
  • 發卡行回應正常
  • 發卡行緩慢或停機
  • 代批處理已開啓
  • 傳入交易

控制項

每台伺服器有 32 個連線槽位。新增的伺服器需 5 分鐘啓動;每台伺服器不論是否在啓動都要計費。

最多接納 90 % 的容量,對超出部分立即回覆「請稍後再試」,而不是讓它們排隊後逾時。

商戶如何重試技術故障(最多 3 次)。立即 = 在下一分鐘重試;退避 = 隨機指數退避,平均延遲 1、2 和 4 分鐘。

分數達到或高於此值的交易會被拒絕。分數以真實交易的標準差為單位:值越低,攔截的欺詐越多,被拒絕的正常客戶也越多。

分數比閾值低這麼多的交易,會被要求額外的客戶驗證,而不是直接決定:85 % 的真實客戶能完成,5 % 的欺詐者能通過。0 = 關閉。

連線槽位等待發卡行回應的時間。逾時後,交換機會發出沖正,並使用代批,或以「發卡行無法連線」拒絕。

當發卡行未能及時回應,交換機會代其批准至此金額。每一筆代批都是發卡行從未核實過的風險敞口。0 = 關閉。

指標

正常客戶批准率
99.9%
正常
授權時間
330ms
正常
欺詐率(佔批准金額的比例)
10.4bp
正常
忙碌的連線槽位
69%
正常
批准率(正常運作的發卡行)99.9 %
被欺詐規則拒絕的正常客戶1.3 ‰
送去加強驗證的交易0.0 %
已攔截的欺詐31 %
新交易400 tx/s
提供的負載(新交易 + 重試)400 tx/s
重試0 tx/s
已丟棄(回覆「稍後再試」)0 tx/s
隊列中被丟棄0.0 %
發卡行逾時0.0 %
代批0 tx/s
服務中的伺服器6
啓動中的伺服器0
伺服器成本率36 u/h
迄今伺服器成本0 u
代批風險敞口0.00 M u
迄今被批准的欺詐0.00 M u
迄今損失的正常交易0.0 k tx
等待重試的交易0 tx
B 組發卡行延遲(平均)250 ms

趨勢

正常客戶批准率: — %100.00.0

危機情景

第 1 級 · 促銷高峰激增

一場大型網上促銷在第 5 分鐘開始,並在 45 分鐘內把流量增加一倍,達約 800 筆交易每秒。交換機運行 6 台伺服器,按平常日約 70 % 忙碌度配置。商戶會對每個技術故障立即重試。要讓正常客戶保持獲批准、回應快速,同時不買多餘的容量。

  • 促銷開始後,正常客戶平均批准率 ≥ 95 %
  • 平均授權時間 ≤ 500 ms
  • 伺服器成本 ≤ 75 u

第 2 級 · 欺詐浪潮

第 5 分鐘,一批被盜的信用卡資料開始被使用:流量中的欺詐比例由 0.1 % 跳升至 1 %。拒絕閾值是按平常日設定的(3σ),加強驗證則是關閉的。要降低欺詐率,同時不拒絕正常客戶。

  • 平均欺詐率 ≤ 25 bp
  • 正常客戶平均批准率 ≥ 98 %
  • 被規則拒絕的正常客戶 ≤ 5 ‰

第 3 級 · 發卡行故障

第 5 分鐘,B 組發卡行(佔全部流量的四分之一)的平均回應時間減慢至 12 秒。交換機最多等待回應 8 s,沒有代批,並運行 6 台伺服器。要讓正常運作的發卡行的客戶保持暢通,在安全範圍內盡量服務 B 組,並控制代批風險敞口和成本。

  • 正常運作發卡行的客戶平均批准率 ≥ 90 %
  • 正常客戶平均批准率 ≥ 86 %
  • 代批風險敞口 ≤ 9 M u
  • 伺服器成本 ≤ 65 u

依據:數字背後的模型

模擬器使用的每一個關係式及其來源。標示為假設的常數是示意校準值。

新交易按基礎速率乘以促銷激增倍數到達;每分鐘的數量是隨機的(泊松分布,常態近似),並帶少許突發性。
λ(t) = base × surge(t) (2-min lag); count/min ≈ N(60λ, √(60λ)) × (1 + N(0, 0.03))[2]假設:槽位數量、服務和發卡行時間、分數分離度、加強驗證通過率、無用功比例、金額和價格,均為中型交換機的示意數值,並非任何真實網絡的數字。
雙常態欺詐分數:正常交易和欺詐交易的分數是兩條相距 d′ 的常態曲線;閾值是在 ROC 曲線上選一個點。
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]假設:槽位數量、服務和發卡行時間、分數分離度、加強驗證通過率、無用功比例、金額和價格,均為中型交換機的示意數值,並非任何真實網絡的數字。
成本最優閾值:當似然比超過按基礎比率加權的成本比時就拒絕——欺詐頻率增加十倍,會使閾值下移 ln 10 / d′ ≈ 0.9σ。
decline when e^(d′x − d′²/2) ≥ (1 − π)·c_FP / (π·c_FN) ⇒ t* = [ln((1 − π)c_FP/(π c_FN)) + d′²/2] / d′[8][7]
加強驗證:分數落在閾值以下區間內的交易,會被要求驗證,而不是直接作決定。
scores in [t − b, t) are challenged: genuine pass 85 %, fraud pass 5 %; scores ≥ t declined[10]假設:槽位數量、服務和發卡行時間、分數分離度、加強驗證通過率、無用功比例、金額和價格,均為中型交換機的示意數值,並非任何真實網絡的數字。
發卡行延遲服從指數分布;槽位被佔用的時間是延遲或逾時兩者中較早者。
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]
利特爾定律:佔用中的槽位 = 到達率 × 佔用時間。
busy slots = λ·S (Little) ⇒ utilization = λ·S / (32 × servers)[3]
Erlang C:交易等待空閒槽位的機率,以及等待超過 2 秒隊列逾時的機率。
P(W > 2 s) = C(a, N)·e^(−(N/S − λ)·2 s), a = λS; mean wait = C / (N/S − λ)[1][2]
超出容量後,交換機還會在事後被丟棄的請求上耗費運算,所以負載越高,有效吞吐量反而下降;負載丟棄能以很低的成本拒絕超出部分。
λ ≥ N/S: goodput = (N/S − ω·λ)/(1 − ω), ω = 0.3; load shedding admits ≤ 0.9·N/S and answers the rest at once[4][5]假設:槽位數量、服務和發卡行時間、分數分離度、加強驗證通過率、無用功比例、金額和價格,均為中型交換機的示意數值,並非任何真實網絡的數字。
客戶端重試:每個技術故障最多重試三次,立即重試或採用隨機指數退避。
failed attempt → retry with p = 0.95, ≤ 3 retries; immediate: next minute; backoff: delay ~ Exp(mean 1, 2, 4 min)[4][5]假設:槽位數量、服務和發卡行時間、分數分離度、加強驗證通過率、無用功比例、金額和價格,均為中型交換機的示意數值,並非任何真實網絡的數字。
發卡行逾時、沖正和代批:金額服從對數常態分布,所以低於上限的比例和批准的金額可由常態 CDF 得出。
issuer timeout → reversal; stand-in approves if amount ≤ limit: P = Φ((ln L − μ)/σ), volume = e^(μ+σ²/2)·Φ((ln L − μ − σ²)/σ)[9][11]
欺詐率以批准金額的基點計;13 bp 用作小額遠程卡支付的參考尺度。
fraud rate = approved fraud amount / approved amount × 10,000 bp (reference scale: 13 bp)[10]
模型使用的其他運行常數。
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 time假設:槽位數量、服務和發卡行時間、分數分離度、加強驗證通過率、無用功比例、金額和價格,均為中型交換機的示意數值,並非任何真實網絡的數字。

隨機性:帶種子的 mulberry32 產生器;所用分布包括均勻分布、指數分布(反 CDF)、常態分布(Box–Muller)及泊松分布(Knuth)。種子會顯示出來,並可分享。

來源

  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

誰在從事這份工作

教育模型,不可用於實際營運決策。真實場地會按自己的設備及數據校準每一個常數。