Safe Haskell | None |
---|---|
Language | Haskell2010 |
Cardano.Network.Diffusion.Configuration
Contents
Description
One stop shop for configuring diffusion layer for upstream clients This module contains Cardano specific configuration parameters
Synopsis
- newtype DefaultNumBootstrapPeers = DefaultNumBootstrapPeers {}
- newtype NumberOfBigLedgerPeers = NumberOfBigLedgerPeers {}
- defaultNumBootstrapPeers :: DefaultNumBootstrapPeers
- defaultSyncTargets :: PeerSelectionTargets
- defaultNumberOfBigLedgerPeers :: NumberOfBigLedgerPeers
- defaultChainSyncIdleTimeout :: ChainSyncIdleTimeout
- defaultBlockFetchConfiguration :: Int -> BlockFetchConfiguration
- defaultMiniProtocolParameters :: MiniProtocolParameters
- srvPrefix :: SRVPrefix
- data ChainSyncIdleTimeout
- data BlockFetchConfiguration = BlockFetchConfiguration {}
- data MiniProtocolParameters = MiniProtocolParameters {}
Documentation
newtype DefaultNumBootstrapPeers Source #
Default number of bootstrap peers
Constructors
DefaultNumBootstrapPeers | |
Fields |
Instances
Show DefaultNumBootstrapPeers Source # | |
Defined in Cardano.Network.Diffusion.Configuration Methods showsPrec :: Int -> DefaultNumBootstrapPeers -> ShowS # show :: DefaultNumBootstrapPeers -> String # showList :: [DefaultNumBootstrapPeers] -> ShowS # | |
Eq DefaultNumBootstrapPeers Source # | |
Defined in Cardano.Network.Diffusion.Configuration Methods (==) :: DefaultNumBootstrapPeers -> DefaultNumBootstrapPeers -> Bool # (/=) :: DefaultNumBootstrapPeers -> DefaultNumBootstrapPeers -> Bool # |
newtype NumberOfBigLedgerPeers #
Minimum number of hot big ledger peers in Genesis mode
for trusted state to be signalled to Consensus. This number
should be smaller than the targetNumberOfActiveBigLedgerPeers
but greater than 1. In Genesis, we may demote a big ledger peer
for underperformance, but not promote a replacement immediately
to guard against adversaries which may want to slow down our
progress.
Constructors
NumberOfBigLedgerPeers | |
Fields |
Instances
FromJSON NumberOfBigLedgerPeers | |
Defined in Cardano.Network.Types Methods parseJSON :: Value -> Parser NumberOfBigLedgerPeers # parseJSONList :: Value -> Parser [NumberOfBigLedgerPeers] # | |
Show NumberOfBigLedgerPeers | |
Defined in Cardano.Network.Types Methods showsPrec :: Int -> NumberOfBigLedgerPeers -> ShowS # show :: NumberOfBigLedgerPeers -> String # showList :: [NumberOfBigLedgerPeers] -> ShowS # | |
Eq NumberOfBigLedgerPeers | |
Defined in Cardano.Network.Types Methods (==) :: NumberOfBigLedgerPeers -> NumberOfBigLedgerPeers -> Bool # (/=) :: NumberOfBigLedgerPeers -> NumberOfBigLedgerPeers -> Bool # |
defaultSyncTargets :: PeerSelectionTargets Source #
These targets are established when Genesis mode is enabled in node configuration and when the node is syncing up
defaultNumberOfBigLedgerPeers :: NumberOfBigLedgerPeers Source #
This parameter controls the minimum number of active connections
with big ledger peers that must be maintained when syncing in
Genesis mode such that trusted state can be signalled to Consensus.
Exiting syncing / entering deadline mode is predicated on this
condition. This should be below targetNumberOfActiveBigLedgerPeers
in syncTargets
otherwise untrusted state will never be departed.
This value is lower than the target, because in Genesis we may
demote a big ledger peer for underperformance and not immediately
promote one from the warm set in case there are adversaries
whom are intentionally trying to slow us down.
defaultBlockFetchConfiguration :: Int -> BlockFetchConfiguration Source #
Configuration for FetchDecisionPolicy.
Re-exports
data ChainSyncIdleTimeout #
ChainSync timeout for the StIdle
state, e.g. how long the client can
await for MsgRollForward
, MsgRollBackward
, MsgIntersectFound
or
MsgIntersectNotFound
.
Constructors
ChainSyncIdleTimeout DiffTime | |
ChainSyncNoIdleTimeout |
data BlockFetchConfiguration #
Configuration for FetchDecisionPolicy. Should be determined by external local node config.
Constructors
BlockFetchConfiguration | |
Fields
|
Instances
Show BlockFetchConfiguration | |
Defined in Ouroboros.Network.BlockFetch Methods showsPrec :: Int -> BlockFetchConfiguration -> ShowS # show :: BlockFetchConfiguration -> String # showList :: [BlockFetchConfiguration] -> ShowS # |
data MiniProtocolParameters Source #
Constructors
MiniProtocolParameters | |
Fields
|