欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

Udp校驗(yàn)和的計(jì)算方法

文檔序號:7892599閱讀:5158來源:國知局
專利名稱:Udp校驗(yàn)和的計(jì)算方法
技術(shù)領(lǐng)域
本發(fā)明涉及局域網(wǎng)的通信領(lǐng)域,尤其是以太網(wǎng)的用戶數(shù)據(jù)包協(xié)議。
背景技術(shù)
以太網(wǎng)是當(dāng)今現(xiàn)有局域網(wǎng)采用的最通用的通信協(xié)議標(biāo)準(zhǔn)。在傳輸層有多種協(xié)議可選,其中UDP協(xié)議因?yàn)榻Y(jié)構(gòu)精簡、傳輸開銷小,而在局域網(wǎng)上應(yīng)用非常廣泛。以太網(wǎng)數(shù)據(jù)包的格式為(以下數(shù)據(jù)長度從左到右依次為7字節(jié),I字節(jié),6字節(jié),6字節(jié),2字節(jié),46 1500字節(jié),4字節(jié)) Preamble導(dǎo)碼 |SFD|目標(biāo)MAC地址|源MAC地址|以太網(wǎng)類型 |數(shù)據(jù)段|CRCUDP包(用戶數(shù)據(jù)包協(xié)議)是在以太網(wǎng)數(shù)據(jù)包中的數(shù)據(jù)段填充一個IP包頭和UDP段(包括UDP包頭和數(shù)據(jù)段),IP包頭的格式如下(以下數(shù)據(jù)長度從左到右依次為1字節(jié),I字節(jié),2字節(jié),2字節(jié),2字節(jié),I字節(jié),I字節(jié),2字節(jié),4字節(jié),4字節(jié))
I版本號頭長度I服務(wù)類型I總長度I包ID I標(biāo)記和偏移量I生存時(shí)間I傳輸協(xié)議I頭校驗(yàn)和I源IP地址I目標(biāo)IP地址
UDP段的格式如下(以下數(shù)據(jù)長度從左到右依次為2字節(jié),2字節(jié),2字節(jié),2字節(jié),n字
節(jié))
源端口號丨目標(biāo)端口號Iudp包長度Iudp校驗(yàn)和I數(shù)據(jù)段(DATAfDATAn)
其中,計(jì)算UDP校驗(yàn)和時(shí)要算上一個偽包頭(pseudoheader),即由源IP地址、目標(biāo)IP地址、傳輸協(xié)議和M)P包長度組成(以下數(shù)據(jù)長度從左到右依次為4字節(jié),4字節(jié),I字節(jié),I字節(jié),2字節(jié))
源ip地址I目標(biāo)ip地址joxoo I傳輸協(xié)議Iudp包長度UDP校驗(yàn)和的計(jì)算方法是將偽包頭、UDP包頭(UDP校驗(yàn)和置0)和數(shù)據(jù)段按16bit分組相加,進(jìn)位加在本次運(yùn)算的個位,對最后結(jié)果按bit取反。公式為
Checksum = OxFFFF - [ E (偽包頭)+ E (UDP 包頭)+ E (UDP 數(shù)據(jù))]
將計(jì)算得到的Checksum回填到UDP校驗(yàn)和。所以,是先有后面的數(shù)據(jù)段,才能計(jì)算出前面的UDP校驗(yàn)和。因此,用UDP包傳送數(shù)據(jù)時(shí),要先讀一遍需要發(fā)送的數(shù)據(jù),計(jì)算校驗(yàn)和,回填到UDP包頭;然后重新再讀一遍需要發(fā)送的數(shù)據(jù),和其他信息組成一個完整的UDP包發(fā)送。在現(xiàn)有的協(xié)議規(guī)定下,所有需要發(fā)送的數(shù)據(jù)都需要處理兩遍,效率比較低。

發(fā)明內(nèi)容
為了解決現(xiàn)有技術(shù)的不足,本發(fā)明提供了一種新的UDP校驗(yàn)和的計(jì)算方法,通過改進(jìn)已有方法,實(shí)現(xiàn)只讀一遍需要發(fā)送的數(shù)據(jù),計(jì)算校驗(yàn)和與組包同時(shí)完成,以提高UPD包的傳輸效率與實(shí)時(shí)性。為了實(shí)現(xiàn)上述目的,本發(fā)明采用如下技術(shù)方案
一種UDP校驗(yàn)和的計(jì)算方法,包括如下步驟
(I)將UDP包長度和IP包總長度均加2 ;(2)將UDP校驗(yàn)和設(shè)為兩個字節(jié)的十六進(jìn)制常數(shù);
(3)將偽包頭、UDP包頭和數(shù)據(jù)段按16bit分組逐一相加,進(jìn)位加在本次運(yùn)算的個位;
(4)將步驟(3)得到的結(jié)果按bit取反,添加在UDP數(shù)據(jù)段的末尾;
(5)發(fā)送結(jié)果。進(jìn)一步,所述常數(shù)是除0x0000和OxFFFF之外的任意常數(shù)。本發(fā)明提供的計(jì)算方法極大地簡化了 UDP包的組包流程,所有的數(shù)據(jù)只需要讀取一次就可以立即組包發(fā)送,避免了傳統(tǒng)技術(shù)中要反復(fù)讀取兩遍致使效率低下的問題,極大地提高了 m)P包的傳輸效率以及實(shí)時(shí)性。


