UDP數(shù)據(jù)報(bào)中用戶數(shù)據(jù)的最長(zhǎng)長(zhǎng)度為65507字節(jié)。但是,大多數(shù)實(shí)現(xiàn)所提供的長(zhǎng)度比這個(gè)最大值小。
公司主營(yíng)業(yè)務(wù):網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。成都創(chuàng)新互聯(lián)公司推出于洪免費(fèi)做網(wǎng)站回饋大家。
從UDP的封裝格式來(lái)看。其中源端口和目的端口各占16位。數(shù)據(jù)報(bào)長(zhǎng)度位占16位。此數(shù)據(jù)報(bào)長(zhǎng)度表示的為數(shù)據(jù)報(bào)長(zhǎng)度,包含首部和數(shù)據(jù)區(qū),以字節(jié)為單位,最小值為8,即沒(méi)有數(shù)據(jù)時(shí)的長(zhǎng)度。
又稱為數(shù)據(jù)負(fù)載)。數(shù)據(jù)報(bào)的最大長(zhǎng)度根據(jù)操作環(huán)境的不同而各異。從理論上說(shuō),包含報(bào)頭在內(nèi)的數(shù)據(jù)報(bào)的最大長(zhǎng)度為65535字節(jié)。不過(guò),一些實(shí)際應(yīng)用往往會(huì)限制數(shù)據(jù)報(bào)的大小,有時(shí)會(huì)降低到8192字節(jié)。
所以,在應(yīng)用層,你的Data最大長(zhǎng)度為1472。
在網(wǎng)絡(luò)層,因?yàn)镮P包的首部要占用20字節(jié),所以這的MTU為1500-20=1480; 在傳輸層,對(duì)于UDP包的首部要占用8字節(jié),所以這的MTU為1480-8=1472; 所以,在應(yīng)用層,你的Data最大長(zhǎng)度為1472。
UDP報(bào)文的頭部只有8個(gè)字節(jié),相對(duì)TCP的20字節(jié)。報(bào)頭長(zhǎng)度字段:占4比特。是頭部占32比特的數(shù)字,包括可選項(xiàng)。普通IP數(shù)據(jù)報(bào)(沒(méi)有任何選項(xiàng)),該字段的值是5,即160比特=20字節(jié)。此字段最大值為60字節(jié)。
因?yàn)橐紤]20個(gè)字節(jié)的IP報(bào)文頭,所以每個(gè)數(shù)據(jù)分片的數(shù)據(jù)段長(zhǎng)度最大為1480字節(jié)。
以太網(wǎng)的默認(rèn)的MTU=1500,所以攜帶的數(shù)據(jù)1500-20=1480字節(jié)。需加上UDP的8字節(jié)首部(8192+ 8)/ 1480 = 54,因此需要分成6數(shù)據(jù)報(bào)片。
1)首先,計(jì)算數(shù)據(jù)包總長(zhǎng)度:數(shù)據(jù)包總長(zhǎng)度=IP頭(20字節(jié))+UDP頭(8字節(jié))+UDP數(shù)據(jù)(8192字節(jié))=8220(字節(jié))2)由于你沒(méi)有提到分片大小,以一般的以太網(wǎng)MTU值(Maximum Transmission Unit,最大傳輸單元)1500字節(jié)計(jì)算。
現(xiàn)在的大部分系統(tǒng)都默認(rèn)提供了可讀寫(xiě)大于8192字節(jié)的UDP數(shù)據(jù)報(bào)(使用這個(gè)默認(rèn)值是因?yàn)?192是NFS讀寫(xiě)用戶數(shù)據(jù)數(shù)的默認(rèn)值)。第二個(gè)限制來(lái)自于TCP/IP的內(nèi)核實(shí)現(xiàn)??赡艽嬖谝恍?shí)現(xiàn)特性(或差錯(cuò)),使IP數(shù)據(jù)報(bào)長(zhǎng)度小于65535字節(jié)。
如果IP層有數(shù)據(jù)包要傳,而且數(shù)據(jù)包的長(zhǎng)度超過(guò)了MTU,那么IP層就要對(duì)數(shù)據(jù)包進(jìn)行分片(fragmentation)操作,使每一片的長(zhǎng)度都小于或等于MTU。
UDP數(shù)據(jù)報(bào)中用戶數(shù)據(jù)的最長(zhǎng)長(zhǎng)度為65507字節(jié)。但是,大多數(shù)實(shí)現(xiàn)所提供的長(zhǎng)度比這個(gè)最大值小。
1、UDP數(shù)據(jù)報(bào)中用戶數(shù)據(jù)的最長(zhǎng)長(zhǎng)度為65507字節(jié)。但是,大多數(shù)實(shí)現(xiàn)所提供的長(zhǎng)度比這個(gè)最大值小。
2、以字節(jié)為單位,最小值為8,即沒(méi)有數(shù)據(jù)時(shí)的長(zhǎng)度。2^16=65536,UDP理論上最大的數(shù)據(jù)報(bào)長(zhǎng)度為65536字節(jié),實(shí)際上65536字節(jié)會(huì)溢出,所以實(shí)際上包含報(bào)頭在內(nèi)的數(shù)據(jù)報(bào)的最大長(zhǎng)度為65535字節(jié)。從UDP的封裝格式來(lái)看。
3、0和0相加是0,0和1相加是1,1和1相加是0但要產(chǎn)生一個(gè)進(jìn)位1,加到下一列。若最高位相加后產(chǎn)生進(jìn)位,則最后得到的結(jié)果要加1)。 將此和的二進(jìn)制反碼寫(xiě)入校驗(yàn)和字段后,發(fā)送此UDP用戶數(shù)據(jù)報(bào)。