ロックサーバーとクライアントがTCP上でやり取りするバイナリフレームプロトコルです。すべての公式クライアントは この仕様をバイト単位で同一に実装します。各メッセージの構造(フィールド配置)と例(実際の送信バイト、 refreshで値が変わります)は以下のページで確認してください。
バイト表記:
opはASCII文字(例:A)、wait・lease・tokenはバイナリなので 16進数(hex、ビッグエンディアン)で表示します(例:wait=5=00 05)。key・addrはUTF-8テキスト、reasonはASCIIテキストで、いずれも長さが可変のため構造ではNと表記します。最後の\n(改行)は0Aでフレームを終端します。フィールドは区切り文字なしで連結して送信されます。
サーバー ↔ サーバー間のクラスターレプリケーションプロトコルは別ページで扱います。