报文

报文

报文(message)是网路中交换与传输的数据单元,即站点一次性要传送的数据块。报文包含了将要传送的完整的数据信息,其长短很不一致,长度不限且可变。

    • 中文名:报文
    • 外文名:message
    • 属性:网路中交换与传输的数据单元
    • 方式:不断的封装成分组、包、帧来传输
    • 认证方式:有报文加密的报文认证
    • 用途:网路中交换与传输

概述

报文也是网路传输的单位,传输过程中会不断的封装成分组、包、帧来传输,封装的方式就是添加一些信息段,那些就是报文头以一定格式组织起来的数据。

比如里面有报文类型,报文版本,报文长度,报文实体等等信息。

完全与系统定义,或自定义的数据结构同义。

来几个 TCP/IP 头结构感受一下:

IP报文头部信息

typedef struct _iphdr //定义IP首部

{

unsigned char h_lenver; //4位首部长度+4位IP版本号

unsigned char tos; //8位服务类型TOS

unsigned short total_len; //16位总长度(位元组)

unsigned short ident; //16位标识

unsigned short frag_and_flags; //3位标誌位

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首部

{

USHORT th_sport; //16位源连线埠

USHORT th_dport; //16位目的连线埠

unsigned int th_seq; //32位序列号

unsigned int th_ack; //32位确认号

unsigned char th_lenres; //4位首部长度/6位保留字

unsigned char th_flag; //6位标誌位

USHORT th_win; //16位视窗大小

USHORT th_sum; //16位校验和

USHORT th_urp; //16位紧急数据偏移量

}TCP_HEADER;

// 这里只是数据头, 但头最能让你看清报文是啥东东

// IP_HEADER::total_len 指明了实体数据(也就是真正的讯息内容)长度.

// 其他以此类推

认证方式

报文的认证方式有传统加密方式的认证、使用密钥的报文认证码方式、使用单向散列函式的认证和数字签名认证方式。

相关词条

相关搜索

其它词条