#agave #packet #verified #receiver #blockchain #quic #solana

agave-verified-packet-receiver

Agave Verified Packet Receiver Receiver

10 stable releases

new 3.0.10 Nov 4, 2025
3.0.8 Oct 24, 2025
3.0.4 Sep 26, 2025
3.0.0 Aug 22, 2025
0.0.0 Jun 18, 2025

#358 in Magic Beans

Download history 1/week @ 2025-08-14 196/week @ 2025-08-21 807/week @ 2025-08-28 1277/week @ 2025-09-04 283/week @ 2025-09-11 257/week @ 2025-09-18 591/week @ 2025-09-25 361/week @ 2025-10-02 202/week @ 2025-10-09 341/week @ 2025-10-16 413/week @ 2025-10-23 222/week @ 2025-10-30

1,297 downloads per month
Used in 8 crates (via solana-core)

Apache-2.0

420KB
9K SLoC

Introduction

The Vortexor is a service that can offload the tasks of receiving transactions from the public, performing signature verifications, and deduplications from the core validator, enabling it to focus on processing and executing the transactions. The verified and filtered transactions will then be forwarded to the validators linked with the Vortexor. This setup makes the TPU transaction ingestion and verification more scalable compared to a single-node solution.

This module implements the VerifiedPacketReceiver in the below architecture which encapsulates the functionality of receiving the verified packet batches from the vortexor. In the first impelementation, we use UDP to receive the verified packets from the vortexor. It is designed to support other protocol option such as using QUIC.

Architecture

Figure 1 describes the architecture diagram of the Vortexor and its relationship with the validator.

                 +---------------------+
                 |   Solana            |
                 |   RPC / Web Socket  |
                 |   Service           |
                 +---------------------+
                            |
                            v
                +--------------------- VORTEXOR ------------------------+
                |           |                                           |
                |   +------------------+                                |
                |   | StakedKeyUpdater |                                |
                |   +------------------+                                |
                |           |                                           |
                |           v                                           |
                |   +-------------+        +--------------------+       |
    TPU -->     |   | TPU Streamer| -----> | SigVerifier/Dedup  |       |
    /QUIC       |   +-------------+        +--------------------+       |
                |        |                          |                   |
                |        v                          v                   |
                |  +----------------+     +------------------------+    |
                |  | Subscription   |<----| VerifiedPacketForwarder|    |
                |  | Management     |     +------------------------+    |
                |  +----------------+            |                      |
                +--------------------------------|----------------------+
                            ^                    | (UDP/QUIC)
Heartbeat/subscriptions     |                    |
                            |                    v
                +-------------------- AGAVE VALIDATOR ------------------+
                |                                                       |
                |  +----------------+      +-----------------------+    |
      Config->  |  | Subscription   |      | VerifiedPacketReceiver|    |
  Admin RPC     |  | Management     |      |                       |    |
                |  +----------------+      +-----------------------+    |
                |        |                           |                  |
                |        |                           v                  |
                |        v                      +-----------+           |
                |  +--------------------+       | Banking   |           |
Gossip <--------|--| Gossip/Contact Info|       | Stage     |           |
                |  +--------------------+       +-----------+           |
                +-------------------------------------------------------+

                                   Figure 1.

Dependencies

~32–53MB
~1M SLoC