TLV协议
TLV,即Tag(标签域)-length(长度域)-value(内容域),是一种简单实用的数据传输方案。它是一个简单的自定义通信协议。
数据的发送过程其实就是打包的过程,目的是将一个从终端上发的请求数据——字节数组构造成一系列的TLV结构实体。
一个TLV消息由一个消息头和一个或多个消息体组成。
LV消息头
struct TLV_HEAD
{
int length; // TLV消息总长度,即消息头和消息体总长度
short version; // 消息版本号
short commandID; // 命令类型
int seqence; // 消息序列号(从1开始递增)
char checkNum[16]; // 消息检验
}
// TLV消息体
struct TLV_BODY
{
short type; // value的类型
short valueLength; // value的长度
char value[0]; // 消息体内容
}