Sumeragi Parameters
TODO Explain sumeragi module. Clarify that it consists of transactions and blocks gossiping, which are two separate processes. Explain how periods & gossip sizes might affect network load & speed of sync. Explain the pipeline of transactions and blocks, refer to consensus section and maybe some others.
sumeragi.block_gossip_period
- Type: String or Number, Duration
- Default: 10 seconds
The time interval between requests to peers for the most recent block.
Example:
[sumeragi]
block_gossip_period = "5s"
[sumeragi]
block_gossip_period = "5s"
WARNING
More frequent gossiping shortens the time to sync, but can overload the network.
sumeragi.max_blocks_per_gossip
- Type: Number
- Default:
The amount of blocks that can be sent in a single synchronization message.
Example:
[sumeragi]
max_blocks_per_gossip = 4
[sumeragi]
max_blocks_per_gossip = 4
sumeragi.max_transactions_per_gossip
- Type: Number
- Default:
Max number of transactions in a gossip batch message. Smaller size leads to longer time to synchronise, but useful if you have high packet loss.
Example:
[sumeragi]
max_transactions_per_gossip = 500
[sumeragi]
max_transactions_per_gossip = 500
sumeragi.transaction_gossip_period
- Type: String or Number, Duration
- Default: 1 second
Period for pending transaction gossiping between peers.
Example:
[sumeragi]
transaction_gossip_period = "1s"
[sumeragi]
transaction_gossip_period = "1s"
WARNING
More frequent gossiping shortens the time to sync, but can overload the network.
sumeragi.trusted_peers
- Type: Array of Peer Ids
- Optional
Optional list of predefined trusted peers.
Each Peer Id consists of:
address
: Address of the peer.- Type: String, Socket-Address
- Required
public_key
: Public key of the peer.- Type: String, Multi-hash
- Required
peer_id = { address = "localhost:1338", public_key = "ed0120FAFCB2B27444221717F6FCBF900D5BE95273B1B0904B08C736B32A19F16AC1F9" }
peer_id = { address = "localhost:1338", public_key = "ed0120FAFCB2B27444221717F6FCBF900D5BE95273B1B0904B08C736B32A19F16AC1F9" }
An array can be defined in two ways. Like this:
[[sumeragi.trusted_peers]]
address = "localhost:1338"
public_key = "ed012067C02E340AADD553BCF7DB28DD1F3BE8BE3D7581A2BAD81580AEE5CC75FEBD45"
[[sumeragi.trusted_peers]]
address = "localhost:1339"
public_key = "ed0120236808A6D4C12C91CA19E54686C2B8F5F3A786278E3824B4571EF234DEC8683B"
[[sumeragi.trusted_peers]]
address = "localhost:1340"
public_key = "ed0120FAFCB2B27444221717F6FCBF900D5BE95273B1B0904B08C736B32A19F16AC1F9"
[[sumeragi.trusted_peers]]
address = "localhost:1338"
public_key = "ed012067C02E340AADD553BCF7DB28DD1F3BE8BE3D7581A2BAD81580AEE5CC75FEBD45"
[[sumeragi.trusted_peers]]
address = "localhost:1339"
public_key = "ed0120236808A6D4C12C91CA19E54686C2B8F5F3A786278E3824B4571EF234DEC8683B"
[[sumeragi.trusted_peers]]
address = "localhost:1340"
public_key = "ed0120FAFCB2B27444221717F6FCBF900D5BE95273B1B0904B08C736B32A19F16AC1F9"
Or like this:
[sumeragi]
trusted_peers = [
{ address = "localhost:1338", public_key = "ed012067C02E340AADD553BCF7DB28DD1F3BE8BE3D7581A2BAD81580AEE5CC75FEBD45" },
{ address = "localhost:1339", public_key = "ed0120236808A6D4C12C91CA19E54686C2B8F5F3A786278E3824B4571EF234DEC8683B" },
{ address = "localhost:1340", public_key = "ed0120FAFCB2B27444221717F6FCBF900D5BE95273B1B0904B08C736B32A19F16AC1F9" },
]
[sumeragi]
trusted_peers = [
{ address = "localhost:1338", public_key = "ed012067C02E340AADD553BCF7DB28DD1F3BE8BE3D7581A2BAD81580AEE5CC75FEBD45" },
{ address = "localhost:1339", public_key = "ed0120236808A6D4C12C91CA19E54686C2B8F5F3A786278E3824B4571EF234DEC8683B" },
{ address = "localhost:1340", public_key = "ed0120FAFCB2B27444221717F6FCBF900D5BE95273B1B0904B08C736B32A19F16AC1F9" },
]