Samizdat_Mesh

Network Protocol

Store-and-forward epidemic routing — messages travel at walking speed.

Network Architecture
Full network topology — Throwies, Mules, Sinks
Network Architecture

Full network topology — Throwies, Mules, Sinks

×

01. Epidemic Routing

Samizdat uses store-and-forward epidemic routing. Messages are infectious agents. When two nodes meet (Throwie-Mule or Mule-Mule), they exchange compact fingerprints representing their known message sets via Negentropy set reconciliation.

If Node A has messages Node B lacks, they are transmitted via the Glacier V2 transport protocol. This ensures rapid diffusion throughout the physical area without requiring a central directory.

Reconciliation uses Range-Based Set Reconciliation (RBSR) with XOR-Sum accumulators. Typical sync of 50-item difference completes in 1-2 round trips (~200ms).

02. Glacier V2 Transport

The Glacier protocol provides reliable delivery of 2 KB "Drops" over ESP-NOW's 250-byte connectionless datagrams. Header overhead: 14 bytes. Payload per frame: ~210 bytes. Frames per 2KB Drop: 10 packets.

glacier_v2.frame
struct GlacierFrame {
  magic      1B   0x74 ('t') Protocol ID
  type_ver   1B   4b Type + 4b Version
  session_id 2B   Random nonce per contact
  seq_frag   2B   12b SeqNum + 4b FragIdx
  short_id   8B   64-bit truncated hash
  payload    ~210B Variable payload
  crc16      2B   Polynomial 0x8005
};
8
Window Size (frames)
Fits ESP-NOW hardware queue
2ms
Inter-frame Gap
Prevents receiver overflow
50ms
Retransmit Timeout
Accounts for processing delay
~500kbps
Effective Throughput
Full 1.5 MB sync in <30s

03. Cryptography

All cryptographic operations use audited, constant-time implementations from the @noble family (TypeScript) with Go parity via taynik.

Blake3 Key derivation (KDF) and content hashing. Context: smzd:ck:1
XChaCha20-Poly1305 Payload encryption. Format: nonce(24) || ciphertext || tag(16)
X25519 Key exchange for future Mule-Mule encrypted channels
Ed25519 Signatures (future). Full verification after Negentropy transfer.

04. Temperature & Consensus

There are no moderators, no algorithms, no central ranking. Instead, messages carry a temperature value that rises with retransmission and decays over time. Hot content spreads. Cold content dies locally.

Temperature is not a score or a status. It is the network's metabolic signal — evidence that humans found something worth carrying. A message only exists to the extent it was physically moved.

The system has a finite capacity (750 messages per Throwie). When storage fills, the coldest messages are evicted. This mortality is by design — information lives and dies based on whether humans carry it.

Temperature System
Temperature propagation and reputation dynamics
Temperature System

Temperature propagation and reputation dynamics

×

05. Data Flow

Data Flow
Message flow through the mesh — NFC write to Throwie gossip to Mule sync
Data Flow

Message flow through the mesh — NFC write to Throwie gossip to Mule sync

×
OFFICIAL REGISTER
SAMIZDAT MESH v0.3.0
Firmware
ESP-IDF 5.3OK
ESP-NOWACTIVE
LittleFSMOUNTED
Cryptography
Blake3 KDFVALID
XChaCha20SEALED
NegentropySYNCED
Protocol
Glacier V2TRANSPORT
TemperatureTRACKING
TTL ExpiryENFORCED
Constants
Network ID0x444D5A53
Max Payload250B
Max Message2048B
Storage750/node
[END OF TRANSMISSION]