การเงิน — การปฏิบัติการชำระเงิน โมเดลสด

คุณอยู่ที่โต๊ะปฏิบัติการของสวิตช์ชำระเงินที่ตั้งอยู่ระหว่างร้านค้าและผู้ออกบัตร ทุกนาทีมีธุรกรรมเข้ามาราว 400 รายการต่อวินาที แต่ละรายการถูกให้คะแนนการฉ้อโกง รอช่องการเชื่อมต่อว่าง และส่งต่อไปยังผู้ออกบัตรเพื่อรอคำตอบ แบบจำลองคำนวณการต่อคิว การหมดเวลา การลองใหม่ของลูกค้า การแลกเปลี่ยนของตัวกรองการฉ้อโกง และความเสี่ยงจาก stand-in จากสูตรในตำรา จำนวนเงินเป็นหน่วยเงินทั่วไป (u) เป็นการจำลองเพื่อการศึกษาเท่านั้น — ไม่ใช่คำแนะนำด้านการเงิน กฎหมาย หรือการลงทุน

สิ่งที่คุณจะได้เรียนรู้

เครื่องจำลอง

เวลา 0 นาที
โหลดที่เข้ามา (ใหม่ + ลองใหม่) 400 · การลองใหม่ 0 · อัตราอนุมัติลูกค้าที่ดี 99.9% · เวลาอนุมัติรายการ 330 ms · ช่องการเชื่อมต่อที่ไม่ว่าง 69% · เซิร์ฟเวอร์ที่ให้บริการ 6 (+0) · อัตราการฉ้อโกง (สัดส่วนของจำนวนเงินที่อนุมัติ) 10.4 bp · การหมดเวลารอผู้ออกบัตร 0.0% · ความเสี่ยงจาก stand-in 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 msผู้ออกบัตร B✓ 250 ms⏱ 8 s · ⌛ 0.0% · Σ 0 uอัตราอนุมัติลูกค้าที่ดี 99.9% · ความเสี่ยงจาก stand-in 0.00 M u
  • เซิร์ฟเวอร์ให้บริการ
  • เซิร์ฟเวอร์กำลังเริ่มทำงาน
  • ช่องว่างในแร็คสำหรับเซิร์ฟเวอร์
  • ผู้ออกบัตรตอบปกติ
  • ผู้ออกบัตรช้าหรือล่ม
  • การประมวลผล stand-in เปิดอยู่
  • ธุรกรรมขาเข้า

ตัวควบคุม

เซิร์ฟเวอร์แต่ละเครื่องมี 32 ช่องการเชื่อมต่อ เซิร์ฟเวอร์ที่เพิ่มใช้เวลาเริ่มทำงาน 5 นาที ทุกเครื่องถูกคิดเงินไม่ว่ากำลังเริ่มทำงานหรือไม่

รับเข้าไม่เกิน 90 % ของกำลัง และตอบส่วนเกินทันทีว่า “ลองใหม่ภายหลัง” แทนที่จะปล่อยให้ต่อคิวและหมดเวลา

ร้านค้าลองใหม่เมื่อเกิดความล้มเหลวทางเทคนิคอย่างไร (สูงสุด 3 ครั้ง) ทันที = ภายในนาทีถัดไป backoff = backoff แบบเอ็กซ์โพเนนเชียลที่สุ่ม ความหน่วงเฉลี่ย 1, 2 และ 4 นาที

ธุรกรรมที่ได้คะแนนเท่ากับหรือสูงกว่านี้จะถูกปฏิเสธ คะแนนวัดเป็นส่วนเบี่ยงเบนมาตรฐานของทราฟฟิกที่เป็นของจริง: ค่าที่ต่ำลงหมายถึงหยุดการฉ้อโกงได้มากขึ้นและปฏิเสธลูกค้าที่ดีมากขึ้น

คะแนนที่ต่ำกว่าเกณฑ์ในระดับนี้จะได้รับการพิสูจน์ตัวตนเพิ่มเติมแทนการตัดสินใจ: ลูกค้าตัวจริง 85 % ทำสำเร็จ ผู้ฉ้อโกง 5 % ผ่าน 0 = ปิด

ช่องการเชื่อมต่อรอคำตอบจากผู้ออกบัตรนานเท่าใด หลังจากนั้นสวิตช์จะส่งรายการย้อนกลับ (reversal) และใช้ stand-in หรือปฏิเสธว่า “ผู้ออกบัตรไม่พร้อมให้บริการ”

เมื่อผู้ออกบัตรไม่ตอบทันเวลา สวิตช์จะอนุมัติแทนจนถึงจำนวนเงินนี้ การอนุมัติแบบ stand-in ทุกครั้งคือความเสี่ยงที่ผู้ออกบัตรไม่เคยตรวจสอบ 0 = ปิด

ตัวชี้วัด

