Mesh networking simulation for tactical edge environments — DDIL-tolerant message routing, node discovery, store-and-forward relay, and network partition recovery. Built for defense and austere environments where connectivity is intermittent, bandwidth is scarce, and latency is measured in minutes, not milliseconds.
Written in Rust because tactical edge systems run on constrained hardware where every byte of memory and every CPU cycle matters, and panics are not an option.
defense-edge-mesh/
├── src/
│ ├── main.rs # CLI entry point
│ ├── lib.rs # Library root
│ ├── mesh/
│ │ ├── mod.rs
│ │ ├── node.rs # Mesh node with identity, state, capabilities
│ │ ├── router.rs # DDIL-aware message routing
│ │ ├── discovery.rs # Peer discovery (broadcast, multicast, manual)
│ │ └── partition.rs # Network partition detection and recovery
│ ├── transport/
│ │ ├── mod.rs
│ │ ├── message.rs # Message format with priority and TTL
│ │ └── store_forward.rs # Store-and-forward relay for disconnected ops
│ ├── crypto/
│ │ ├── mod.rs
│ │ └── identity.rs # Node identity and message authentication
│ └── sim/
│ ├── mod.rs
│ └── scenario.rs # Network scenario simulation
├── configs/
│ └── platoon_mesh.toml # Sample tactical mesh topology
├── Cargo.toml
└── Makefile
- Disrupted — routes heal automatically when links recover
- Disconnected — store-and-forward bridges air gaps via mobile relays
- Intermittent — priority-based queue draining during brief connectivity windows
- Limited — bandwidth-aware routing that respects link capacity constraints
- Messages persist locally when no route exists to destination
- Automatic forwarding when connectivity is restored or a relay node arrives
- Priority queuing: critical messages drain first during limited windows
- TTL-based expiration to prevent stale message flooding
- Broadcast discovery for LAN/WLAN environments
- Manual peer registration for radio-linked or satellite nodes
- Capability advertisement: bandwidth, latency, battery, classification level
- Heartbeat-based liveness detection with configurable thresholds
- Partition detection via spanning tree analysis
- Merge protocol when partitioned segments reconnect
- State reconciliation: vector clocks for causal ordering of events
- Split-brain resolution with configurable tie-breaking rules
cargo build --release
cargo run -- simulate --topology configs/platoon_mesh.toml --scenario ddil_advance
cargo run -- analyze --topology configs/platoon_mesh.toml- Assume disconnection — the network is partitioned by default
- Prioritize by mission impact — not all messages are equal
- Zero external dependencies at runtime — no DNS, no cloud, no internet
- Deterministic behavior — same topology + same scenario = same result
Tactical edge systems run on embedded hardware with strict resource constraints:
- No runtime — no GC pauses during time-critical message routing
- Memory safety — buffer overflows in networking code are CVEs
- Small binaries — deploy to ARM-based tactical radios and field servers
- Fearless concurrency — parallel message processing across radio interfaces
Built from experience working defense technology and edge compute at Microsoft, where "edge" means a forward-deployed server in a shipping container, not a CDN POP. The patterns here — store-and-forward, partition tolerance, priority-based routing — come from real DDIL (Denied, Disrupted, Intermittent, Limited) networking requirements. All implementations are original and unclassified.
MIT