Overview of 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.
{ "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.
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:
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.