-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add nwaku into status-go #3076
Comments
Discv5 works after being disconnected for a long time - the bootstrap nodes are never removed from the routing tables. We can see the code here However, after being online again, we don't attempt to connect to the nodes we already found because we have them in backoff period. When we are disconnected, our node thinks the other nodes are faulty because it can't connect to them, but in fact the faulty node is ours. When online again, because of this issue, our node doesn't attempt to connect to them. We should create a mechanism to recognize when our node is offline and avoid attempting to connect to other nodes whenever that's the case, or at least avoid mischaracterizing well-behaved peers |
Summary
https://github.com/status-im/status-go should operate with waku through nwaku
We need to add a new
nwaku
submodule withinstatus-go
and adapt the currentstatus-go
code base plus nwaku-libwaku so that we can havestatus-go
working withnwaku
.There will be changes in:
Tasks
The following tasks must be reviewed since it's possible some of these are already implemented in nwaku
New
Config
andWakuConfig
func (w *Waku) checkForConnectionChanges()
func (w *Waku) handleNetworkChangeFromApp(state connection.State)
func (w *Waku) ConnectionChanged(state connection.State)
discoverAndConnectPeers
directly connect to nodes fromw.cfg.WakuNodes
or attempt to use DNS Discovery if anenrtree
is foundrunPeerExchangeLoop
. Might not be necessary if nwaku already handles this?func (w *Waku) DialPeer(address multiaddr.Multiaddr)
func (w *Waku) DropPeer(peerID peer.ID) error
func (w *Waku) PeerID() peer.ID
The text was updated successfully, but these errors were encountered: