IntersectMBO / ouroboros-network

Specifications of network protocols and implementations of components running these protocols which support a family of Ouroboros Consesus protocols; the diffusion layer of the Cardano Node.

Home Page:https://ouroboros-network.cardano.intersectmbo.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Implement how Outbound Governor should act in Genesis mode

coot opened this issue · comments

In Genesis, the outbound governor needs to have two modes of operation depending on the value of LedgerStateJudgement

YoungEnough

When the tip of the chain is close to current slot number we don't need any changes, since Genesis reduces to Praos mode.

TooOld

In TooOld state we need to change targets. Our initial considerations were to have around 30 hot big ledger peers, and we don't need to use any ledger peers. I think we should maintain local connection as specified in the topology file.

In the node we should be able to specify how many warm / hot big ledger peers we want to maintain. I can think of a scenario when an SPO connects to a synced local relay to start a new relay and initially specify that it doesn't need any big ledger peers when syncing, although the problem with such configuration is that it needs to be changed (and hence the node restarted) once the node becomes synced.

It might be necessary to add an option that the diffusion is supposed to run in Genesis mode, but this should be discussed with the consensus team .

What should the targets be for (known, established, active) big ledger peers in genesis mode?