GH GambleHub

Signaux entre les nœuds

1) La notion de signal

Le signal est l'unité minimale de la communication sémantique dans le réseau : événement, demande, confirmation, statut, limite, politique. Contrairement au paquet « brut », le signal a une sémantique (type, schéma, contexte, invariants) et des garanties (livraison, ordre, idempotence).
Objectifs : réduire la connectivité des services, accélérer la réponse aux changements, rendre le réseau gérable et observable.

2) Taxonomie des signaux

Evénement (Event) : Faits sur ce qui s'est passé (Created, Updated, Settled, Slashed).
Commande (Command) : Intention d'exécuter une action (Mint, Pause, RotateKey).
Requête-réponse (Query/Reply) : obtention de l'état/agrégation.
État (State Snapshot) : snapshot périodique (limites, quotas, configi).
Alert/Incidents (Alert) : déviations, dégradations, violations de la SLA.
治理/Politiki (Governance/Policy) : paramètres tarifaires, limites, versions.
Cross-domain (X-Chain/X-Domain) : transferts de droits/messages entre chaînes/zones de confiance.

Chaque classe est fixée par un schéma (ID de version, champs obligatoires, invariants).

3) Modèle de message

Composition minimale :
  • `signal_id` (ULID), `causality_id` (trace/span), `ts`, `ttl`
  • `type` (namespace:version), `schema_hash`
  • "producteur _ id'," domaine "," auth _ proof "(signé/VC/ZK)
  • 'Qos '(classe),' retries ',' attempt '
  • `payload` (CBOR/JSON/ProtoBuf), `crc`
  • 'idempotency _ key '(par entité commerciale)

4) QoS et classes de livraison

Q0 Fire-and-Forget : pas de confirmation (télémétrie, métriques).
Q1 At-Least-Once : retraits, dédoublement sur le récepteur, idempotence.
Q2 Exactly-Once (efficace) : entrée idempotent + dedup + transactionnelle outbox/inbox.
Q3 Ordered : maintien de l'ordre par clé de lot (keyed partitioning).
Q4 Priority/Deadline : Priorités et dedlines (EDF/LLF) pour les équipes critiques.

Solution : par défaut Q1 + idempotence ; Q3 - pour les flux ayant une causalité ; Q4 - pour les avary/治理.

5) Ordre, causalité et idempotence

Clés de causalité : 'aggregate _ id', 'version', 'prev _ hash'.
Modèle Outbox/InBox : validation transactionnelle de l'événement et envoi.
Hendler idempotent : enregistre 'idempotency _ key' dans 'seen table' + upsert.
Reconnaissance : rapprochements périodiques de snapshots et de logs (repair jobs).
Limites rétroactives/TTL : protection contre les répétitions « éternelles » et la dérive de l'état.

6) Contrôle de flux et backpressure

Quotas et jetons : leaky/bucket, rate-limit par type/consommateur.
Contrat de fréquence/taille : batch size, window, max-in-flight.
Drop/Degrade-policy : examen de la télémétrie en cas de surcharge ; les Q4 importants ne bousculent pas.
Équité : WFQ/DRR Planification des files d'attente.
Adaptabilité : Contrôleurs PID : augmentation du retard → réduire la fenêtre.

7) Transport et pneus

Bus d'événement local : Kafka/Pulsar/NATS/Redis Streams - lot par clé.
Demandes synchrones : gRPC/HTTP2 pour Query/Reply, Time Out et Circuit Breakers.
Canaux de domaine croisés : couches IBC/CCIP similaires, relais avec caution, confirmations prouvables.
Edge/POP : tampons locaux et relais dans core.

8) Sécurité des signaux

Authentification : mTLS/OIDC pour les S2S ; messages signés (EdDSA/secp256k1).
Autorisation : ABAC/RBAC pour les tops et les types de signaux ; Droits/limites RNFT.
Intégrité : hachages/merclisations de trampolines, journaux immuables.
Confidentialité : champs dans ZK/cryptage de champs (FPE pour Partial Fuites).
Antifrod : signatures comportementales, trafic « miel », contrôles stochastiques.

9) Observation et traçage

Corrélation : trace-id/span-id dans chaque signal, labels de bout en bout.
Métriques : p50/p95 latitude par type, taux de réussite, timeout/reties %, DLQ depth, consumer lag.
Les loges de la politique : qui, quand, ce qui a changé (治理/limity), les signatures et les diffamations des confits.
Alertings : Budgets SLO des erreurs ; échantillons synthétiques pour les voies critiques.
DLQ/Replay : files d'attente mortes, reprise avec protection contre les prises.

10) Schémas et versioning

Schema Registry : évolution des champs (back/forward compatible), semver types.
Feature flags : Activation progressive des champs/logique.
Contrats de compatibilité : tests « ancien producteur ↔ nouveau consumer » et vice versa.
Migrations : dual-write/dual-read, tops miroirs, sunset-plans.

11) Politiques de retraite et de déduplication

Retrai : retard exponentiel + jitter, maximum de tentatives, quarantine après seuil.
Dedup : stockage des dernières clés 'N'par lot ou filtres bloom ; TTL des enregistrements.
Anti-tempête : ACK/NACK de groupe, coalescing d'événements (debounce/aggregate).

