Skip to main content

51 posts tagged with "network"

View All Tags

· One min read
Marcin Szamotulski

Overview of sprint 85

High-level overview

Node Diversity Workshop

We participated in the Node Diversity workshop held in Paris by Tweag / Modus Create. We had a chance to talk with amaru and [goroboros] developers.

We were in particular interested in testing approach for the amaru node, which is described in a recent series of blog posts.

Tx-Submission

We continued working on tx-submission. We're analysing a test failure which prevents us from merging the PR.

Mithril

Armando Santos (Well-Typed) open a draft PR in which he's been working on implementation of the DMQ Node, see ouroboros-network#5109. Armando also wrote an update to the CIP#137 proposal.

Performance Imrpovements

  • We are reviewing PR with inbound governor performance improvements.

Pull requests

Opened

In review

Work in Progress

Merged

· One min read
Marcin Szamotulski

Overview of sprint 84

High-level overview

Mithril Development

We continued to cooperate with the Mithril team. There's a [pull request][PR#7] to update the CIP-0137. We wrote Decentralized Message Queue (DMQ) Implementation Overview.

Tx-Submission

We continued working on tx-submission. We have an experimental branch based on the comming cardano-node-10.3 release which we deployed on mainnet.

Peras Workshop

Neil Davis PNSol and Marcin Szamotulski participated in a Peras Workshop organised by Tweag in their Paris office.

Performance Improvements

  • Karl Kntusson's mux performance PR was merged.
  • Marcin Wójtowicz opened a PR with inbound governor performance improvements.

Pull requests

In review

Work in Progress

Merged

· 2 min read
Marcin Szamotulski

Overview of sprint 83

High-level overview

SRV support (Cardano, Mithril)

We merged ouroboros-network#5018 which adds support for SRV in ouroboros-network. However, we still need to make a decision whether we require that all Cardano SRVs start with _cardano._tcp, or we leave it open for the future. The former would allow us to use SRVs for different applications, e.g. _mithril._tcp for the mithril diffusion. If that would be the case then we'd prepend _cardano._tcp to what we find in the SRV field of a registration certificate, e.g. prepend _cardano._tcp by cardano-node's diffusion, and _mithril._tcp by the mithril diffusion. The other possibility is to extend the registration certificate to include the addresses of mithril nodes.

Mithril

We started working on a development plan for Mithril diffusion, [ref][mithirl-diffusion] (note that this is a work in progress).

We also have been working on moving network-related code from the cardano-node to the cardano-diffusion library in ouroboros-network. In the future, this will allow us to share parts of it in the Mithril diffusion [ouroboros-newtork#5082].

Documentation

We improved our CDDL specifications by annotating which codecs require definite / in-definite encoding of lists & maps, see ouroboros-network#5089.

Mux

Karl Knutsson (CF) has been working on performance improvements in the multiplexer (network-mux library), ouroboros-network#5093.

Server-side performance considerations

Karl Kntusson (CF) noticed a performance bottleneck in the responder (server) side of the p2p diffusion layer. We've started working on addressing this issue.

Tx-Submission logic

We continued reviewing/improving the tx-submission PR ouroboros-network#4887.

Pull requests

In review

Work in Progress

Merged

· 2 min read
Marcin Szamotulski

Overview of sprint 82

Extensible Ouroboros Diffusion

We merged the extensible diffusion PR.

This PR will allow us to build mithril diffusion using ouroboros-network, and more generally, it makes it much easier to develop and deploy one's own decentralised applications based on ouroboros-network. This is part of the ouroboros-network-0.20 release, which will be included in cardano-node-10.3.

Ouroboros-Network-0.20

We released ouroboros-network-0.20 to CHaP. All released changes are listed in [this table][on-0.20]. The most important changes are:

Removal of NonP2P code base

We merged Removal of NonP2P Network Components PR. This change will be integrated no sooner than cardano-node-10.4. If you're still using In the NonP2P mode, please upgrade to P2P. Initiator-only mode for local root peers (#5020) is available in the pre-release cardano-node-10.2.1 and future releases. See the, to be published, documentation update.

· 2 min read
Marcin Szamotulski

Overview of sprint 80 & sprint 81

Current workstream

We decided to hold some PRs in favour of some others to simplify the merging process. Here's a dependency graph for PRs on which we're working on. The Extensible Ouroboros Network Diffusion Stack PR was the largest in our queue.

Fixes which made into the on-going cardano-node-10.2.1

Previously, we introduced a new IOError handling policy due to a discussion with an SPO to make some scenarios easier to debug. After testing it (the changes never made it into a release), it turned out this could lead to attacks on the system. Thus, we advocate for better monitoring of nodes (e.g. if resources like file descriptors memory are available, the node is making progress) rather than rely on cardano-node to be up and running.

New mux strategy for starting mini-protocols

Karl Knutsson (CF) implemented a new strategy for starting mini-protocols, StartOnDemandAny. A mini-protocol which is using this strategy will be started as soon as any StartOnDemand (or StartOnDemandAny) mini-protocol receives input from the network. We will use this starting strategy for the keep-alive mini-protocol.

Local-TX-Monitor protocol changes

A new query was added, which allows the retrieval of all measures/dimensions of the mempool capacity, e.g. byte-size capacity, ledger's execution units for both memory and execution steps, and reference scripts size. See ouroboros-network#4918.

Network Specification Updates

We made language improvements in the network specification, see ouroboros-network#5044; and some smaller changes/fixes ouroboros-network#5053.

Other minor changes