報文

報文

報文(message)是網路中交換與傳輸的數據單元,即站點一次性要傳送的數據塊。報文包含了將要傳送的完整的數據信息,其長短很不一致,長度不限且可變。報文的認證方式有傳統加密方式的認證、使用密鑰的報文認證碼方式、使用單向散列函式的認證和數字簽名認證方式。報文也是網路傳輸的單位,傳輸過程中會不斷的封裝成分組、包、幀來傳輸,封裝的方式就是添加一些信息段,那些就是報文頭以一定格式組織起來的數據。完全與系統定義,或自定義的數據結構同義。

概述

報文也是網路傳輸的單位,傳輸過程中會不斷的封裝成分組、包、幀來傳輸,封裝的方式就是添加一些信息段,那些就是報文頭以一定格式組織起來的數據。

比如裡面有報文類型,報文版本,報文長度,報文實體等等信息。

完全與系統定義,或自定義的數據結構同義。

IP報文頭部信息IP報文頭部信息

來幾個 TCP/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 指明了實體數據(也就是真正的訊息內容)長度.

// 其他以此類推

認證方式

報文的認證方式有傳統加密方式的認證、使用密鑰的報文認證碼方式、使用單向散列函式的認證和數字簽名認證方式。

相關搜尋

熱門詞條

聯絡我們