12) SLA/SLO pour les signaux

Exemple de SLO cible (par classe) :
  • Q4 : p95 ≤ 200 ms, succès ≥ 99. 99%, DLQ = 0, MTTR de l'incident ≤ 15 min.
  • Q3 : p95 ≤ 500 ms, succès ≥ 99. 9 %, rupture de l'ordre ≤ 10⁻⁶/soobshcheniye.
  • Q1 : succès ≥ 99. 5 % par fenêtre T, p95 ≤ 1-2 s.

Error budget : dépassement de temps → auto-téléchargement des vitesses, inclusion des priorités, indicateur de dégradation des fiches.

13) Signaux croisés (multichain)

Preuves d'événements : light-client/state proofs au lieu de « confiance dans le relais ».
Finalité : prise en compte des retards de finalisation du domaine, verrous temporaires (challenge period).
Garanties économiques : S-caution des relais, slashings pour fausses confirmations.
Idempotence X-Domain : global 'x _ msg _ id', tables seen aux deux extrémités.
Stratégies de sortie : grues stop, limites volume/temps, quorum manuel lors des attaques.

14) Anti-collusion et abus

Signaux de contrefaçon : strong auth + détecteur d'anomalie comportementale.
Attaques de repli : nonce/TTL et clés uniques.
Collision des producteurs : audit de corrélation, échantillons aveugles, sanctions pour erreur systématique.
Événements Farming : tarification par qualité (classe Q), limites de taux par essence.

15) Pleybuk de mise en œuvre

1. Cartographie des domaines et des types de signaux. Déterminer la criticité (classe Q), les propriétaires, les schémas.
2. Choix de transport et architecture topic. Lot par clé de causalité.
3. Définition de SLO/SLA. Budgets d'erreurs, alertes, procédures d'urgence.
4. Security-by-default. Signatures, mTLS, ABAC, rotation clé.
5. Idempotence et dedup. Outbox/InBox, seen-tables, TTL.
6. Backpressure. Quotas, fenêtres, priorités, dashboards de lagunes.
7. Schema Registry & Versioning. Contrats de compatibilité, matrices de test.
8. L'observabilité. Tracing E2E, échantillons synthétiques, DLQ/Replay.
9. Pilote et jeux-jours. L'entraînement d'incident, le relais des vraies loges.
10. Mise à l'échelle. X-domain, limites, grues stop, post-mortems publics.

16) Métriques et dashboards

Performance : latency p50/p95/p99, throughput, consumer lag, in-flight.
Fiabilité : taux de réussite, retry %, DLQ depth, duplicate ratio.
Ordre : out-of-order %, reordering distance.
Économie : coût de traitement/communication, marge par classe, pénalités/incitations.
Sécurité : taux des signaux suspects, fol positif/négatif.
治理 : vitesse de déroulement des schémas/politiques, proportion de mises à niveau réussies sans retour en arrière.

17) Modèles de contrats/services

Signal Gateway : validation, authentification, normalisation, hiérarchisation.
Schema Registry : stockage/validation des schémas, interopérabilité.
Routeur de signal : routage par type/domaine, classes QoS, limites de taux.
Idempotency Store : clés, TTL, dedup.
Service DLQ/Replay : quarantaine, traitement différé, repli le long des fenêtres.
Relais X-Domain : preuves, cautions, slashing, finalité.
Policy Hub : gestion des limites/configues, audit des changements.

18) Chèque-liste de préparation

  • Les classes QoS et SLO sont définies pour tous les types de signaux
  • Signatures incluses, mTLS, rotation des clés, ABAC
  • Personnalisé outbox/inbox, handler idempotent, dedup
  • Mise en œuvre des limites de taux, backpressure, priorités
  • Introduit par Schema Registry, tests de compatibilité, plans de temps
  • Dashboards disponibles : latency/lag/DLQ, alertes sur les budgets d'erreurs
  • Incidents travaillés (jeux-jours), repli, post-mortem
  • Pour X-domain sont inclus les preuves, les cautions et les grues stop

19) Glossaire

QoS : classe de garantie de livraison/priorité.
Idempotency : refaire sans effets secondaires.
Backpressure : mécanismes qui limitent la charge en cas de surcharge.
DLQ : file d'attente « morte » pour l'échec du traitement.
Trace/Span : Identifiants de trace de bout en bout.
X-Domain/X-Chain : chemins de signaux croisés/croisés.

Résultat : les signaux correctement conçus sont le « système nerveux » du réseau. En normalisant les schémas, les garanties, la sécurité et l'observation, l'écosystème obtient une livraison prévisible, une résistance aux pannes et une évolution contrôlée sans liens cachés et béquilles manuelles.

Contact

Prendre contact

Contactez-nous pour toute question ou demande d’assistance.Nous sommes toujours prêts à vous aider !

Commencer l’intégration

L’Email est obligatoire. Telegram ou WhatsApp — optionnels.

Votre nom optionnel
Email optionnel
Objet optionnel
Message optionnel
Telegram optionnel
@
Si vous indiquez Telegram — nous vous répondrons aussi là-bas.
WhatsApp optionnel
Format : +code pays et numéro (ex. +33XXXXXXXXX).

En cliquant sur ce bouton, vous acceptez le traitement de vos données.