# python-cpp-tcp **Repository Path**: xiedada11/python-cpp-tcp ## Basic Information - **Project Name**: python-cpp-tcp - **Description**: cpp编写的tcpserver,python编写的tcpclient,使用自定义的通讯协议 - **Primary Language**: C++ - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2020-03-30 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README + cpp编写的tcpserver,python编写的tcpclient,使用自定义的通讯协议 + tcpserver只依赖boost库 + tcp通讯协议: | 消息 | 长度(BYTES) | 结构 | 描述 | | ---------- | ----------------------------------------- | ----------------- | ------------------------------------------------------- | | **Header** | 4 | SyncBytes | 格式:0x09, 0x6f, 0x01, 0x01,表示不同设备之间的交互 | | **Header** | 4 | FullMessageLength | 数据总长度,包括SyncBytes和FullMessageLength | | **Header** | 4 | MessageSeq | 消息序列 seq ,递增 | | **Header** | 4 | MeaageType | 消息类型(消息号),如登录消息或发送消息消息 | | **Header** | 4 | StringBody | 消息字符流长度,可能是json流、xml流以及普通字符流 | | **Header** | 12 | Reserved | 保留字段,总共12字节 | | **Body** | StringBodyLength | StringBody | 消息体( json或xml或普通字符串数据),该字段长度可能为0 | | **Body** | FullMessageLength - 32 - StringBodyLength | BinaryData | 二进制数据,该字段长度可能为0 | 注: 消息头总共**32**个字节(包括SyncBytes和FullMessageLength),消息体长度StringBodyLength是已知的,而二进制数据长度计算得到(FullMessageLength - 32 - StringBodyLength)。