Jito's Relayer and Block Engine combination allows access to Solana's mempool for efficient MEV extraction.
What is a mempool?
A mempool contains all of the unprocessed transactions on a network. Before a transaction gets executed, it will sit in a mempool before being executed.
What is a mempool stream?
Solana has a unique architecture because there's no mempool! Transactions are sent directly to leaders in what's called Gulf Stream. Between this and the streaming nature of Solana, the mempool looks more like a river than a pool.
Jito's unique architecture allows searchers to receive a stream of pending transactions called a mempool stream so they can inspect and bundle them to be executed sequentially and atomically on the validator.
How does it work?
When a Jito-Solana validator starts up, it connects to a relayer and tells the network though gossip to send transactions to the relayer instead of directly to the validator. The relayer will filter and deduplicate transactions before immediately forwarding them to Jito's Block Engine. The Block Engine will then send transactions to searchers where searchers can bundle the trades and submit them to the block engine to be included in the current block.
The relayer holds transactions for at most 200ms before forwarding them to the validator. This means that searchers have at most 200ms to construct bundles before the packets beat them to the validator.
The 200ms delay maximizes the fairness for searchers to contruct bundles, doesn't impact the validator's block packing ability, doesn't impact Solana's UX, and allows for efficient MEV.
Why would I use the MempoolStream?
HFT and MEV searching on Solana is currently a FIFO game that's reactionary. There's no way to determine whats going to happen ahead of time; you can only discover that MEV is created after a transaction has been executed.
By using the MempoolStream, searchers can subscribe to transactions that have yet to be executed, which allows searchers to simulate and predict what's going to happen. When searchers find a set of transactions that expose MEV, they can submit bundles to Jito's Block Engine.
This changes Solana MEV by allowing searchers to atomically capture MEV as fast as possible. Furthermore, because the MEV is captured so fast, it will not trigger other bots on the network to send transactions, helping the network run more efficiently due to less percentage of blockspace being dedicated to failed MEV transactions.
How do I access the mempool?
The mempool can be accessed through the block engine. After getting access to the block engine, one can run searcher_client in the searcher-examples repository to inspect the mempool. Please look at the README.md in the repository for the most up-to-date instructions on listening to the mempool.
How Do I Sign Up?
The mempool is currently free, but API-gated to avoid abuse. Complete this form and we should have you setup within 48 hours. You will get an email once setup is complete. The form enables you to opt in for ShredStream, RPC services and bundle submission whitelisting.