2023-01 - 2023-03
Main achievements
Gradual dynamic P2P release on mainnet
We released two version of cardano-node
with dynamic P2P capabilities:
1.35.6
1.35.7
- includes interoperability in the legacy non-p2p network stack pull-4467
- we fixed a busy loop of demotion & promotions:
warm -> hot -> warm
[pull-4485] /it will be included incardano-node-8.0.0
release/.
Currently there are more than 200 P2P relays on mainnet.
Peer Sharing
We implemented /peer sharing/ pull-4019 which will be available as an
experimental feature in one of the future cardano-node
releases.
We implemented /light peer sharing/, e.g. adding inbound connections to the set of known peers of the outbound governor, which allows to bootstrap relays not registered on chain. This complements peer sharing. The pull-4277 is in late review stages.
Eclipse Evasion
We finalised design of eclipse evasion and we started implementing it. We have an initial implementation (not merged). We are in the process of extending our test suite to cover new implementation details: issue-3886, pull-4462.
Cardano Network Service Assurance
Galois has been making progress on Cardano Network Service Assurance project.
In cardano-node, they have developed a
datapoint
abstraction that creates a queue of (existing) log events, they now have two suchdatapoint
s (of log events) implemented.They have developed a
datapoint
client executable that can connect to a node which serves the "new tracing".They have been exploring approaches for the consolidation and analysis of
datapoint
data to extract actionable network health status.
Cardano-Node
- We made it possible to configure accepted connections limit pull-4902.
Testing improvements
We fixed a bug in network simulation implementation of TCP simultaneous open pull-4265.
We introduced header-body split in the diffusion simulation pull-4419 (in review).
We introduced initiator only nodes in the diffusion simulation pull-4280.
We fixed a connection-manager test failure issue-4370.
Technical Debt
We refactored
Snocket
interface decoupling it from the multiplexer pull-4260. This simplified some aspects of the KES agent implementation.We introduces a record for CBOR codecs which are used for various data structures by mini-protocol codecs pull-4430.
Documentation
- We explained some limitations of CDDL in our technical report pull-4351.
IO-Sim
- We fixed implementation of
MVar
's pull-70.
NoThunks
- We published a new version of
nothunks
library to Hackage.
Next steps
- Finish implementation & testing of eclipse evasion issue-3886.
- Optimise connectivity to peers behind firewall issue-4381.
- Finish the work on enabling block production dynamically to allow using P2P on block producers issue-3159.
- If time permits we would like also to reserve some time for finishing
publication of
io-sim
to Hackage.