-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Pipelined identify protocol "negotiation" #903
Comments
Can't we just make the identify message for |
We can. But in that case, we'd need to keep the same protocol name. |
(i.e., /ipfs/id/1.0.0) |
Exactly, that’s precisely what I mean. Versioning protocols by outer protocol identifiers is one way to version protocol. It’s practicable when it’s accompanied by an efficient protocol negotiation scheme. Multistream-select 1.0 is not that, it’s pretty wasteful, and working around it with a bespoke flow is something I’d like to avoid. Let’s version the protocol from inside the protocol in this case. When we introduce a HELLO message in ms2.0, all this will become much better. |
This is no longer an issue. |
Now that we're going to introduce multiple identify protocols, we'll need to negotiate to pick the right one. This could cost us multiple round-trips.
However, there's a simple hack to work around this: just send all protocols we speak up-front!
That is, instead of:
Send all protocols we speak together:
The trick here is that the receiver will ignore any data from the initiator of the identify request.
The text was updated successfully, but these errors were encountered: