Shred stream data dictionary
Define every network observation, common header, data header, coding header, Merkle element, recovery key, entry, and transaction field used in a raw shred pipeline.
Representation layers
There is no documented shredstream.sh wrapper around the raw shred. Offset zero of the live UDP payload is offset zero of the Solana shred.
Network observation fields
source_ip, source_port, destination_ip, destination_port, timestamps, interface index, and queue are not bytes inside the shred payload.
Verification datagram
Parse the documented prefix and treat the remaining bytes as an opaque challenge unless a separate current interface defines them. Do not apply the shred parser to a verification datagram.
Shred common header
Data-shred header
Coding-shred header
Variant fields
The exact numeric discriminants and legal flag combinations come from the pinned Agave release. A receiver must not accept an unknown combination by masking it into a known family.
Merkle material
Proof position uses the erasure-shard position, not the global coding index. Proof bytes, chained roots, and retransmitter signatures are not ledger data.
Receiver-derived identity fields
FEC-set state
A set becomes mathematically recoverable when at least k compatible shards are available. Every reconstructed data shred still requires full sanitation and authentication.
Ordered data stream
Concatenate data slices only. Coding payload, headers, padding, and Merkle material never enter this byte stream.
Entry structure
Entry boundaries are produced by the ledger serialization, not by UDP packet boundaries. One entry can span shreds, and one shred can contain parts of more than one entry.
Versioned transaction structure
Message header
Legacy and versioned message fields
Address lookup contents are not carried inside the shred beyond the lookup references in the transaction. Resolving loaded addresses requires the relevant on-chain lookup-table state.
Compiled instruction fields
Instruction data has no universal schema. Decode it only with the selected program’s instruction definition and the correct program version.
Fields not present in raw shreds
Seeing a signed transaction in a valid leader shred does not mean that transaction succeeded, became rooted, or was finalized.
Questions
- Does shredstream.sh add fields around each shred?
- No service envelope is documented. One live UDP payload is one raw Solana shred, so payload offset zero is the shred signature. Source address, destination address, ports, receive timestamp, interface, and queue are network or receiver metadata. They are not fields inserted before the Solana bytes.
- Are entries aligned to shred boundaries?
- No. Entry serialization is independent of UDP fragmentation into shreds. One entry can span several data shreds, while one data shred can contain bytes from multiple entries. The receiver orders sanitized data slices, recovers gaps, respects completion boundaries, and then runs the ledger entry decoder over the continuous bytes.
- Do raw shreds contain transaction status and logs?
- No. Raw shreds can be reconstructed into entries and signed transactions, but execution status, log messages, compute consumption, account changes, balances, commitment, and finalization arise later during replay and consensus. A transaction observed in a shred remains proposed data until those later stages supply their own evidence.