一种自定义网络通信协议
2011-06-14 14:01
274 查看
#define MAX_MSG_SIZE 2048
typedef enum _MSG_TYPE
{
EN_CLIENT_REQ_PING = MSG_BASE_CLIENT_REQ,
EN_CLIENT_REQ_LOGIN,
/**///////////////////////////////////////////////////////////////////////////
EN_SVR_RES_PING = MSG_BASE_SVR_RES,
EN_SVR_RES_LOGIN,
}MSG_TYPE,*PMSG_TYPE;
typedef struct _MSG_HEAD
{
ULONG ulMagic; // 幻数,以固定的格式开始,如'MYMS'
USHORT usLen; // Tsdu长度,即实际传输数据长度,协议数据包联合体当前采用的结构体大小
MSG_TYPE enMsgType; // 包类型
BOOL bEncrypt; // 包内容是否加密
USHORT usCheckSum; // 校验和,整个数据包的完整性检测
}MSG_HEAD,*PMSG_HEAD;
typedef struct _SEND_TRACE_ROUTE
{
ULONG ulIdentify;
ULONG ulDstIP;
USHORT usTTL;
}SEND_TRACE_ROUTE,*PSEND_TRACE_ROUTE;
typedef struct _SEND_TEST_RTT
{
ULONG ulIdentify;
ULONG ulDstIP;
USHORT usDstPort;
}SEND_TEST_RTT,*PSEND_TEST_RTT;
typedef struct _PACKET_SEND
{
MSG_HEAD sUdpMsgHead;
union
{
CHAR szReq[MAX_MSG_SIZE];
SEND_TRACE_ROUTE sendTraceRoute;
SEND_TEST_RTT sendTestRtt;
};
}PACKET_SEND,*PPACKET_SEND;
typedef enum _MSG_TYPE
{
EN_CLIENT_REQ_PING = MSG_BASE_CLIENT_REQ,
EN_CLIENT_REQ_LOGIN,
/**///////////////////////////////////////////////////////////////////////////
EN_SVR_RES_PING = MSG_BASE_SVR_RES,
EN_SVR_RES_LOGIN,
}MSG_TYPE,*PMSG_TYPE;
typedef struct _MSG_HEAD
{
ULONG ulMagic; // 幻数,以固定的格式开始,如'MYMS'
USHORT usLen; // Tsdu长度,即实际传输数据长度,协议数据包联合体当前采用的结构体大小
MSG_TYPE enMsgType; // 包类型
BOOL bEncrypt; // 包内容是否加密
USHORT usCheckSum; // 校验和,整个数据包的完整性检测
}MSG_HEAD,*PMSG_HEAD;
typedef struct _SEND_TRACE_ROUTE
{
ULONG ulIdentify;
ULONG ulDstIP;
USHORT usTTL;
}SEND_TRACE_ROUTE,*PSEND_TRACE_ROUTE;
typedef struct _SEND_TEST_RTT
{
ULONG ulIdentify;
ULONG ulDstIP;
USHORT usDstPort;
}SEND_TEST_RTT,*PSEND_TEST_RTT;
typedef struct _PACKET_SEND
{
MSG_HEAD sUdpMsgHead;
union
{
CHAR szReq[MAX_MSG_SIZE];
SEND_TRACE_ROUTE sendTraceRoute;
SEND_TEST_RTT sendTestRtt;
};
}PACKET_SEND,*PPACKET_SEND;
相关文章推荐
- 一种自定义网络通信协议
- Linux下网络编程之自定义协议进行并发多客户端与服务器的通信(多进程处理并发)不足占用资源太多
- C#、Unity网络通信中基于字节码的自定义协议解码,C#版ByteBuffer
- 使用SuperSocket实现TLV自定义协议网络通信的Demo
- 使用SuperSocket实现TLV自定义协议网络通信的Demo
- 从零开始写Go网络通信框架(2)——自定义通讯协议
- 一种RS-485总线自定义通信协议及其应用(转)
- [置顶] 基于iOS的网络音视频实时传输系统(四)- 自定义socket协议(TCP、UDP)
- 一个简单的自定义通信协议(socket)
- 网络通信协议-OSI
- c#网络通信框架networkcomms内核解析之十 支持优先级的自定义线程池
- 使用Lua脚本为wireshark编写自定义通信协议解析器插件
- Mina实现自定义协议的通信
- DICOM:DICOM3.0网络通信协议之“开源库实现剖析”
- 无线网络中传输层通信协议分析与比较(TCP与UDP)
- 网络编程概述和三要素(IP/端口号/协议)以及Socket通信原理
- Android学习笔记---26_网络通信之资讯客户端,使用pull解析器,解析,从网络中获得的自定义xml文件
- linux网络通信-------UDP协议
- 通信(Netty、Mina2)【通信粘包的处理】、【数据协议】、【网络系统的安全性】
- 创建中性协议,PPkPub要架设区块链与网络通信的桥梁