İştirakçılar arasında P2P əlaqələri
(Bölmə: Ekosistem və Şəbəkə)
1) Niyə ekosistemdə P2P
P2P yanaşması iştirakçılara (operatorlar, provayderlər, studiyalar, affiliatlar, validatorlar/nodlar, pul kisələri, analitik və orkestr xidmətləri) məlumatları mübadilə etməyə və əməliyyatları məcburi «mərkəzi boru» olmadan yerinə yetirməyə imkan verir. Əsas effektlər:- Stabillik və uğursuzluq: vahid SPOF yoxdur, şəbəkə/regional uğursuzluqları yaşamaq daha asandır.
- Böyüdükcə ölçülə bilər: hər yeni iştirakçı resursları (kanallar, hesablama, saxlama) təqdim edir.
- Çatdırılma xərclərinin azaldılması: trafik ən qısa yollarla gedir, mərkəzləşdirilmiş şlüzlərdə qənaət.
- Məlumatların gizliliyi və suverenliyi: nəyi və kimə vermək üçün qranullu nəzarət.
2) P2P topologiyaları
1. Tam rabitəli (mesh) - yüksək sabitlik, lakin kanalların sayına görə bahadır (O (n ²)). Yüksək mübadilə tezliyi olan kiçik qruplar üçün uyğundur.
2. Super-düyünlər/hibrid (super-peers) - pirlərin bir hissəsi mesh və ulduz arasında güzəşt, marşrutlaşdırma/retranslyasiya edir.
3. Klaster overleyləri - körpülərlə (gateways) bağlı tematik alt şəbəkələr (məsələn, «provayder, operator», «affiliat, operator»).
4. DHT-overlay - servislərin və məzmunun paylanmış marşrut/axtarış cədvəli, axtarışın loqarifmik mürəkkəbliyi.
Tövsiyə: bir çox rolları olan ekosistem üçün - hibrid: «müqavilə» qrupları daxilində lokal mesh (operator, provayder), marşrutlaşdırma üçün super-peers, qlobal axtarış üçün DHT və hadisələr üçün Pub/Sub.
3) Şəbəkə yığını və protokollar
Nəqliyyat: QUIC/UDP (0-RTT xülasələr, itkiyə davamlı, multiplex), TCP (fallback), WebRTC (brauzerlər, P2P media/dataqramlar).
Şifrələmə: TLS 1. QUIC/TCP ilə 3; overlay üçün - Noise/Libp2p-SECIO/ECDH + AEAD. Şəxsi kanallar üçün nəqliyyat üzərində End-to-End şifrələmə.
İdentifikasiyalar: uzun müddətli node açarları (ed25519/secp256k1), öz-özünə imzalanan peer-ID, komplayens tələblərinə cavab vermək üçün isteğe bağlı X.509/PKI.
Aşkarlama və ünvan: mDNS (LAN), DHT/Kademlia (WAN), statik buta-straplar (bootstrap-pirlər), kataloqlar/xidmət reyestrləri.
NAT traversal: STUN, UDP hole-punching, TURN/relay fallback, TCP hole-punching, super-düyünlər vasitəsilə port-proks.
- Nöqtə sorğuları üçün Req/Resp (RPC) (qiymət kotirovkaları, limitlər, ödəniş statusları).
- Pub/Sub (gossip) hadisələr üçün (əməliyyatlar, oyun statusları, uyğunluq alertləri).
- Paralel məntiq kanalları üçün stream-muxing (yamux/mplex/QUIC).
- CRDT/əməliyyat jurnalları «master» olmadan cache və meta məlumat əlaqələndirmək üçün.
4) NAT traversal və rels
«Üç mərhələ» strategiyası:1. Birbaşa P2P: hole-punch cəhd (UDP üstünlük, sonra TCP).
2. Super-knots vasitəsilə TURN/Relay: həcmi məhdudlaşdırmaq, end-to-end şifrələmək, rels billing.
3. HTTPS/HTTP3 Fallback: lazım olduqda icazə verilən korporativ proxy vasitəsilə tunel.
Relay bahalaşır və gecikməni artırır, çünki birbaşa əlaqələrin payını vs relay izləyin.
5) Marşrutlaşdırma, axtarış və aşkarlama
DHT (Kademlia-class): Yalnız «işarələri» (provider records) saxlayın, onları imzalarla qoruyun, TTL və oxu kvorumunu daxil edin.
Content-based routing: 'service: limits/operator: XYZ/region: TR' növünün açarlarının dərc edilməsi.
Şəxsi namespace: fərdi prefikslər/qapalı icmalar üçün açarlar (partnyor overlay).
Anti-poisoning: sahiblərinin imzaları ilə qeydlərin təsdiqlənməsi, nəşriyyat qovşaqlarının nüfuzu, rate-limit nəşrlər.
6) Data modelləri və koordinasiya
Event-sourcing + Pub/Sub: dəyişməz açarları (idempotency-key) olan hadisələr kimi bütün əhəmiyyətli dəyişikliklər.
CRDT (GCounter, OR-Set, LWW-register): bir çox iştirakçıların redaktə etdiyi konfiqurasiya, giriş, cached limits/kotirovkalar üçün.
Konsensus hər yerdə tələb olunmur: məlumat kitabçaları və meta-məlumatlar üçün «eventual consistency» kifayətdir; maliyyə əməliyyatları üçün - möhkəm maliyyələşdirmə (xarici reyestr/blokçeyn/notarius).
7) QoS, SLO və metrika
SLO şəbəkəsi (nümunə):- p99 latency P2P-RPC ≤ 250-400 ms (regionlararası ≤ 600 ms), success-rate ≥ 99. 5%.
- Pub/Sub end-to-end delay p95 ≤ 2 с.
- Relay payı ≤ 30% (məqsəd birbaşa əlaqədir ≥ 70%).
- Churn-stabillik: SLA deqradasiyası olmadan 20% -ə qədər pir itkisi.
- Connectivity: əldə edilə bilən pirlərin faizi, birbaşa birləşmələrin payı, qonşuların orta sayı.
- Path quality: RTT, Jitter, Packet loss; p95/p99 xidmət sinifləri üzrə.
- Throughput: axınlar üzrə orta/pik bant genişliyi.
- Reliability: reconnect rate, RPC error rate, Pub/Sub reordering/drop.
- Discovery health: DHT hit/miss, açar sürəti, köhnəlmiş qeydlərin payı.
- Security: E2E şifrələmə payı, qeyri-sabit imzalar, anomaliyalar rate.
- Cost: rels vasitəsilə trafik (GB/gün), CTS per GB, CTS per RPC.
8) P2P təhlükəsizliyi
Kimlik və etimad: uzunmüddətli peer-ID, hüquqi mahiyyət (operator/provayder), etibarlı açarların reyestri; qısa ömürlü seans açarları.
Şifrələmə: nəqliyyat TLS 1. Xüsusi kanallar üçün 3/Noise + E2E (Double-Ratchet, HPKE).
Authorization: capability-token/makaron (əməliyyat və həcminə bağlı), ACL Pub/Sub topics.
Anti-Sybil və spam: «qeydiyyat» qovşaqları üçün proof-of-authority, reputations/credit-limits, açıq icmalar üçün giriş kapçaları/ödəniş girovları.
Kanalların sui-istifadəsi: trafik circuit-breaker, RPC və publish-də leaky-bucket rate-limit, səs-küylü pirlərin «greylisting».
Data doğrulama: hadisələrin imzaları, böyük batches üçün merkl sübut, idempotency-key dedup.
9) Mühəndislik nümunələri
RPC idempotentliyi: 'x-idempotency-key' + «at-least-once» çatdırılma + qəbuledicidə dedup.
Backpressure: axınlara görə window-size, prioritetlər (pul əməliyyatları> telemetriya).
Partial failure tolerance: sürətli vaxt + yarım iş rejimi (read-only, cache-only, deqradasiya fich).
Observability: p2p-hop izləri, korrelyasiya ID, OpenTelemetry metrik ixrac.
json
{
"id": "evt_01J...",
"ts": "2025-10-31T18:25:43Z",
"topic": "limits. update/operator:ACME/region:TR",
"payload_hash": "sha256:...",
"payload": { "limit": 10000, "currency": "TRY", "valid_until": "2025-11-01T00:00:00Z" },
"sig": "ed25519:base64..."
}
10) Pub/Sub və gossip
Yayım tədbirləri üçün Gossip şəbəkələri: anti-duplikasiya, diametrin məhdudlaşdırılması (random walk), «sürüşmə pəncərələri» abunələri.
Topika və siyasət: «ictimai» və «özəl» mövzuların ayrılması; şəxsi - yalnız ACL abunəçiləri üçün.
Çatdırılma: «at-least-once» zəmanəti + abunəçilərdə determinik duplikasiya.
11) Saxlama və caching
Snapshot + jurnallar: son snapshot və hadisə jurnalı qaldırılması pir sürətli soyuq başlanğıc.
Cash siyasətləri: TTL/ETag/sxemlərin versiyalaşdırılması; imza ilə validasiya.
Edge cache: Super-peers «caching proxy» kimi abunə olan isti açarları/sərvət hissələrini saxlaya bilər.
12) Əməliyyat, monitorinq və daşbordlar
Gündəlik Ops:- Connectivity %, relay %, DHT hit/miss, RPC success/latency p95/p99, Pub/Sub delay, error rate, churn.
- Super-düyün xəritəsi (yük, saturation, bölgə gecikmələri).
- relay payı trendləri, trafik dəyəri, «isti» topiklər, E2E kanallarının payı, hücum/anomaliyalar.
- NAT traversal effektivliyi (düz payı), CTS per GB/RPC, super-düyün genişləndirilməsi planı, KPI uyğunluğu (loging, saxlama).
13) Test və keyfiyyət
Chaos ssenariləri:% super-düyünlərin söndürülməsi, süni itkilər/jitter, Pub/Sub yükləri.
Interop matrisi: SDK/protokol versiyası × NAT növü × regionlar.
Fuzzing protokolları: təsadüfi sahələr/ölçüləri, zərərli payload (qum qutusunda).
Security-drills: pir açarının sızması, super qovşağın güzəşti (etimad siyahılarının yenidən nəşri, açarların geri çağırılması).
14) Uyğunluq və hüquqi aspektlər
Loging və dəyişməzlik: hash zəncirləri jurnalları, timestamping, regionlara görə saxlama (data residency).
Məlumatlara giriş nəzarəti: minimallaşdırma, «rahat» şifrələmə, DLP siyasətləri, istifadəçi atributlarının təxəllüsləşdirilməsi.
Silinmə/məhdudlaşdırma hüququ: «tombstone-events» və «redaction-events» siyasəti kriptoqrafik redaktə sübutları ilə.
Audit: xarici yoxlamalar üçün imzalanmış jurnalların ixracı.
15) İqtisadiyyat və billing şəbəkəsi
Xərc modeli: × GB rele-trafik, snapshot saxlama, super-düyünlər kimi «təchizatçı qovşaqlar» (compensation per GB/RPC).
Fair-usage: nəşrlər və RPC üçün kvotalar; ödənişli «sürətləndirilmiş» kanallar/prioritetlər.
Birbaşa kanallara motivasiya: P2P-direct endirimləri, şəbəkənin «yaxşı vətəndaşları» üçün limitlərin artırılması.
16) SLO/OKR şablon (rüb)
KR1 (Bağlılıq): ≥ 75% birbaşa birləşmələr, DHT resolve p95 ≤ 300 ms.
KR2 (Məhsuldarlıq): p99 RPC ≤ 400 ms qlobal; Pub/Sub p95 ≤ 2 с.
KR3 (Etibarlılıq): RPC success ≥ 99. 7%; 20% düşmələri churn-müqavimət.
KR4 (Təhlükəsizlik): ≥ ilə 95% kanal E2E; 0 kritik imza/dəyişdirmə hadisələri.
KR5 (Qiymət): 1 RPC − 20% QoQ üçün relay trafik; CTS per GB −15% QoQ.
17) Playbook hadisələr (şparqalka)
Relay payının sıçrayışı və gecikmə artımı:- Aqressiv hole-punch aktivləşdirin, STUN hovuzlarını dəyişdirin, super qovşaqların coğrafiyasını genişləndirin, tənqidi topiklərin prioritetləşdirilməsini daxil edin.
- Etibarlı nəşriyyat açarlarını yenidən buraxın, yoxlamalar kvorumunu yandırın, köhnəlmiş qeydləri təmizləyin, nəşrləri şübhəli ziyafətlərdən müvəqqəti olaraq məhdudlaşdırın.
- Rate-limit + proof-of-work/fee-gate, boz siyahı, yeni imza eşikləri ilə overlay yenidən.
- Dərhal baxış, «revoke-event» nəşri, asılı pirlərin açarlarının rotasiyası, ACL yenidən hesablanması.
18) Konfiqurasiya nümunəsi (psevdo-YAML)
yaml p2p:
transport: [quic, tcp]
encryption: [tls13, noise]
discovery:
bootstrap_peers:
- /dns4/bootstrap-1. ecosys/p2p/12D3KooW...
- /dns4/bootstrap-2. ecosys/p2p/12D3KooX...
dht: kademlia mdns: true nat_traversal:
stun_servers: [stun1. ecosys. net, stun2. ecosys. net]
turn_relays:
- turn1. ecosys. net
- turn2. ecosys. net hole_punching: {udp: true, tcp: true}
relay_threshold_pct: 30 pubsub:
engine: gossip topics:
- name: limits. update acl: allow: [operators, providers]
- name: payouts. status acl: allow: [operators]
security:
e2e_required_topics: [payouts. status, limits. update]
acls:
operators: [12D3KooA..., 12D3KooB...]
providers: [12D3KooC..., 12D3KooD...]
rate_limits:
rpc_per_minute: 600 publish_per_minute: 1200
19) Giriş çek siyahısı
1. Birləşdirilmiş topologiyanı seçin (müqavilə qrupları daxilində mesh + super-peers + DHT).
2. Əsas bölgələrdə buta strapları və super qovşaqları qaldırın, STUN/TURN əlavə edin.
3. Hadisələrin formatlarını, imzaları, ACL və e2e siyasətini təyin edin.
4. İzləri və metrikləri daxil edin (RTT, relay-%, DHT-latency, RPC success).
5. SLO/OKR-ni düzəldin, burn-rate alertinqini açın.
6. Chaos-günü keçirin: kəsilmə, itki, Pub/Sub yükü.
7. Açarların rotasiyasını, log auditini, cavab prosedurunu tənzimləyin.
Nəticə: Ekosistemdə düzgün hazırlanmış P2P şəbəkəsi mərkəzi şlyuzlardan asılılığı azaldır, mübadiləni sürətləndirir və sabitliyi artırır. QUIC, DHT, Pub/Sub, E2E şifrələmə, ciddi ACL və ölçülebilir əməliyyat (SLO/metrika) birləşdirərək, hər bir iştirakçının passiv bir müştəri deyil, tam dəyərli bir dəyər qovşağı olduğu ölçülə bilən və təhlükəsiz şəbəkə parçasını əldə edirsiniz.