Şəbəkə əlaqələrinin sabitliyi
(Bölmə: Ekosistem və Şəbəkə)
1) Məqsəd və sahə
«Şəbəkə əlaqələrinin davamlılığı» - ekosistemin kanallar, qovşaqlar, regionlar və xarici hücumlar zamanı iştirakçılar (operatorlar, provayderlər, studiyalar, affiliatlar, nodlar/validatorlar, ödəniş və KYC xidmətləri) arasında qarşılıqlı əlaqənin əlçatanlığını və proqnozlaşdırıla bilən keyfiyyətini saxlamaq qabiliyyətidir. Əsas vəzifələr: MTTR-in minimuma endirilməsi, kaskad nasazlıqlarının qarşısını almaq, nəzarət olunan deqradasiya və hədəf SLO-lara sürətli bərpa.
2) Nasazlıq rejimləri (Threat model)
Şəbəkə: paketów/jitter itkisi, kanalların həddindən artıq yüklənməsi, BGP-flap, bölgələrarası boşluqlar, asimmetrik marşrutlaşdırma.
Nəqliyyat/soket: half-open lines, head-of-line blocking (TCP), state exhaustion (NAT/conn-track).
Tətbiq səviyyəsi: trafik tikanları, «uzunmüddətli» sorğular, n + 1 RPC, fırtına retrayları.
Asılılıqlar: DNS deqradasiyası, KMS/PKI, növbələr, TURN/relay, üçüncü tərəf API.
Təhlükəsizlik: L3/L4/L7 DDoS, bot-flood, cache zəhərlənməsi, Sybil/spam cəhdləri.
Əməliyyat sistemi: səhv ficheflages, limitsiz «isti» buraxılışlar, səhv vaxtlar.
3) Dayanıqlılıq dizayn prinsipləri
1. Bütün təbəqələrdə artıqlıq: yollar, regionlar, provayderlər, relay-düyünlər, DNS, gizli anbarlar.
2. Arızaların izolyasiyası: cell-based memarlıq, circuit-breakers, bulkheads, cross-hüceyrə çağırışlarına məhdudiyyətlər.
3. Fail-fast və time-boxing: xarici zənglərdə qısa vaxtlar, «əbədi gözləmək» qadağası.
4. İdempotentlik və təhlükəsiz retralar: idempotentlik açarları, qəbuledicidə dedup.
5. Default müşahidə: izlər, korrelyasiya ID, sintetik nümunələr.
6. Deqradasiya rejimləri: read-only, cache-only, drop-features, kritik axınlar prioritet.
7. Chaos-mühəndislik: təcrübə davamlı sübut.
4) Topologiyalar və artıqlıq
Hibrid P2P + super-peers + DHT: «müqavilə» qrupları daxilində lokal mesh, retranslator və caches kimi super-knots, axtarış üçün DHT.
Anycast/Geo-DNS/SD-WAN: yaxın giriş, idarə olunan axınlar, health-based routing.
Multi-relay (TURN/HTTP3-tunnels): müstəqil təchizatçılar, yalnız lazım olduqda relay üçün büdcə.
Active-Active regionlar: idempotent oxu/hadisələr üçün sinxron; pul əməliyyatları üçün - son uyğunluq + ciddi maliyyələşdirmə.
5) Protokollar, taymautlar və retrajlar
Nəqliyyat: QUIC/HTTP3 (HoL-blocking olmadan multiplexing, yol miqrasiya), TCP - fallback kimi.
Tayminqlər:- RPC client timeout: p99_latency×1. 5 (lakin ≤ 2-3 s regionlararası).
- Connect timeout: 200-500 ms yerli, 700-1200 ms regionlararası.
- Backoff: Jitter ilə eksponensial; max-retries 2-3 «oxu» çağırışlar üçün.
- Hedging (hedged requests): p95 gecikmədən sonra ikinci ifaçını göndərin (yalnız idempotent əməliyyatlar).
- İdempotentlik: başlıq/' x-idempotency-key 'sahəsi, dedup-jurnalların saxlanması ≥ TTL retrains.
- Növbələr və outbox: hadisələrin zəmanətli çatdırılması, şəbəkə uğursuzluqları zamanı təkrar, konsumerlərdə dedup.
6) Yükün idarə edilməsi və «özünümüdafiə»
Rate-limits və kvotalar: RPC/topik üçün leaky-bucket/token-bucket.
Adaptive load-shedding: gecikmə artdıqda aşağı prioritet sorğuların sıfırlanması.
Prioritetlər: pul/ödənişlər> oyun tədbirləri> telemetriya.
Backpressure: dinamik pəncərə, paralellik məhdudiyyətləri, pirlərin «kredit limitləri».
Connection pooling: isti hovuzlar, açıq soket limitləri/NAT-hallar.
7) DDoS və kanal təhlükəsizliyi
L3/L4: upstream scrubbing/Anycast, conn-track защита, SYN-cookies, UDP-rate.
L7: WAF/WAAP, açıq mövzular üçün proof-of-work/fee-gate, kapçalar/spam qarşı cüzdan girovları.
mTLS/TLS 1. 3 + E2E: yolda şifrələmə, super düyünlərin açarlarının pinninqi, sertifikatların rotasiyası.
Anti-Sybil: etibarlı peer-ID reyestri, nüfuz, təsir rolları üçün KYB/KYC.
Secure defolt: «icazə verilmədikdə qadağandır», topiklər üzrə ACL, hüquqların minimallaşdırılması.
8) SLO, SLI və dayanıqlıq metrikası
SLO (nümunə):- Kritik end nöqtələri Uptime ≥ 99. 95 %/30d.
- p99 latency regionlararası ≤ 600 ms; error-rate ≤ 0. 2%.
- Success-rate P2P-RPC ≥ 99. 5%; Pub/Sub E2E p95 ≤ 2 с.
- Relay-share ≤ 30%; DHT resolve p95 ≤ 300 мс.
- MTTR SEV-1 ≤ 30 dəq; MTTA ≤ 5 dəq.
- Connectivity% (pir çatma), düz birləşmələrin payı, qonşuların orta sayı.
- Trafik siniflərinə görə RTT/Jitter/Loss; RPC success/failure taxonomy.
- Queue depth/lag broker/relay; DHT hit/miss və yaş qeydlər.
- SLO ilə Burn-rate (1h/6h/24h); biznes KPI təsiri (GTV/MAU itkiləri).
9) Müşahidə və sintetik nümunələr
Trace: trace-ID, OpenTelemetry vasitəsilə ixrac, şəbəkə hopları üçün span semantikası.
Log/metriklər: struktur log, nəzarət altında kardinallıq, p95/p99 aqreqatları.
RUM + sintetika: əsas regionlardan/provayderlərdən real xüsusi metriklər və qlobal nümunə şəbəkəsi (hər 1-5 dəq).
SLO-daşbordları: kritik axınlar üzrə «svetoforlar», gecikmə/mövcudluq kartları, deqradasiya hesabatları.
10) Deqradasiya rejimləri
Read-only/cache-only: backends qeyd kəsildikdə.
Stale-while-revalidate: Arxa plan yenilənməsi ilə köhnəlmiş, lakin yararlı cache veririk.
Feature kill-switch: qeyri-sabit hissələri sürətli açar.
Fan-out limiti: «fan» sorğulara qadağa, dərinliyə görə fyuz.
11) Chaos mühəndisliyi (plan)
Network Faults: 1-5% packet-loss, 100-300 ms jitter, ayrı ASN blackhole.
Relay/TURN arızası: N% super-düyünləri söndürmək, birbaşa əlaqələrin payını yoxlamaq.
DNS/KMS deqradasiyası: süni vaxtlar/səhvlər, follbeklərin validasiyası.
Fırtına retrains: kaskadlardan qorunmanın yoxlanılması (jitter, limit, dedup).
Game-day qaydaları: hipotez → enjeksiyon → metrika → təkmilləşdirmə → təkrar.
12) DR strategiyası və hədəfləri
RPO/RTO: konfiqurasiya və ACL məlumatları üçün - RPO ≈ 0 (sinxron snapshot), RTO ≤ 15 dəq; telemetriya üçün RPO ≤ 5 dəq.
Kataloqlar və açarlar: soyuq ehtiyatlar, periodik uğursuz backup, «bərpa məşqləri».
Regional fəlakətlər: Anycast/Geo-DNS keçid, cache qızdırılması, növbə/topik replikasiyası.
13) Psevdo konfiqurasiya
Müştəri vaxtı və retraut siyasəti (YAML)
yaml client:
rpc:
connect_timeout_ms: 400 request_timeout_ms: 1500 retries:
max_attempts: 2 backoff: exponential base_ms: 100 jitter: true hedging:
enabled: true threshold_ms: 800 # p95 idempotent_only: true
Circuit-breaker və prioritetlər
yaml resilience:
circuit_breaker:
error_rate_threshold: 0. 02 rolling_window_sec: 60 open_duration_sec: 15 priorities:
payouts: high game_events: medium telemetry: low load_shedding:
target_p99_ms: 600 drop_low_priority: true
ACL və e2e kanalları
yaml security:
mtls: required e2e_topics: [payouts. status, limits. update]
acl:
operators: [12D3KooA..., 12D3KooB...]
providers: [12D3KooC..., 12D3KooD...]
14) Daşbordlar: maketlər
Ops (saat/real vaxt): Connectivity%, RPC p99, error-rate, relay-share, DHT-latency, queue-lag, SLO burn-rate.
Network Health (həftə): relay-% və RTT trendləri, «səs-küylü» pir siyahıları, NAT traversal müvəffəqiyyəti, trafik dəyəri.
Strategy (ay): SEV, MTTA/MTTR, DR təlimləri, iş metrləri ilə korrelyasiya hadisələri.
15) Playbook hadisələr (şparqalka)
p99 sıçrayış və səhvlər: deqradasiyanı (read-only, cache-only), hedcinq, kritik axınlar üçün kvotaları artırmaq, «isti» yol üçün biletləri açmaq.
Relay-share> eşik: STUN/TURN hovuzları keçid, super-düyünləri genişləndirmək, hole-punch gücləndirmək, müvəqqəti TTL cache qaldırmaq.
Fırtına retrai: max-retries azaltmaq, jitter artırmaq, -xidmət vasitəsilə qlobal backoff bayrağını yandırmaq.
DDoS L7: WAAP qaydaları, siqnal/sürət bloku, açıq mövzularda PoW/fee-gate, off. əhəmiyyətsiz end nöqtələri.
DNS/KMS problemləri: ikinci dərəcəli provayderləri, lokal açar keşlərini işə salın, rezolverləri dəyişdirin.
Bölgə əlçatmazdır: trafik failover (Anycast/Geo-DNS), digər bölgənin warming, limitlərin yenidən hesablanması.
16) Giriş çek siyahısı
1. SLO/SLI və sahiblərini düzəldin (axınlar/topiklər üzrə).
2. Zaman/retraj/hedcinq/idempotentlik tətbiq edin.
3. circuit-breakers, bulkheads və prioritetlər qurmaq.
4. Sintetik nümunələri və qlobal daşbordları işə salın.
5. DR planı (RPO/RTO), müntəzəm bərpa məşqləri təqdim edin.
6. Üç aylıq chaos-gün və parametrlərin yoxlanılması.
7. Deqradasiya rejimlərini və kommunikasiya şablonlarını sənədləşdirin.
17) Lüğət
Bulkhead - kaskadların qarşısını almaq üçün alt sistemlərin izolyasiyası.
Circuit breaker - qeyri-sabit asılılığın avtomatik bağlanması.
Hedging - eşik gecikməsindən sonra rəqabətli sorğular.
Outbox/Inbox - duplikasiya ilə hadisələrin etibarlı göndərilməsi/qəbulu.
RPO/RTO - icazə verilən məlumat itkisi/bərpa vaxtı.
SLO burn-rate - SLO ilə bağlı səhvlərin büdcəsini «yandırma» sürəti.
Nəticə: şəbəkə əlaqələrinin sabitliyi «bir fiqur» deyil, nizam-intizamdır: uğursuzluqların artıqlığı və izolyasiyası, səlahiyyətli taymaut və retrajlar, ciddi prioritetləşmə, müşahidə və müntəzəm sınaqlar. Bu yanaşma kaçınılmaz şəbəkə nasazlıqlarını ekosistemin biznes axınlarına minimal təsir göstərən idarə olunan hadisələrə çevirir.