อัตราอนุมัติลูกค้าที่ดี
99.9%
ปกติ
เวลาอนุมัติรายการ
330ms
ปกติ
อัตราการฉ้อโกง (สัดส่วนของจำนวนเงินที่อนุมัติ)
10.4bp
ปกติ
ช่องการเชื่อมต่อที่ไม่ว่าง
69%
ปกติ
อัตราอนุมัติ ผู้ออกบัตรที่ปกติ99.9 %
ลูกค้าที่ดีที่ถูกปฏิเสธโดยกฎการฉ้อโกง1.3 ‰
ธุรกรรมที่ส่งไป step-up0.0 %
การฉ้อโกงที่หยุดได้31 %
ธุรกรรมใหม่400 tx/s
โหลดที่เข้ามา (ใหม่ + ลองใหม่)400 tx/s
การลองใหม่0 tx/s
ตัดทิ้ง (ตอบ “ลองใหม่ภายหลัง”)0 tx/s
ถูกทิ้งในคิว0.0 %
การหมดเวลารอผู้ออกบัตร0.0 %
การอนุมัติแบบ stand-in0 tx/s
เซิร์ฟเวอร์ที่ให้บริการ6
เซิร์ฟเวอร์ที่กำลังเริ่มทำงาน0
อัตราต้นทุนเซิร์ฟเวอร์36 u/h
ต้นทุนเซิร์ฟเวอร์จนถึงตอนนี้0 u
ความเสี่ยงจาก stand-in0.00 M u
การฉ้อโกงที่อนุมัติจนถึงตอนนี้0.00 M u
ธุรกรรมที่ดีที่สูญเสียจนถึงตอนนี้0.0 k tx
ธุรกรรมที่รอลองใหม่0 tx
ความหน่วงผู้ออกบัตรกลุ่ม B (เฉลี่ย)250 ms

แนวโน้ม

อัตราอนุมัติลูกค้าที่ดี: — %100.00.0

สถานการณ์วิกฤต

ระดับ 1 · ทราฟฟิกพุ่งช่วงลดราคา

งานลดราคาออนไลน์ใหญ่เปิดนาทีที่ 5 และทำให้ทราฟฟิกเป็นสองเท่าเป็นราว 800 ธุรกรรมต่อวินาทีเป็นเวลา 45 นาที สวิตช์ใช้เซิร์ฟเวอร์ 6 เครื่อง ขนาดสำหรับวันปกติที่ไม่ว่างราว 70 % ร้านค้าลองใหม่ทุกความล้มเหลวทางเทคนิคทันที รักษาให้ลูกค้าที่ดีได้รับอนุมัติและคำตอบรวดเร็วโดยไม่ซื้อกำลังที่ไม่จำเป็น

  • อัตราอนุมัติลูกค้าที่ดีเฉลี่ย ≥ 95 % ตั้งแต่งานลดราคาเริ่ม
  • เวลาอนุมัติรายการเฉลี่ย ≤ 500 ms
  • ต้นทุนเซิร์ฟเวอร์ ≤ 75 u

ระดับ 2 · คลื่นการฉ้อโกง

นาทีที่ 5 ข้อมูลบัตรที่ถูกขโมยเป็นชุดเริ่มถูกนำมาใช้: สัดส่วนการฉ้อโกงของทราฟฟิกกระโดดจาก 0.1 % เป็น 1 % เกณฑ์ปฏิเสธตั้งไว้สำหรับวันปกติ (3σ) และ step-up ปิดอยู่ ลดอัตราการฉ้อโกงลงโดยไม่ปฏิเสธลูกค้าที่ดี

  • อัตราการฉ้อโกงเฉลี่ย ≤ 25 bp
  • อัตราอนุมัติลูกค้าที่ดีเฉลี่ย ≥ 98 %
  • ลูกค้าที่ดีที่ถูกปฏิเสธโดยกฎ ≤ 5 ‰

ระดับ 3 · ผู้ออกบัตรขัดข้อง

นาทีที่ 5 ผู้ออกบัตรกลุ่ม B — หนึ่งในสี่ของทราฟฟิกทั้งหมด — ช้าลงเป็นเวลาตอบเฉลี่ย 12 วินาที สวิตช์รอคำตอบได้สูงสุด 8 วินาที ไม่มี stand-in และใช้เซิร์ฟเวอร์ 6 เครื่อง รักษาให้ลูกค้าของผู้ออกบัตรที่ปกติไหลต่อไป ให้บริการกลุ่ม B เท่าที่ทำได้อย่างปลอดภัย และควบคุมความเสี่ยงจาก stand-in กับต้นทุนให้อยู่ในเกณฑ์

  • อัตราอนุมัติเฉลี่ยของลูกค้าผู้ออกบัตรที่ปกติ ≥ 90 %
  • อัตราอนุมัติลูกค้าที่ดีเฉลี่ย ≥ 86 %
  • ความเสี่ยงจาก stand-in ≤ 9 M u
  • ต้นทุนเซิร์ฟเวอร์ ≤ 65 u

พื้นฐาน — โมเดลเบื้องหลังตัวเลข

ทุกความสัมพันธ์ที่เครื่องจำลองใช้ พร้อมแหล่งที่มา ค่าคงที่ที่ระบุว่าเป็นสมมติฐานคือการปรับเทียบตัวอย่าง

