> ## Documentation Index
> Fetch the complete documentation index at: https://docs.thornode.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Raw Shred Stream

> Receive live raw Solana shreds from ThorNode at your public UDP receiver.

Raw Shred Stream sends live raw Solana shreds from one ThorNode location to a UDP receiver that you operate. The dashboard labels this product **ShredStream**. The output is protocol bytes, not decoded transactions.

## Live raw shreds

| Good fit                                         | Choose another product                                                                                        |
| ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------- |
| You need live shreds before application decoding | You need decoded transactions; use [Yellowstone gRPC](/products/yellowstone-grpc) or [Pulse](/products/pulse) |
| You operate a public UDP receiver                | You cannot accept inbound UDP at a stable public IPv4 address                                                 |
| Your pipeline handles UDP delivery behavior      | You need recent captured shreds; use [Replay](/products/shredreplay) instead of a live feed                   |

## Quick reference

| Item              | Value                                                                                  |
| ----------------- | -------------------------------------------------------------------------------------- |
| Dashboard path    | **Endpoints → ShredStream**                                                            |
| Registration      | One enabled location, one numeric IPv4 value accepted by the dashboard, and one port   |
| Transport         | UDP to your receiver                                                                   |
| Port              | Integer from `1024` through `65535`, inclusive                                         |
| Output            | UDP datagrams containing raw Solana shred bytes                                        |
| Authentication    | Access is checked when you save the registration; packets carry no customer credential |
| Delivery behavior | Packet loss, duplication, and reordering are possible                                  |
| Working result    | Your receiver reports at least one nonzero packet count                                |

## Receive your first packets

Follow the [Raw Shred Stream quickstart](/products/raw-shred-stream/quickstart) to run a minimal UDP receiver, register its public IPv4 and port, and see the first packets arrive.

## Handle UDP in production

UDP does not acknowledge or sequence delivery for your application. Design the consumer around these outcomes:

| Network outcome | Receiver responsibility                                                             |
| --------------- | ----------------------------------------------------------------------------------- |
| Packet loss     | Detect gaps when your decoder exposes suitable identifiers; reconcile when required |
| Duplication     | Make downstream processing idempotent or deduplicate decoded records                |
| Reordering      | Do not treat receive order as shred or transaction order                            |
| Traffic bursts  | Keep the socket callback small and hand work to a bounded queue                     |

Monitor socket drops, application queue depth, packet rate, and byte rate. Raw Shred Stream does not decode, validate, persist, or replay packets for your consumer. Registration limits and enabled locations come from the selected access in the dashboard.

## Troubleshooting

| Problem                            | Fix                                                                                         |
| ---------------------------------- | ------------------------------------------------------------------------------------------- |
| Counters remain at zero            | Check the public target, firewall, security group, NAT forwarding, access, and location.    |
| Capture sees packets; app does not | Bind the process to `0.0.0.0:<registered-port>` and stop any process using the same port.   |
| Packets arrive; parsing fails      | Use a decoder for raw Solana shred bytes, not JSON or decoded transactions.                 |
| Packet drops rise under load       | Move parsing and storage out of the socket callback, then tune bounded queues from metrics. |

If you restrict inbound traffic by source, obtain the current source ranges from [ThorNode support](mailto:support@thornode.io) instead of relying on a copied allowlist.

## Next steps

* [Run the quickstart](/products/raw-shred-stream/quickstart)
* [Replay recently captured shreds](/products/shredreplay)
* [Review live access limits](/reference/plans-and-limits)
* [Diagnose UDP delivery](/reference/troubleshooting#raw-shred-stream-or-replay-sends-no-udp-data)