圖I是傳統(tǒng)的UDP包組包流程示意圖。圖2是本發(fā)明UDP包組包流程示意圖。圖3是本發(fā)明中的公式I計(jì)算流程示意圖。圖4是本發(fā)明中的公式2計(jì)算流程示意圖。圖5是本發(fā)明中的公式3計(jì)算流程示意圖。圖6是本發(fā)明中的公式4計(jì)算流程示意圖。圖7是本發(fā)明中的公式5計(jì)算流程示意圖。圖8是本發(fā)明的計(jì)算過程按傳統(tǒng)方法驗(yàn)算的示意圖。
具體實(shí)施例方式下面結(jié)合附圖和實(shí)施例對本發(fā)明作進(jìn)一步詳細(xì)說明。本發(fā)明方法是根據(jù)已有的UDP校驗(yàn)和計(jì)算方法推導(dǎo)、計(jì)算并總結(jié)出來的,發(fā)明方法原理及推導(dǎo)過程如下
傳統(tǒng)的UDP包組包流程如圖I所示,用UDP包傳送數(shù)據(jù)時(shí),要先讀一遍需要發(fā)送的數(shù)據(jù),計(jì)算校驗(yàn)和,回填到UDP包頭;然后重新再讀一遍需要發(fā)送的數(shù)據(jù),和其他信息組成一個完整的m)P包發(fā)送。UDP校驗(yàn)和的計(jì)算方法是將偽包頭、UDP包頭(UDP校驗(yàn)和置0)和數(shù)據(jù)段按16bit分組相加,進(jìn)位加在本次運(yùn)算的個位,對最后結(jié)果按bit取反。如圖3所示,公式為(式中的Checksum代表UDP校驗(yàn)和)
公式① Checksum = OxFFFF - [ E (偽包頭)+ E (UDP 包頭)+ E (UDP 數(shù)據(jù))]
從UDP校驗(yàn)和的計(jì)算公式(公式①)可以得出
公式② E (偽包頭)+ E (UDP 包頭 + Checksum) + E (UDP 數(shù)據(jù))=OxFFFF也就是說,將M)P校驗(yàn)和(Checksum)回填到UDP包頭后,偽包頭、UDP包頭和數(shù)據(jù)段所有數(shù)據(jù)相加的和等于OxFFFF,如圖4所示?,F(xiàn)將UDP包的數(shù)據(jù)段末尾添加兩個字節(jié)的常數(shù),如0x1234 (十六進(jìn)制),則UDP包長度以及IP包總長度都要加2,UDP段的格式如下(以下數(shù)據(jù)長度從左到右依次為2字節(jié),2字節(jié),2字節(jié),2字節(jié),n+2字節(jié))
權(quán)利要求
1.一種UDP校驗(yàn)和的計(jì)算方法,其特征在于,包括如下步驟 (1)將UDP包長度和IP包總長度均加2; (2)將UDP校驗(yàn)和設(shè)為兩個字節(jié)的十六進(jìn)制常數(shù); (3)將偽包頭、UDP包頭和數(shù)據(jù)段按16bit分組逐一相加,進(jìn)位加在本次運(yùn)算的個位; (4)將步驟(3)得到的結(jié)果按bit取反,添加在UDP數(shù)據(jù)段的末尾; (5)發(fā)送結(jié)果。
2.根據(jù)權(quán)利要求I所述的方法,其特征是所述常數(shù)是除0x0000和OxFFFF之外的任意常數(shù)。
全文摘要
本發(fā)明公開了一種UDP校驗(yàn)和的計(jì)算方法,對已有的技術(shù)進(jìn)行改進(jìn),以提高UDP包的傳輸效率。本發(fā)明方法的主要步驟是將UDP校驗(yàn)和設(shè)為一個常數(shù),然后按照傳統(tǒng)的UDP校驗(yàn)和計(jì)算方法進(jìn)行計(jì)算,將得出的結(jié)果添在UDP數(shù)據(jù)段的末尾。本發(fā)明提供的計(jì)算方法極大地簡化了UDP包的組包流程,所有的數(shù)據(jù)只需要讀取一次就可以立即組包發(fā)送,極大地提高了UDP包的傳輸效率以及實(shí)時(shí)性。
文檔編號H04L29/06GK102638464SQ20121008740
公開日2012年8月15日 申請日期2012年3月29日 優(yōu)先權(quán)日2012年3月29日
發(fā)明者楊峰, 許琨 申請人:蘇州攀星光電科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
永安市| 遂溪县| 田东县| 辽中县| 延津县| 奈曼旗| 隆林| 德化县| 邯郸县| 灌云县| 长顺县| 新营市| 衡阳县| 白银市| 会泽县| 康定县| 定安县| 华蓥市| 万荣县| 肃北| 宝兴县| 女性| 高要市| 白玉县| 南康市| 阿合奇县| 临泽县| 涞水县| 崇明县| 炎陵县| 尖扎县| 鸡西市| 永修县| 乐陵市| 泽州县| 定兴县| 云龙县| 博罗县| 扶沟县| 连州市| 天镇县|