Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Haskell simulation of base chain #35

Open
Saizan opened this issue Oct 3, 2024 · 5 comments
Open

Haskell simulation of base chain #35

Saizan opened this issue Oct 3, 2024 · 5 comments

Comments

@Saizan
Copy link
Contributor

Saizan commented Oct 3, 2024

Implement and validate a high-level simulation of Praos:

  • Based on the work in simulation/ to reuse the TCP and P2P models.
  • Produce traces that support measures such as latency of tx adoption block diffusion under different loads.
  • Compare with real world data.

First step will be to settle on a reasonable level of abstraction, using the following resources:

  • Peras simulation
  • Ourobors Consensus specs
  • High level description of consensus components in "Introduction to the design of the Data Diffusion and Networking for Cardano Shelley"
  • Node-to-Node protocols in "The Shelley Networking Protocol" tech report.
@dcoutts
Copy link
Contributor

dcoutts commented Oct 3, 2024

such as latency of tx adoption

I think we should avoid modelling txs at least initially, but we can do latency of block diffusion.

@Saizan
Copy link
Contributor Author

Saizan commented Oct 3, 2024

Not even for standalone Praos? Fair, that means we do not need a mempool.

@Saizan
Copy link
Contributor Author

Saizan commented Oct 3, 2024

The Peras simulation works by whole-network diffusion of whole-chains, with a fixed diffusion delay for the chain to become available. In such a model then block diffusion is a parameter of the simulation, not something we can investigate.

@ghost
Copy link

ghost commented Oct 10, 2024

@Saizan At the Praos level, I think that's fine. For better fidelity, we could actually not use a fixed delay but something like the distribution from DeltaQ analysis

@dcoutts
Copy link
Contributor

dcoutts commented Oct 10, 2024

We're currently investigating reusing code from the ouroboros-network-mock package to give us a lot of what we want for free.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants