網路層協議——IP協議
1、IP協議的特點:無狀態、無連線、不可靠
無狀態:指IP通訊雙方不同步傳輸資料的狀態資訊,因此所有IP資料報的傳送、傳輸和接收都是相互獨立、沒有上下文關係的。
無連線:指IP通訊雙方都不長久的維持對方的任何資訊。
不可靠:指IP協議不能保證IP資料報準確地到達接收端,它只承諾盡最大努力。
2、IPv4頭部結構
4位版本號:指定IP協議的版本。對IPv4來說,其值為4
4位頭部長度:4位最大能儲存15,因此,IP資料報報頭的長度最大是60位元組
8位服務型別:包括3位的優先順序欄位,4位的TOS欄位和1位保留欄位。4位的TOS欄位分別表示為:最小延時(ssh/tenlet),最大吞吐量,最高可靠性、最小費用。其中,最多隻能有一個設定為1。
16為總長度:是指整個IP資料報的長度,以位元組為單位。IP資料報最大的長度為65535位元組。但是由於MTU的限制,長度超過MTU的資料報都會被分片傳輸。
16位標識:唯一地標識主機發送的每一個數據報。其初始值由系統隨機生成,每傳送一個數據報,其值加1。同一資料報的所有分片具有相同的標識。
3位標誌:第一位保留;第二位是DF位,“禁止分片”,如果設定該位,則IP資料報不允許分片,如果IP資料報的長度超過MTU,則丟棄該資料報;第三位MF位,“更多分片”,除了資料報的最後一個分片外,其他分片都要將其設定為1。
13位片偏移:是分片相對原始資料報的偏移。實際的偏移值是將該值左移3位後的值,除了最後一個分片,每個IP分片的資料部分的長度必須是8的倍數。
8位生存時間:是資料報到達目的地之前允許經過的路由器跳數。當該值為0是,路由器丟棄該資料報,並向源端返回ICMP差錯報文。
8位協議:用來區分上層協議。
16位頭部校驗和:由傳送端填充,接收端使用CRC演算法檢驗IP資料報頭部在傳輸中是否出錯。(僅檢驗頭部)
32位源IP地址和目的IP地址:分別標識資料報的傳送端和接收端
3、IP分片
(1)當IP資料報的長度超過幀的MTU時,它將被分片傳輸,分片可能發生在傳送端,也可能發生在中轉路由器,而且可能在傳輸過程中被多次分片,但只有在最終的目標機器上,這些分片才會被核心中的IP模組重新組裝
(2)一個IP資料報的每個分片都有自己的IP頭部,他們具有相同的標識值、但具有不同的片偏移。並且除了最後一個分片外,其他分片都設定MF標誌。每個分片的IP頭部的總長度都被設定為該分片的長度。
4、IPv6頭部結構
IPv6版本目前使用較少,想要深入學習IPv6的小夥伴們就自己動手查資料吧~~