目前正在测试中:完成后将开放 GitHub 代码。

协议 —— 客户端 ↔ 服务器 ​

客户端端口(默认 5225)上交换的每个字节的完整规格。它由连接后立即执行一次的 认证握手,以及随后的二进制帧锁协议组成。 每个官方客户端都按字节完全一致地实现该规格。

每个消息页面的“结构”展示字段布局,“示例”展示实际发送的字节(每次 refresh 值都会变化)。

字节表示法: op 以 ASCII 字符形式展示(例如 A);wait、lease 是 u8 二进制值, token、owner 是 u64 大端序二进制值,均以十六进制展示(例如 wait=5 → 05)。 key 和 addr 是 UTF-8 文本,reason 是 ASCII 文本——这些都是 变长的,在结构中以 N 表示。末尾的 \n(换行符,即 0A)用于终止帧。 字段之间没有分隔符,依次首尾相连发送。

固定头部(wait、lease、token、owner)是二进制值,可能包含 0x0A —— 解析器必须在扫描换行符之前,先按字节数消费该 op 的固定头部长度。长度为: 请求 A=10B / R=8B,响应 A=16B / T·B·R·N=8B / M·L·E=0B。

目录 ​

服务器间的集群共识(Raft)协议收录在另一个页面。