libtracer

Tracer is a spec-first, high-performance protocol for distributed state and messaging over a single zero-copy wire format — pub/sub streams, read/write/await, live configuration, and introspection across one graph of addressable vertices, from Cortex-M microcontrollers to Linux gateways. The same TLV bytes are the wire encoding, the in-memory representation, and the graph node.

libtracer is Tracer’s reference implementation: the C++ core, its bindings and integrations, and the packages this site documents. In it an in-process hand-off moves zero bytes, a steady-state forward hop makes zero heap allocations, and a plain write lands in tens of nanoseconds. Measured up to 9× the delivery rate of zenoh-c at equal payloads and semantics, with lower latency at every point — all of it CI-gated on every merge.

Note

When the spec and any other document disagree, the spec wins. The reference suite is descriptive; the design rationale (ADRs) and proposals (RFCs) live in the repository, not this site.

Evaluate it

Reproducible numbers vs Eclipse Zenoh, a live auto-generated test report across every subsystem, and the 16KB zero-heap forward gate.

Performance & Conformance
Build a node

Build the C++ node and write your first vertex, pub/sub, and a two-node exchange in about ten minutes — then browse seven compile-tested examples and the module-by-module guide.

Getting started (C++ reference implementation)
Understand the model

The descriptive six-layer model and load-bearing architecture — the “what it is”, read as one standard, independent of any implementation.

Reference 00 — Core overview
Compare implementations

Which language core or platform port does what — native codecs, ports, bindings — and how far each is verified, in one capability matrix.

Implementation capability matrix
Interoperate across vendors

Interop enforcement without a certification cartel: stay byte-agnostic, be nameable, be legible — and let a developer’s agent build the integration from a node’s own self-description.

Interoperability
Implement the protocol

The normative v1 wire protocol: byte-level TLV framing an interoperable implementation must honor, in any language on any platform. When the spec and any other document disagree, the spec wins.

The Tracer specification