PSSP documentation
Publish Subscribe Streaming Protocol

Independent, lightweight streaming distribution

PSSP is an opaque-data publish/subscribe protocol. The broker accepts bytes, holds a bounded in-memory buffer for each topic, and distributes them to authorized subscribers without interpreting audio, video, images, files, control data, or synchronization data.

Scope boundary

This repository contains only the broker and the desktop management client. OX Firmware and WebService are future PSSP clients; no code from either project is embedded here.

Broker

Run, configure, secure, and deploy the standalone Rust/Tokio service.

Use the broker →

Desktop client

Connect, authenticate, subscribe, publish QoS 1 data, and verify UDP heartbeat.

Use the client app →

Troubleshooting

Diagnose startup, SQLite, credentials, TLS, AES-only pinning, ACL, UDP, and replay failures.

Resolve a problem →

Applications

ApplicationLocationSupported systemsResponsibility
PSSP BrokerSource: broker/
Executable and run commands
Windows, Linux, macOSAuthentication, authorization, bounded topic caching, QoS 1 fan-out/replay, QoS 0 UDP handling.
PSSP Clientclient/Windows, Linux, macOSDesktop connection/login, topic inspection, test publishing, heartbeat validation, and diagnostics.

QoS at a glance

QoS 1 · TCP

Reliable application data

Use for audio, video, images, files, and all data that must not be silently lost. A broker PUBACK confirms acceptance. Subscribers send MSGACK after their durable handoff. Topic buffers provide bounded replay.

QoS 0 · UDP

Best-effort liveness

Use normally for heartbeat and other loss-tolerant signals. There is no receipt, retry, subscriber acknowledgement, or replay. A UDP endpoint is tied to a live authenticated TCP session.

Security modes

ModeConfigurationUse
TLS + AESTLS 1.3 enabled + PSSP AES-256-GCM enabledNormal deployment. A new in-memory AES key is created for every authenticated connection.
AES onlyTLS disabled + PSSP AES enabled + pinned Broker X25519 public keyNo certificate transport layer. Each session derives AES locally through X25519 + HKDF; the symmetric key is never sent over the network.
Plain TCP/UDPTLS/AES disabled + explicit allow_insecure_tcp_udp = trueTrusted local/private network only. Credentials and payloads are readable on the network.

License

Proprietary software

Copyright © 2026 OX Recorder. All rights reserved. The PSSP broker, client, protocol documentation, and associated source are proprietary. No permission to copy, modify, distribute, sublicense, or use them is granted except under a separate written agreement with OX Recorder. Third-party components remain subject to their own license terms.