Skip to content

Commit

Permalink
use-version is no longer used in the code
Browse files Browse the repository at this point in the history
Instead, the value of the "can-dilate" key in the version message
payload contains a list of versions supported by the client.
  • Loading branch information
vu3rdd authored and piegamesde committed Mar 14, 2023
1 parent 2b9a8dd commit 1a3a84b
Showing 1 changed file with 10 additions and 8 deletions.
18 changes: 10 additions & 8 deletions dilation-protocol.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,14 +38,16 @@ potential connections to use, the Leader decides which one to use, and the
Leader gets to decide when the connection is no longer viable (and triggers
the establishment of a new one).

The `please` includes a `use-version` key, computed as the "best"
version of the intersection of the two sides' abilities as reported in the
`versions` message. Both sides will use whichever `use-version` was specified
by the Leader (they learn which side is the Leader at the same moment they
learn the peer's `use-version` value). If the Follower cannot handle the
`use-version` value, dilation fails (this shouldn't happen, as the Leader
knew what the Follower was and was not capable of before sending that
message).
The version message payload has a key called `can-dilate` that has a
list of versions supported by a particular version of the client (eg:
["1", "2"]). After receiving the version message from the other
client, each client computes a list of mutually compatible "shared"
versions that are commonly supported by both the clients. At the
moment, the version number is "1", so if both the clients support that
version, we pick the dilation version as "1". If the clients cannot
find a mutually compatible version, then dilation would fail.



## Connection Layers

Expand Down

0 comments on commit 1a3a84b

Please sign in to comment.