Using Snap Sync for Chain Operators
This guide reviews the optional feature of Snap Sync for OP chains, including benefits and how to enable the feature.
Snap Sync significantly improves the experience of syncing an OP Stack node. Snap Sync is a native feature of go-ethereum that is now optionally enabled on op-node
& op-geth
.
Snap Sync works by downloading a snapshot of the state from other nodes on the network and is then able to start executing blocks from the completed state rather than having to re-execute every single block.
This means that performing a Snap Sync is significantly faster than performing a full sync.
- Snap sync enables node operators on your network to sync faster.
- Snap sync removes the need for nodes on your post Ecotone network to run a blob archiver.
Enable Snap Sync for Chains
To enable snap sync, chain operators need to spin up a node which is exposed to the network and has transaction gossip disabled.
For snap sync, all op-geth
nodes should expose port 30303
TCP and 30303
UDP to easily find other op-geth nodes to sync from.
- If you set the port with
--discovery.port
, then you must open the port specified for UDP. - If you set
--port
, then you must open the port specified for TCP. - The only exception is for sequencers and transaction ingress nodes.
Setup a Snap Sync Node
- Expose port
30303
(op-geth
's default discovery port) to the internet on TCP and UDP. - Disable transaction gossip with the
--rollup.disabletxpoolgossip
flag
Enable Snap Sync on Your Network
- Follow the Node Operator Snap Sync Guide to enable snap sync for your chain network.
Next Steps
- See the Node Configuration guide for additional explanation or customization.
- If you experience difficulty at any stage of this process, please reach out to developer support (opens in a new tab).