OMNI-MESH
Zero-allocation mesh networking middleware for autonomous robot fleets, edge-AI swarms, and multi-agent systems.
Written in Rust. Cryptographically signed. Production-ready.
What is OMNI-MESH?
OMNI-MESH is a decentralized peer-to-peer messaging layer designed for robotics and edge-AI deployments where latency, reliability, and security matter. Every node has a cryptographic identity (DID), every message is signed, and delivery is exactly-once with ordering guarantees.
Use cases:
- Multi-robot fleet coordination (warehouse, logistics, agriculture)
- Edge-AI inference mesh (distributed LLM, sensor fusion)
- Autonomous vehicle V2V communication
- Industrial IoT with real-time constraints
- Federated learning model distribution
Key Features
| Feature | Description |
|---|---|
| Ed25519 Identity | Every node has a DID derived from its Ed25519 public key |
| Signed Envelopes | All messages are cryptographically signed and verified |
| Exactly-Once Delivery | Deduplication + ordered delivery with gap buffering |
| Pluggable Transport | Mock (testing), TCP (lightweight), QUIC (production) |
| Zero-Allocation Hot Path | Fixed-size buffers, no heap allocation in message pipeline |
| Gossip Routing | Decentralized peer discovery via UDP gossip protocol |
| DTN Support | Delay-Tolerant Networking for intermittent connectivity |
| WCET Enforcement | Worst-Case Execution Time guards with CPU pinning |
| Prometheus Metrics | Full observability with latency histograms |
| Python Bindings | PyO3-based SDK for ML/robotics teams |
| Graceful Shutdown | Signal handling, drain queues, clean exit |
| Health Checks | Built-in liveness probes for orchestration |
Quick Start
use ;
use payload;
// Create two nodes
let robot = builder
.with_config
.build
.expect;
let controller = builder
.with_config
.build
.expect;
// Send a motion command
let cmd = motion_command;
controller.send.unwrap;
// Receive and process
if let Some = robot.receive_timeout
// Health monitoring
let health = robot.health;
assert!;
Architecture
┌─────────────────────────────────────────────────────┐
│ Developer SDK │
│ OmnimeshClient (send/receive/health/shutdown) │
├─────────────────────────────────────────────────────┤
│ Security Layer │
│ Ed25519 signing + verification (mode-dependent) │
├─────────────────────────────────────────────────────┤
│ Delivery Layer │
│ Exactly-once dedup + ordered delivery + DTN │
├─────────────────────────────────────────────────────┤
│ Transport Layer │
│ Mock | TCP | QUIC (TLS 1.3) + Compression │
├─────────────────────────────────────────────────────┤
│ Routing Layer │
│ DID→SocketAddr table + UDP gossip discovery │
├─────────────────────────────────────────────────────┤
│ Buffer Layer │
│ Zero-alloc: RingBuffer, FixedMap, PayloadStorage │
└─────────────────────────────────────────────────────┘
Operational Modes
| Mode | Transport | Crypto | Delivery | Use Case |
|---|---|---|---|---|
| Development | Mock (in-process) | Optional | Best-effort | Testing, CI |
| Lightweight | TCP | Minimal | Lightweight | Embedded, constrained |
| Production | TCP/QUIC | Required | Reliable + DTN | Fleet deployment |
Running
# Build
# Run daemon
# Run examples
# Run tests (130 tests)
# Run benchmarks
Python SDK
# Create a client
=
# Send a command
# Receive messages
=
Configuration
# omni-mesh.toml
[]
= "production"
[]
= "node-1"
[]
= "tcp"
= "0.0.0.0:9000"
= "127.0.0.1:9001"
= "0.0.0.0:9443"
[]
= 1024
= 1000
= "0.0.0.0:9999"
Production Deployment Checklist
- Graceful shutdown via Ctrl+C / SIGTERM
- Health check API (
client.health()) - Back-pressure with configurable inbox capacity
- Metrics: messages sent/received/dropped
- Condvar-based efficient waiting (no busy-polling)
- Named threads for debugging
- Structured JSON logging
- Ed25519 signature enforcement in production mode
- Exactly-once delivery with persistent deduplication
- 130 tests including concurrency, crash recovery, and edge cases
- Multi-OS CI (Linux, Windows, macOS)
- Security audit in CI pipeline
- Code coverage reporting
Test Coverage
| Test Suite | Tests | Coverage |
|---|---|---|
| Unit tests (lib) | 58 | Core logic, buffer, envelope, payload |
| Buffer tests | 2 | Fixed-size data structures |
| Crash recovery | 7 | Restart resilience, memory pressure |
| Delivery | 1 | Ordered delivery pipeline |
| Envelope | 2 | Serialization roundtrip |
| Flow control | 6 | Back-pressure, rate limiting |
| Integration | 3 | Multi-layer pipeline |
| Live network | 3 | TCP/QUIC transport |
| Multi-node | 6 | Fleet coordination |
| Persistent dedup | 3 | DTN store deduplication |
| Production edge cases | 28 | Shutdown, concurrency, crypto, overflow |
| SDK | 7 | Client API surface |
| Security | 2 | Signature verification |
| Storage | 2 | Persistent storage layer |
Contributing
PRs welcome. Run cargo test and cargo clippy before submitting.