-
Notifications
You must be signed in to change notification settings - Fork 16
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
107 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,107 @@ | ||
--- | ||
title: Network Team Update | ||
slug: 2024-12-23-network | ||
authors: coot | ||
tags: [network] | ||
hide_table_of_contents: false | ||
--- | ||
|
||
## Overview of [sprint 77][sprint-77] | ||
|
||
### Initiator only mode for local roots | ||
|
||
We implemented the initiator-only mode for local roots peers described in | ||
[ouroboros-network#5020]. This feature will be available in | ||
`cardano-node-10.3` ([cardano-node#6055]). | ||
|
||
One will be able to specify `diffusionMode` (either `InitiatorOnly` or | ||
`IntiatorAndRespoinder`, the latter is the default) for all local roots in | ||
a given local roots group, e.g. | ||
|
||
```json | ||
{ "localRoots": | ||
[ { "accessPoints": | ||
[ { "address": "10.0.0.1" | ||
, "port": 3001 | ||
} | ||
] | ||
, "advertise": false | ||
, "diffusionMode": "InitiatorOnly" | ||
, "warmValency": 1 | ||
, "hotValency": 1 | ||
} | ||
, { "accessPoints": | ||
[ { "address": "10.0.0.2" | ||
, "port": 3001 | ||
} | ||
] | ||
, "advertise": true | ||
, "diffusionMode": "InititiatorAndResponder" | ||
, "warmValency": 1 | ||
, "hotValency": 1 | ||
} | ||
] | ||
, "publicRoots": [] | ||
, "useLedgerAfterSlot": -1 | ||
} | ||
``` | ||
|
||
As part of [ouroboros-network#5020] we had to change how connections are | ||
identified in the simulated testnet environment. We exposed | ||
`ConnStateIdSupply` through P2P interfaces, which allows us to use a global | ||
`ConnStateIdSupply` for all nodes in the simulation. This way, `ConnStateId` is | ||
unique for each connection in the simulation. See [ouroboros-network#5026]. | ||
|
||
### Support systems with multiple IP addresses | ||
|
||
We merged [ouroboros-network#5017] which allows to run `cardano-node` on | ||
systems with multiple network interfaces or a single interface with multiple IP | ||
addresses. | ||
|
||
[sprint-77]: https://github.com/orgs/IntersectMBO/projects/5/views/1?filterQuery=sprint%3A%22Sprint+77%22 | ||
|
||
### Reusable diffusion | ||
|
||
We were working on early integration of reusable diffusion work stream with | ||
`ouroboros-consensus` & `cardano-node`. Reusable diffusion will allow us to | ||
support both `cardano-node` and `mithril-node` in the future. We are | ||
pleased to say that we are running a `cardano-node` that uses | ||
refactored diffusion. See: | ||
|
||
* [design notes][reusable-diffusion] | ||
* issue: [ouroboros-network#4929] | ||
|
||
### Tx-Submission Logic | ||
|
||
We had a discussion with the consensus team (Karl Knutsson [CF], Nick Frisby | ||
[Tweag]) on network requirements for `tx-mempool`. See: | ||
|
||
* issue: [ouroboros-network#3311] | ||
* pr: [ouroboros-network#4887] | ||
* [ouroboros-network#4984] (Karl's changes on top of [ouroboros-network#4887]) | ||
|
||
### SRV record support | ||
|
||
We continued working on the SRV support, see: | ||
* issue: [ouroboros-network#2883] | ||
* pr: [ouroboros-network#5018] | ||
|
||
### Technical Debt | ||
|
||
We renamed some of the test modules to be more consistent across various | ||
network components, see [ouroboros-network#5028]. | ||
|
||
[Tweag]: https://www.tweag.io/ | ||
[CF]: https://cardanofoundation.org/ | ||
[cardano-node#6055]: https://github.com/IntersectMBO/cardano-node/pull/6055 | ||
[ouroboros-network#2883]: https://github.com/IntersectMBO/ouroboros-network/issues/2883 | ||
[ouroboros-network#3311]: https://github.com/IntersectMBO/ouroboros-network/issues/3311 | ||
[ouroboros-network#4887]: https://github.com/IntersectMBO/ouroboros-network/pull/4887 | ||
[ouroboros-network#4929]: https://github.com/IntersectMBO/ouroboros-network/issues/4929 | ||
[ouroboros-network#4984]: https://github.com/IntersectMBO/ouroboros-network/pull/4984 | ||
[ouroboros-network#5017]: https://github.com/IntersectMBO/ouroboros-network/issues/5017 | ||
[ouroboros-network#5018]: https://github.com/IntersectMBO/ouroboros-network/issues/5018 | ||
[ouroboros-network#5020]: https://github.com/IntersectMBO/ouroboros-network/issues/5020 | ||
[ouroboros-network#5026]: https://github.com/IntersectMBO/ouroboros-network/issues/5026 | ||
[ouroboros-network#5028]: https://github.com/IntersectMBO/ouroboros-network/issues/5028 | ||
[reusable-diffusion]: https://github.com/IntersectMBO/ouroboros-network/discussions/4987#discussioncomment-11026976 |