Skip to content
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

Improve possible states of a peer connection #456

Open
kruisdraad opened this issue Aug 4, 2018 · 1 comment
Open

Improve possible states of a peer connection #456

kruisdraad opened this issue Aug 4, 2018 · 1 comment

Comments

@kruisdraad
Copy link
Contributor

When a WS is connect for a peering, the status goes from false -> true under status. However even though you might think a peering is fully operational, BTP might having issues and the routes are never synced.

I would sugguest changing this reflecting a full peer status, based on the BGP model, for example:

Idle
= first stage, start event, tries to initiate a TCP connection to the peer (plugin starts?)
Connect
= WS connecting is being fired up
Active
= WS connected and ping send (session is up, nothing done yet)
OpenSent
= WS connected and capabilities are exchanges (should match versions, XRP addresses, etc)
OpenConfirm
= WS connected and remote side confirmed capilities too
Established
= WS connected AND routes are exchanges and in SYNC

Full docs here: http://www.ciscopress.com/articles/article.asp?p=2756480&seqNum=4

It would give a single view and better understandig whats going on with the router.

@adrianhopebailie adrianhopebailie changed the title admin gui gives bad hints Improve possible states of a peer connection Oct 18, 2018
@adrianhopebailie
Copy link
Contributor

Assuming that the connector and plugin are separate processes I think it would be sufficient for the connector to simply know if the connection is up or down?

Perhaps the plugin should be responsible for moving through these various states and only when the connection to the remote peer is established will it notify the connector that it is ready.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants