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

Stream protocol using sequence numbers #12

Open
XeonSquared opened this issue Aug 6, 2018 · 2 comments
Open

Stream protocol using sequence numbers #12

XeonSquared opened this issue Aug 6, 2018 · 2 comments

Comments

@XeonSquared
Copy link
Member

XeonSquared commented Aug 6, 2018

ie so they're more like TCP, for performance reasons.

Multiple acknowledgements in one packet would also be good. Needs more thought.

@XeonSquared XeonSquared changed the title Convert sockets to use sequence numbers Stream protocol using sequence numbers Apr 3, 2019
@XeonSquared
Copy link
Member Author

So here's what I'm thinking:

Upon arbitrary node A making a connection to arbitrary node B:

  • openstream (see protocol-5.md) would include a second line, with supported protocols.
  • The protocol specified in protocol-5.md would be mandatory, as a fall-back
  • Node B could then specify which protocol will be used for communication, out of the list node A provided, in its response to the openstream message.
  • Both nodes would then communicate using node B's preferred protocol, including the closing of streams and such.

@XeonSquared
Copy link
Member Author

Another option is to specify a simple protocol allowing node A to ask node B which stream protocols it supports, and then negotiating based on which one node A prefers. This could be done using reliable packets, and if it takes more than the time it takes for the acknowledgement to arrive again, give up on negotiating and fall back to the standard one.

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

1 participant