日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

TCP和UDP通過(guò)IPv6 Jumbograms

【TCP和UDP通過(guò)IPv6 Jumbograms】本備忘錄狀態(tài)
本文具體說(shuō)明了一個(gè)為網(wǎng)絡(luò)間交流的網(wǎng)絡(luò)路徑協(xié)議標(biāo)準(zhǔn),并且為改進(jìn)而進(jìn)行了討論
和提了建議 。請(qǐng)參考最新版本的"Internet Official Protocol Standards"這本書(shū),此書(shū)標(biāo)準(zhǔn)化
了協(xié)議的狀態(tài)和地位 。本備忘錄的貢獻(xiàn)是有限的 。
目錄
1.概況 1
2. UDP Jumbograms 1
3. TCP Jumbograms 2
3.1 TCP MSS 2
3.2 TCP Urgent Pointer 2
4.安全方面的考慮 3
5.參考書(shū) 3
1.概況
IPv6支持比65536字節(jié)還大的數(shù)據(jù),經(jīng)常作為jumbograms的參考,通過(guò)Jumbo Payload的Hop-by-Hop option的用法 。UDP協(xié)議有16位長(zhǎng)度這就能避開(kāi)使用jumbograms,但是TCP沒(méi)有16位長(zhǎng),MSS選項(xiàng)和Urgent的長(zhǎng)度被限制在16位長(zhǎng) 。本文描述了一些簡(jiǎn)單的能夠答應(yīng)TCP和UDP使用IPv6 jumbograms的變化 。
2. UDP Jumbograms
答應(yīng)UDP使用jumbograms,也是得UDP的長(zhǎng)度需要擴(kuò)長(zhǎng),或它需要被忽視 。由于域的長(zhǎng)度不能被改變,長(zhǎng)度為零是用來(lái)表明它是可以被忽視的,;并且在"pseudo-header"
里的長(zhǎng)度是被用來(lái)決定UDP頭加數(shù)據(jù)的真正長(zhǎng)度的 。這樣做是因?yàn)閁DP域包含在UDP頭里,因此域的最小有效值是8 。
當(dāng)發(fā)送一個(gè)UDP數(shù)據(jù)包時(shí),假如并且僅僅是假如當(dāng)UDP頭加數(shù)據(jù)的長(zhǎng)度超過(guò)65535時(shí)把UDP頭里的域長(zhǎng)度設(shè)為零 。
注重1:為處理UDP校驗(yàn)而在"pseudo-header"里使用的長(zhǎng)往往不是UDP頭加數(shù)據(jù)的真正長(zhǎng)度,也不是零 。
注重2:用來(lái)傳輸一個(gè)UDP包的一個(gè)IPv6包的長(zhǎng)度大于5535將需要在一個(gè)Hop-by-Hop選擇的頭里執(zhí)行一個(gè)Jumbo Payload選擇 。在JumboPayload選擇里的域的長(zhǎng)度包含了包含IPv6頭的IP報(bào)的長(zhǎng)度,也就是說(shuō),它包含了所有的擴(kuò)長(zhǎng)的頭加上UDP頭加上數(shù)據(jù)的長(zhǎng)度 。在IPv6頭里的域長(zhǎng)度包含了用來(lái)表明Jumbo Payload選擇存在的零 。
假如一個(gè)UDP包以零作為標(biāo)準(zhǔn)長(zhǎng)度,那UDP包的長(zhǎng)度計(jì)算應(yīng)該是在Jumbo Payload Option減去所有在IPv6頭和UDP頭兩者間擴(kuò)展的頭的長(zhǎng)度 。
3. TCP Jumbograms
Because there is no length field in the TCP header, here is nothing limiting the length of an individual TCP packet. However, the MSS value that is negotiated at the beginning of the connection limits the largest TCP packet that can be sent, and the Urgent Pointer cannot reference data beyond 65535 bytes.
3.1 TCP MSS
當(dāng)決定發(fā)送MSS的何值時(shí),假如直接附在接口上的MTU比65535大,那就發(fā)送MSS的值為65535 。
當(dāng)一個(gè)值為65535的MSS被接收時(shí),那它將被作為無(wú)窮大處理 。MTU的編碼以外部的接口開(kāi)始,此接口將被用來(lái)決定實(shí)際的MSS 。
3.2 TCP Urgent Pointer Urgent Pointer的問(wèn)題可以通過(guò)增加一個(gè)TCP Urgent Pointer Option來(lái)解決 。然而,由于它與利用jumbograms的應(yīng)用不同的是也將使用Urgent Pointers,一點(diǎn)很少的插入帶來(lái)的改變就和MSS的改變一樣都將是有效的 。
當(dāng)一個(gè)TCP的包用一個(gè)Urgent Pointer來(lái)發(fā)送時(shí),首先考慮從Sequence Number到Urgent Pointer的偏移量 。假如偏移量小于65535,那就將偏移量填到Urgent域里并且繼續(xù)正常的TCP處理 。假如偏移量比65535大,并且偏移量大于或等于TCP數(shù)據(jù)的長(zhǎng)度,那就在Urgent Pointer里填上65535并且繼續(xù)TCP的正常處理 。否則,TCP包必須分成兩份 。第一部分包含數(shù)據(jù),但不包含指向Urgent Pointer的數(shù)據(jù),并且設(shè)置Urgent域?yàn)?5535用此來(lái)表明Urgent Pointer超出了這個(gè)包 。第二部分包含了Urgent Pointer域的正常設(shè)置因此能被發(fā)送 。
注重:第一部分并不是一定要包含所有的到UrgentPointer的數(shù)據(jù) 。它可以縮短到和在65534字節(jié)里的Urgent Pointer一樣的長(zhǎng)度,因此在第二部分里的Urgent Pointer的偏移量將可以被縮短到比65535字節(jié)小 。
至于TCP輸入的處理,當(dāng)一個(gè)用URG位設(shè)置并且Urgent域的大小是65535的TCP包被接收時(shí),Urgent Pointer使用一個(gè)和TCP長(zhǎng)度相等的偏移量來(lái)計(jì)算而不是根據(jù)再Urgent域里的偏移量來(lái)計(jì)算 。

推薦閱讀