国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

結(jié)合抓包實(shí)例分析校驗(yàn)和的計(jì)算

2016-11-26 03:11
網(wǎng)絡(luò)安全和信息化 2016年9期
關(guān)鍵詞:報(bào)頭二進(jìn)制校驗(yàn)

引言:在數(shù)據(jù)校驗(yàn)中經(jīng)常提到校驗(yàn)和的概念,什么是校驗(yàn)和?校驗(yàn)和是如何計(jì)算的?本文將結(jié)合數(shù)據(jù)包分析軟件,詳細(xì)說(shuō)明校驗(yàn)和的計(jì)算過(guò)程,使校驗(yàn)和更容易理解。

什么是校驗(yàn)和

校驗(yàn)和也叫檢查和,它(Checksum)是Internet協(xié)議常用的檢驗(yàn)方式。如 TCP、UDP、IP、ICMP等協(xié)議都使用校驗(yàn)和進(jìn)行差錯(cuò)檢測(cè)。

校驗(yàn)和的計(jì)算機(jī)方法是:發(fā)送方將要發(fā)送的數(shù)據(jù)信息看成一個(gè)k比特的二進(jìn)制數(shù)序列,然后對(duì)k比特的二進(jìn)制數(shù)進(jìn)行1的補(bǔ)碼和,累加的結(jié)果再取反就得到校驗(yàn)和,再將數(shù)據(jù)信息和校驗(yàn)和一起發(fā)送到接收方。

同樣,接收方對(duì)收到的所有k比特的二進(jìn)制(包括校驗(yàn)和)進(jìn)行1的補(bǔ)碼和運(yùn)算。如果累加結(jié)果中有任何比特是0,表明傳輸有差錯(cuò)。

以上對(duì)校驗(yàn)和的解釋理解起來(lái)較困難,其他資料也沒(méi)有更詳盡的解釋,因此對(duì)校驗(yàn)和的認(rèn)識(shí)一直比較模糊。但是在分析數(shù)據(jù)包的過(guò)程中,發(fā)現(xiàn)結(jié)合數(shù)據(jù)包分析實(shí)例再加以驗(yàn)算,校驗(yàn)和的計(jì)算就不難理解了,下面就結(jié)合數(shù)據(jù)包分析來(lái)進(jìn)行校驗(yàn)和的計(jì)算。

圖 1 校驗(yàn)和

校驗(yàn)和的計(jì)算過(guò)程

首先從圖1的數(shù)據(jù)包,可以看出IP協(xié)議、UDP協(xié)議都有校驗(yàn)和,這里IP數(shù)據(jù)包的校驗(yàn)和為0x9EDE,其中0x表示是16進(jìn)制,9EDE是IP報(bào)頭的校驗(yàn)和。

IP報(bào)頭數(shù)據(jù)是多少呢?選中“IP-因特網(wǎng)協(xié)議”,則在16進(jìn)制視圖中就顯示出IP報(bào)頭部分?jǐn)?shù)據(jù),其中校驗(yàn)和9EDE也在其中,計(jì)算校驗(yàn)和過(guò)程如下:

在上面校驗(yàn)和計(jì)算方法中提到的“k比特的二進(jìn)制數(shù)序列”就是圖1中45 00 01 72 64 F9 00 00 04 11 9E DE C0 A8 01 01 EF FF FF FA,只不過(guò)這里采用十六進(jìn)制的表示。

接著對(duì)k比特的二進(jìn)制數(shù)進(jìn)行1的補(bǔ)碼和。“1的補(bǔ)碼和”運(yùn)算就是帶循環(huán)進(jìn)位的加法,最高位如進(jìn)位,則進(jìn)到最低位。當(dāng)然可以將這些數(shù)據(jù)轉(zhuǎn)成二進(jìn)制進(jìn)行計(jì)算,但比較麻煩,在這里直接用16進(jìn)制進(jìn)行計(jì)算。

注意:發(fā)送方不僅僅發(fā)送報(bào)頭數(shù)據(jù),而且連同校驗(yàn)和一起發(fā)送,所以在計(jì)算校驗(yàn)和時(shí)要先把校驗(yàn)和去掉,即把9E DE置0,這樣就成為了求 45 00 01 72 64 F9 00 00 04 11 00 00 C0 A8 01 01 EF FF FF FA的和。

Sum=0x4500+0x0172+0x64f9+0x0000+0x0411+0x0000+0xc0a8+0x0101+0xefff+0xfffa=0x3611e(超出16位,這時(shí)就需要“進(jìn)行1的補(bǔ)碼和”,即將高位0x3 與低位 0x611e相加 ),Sum=0x3+611e=0x6121。

接下來(lái)我們對(duì)計(jì)算的和取反,即得校驗(yàn)和,取反時(shí)需要轉(zhuǎn)成二進(jìn)制計(jì)算:

0x6121=b0110 0001 0010 0001

取反得b1001 1110 1101 1110=0x9EDE

即IP協(xié)議報(bào)頭的校驗(yàn)和為0x9EDE, 再將數(shù)據(jù)信息和校驗(yàn)和一起發(fā)送到接收方。

接收方接收到45 00 01 72 64 F9 00 00 04 11 9E DE C0 A8 01 01 EF FF FF FA同樣進(jìn)行1的補(bǔ)碼和計(jì)算:

Sum=0x4500+0x0172+0x64f9+0x0000+0x0411+0x9eed+0xc0a8+0x0101+0xefff+0xfffa=0x4000b,Sum=0x4+0xb=0xf=b1111

累加結(jié)果每一位都為1,沒(méi)有任何比特的“0”出現(xiàn),表明傳輸沒(méi)有錯(cuò)誤。

結(jié)合數(shù)據(jù)包分析,根據(jù)分析軟件中顯示的報(bào)頭數(shù)據(jù)、校驗(yàn)和結(jié)果,動(dòng)手驗(yàn)算后校驗(yàn)和就較容易理解了。

猜你喜歡
報(bào)頭二進(jìn)制校驗(yàn)
使用Excel朗讀功能校驗(yàn)工作表中的數(shù)據(jù)
用二進(jìn)制解一道高中數(shù)學(xué)聯(lián)賽數(shù)論題
有趣的進(jìn)度
城市黨報(bào)報(bào)頭:政治與藝術(shù)的平衡
二進(jìn)制在競(jìng)賽題中的應(yīng)用
報(bào)業(yè)文化中的一道獨(dú)特風(fēng)景
爐溫均勻性校驗(yàn)在鑄鍛企業(yè)的應(yīng)用
分析校驗(yàn)和的錯(cuò)誤原因
二進(jìn)制寬帶毫米波合成器設(shè)計(jì)與分析
淡妝濃抹總相宜
——對(duì)中國(guó)晚報(bào)報(bào)頭變化的研究與欣賞