π οΈ Building a Receiver
Raw Shred Stream delivers raw Solana shreds straight to your server over UDP, into your own receiver. That is the point of the product: you sit as close to the wire as possible and keep full control over how the data is received, reassembled, and decoded. One rule: the deshredder/decoder must be optimized, or the latency advantage is lost on your side. This page explains what your receiver needs to do, and when Decoded Shred Stream is the better fit.
TL;DR β raw shreds need a fast, optimized deshredder/decoder to keep the latency edge. If you would rather not run a decoder at all, Decoded Shred Stream delivers transactions already reassembled.
π§© What You Need to Build
With raw shreds, the pipeline from the wire to usable data is yours to build:
| Stage | What you implement |
|---|---|
| UDP socket + OS buffers | Open and bind a UDP socket, tune rmem_max/maxsockbuf, and monitor drops |
| Deshredding | Parse the Solana shred binary format from each datagram |
| Reassembly | Reorder and reassemble shreds by index within each slot (FEC/Merkle) |
| Transaction decoding | Deshred and decode Solana transactions from the reassembled payloads |
| Lifecycle | Drain sockets and flush buffers cleanly on shutdown |
Each UDP datagram carries one raw Solana shred β see Network Setup for socket-buffer tuning, and the Raw Shred Quickstart for a minimal listener that confirms datagrams are arriving. Need something that runs today? The legacy shredstream client does the client-side deshredding for you, but is no longer the recommended option for latency β see the Raw Shred Quickstart.
π― When Raw Shreds Are the Right Choice
Choose Raw Shred Stream if you:
- Want maximum control and the lowest-level access, closest to the wire.
- Already run β or want to run β your own deshredding, reassembly, and decoding pipeline.
- Need to keep your stack minimal and self-contained.
Reach for Decoded Shred Stream if you:
- Don't want to run or maintain a deshredder/decoder at all.
- Want transactions already reassembled in standard wire format, straight into your existing parser.
β‘ Skip the Decoder Entirely: Decoded Shred Stream
If you would rather not run the pipeline, ShredStream.com offers Decoded Shred Stream: transactions already deshredded and reassembled on our nodes, delivered in standard wire format β over UDP or gRPC:
- Decoded Shred Stream β fully reassembled Solana transactions in standard wire format, received with the
decoded-shredstreamclient (JavaScript, Python, Rust, and Go).
It delivers at sub-millisecond latency, near-identical to a raw shred stream β without the deshredding and reassembly work.
β‘οΈ Next Steps
- Raw Shred Quickstart β bind a UDP socket and receive your first raw shred datagram.
- Network Setup β firewall and OS-level tuning.
- Best Practices β monitoring, redundancy, performance.