Skip to content
packet-netPublic

About

DAPPS - Distributed Asynchronous Packet Pub/Sub

Resources

Stars

1 star

Watchers

1 watching

Forks

Repository files navigation

DAPPS

Distributed Asynchronous Packet Pub-Sub. An asynchronous messaging overlay for packet-radio networks: applications queue messages destined for app@CALLSIGN, DAPPS finds a path, delivers when it can. Real-time connectivity is not a goal - think of it as packet mail for application developers, with proper delivery semantics and a modern app interface (MQTT or REST).

60-second pitch

A DAPPS node is a small daemon you run alongside your packet node (BPQ today; MeshCore and RHPv2 in flight). It exposes:

  • An app interface - local applications publish and subscribe over MQTT (or REST). They name their destination as app@CALLSIGN and DAPPS handles routing, forwarding, fragmenting, retrying, and acking.
  • A backhaul - DAPPS opens sessions to other DAPPS nodes (over AGW today) to move messages towards their destination, hop by hop, with TTL.

Bearer-agnostic by design: anything that exposes an AGW-compatible session bearer works the same way, and once RHPv2 lands in mainstream BPQ it'll plug in alongside.

Install

On Debian, Ubuntu or Raspberry Pi OS, from the packet-net apt repository:

curl -fsSL https://packet-net.github.io/apt/pubkey.asc | sudo gpg --dearmor -o /usr/share/keyrings/packet-net.gpg
echo "deb [signed-by=/usr/share/keyrings/packet-net.gpg] https://packet-net.github.io/apt ./" | sudo tee /etc/apt/sources.list.d/packet-net.list
sudo apt update && sudo apt install dapps

Then open http://<host>:5000/ and the /Setup wizard takes it from there. amd64, arm64 and armhf are published; for anything else - non-Debian Linux, Docker, Windows, macOS - see Install.

Documentation

The full operator and developer manual is at https://packet-net.github.io/dapps/.

It covers:

The roadmap and engineering notes (including the design discussion behind the bearer seam, MeshCore-as-backhaul tradeoffs, etc.) live in plan.md and docs/ in this repo.

Local simulators

Three sim scripts in scripts/ layer on top of each other from cheapest to most realistic - DAPPS-on-loopback over UDP multicast, real BPQ + XRouter over AX.25-over-UDP partner links, and real BPQ + XRouter over real KISS framing into a simulated RF channel (FM capture, collisions, hidden terminals, multi-band paths, multi-hop AX.25 chains via connect-scripts). See docs-internal/simulators.md for the topology of each, what they validate, and the bring-up nuances captured during the diagnosis runs.

Credits

To all at OARC who participated in the RFC, helping take this from a rough idea to a workable system.

About

DAPPS - Distributed Asynchronous Packet Pub/Sub

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages