Skip to content

Commit 1a3a84b

Browse files
vu3rddpiegamesde
authored andcommitted
use-version is no longer used in the code
Instead, the value of the "can-dilate" key in the version message payload contains a list of versions supported by the client.
1 parent 2b9a8dd commit 1a3a84b

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

dilation-protocol.md

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -38,14 +38,16 @@ potential connections to use, the Leader decides which one to use, and the
3838
Leader gets to decide when the connection is no longer viable (and triggers
3939
the establishment of a new one).
4040

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

5052
## Connection Layers
5153

0 commit comments

Comments
 (0)