跳到主要內容

协议概览

我们使用二进制的私有协议进行数据交互,协议同时支持 WebSocketTCP 连接。

信息

使用的字节序是 BigEndian

如果是 PythonC++ 用户可以直接使用我们的 SDK,不用关心具体的实现细节。

如果想要自己实现协议解析,可以参考我们的 Go 实现

业务的 WebSocketTCP 接入地址可以查看业务地址

在开始协议解析前我们需要先了解通信过程,这里我们将通信分为三类:

  • 握手 - 建立连接
  • 请求响应 - 请求和响应一对一
  • 推送 - 一端向另一端发送数据,无需响应

根据上面的通信模型,我们可以将我们传递的数据包分为四类:

我们的业务数据都存放在数据包内的 body 部分,目前使用 Protobuf 作为 body 的序列化方法。

Protobuf 同时满足了可表达性、快速、数据紧凑的特点。

具体的业务数据的 Protobuf 定义可以在了解协议解析后查看: