久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

linux中iphdr指的是什么

180次閱讀
沒有評論

共計 1519 個字符,預計需要花費 4 分鐘才能閱讀完成。

本篇內容介紹了“linux 中 iphdr 指的是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓丸趣 TV 小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

在 linux 中,iphdr 是 ip 數據包的描述結構體;iphdr 所在的頭文件為“/usr/src/linux/include/linux/ip.h”,結構體是由一批數據組合而成的結構型數據,組成結構型數據的每個數據稱為結構型數據的成員,其描述了一塊內存區間的大小及解釋意義。

本教程操作環境:linux7.3 系統、Dell G3 電腦。

linux 中 iphdr 是什么

iphdr,是一種計算機用語。是 Linux 下 IP 數據包的描述結構體。

所在頭文件為 /usr/src/linux/include/linux/ip.h,結構如下:

struct iphdr {#if defined(__LITTLE_ENDIAN_BITFIELD) // 小端模式下
 __u8 ihl:4,// 首部長度(4 位)
 version:4;//ip 協議版本 IPv4
#elif defined (__BIG_ENDIAN_BITFIELD) // 大端模式下
 __u8 version:4,
 ihl:4;
#else
#error  Please fix  asm/byteorder.h 
#endif
 __u8 tos;// 服務類型字段(8 位)
 __be16 tot_len;//16 位 IP 數據報總長度
 __be16 id;//16 位標識字段(唯一表示主機發送的每一分數據報) __be16 frag_off;//(3 位分段標志 +13 位分段偏移數)
 __u8 ttl;// 8 位數據報生存時間
 __u8 protocol;// 協議字段(8 位) __be16 check;//16 位首部校驗
 __be32 saddr; // 源 IP 地址
 __be32 daddr; // 目的 IP 地址
};

擴展知識

iphdr- version

版本(4 位),目前的協議版本號是 4, 因此 IP 有時也稱作 IPv4。

iphdr- ihl

首部長度 (4 位): 首部長度指的是 IP 層頭部占 32 bit 字的數目(也就是 IP 層頭部包含多少個 4 字節 – 32 位), 包括任何選項。由于它是一個 4 比特字段, 因此首部最長為 60 個字節。普通 IP 數據報(沒有任何選擇項) 字段的值是 5 == 5 * 32 / 8 = 5 * 4 = 20 Bytes。

iphdr- tos

服務類型字段 (8 位): 服務類型(TOS) 字段包括一個 3 bit 的優先權子字段(現在已被忽略),4 bit 的 TOS 子字段和 1 bit 未用位但必須置 0。4 bit 的 TOS 子字段分別代表: 最小時延、最大吞吐量、最高可靠性和最小費用。4 bit 中只能設置其中 1 bit。如果所有 4 bit 均為 0, 那么就意味著是一般服務。

iphdr- tot_len

總長度字段 (16 位) 是指整個 IP 數據報的長度, 以字節為單位。利用首部長度字段和總長度字段, 就可以知道 IP 數據報中數據內容的起始位置和長度。由于該字段長 16 比特, 所以 IP 數據報最長可達 65535 字節,總長度字段是 IP 首部中必要的內容, 因為一些數據鏈路 (如以太網) 需要填充一些數據以達到最小長度。盡管以太網的最小幀長為 46 字節, 但是 IP 數據可能會更短。如果沒有總長度字段, 那么 IP 層就不知道 46 字節中有多少是 IP 數據報的內容。

iphdr- id

標識字段 (16 位) 唯一地標識主機發送的每一份數據報。通常每發送一份報文它的值就會加 1。

“linux 中 iphdr 指的是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注丸趣 TV 網站,丸趣 TV 小編將為大家輸出更多高質量的實用文章!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-29發表,共計1519字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 锡林郭勒盟| 潞西市| 泾阳县| 西贡区| 仁怀市| 盈江县| 霍州市| 姜堰市| 定襄县| 万源市| 梅河口市| 通河县| 岑溪市| 德格县| 饶阳县| 资兴市| 定兴县| 安义县| 东莞市| 贺兰县| 西城区| 秦皇岛市| 合江县| 白银市| 东源县| 安宁市| 凌云县| 甘肃省| 东港市| 峡江县| 阿巴嘎旗| 闸北区| 怀安县| 盘山县| 剑川县| 红安县| 昔阳县| 织金县| 万州区| 乌兰浩特市| 鄂伦春自治旗|