ธุรกรรมใหม่เข้ามาที่อัตราฐานคูณกับการพุ่งของยอดขาย จำนวนต่อนาทีเป็นแบบสุ่ม (ปัวซอง ประมาณด้วยการแจกแจงปกติ) พร้อมความเป็นกลุ่มก้อนเล็กน้อย
λ(t) = base × surge(t) (2-min lag); count/min ≈ N(60λ, √(60λ)) × (1 + N(0, 0.03))[2]ข้อสมมติ: จำนวนช่อง เวลาให้บริการและเวลาตอบของผู้ออกบัตร การแยกของคะแนน อัตราผ่าน step-up สัดส่วนงานที่สูญเปล่า จำนวนเงิน และราคา เป็นค่าตัวอย่างสำหรับสวิตช์ขนาดกลาง ไม่ใช่ตัวเลขของเครือข่ายจริงใดๆ
คะแนนการฉ้อโกงแบบไบนอร์มอล: คะแนนของรายการจริงและรายการฉ้อโกงเป็นเส้นโค้งปกติสองเส้นห่างกัน 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]ข้อสมมติ: จำนวนช่อง เวลาให้บริการและเวลาตอบของผู้ออกบัตร การแยกของคะแนน อัตราผ่าน step-up สัดส่วนงานที่สูญเปล่า จำนวนเงิน และราคา เป็นค่าตัวอย่างสำหรับสวิตช์ขนาดกลาง ไม่ใช่ตัวเลขของเครือข่ายจริงใดๆ
เกณฑ์ที่คุ้มค่าที่สุด: ปฏิเสธเมื่ออัตราส่วนความควรจะเป็นเกินอัตราส่วนต้นทุนที่ถ่วงด้วยอัตราฐาน — เมื่อการฉ้อโกงเพิ่มเป็นสิบเท่า เกณฑ์เลื่อนลง 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]
Step-up: คะแนนในช่วงใต้เกณฑ์จะถูกทดสอบเพิ่มแทนการตัดสินใจ
scores in [t − b, t) are challenged: genuine pass 85 %, fraud pass 5 %; scores ≥ t declined[10]ข้อสมมติ: จำนวนช่อง เวลาให้บริการและเวลาตอบของผู้ออกบัตร การแยกของคะแนน อัตราผ่าน step-up สัดส่วนงานที่สูญเปล่า จำนวนเงิน และราคา เป็นค่าตัวอย่างสำหรับสวิตช์ขนาดกลาง ไม่ใช่ตัวเลขของเครือข่ายจริงใดๆ
ความหน่วงของผู้ออกบัตรเป็นแบบเอ็กซ์โพเนนเชียล ช่องถูกถือไว้ตามความหน่วงหรือเวลาหมดอายุ แล้วแต่อย่างใดมาถึงก่อน
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]ข้อสมมติ: จำนวนช่อง เวลาให้บริการและเวลาตอบของผู้ออกบัตร การแยกของคะแนน อัตราผ่าน step-up สัดส่วนงานที่สูญเปล่า จำนวนเงิน และราคา เป็นค่าตัวอย่างสำหรับสวิตช์ขนาดกลาง ไม่ใช่ตัวเลขของเครือข่ายจริงใดๆ
การลองใหม่ของลูกค้า: ความล้มเหลวทางเทคนิคแต่ละครั้งลองใหม่ได้สูงสุดสามครั้ง ทันทีหรือด้วย backoff แบบเอ็กซ์โพเนนเชียลที่สุ่ม
failed attempt → retry with p = 0.95, ≤ 3 retries; immediate: next minute; backoff: delay ~ Exp(mean 1, 2, 4 min)[4][5]ข้อสมมติ: จำนวนช่อง เวลาให้บริการและเวลาตอบของผู้ออกบัตร การแยกของคะแนน อัตราผ่าน step-up สัดส่วนงานที่สูญเปล่า จำนวนเงิน และราคา เป็นค่าตัวอย่างสำหรับสวิตช์ขนาดกลาง ไม่ใช่ตัวเลขของเครือข่ายจริงใดๆ
การหมดเวลารอผู้ออกบัตร การย้อนกลับ และ stand-in: จำนวนเงินเป็นแบบล็อกนอร์มอล สัดส่วนที่ต่ำกว่าวงเงินและปริมาณที่อนุมัติจึงได้จาก 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ข้อสมมติ: จำนวนช่อง เวลาให้บริการและเวลาตอบของผู้ออกบัตร การแยกของคะแนน อัตราผ่าน step-up สัดส่วนงานที่สูญเปล่า จำนวนเงิน และราคา เป็นค่าตัวอย่างสำหรับสวิตช์ขนาดกลาง ไม่ใช่ตัวเลขของเครือข่ายจริงใดๆ

ความสุ่ม: ตัวสร้าง 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

ใครทำงานนี้เป็นอาชีพ

โมเดลเพื่อการศึกษา — ไม่ใช่สำหรับการตัดสินใจเชิงปฏิบัติการ ไซต์จริงปรับเทียบค่าคงที่ทุกตัวให้ตรงกับอุปกรณ์และข้อมูลของตนเอง