DSX Exchange is an open source event bus for AI factory operations. It supports real-time operational signal exchange between power management systems, building management systems, cooling infrastructure, grid interfaces, and compute schedulers.
DSX Exchange consists of three components:
The DSX Event Bus is a NATS messaging platform that provides MQTT 3.1.1 connectivity, JetStream persistence, and multi-cluster leaf node federation across the AI factory topology.
The event bus supports the following capabilities:
DSX Exchange targets MQTT 3.1.1 rather than MQTT 5 because a major integration surface is building management systems and industrial OT infrastructure. The BMS and process-control industry overwhelmingly ships MQTT 3.1.1 clients, and the 3.1.1 protocol is simpler with fewer edge cases. This is a deliberate architectural decision — NATS implements MQTT 3.1.1 only, and 3.1.1 maximizes compatibility with the installed base of OT and BMS devices in a gigawatt-scale AI factory.
Concrete signal paths it enables today:

PlantUML sources are in assets/diagrams/.
The AI Factory deploys one Common Services Cluster (CSC) and one or more Control Plane Clusters (CPCs). Each cluster runs an independent NATS event bus instance. CPCs federate to the CSC via NATS leaf node connections through a Kubernetes Gateway API-compatible controller.
Each cluster is a separate Kubernetes cluster with overlapping internal networks. All inter-cluster communication flows through Gateway LoadBalancer services with unique external IPs. The cluster operator provides the Gateway API implementation (Envoy Gateway is used in the reference deployment but any conformant controller works).
Replica counts are defaults for a reference deployment. Actual values are configurable and depend on the scale of the data center deployment.
The event bus provides two types of topic space:
CSC Topic Space is a unified namespace that spans all clusters. Messages published here are visible to subscribers in every cluster. Clients see full topic paths including CPC prefixes (e.g., cpc.1.telemetry.temp).
CPC Topic Spaces are per-cluster local namespaces. Messages stay within that CPC unless the topic is configured for cross-layer routing. Clients use simple names without prefixes (e.g., telemetry/temp).
Detailed routing diagrams for every publish scenario (local, cross-space, federated) are in assets/diagrams/routing/.
Cross-layer configuration controls which topics are copied between CPC local and CSC unified topic spaces:
Routing is enforced by NATS account import/export rules generated from global.eventBus.crossLayer Helm values. The Gateway controller does no topic filtering — it passes TCP traffic transparently.
The three lists must not overlap. A subject pattern that appears in more than one list creates cyclic NATS imports that crash the NATS pod (CrashLoopBackOff) with no user-facing error at install time.
NATS provides native MQTT 3.1.1 support. MQTT topic separators (/) are mapped to NATS subject tokens (.) — for example, the MQTT topic telemetry/temp becomes the NATS subject telemetry.temp. This mapping is transparent to MQTT clients.
Supported QoS levels:
JetStream provides message persistence. MQTT QoS 1 messages and retained messages are stored in JetStream streams managed declaratively by the NACK controller.
mqttStreams Helm valuesThe mTLS cluster’s SYS account is federated to the main cluster via leaf node, enabling centralized monitoring of both NATS instances from a single Surveyor.