Does it help for topology to be bidirectional?

I remember there were a lot of requests on the Telegram about a week ago: Please add me to your topology … although we never did this, our nodes seem to be up & running well. We started with the Cardano-Node Topology generator, then spent a couple hours refining topology.json, culling out the nodes showing bad connectivity in the logs, while adding some local & global popular favourites.

Still we’re in a situation now where we’re synced only because of our contacting other nodes, while no relays or databases have listed our own relays. I think we’ll be providing these with our stake pool registration, but we’re not quite there yet.

In the meantime: Are there any cases where protocol information will need to be routed to our relays or core node, where it would help for peers to have us in their list of peers? I’m sorry I missed the ITN period and therefore any observation about what actually happens, with what specific behaviour on the network, when a block producer is chosen.

I know the topology is slated to be generated automatically by the end of this month, but I really want to be sure we don’t miss anything in the selection process before that time. My educated guess is that the topology is actually bidirectional, despite ourselves only listing our peers & not vice-versa… but how can we confirm (or deny) this, so we know if we need to be directly listed in others’ topology before we launch our pool?

1 Like

Until we have true p2p, you will need to have your relay topology listed in other stake pool operators’ relay topologies for your block producer’s minted blocks to take to the chain. So yes, please work to share your topologies with other operators, and include theirs as well. There are tools to do this, such as buddies. I personally try to keep total valency count in my relay topology below 20 for performance considerations.


By you having someone in your topology list you are fetching the other relays data. This is great when you want to be on the right slot height. When you produce a block you want others to fetch your data so that the world knows you have produced a block. You would want to be in others topology lists.