协议 —— 客户端 ↔ 服务器
客户端端口(默认 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)协议收录在另一个页面。