Open murali-reddy opened 5 years ago
Good point.
I agree it is redundant; however I can't see an easy way for one node to know it is redundant. Something like: "all the nodes I am about to broadcast to are already connected to X, so they don't care that I just connected to X" ? But that only reduces half of the noise, I think.
We have discussed IRL a "mode switch" where we tell Mesh we expect a fully-connected topology, and in that mode topology broadcasts can be skipped.
When local peer connects/disconnects to remote peers (handleAddConnection,handleConnectionEstablished,handleDeleteConnection) there is broadcastTopologyUpdate
In case of fully connected mesh nodes like in case of Kubernetes deployed on AWS with Weave-net, broadcast topology updates are redundant as each node could be connected to added/deleted node so it can learn the topology first-hand.
It would be desirable to minimize the broadcast topology updates at least in case of fully connected mesh nodes.