IP協議頭校驗和

在IPv4協議中,首部檢驗和佔16位。這個字段只檢驗數據報的首部,但不包括數據部分。這是因爲數據報每經過一個路由器,路由器都要重新計算一下首部檢驗和(一些字段,如生存 時間、標誌、片偏移等都可能發生變化)。不檢驗數據部分可減少計算的工作量。

IP首部的檢驗和採用下面的簡單計算方法:在發送方,先把IP數據報首部劃分爲許多16位字的序列,並把檢驗和字段置 零。用反碼算術運算把所有16位字相加後,將得到的和的反碼寫入檢驗和字段。接收方收到數據報後,將首部的所有16位字再使用反碼算術運算相加一次。將得到的和取反碼, 即得出接收方檢驗和的計算結果。若首部未發生任何變化,則此結果必爲0,於是就保留這個數據報。否則即認爲出差錯,並將此數據報丟棄。具體計算步驟如下:

 

如下幾個問題

1、校驗和能夠省略嗎?
   事實上在網絡傳輸的過程中,IP首部校驗和是絕對不可省略的。而在驅動層、在應用層,是可以不用管,直接交給網卡去實現校驗的。
2、校驗和能保證首部不出問題嗎?
 當然不能,只能保證絕大多數情況不出故障,畢竟這個校驗方式是不嚴謹的。

 

引用文章

IP協議頭詳解

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章