报文(Message)实例—— TCP / IP 头结构

typedef struct _iphdr                       //定义IP首部
{
    unsigned char h_lenver;                 //4位IP版本号 + 4位首部长度
    unsigned char tos;                      //8位服务类型TOS
    unsigned short total_len;               //16位总长度(单位:字节)保存本次实体信息长度
    unsigned short ident;                   //16位标识
    unsigned short frag_and_flags;          //3位标志位+13位偏移量
    unsigned char ttl;                      //8位生存时间 TTL
    unsigned char proto;                    //8位协议TCP, UDP 或其他
    unsigned short checksum;                //16位IP首部校验和
    unsigned int sourceIP;                  //32位源IP地址
    unsigned int destIP;                    //32位目的IP地址
}IP_HEADER; 

typedef struct psd_hdr                      //定义TCP伪首部
{
    unsigned long saddr;                    //源地址
    unsigned long daddr;                    //目的地址
    char mbz;
    char ptcl;                              //协议类型
    unsigned short tcpl;                    //TCP长度
}PSD_HEADER;

typedef struct _tcphdr                      //定义TCP首部
{
    unsigned short th_spor;                 //16位源端口
    unsigned short th_dport;                //16位目的端口
    unsigned int th_seq;                    //32位序列号
    unsigned int th_ack;                    //32位确认号
    unsigned char th_lenres;                //4位首部长度/6位保留字
    unsigned char th_flag;                  //6位标志位
    unsigned short th_win;                  //16位窗口大小
    unsigned short th_sum;                  //16位校验和
    unsigned short th_urp;                  //16位紧急数据偏移量
}TCP_HEADER;

你可能感兴趣的:(报文(Message)实例—— TCP / IP 头结构)