報文

報文

報文(message)是網路中交換與傳輸的資料單元,即站點一次性要傳送的資料塊。報文包含了將要傳送的完整的資料信息,其長短很不一致,長度不限且可變。

  • 中文名稱
    報文
  • 外文名稱
    message
  • 屬性
    網路中交換與傳輸的資料單元
  • 方式
    不斷的封裝成分組、包、幀來傳輸
  • 識別方式
    有報文加密的報文識別
  • 用途
    網路中交換與傳輸

概述

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

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

完全與系統定義,或自定義的資料結構同義。

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

// 其他以此類推

識別方式

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

相關詞條

相關搜尋

其它詞條