一、mac幀頭定義
/*資料幀定義,頭14個位元組,尾4個位元組*/
typedef struct _mac_frame_header
__attribute__((packed))mac_frame_header,*pmac_frame_header;
typedef struct _mac_frame_tail
__attribute__((packed))mac_frame_tail, *pmac_frame_tail;
二、ip頭結構的定義
/*ip頭定義,共20個位元組*/
typedef struct _ip_header
__attribute__((packed))ip_header, *pip_header ;
三、tcp頭結構定義
/*tcp頭定義,共20個位元組*/
typedef struct _tcp_header
__attribute__((packed))tcp_header, *ptcp_header;
/*tcp頭中的選項定義
kind(8bit)+length(8bit,整個選項的長度,包含前兩部分)+內容(如果有的話)
kind = 1表示 無操作nop,無後面的部分
2表示 maximum segment 後面的length就是maximum segment選項的長度(以byte為單位,1+1+內容部分長度)
3表示 windows scale 後面的length就是 windows scale選項的長度(以byte為單位,1+1+內容部分長度)
4表示 sack permitted length為2,沒有內容部分
5表示這是乙個sack包 length為2,沒有內容部分
8表示時間戳,length為10,含8個位元組的時間戳
*/typedef struct _tcp_options
__attribute__((packed))tcp_options, *ptcp_options;
四、udp頭結構的定義
/*udp頭定義,共8個位元組*/
typedef struct _udp_header
__attribute__((packed))udp_header, *pudp_header;
分類:
網路程式設計
IP頭,TCP頭,UDP頭,MAC幀頭定義
一 mac幀頭定義 資料幀定義,頭14個位元組,尾4個位元組 typedef struct mac frame header attribute packed mac frame header,pmac frame header typedef struct mac frame tail attri...
MAC頭 IP頭 TCP頭 UDP頭詳解以及定義
一 mac幀頭定義 資料幀定義,頭14個位元組,尾4個位元組 typedef struct mac frame header attribute packed mac frame header,pmac frame header typedef struct mac frame tail attri...
IP頭 TCP頭 UDP頭詳解以及定義
ip資料報也叫ip報文分組,傳輸在iso網路7層結構中的網路層,它由ip報文頭和ip報文使用者資料組成,ip報文頭的長度一般在20到60個位元組之間,而乙個ip分組的最大長度則不能超過65535個位元組。下圖為ip分組的報文頭格式,報文頭的前20個位元組是固定的,後面的可變。由於delphi裡面沒有...