IPV4協議格式
首部 |
版本
4位 |
首部長度 4位 |
服務類型 DSCP+ECN 6+2=8位 |
總長度
16位 |
||
標識 16位 |
標志 3位 |
分片偏移 13位 |
||||
生存時間 8位 |
協議 8位 |
首部校驗和 16位 |
||||
源IP地址 32位 |
||||||
目的IP地址 32位 |
||||||
選項 + 填充 0 – 40 字節 |
||||||
數據 |
|
|||||
說明:
版本: IP協議版本,4
首部長度: 4位,表示范圍0-15,每個位表示的單位長度是4字節,所以首部長度最大60字節,並且是4的整數倍。
服務類型: (TOS)Type of service,最開始(RFC971)用前3位表示8個優先級,數字越大優先級越高,IP優先級如下:
0、 盡力服務數據;1、中優先級數據;2、高優先級數據;3、呼叫信號;4、視頻會議;5、語音;6、預留;7、預留。
后(RFC2474)因8個級別不夠,改為前6位為DSCP(6位區分服務碼點),(RFC3168)后兩位顯示擁塞通知ECN。
Dscp的值有兩種表示方法,數字和關鍵字兩種形式。
數字形式映射到已定義的PHB(per-hop-behavior)標識碼,一共64(2^6)個。
但這種表示方式比較難讀懂,於是有了關鍵字形式:
Class selector(CS):后三位是0,即 CS6為101000;
Expedited Forwarding(EF):101110,是一個較高優先級;
Assured Forwarding(AF):前三位除以8,得到一個數,是ipv4優先級,余數是丟包優先級,例如AF12,SDCP為001 100,001是ipv4優先級1,
Default(BE):000 000
總長度: 16位,故ipV4數據報總長度 2^16 = 65536。數據部分長度就是該總長度 – 首部長度*4。
標識: 由IP模塊為每個IP數據報設置成不同的值,用於分片和重組
標志: 3位,分別為0,DF,MF。
DF為don’t fragment不分片,1不分片,0分片;MF為more fragment,1時表示還有分片,0時表示最后一個分片。
分片偏移: 表示分片在整個數據報中的位置。
生存時間: TTL(time-to-live),也叫跳數。每個路由器-1,減到0時丟棄。
協議: 使用該IP數據報的高層協議,例如1表示CMP、2表示IGMP,6表示TCP,17表示UDP,89表示OSPF。
檢驗和: 16位反碼加法,校驗IP首部。
IPV4地址
之前分類,安裝4個十進制數中的前幾位把IP地址分為了幾類,后來就無類了,靠子網掩碼來隨意划分網絡和主機。把4個十進制化成二進制數字,然后和子網掩碼進行邏輯與計算,得出的就是網絡部分,后面的是主機部分。
網絡部分就像電話區號,主機部分就像電話號,在子網內唯一,這個子網是用過路由器划分的,也就是一個路由器下面的每個主機要分配同樣的網絡號,即IP地址前n位和相應子網掩碼相同。