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

一種路徑最大傳輸單元發(fā)現(xiàn)方法和節(jié)點(diǎn)的制作方法

文檔序號(hào):7675863閱讀:373來(lái)源:國(guó)知局
專利名稱:一種路徑最大傳輸單元發(fā)現(xiàn)方法和節(jié)點(diǎn)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)通信領(lǐng)域,特別涉及IPV6協(xié)議中路徑最大傳輸單元O^ath Maximum Transmission Unit, PMTU)發(fā)現(xiàn)方法和節(jié)點(diǎn)。
背景技術(shù)
隨著IPv4地址的日益枯竭,IPv6網(wǎng)絡(luò)的大量部署逐漸被提上日程,和IPv4 協(xié)議棧相比,IPv6協(xié)議棧一個(gè)重要的進(jìn)步就是支持路徑最大傳輸單元(Path Maximum Transmission Unit,PMTU),也就是IPV6數(shù)據(jù)包從源端發(fā)出時(shí),數(shù)據(jù)包的長(zhǎng)度必須小于整個(gè)路徑的最大傳輸單元(Maximum Transmission Unit,MTU),這樣報(bào)文經(jīng)過(guò)中間節(jié)點(diǎn)的時(shí)就不用分片,提高了網(wǎng)絡(luò)設(shè)備的報(bào)文轉(zhuǎn)發(fā)效率。PMTU的實(shí)現(xiàn)原理如圖1所示,報(bào)文從源節(jié)點(diǎn)發(fā)出時(shí),按照路由的MTU分片(路由默認(rèn)MTU值就是出接口的MTU),在中間節(jié)點(diǎn)轉(zhuǎn)發(fā)時(shí),如果發(fā)現(xiàn)出接口 MTU比報(bào)文長(zhǎng)度小,則丟棄報(bào)文,并向源節(jié)點(diǎn)發(fā)送一個(gè)包過(guò)大的互聯(lián)網(wǎng)控制報(bào)文協(xié)議第 6 版 Qnternet Control Message Protocol Version 6,ICMPv6)差錯(cuò)報(bào)文,攜帶出接口的MTU值。源節(jié)點(diǎn)收到包過(guò)大報(bào)文后,如果不存在一條目的地址的主機(jī)路由,用發(fā)包的目的地址創(chuàng)建一條主機(jī)路由,路由的MTU值就是報(bào)文中攜帶的MTU值;如果存在這樣一條目的地址的主機(jī)路由,比較一下MTU值,若MTU值變小,就直接修改路由的MTU值。經(jīng)過(guò)幾輪交互,就可以學(xué)習(xí)到整個(gè)路徑的最小MTU,即PMTU,下一次再發(fā)報(bào)文時(shí),就會(huì)根據(jù)PMTU進(jìn)行分片,保證中間節(jié)點(diǎn)不分片。目前IPv6協(xié)議棧PMTU功能的實(shí)現(xiàn),一次發(fā)現(xiàn)可能需要經(jīng)過(guò)多次報(bào)文交互才能完成,在有η個(gè)節(jié)點(diǎn)時(shí),極限情況從第一個(gè)節(jié)點(diǎn)發(fā)一個(gè)報(bào)文到第η個(gè)節(jié)點(diǎn),需要交互2*(η-2) 個(gè)報(bào)文才能完成一次PMTU學(xué)習(xí),其實(shí)就是中間節(jié)點(diǎn)都需要收到一個(gè)轉(zhuǎn)發(fā)報(bào)文,回一個(gè)包過(guò)大的ICMPv6報(bào)文。這樣當(dāng)中間節(jié)點(diǎn)比較多時(shí),一次學(xué)習(xí)時(shí)間就比較長(zhǎng),并且請(qǐng)求注解 (Request For Comments, RFC)規(guī)定一次學(xué)習(xí)到的PMTU信息,有效時(shí)間只有10分鐘,10分鐘以后就會(huì)刪除,以后再發(fā)包,又需要重新學(xué)習(xí),又會(huì)出現(xiàn)一段時(shí)間內(nèi)報(bào)文因?yàn)镸TU問(wèn)題轉(zhuǎn)發(fā)丟包。所以目前的PMTU學(xué)習(xí)機(jī)制,在網(wǎng)絡(luò)MTU逐跳遞減的情況下,PMTU的學(xué)習(xí)收斂慢, 并且在分布式設(shè)備上,整機(jī)PMTU收斂更慢(因?yàn)榇藭r(shí)板間通信也多),這些問(wèn)題給系統(tǒng)帶來(lái)了額外的開(kāi)銷,浪費(fèi)了系統(tǒng)的帶寬。同時(shí)網(wǎng)絡(luò)中還有一種針對(duì)PMTU學(xué)習(xí)的攻擊,通過(guò)偽造包過(guò)大報(bào)文,導(dǎo)致學(xué)習(xí)的 PMTU錯(cuò)誤,引起網(wǎng)絡(luò)性能下降或者拒絕服務(wù)攻擊。

發(fā)明內(nèi)容
本發(fā)明提供一種路徑最大傳輸單元發(fā)現(xiàn)方法和節(jié)點(diǎn),改進(jìn)目前IPV6協(xié)議中PMTU 發(fā)現(xiàn)效率低下、帶寬浪費(fèi)以及容易被攻擊的問(wèn)題。為了解決上述問(wèn)題,本發(fā)明提供了一種路徑最大傳輸單元發(fā)現(xiàn)方法,包括源節(jié)點(diǎn)為待發(fā)送報(bào)文查找是否存在對(duì)應(yīng)的路徑最大傳輸單元(PMTU)路由,如果不存在或者查找到的PMTU路由的最大傳輸單元(MTU)值無(wú)效,則建立或更新PMTU路由的
5MTU值為指定值,該指定值不大于系統(tǒng)最小的最大傳輸單元,以該指定值對(duì)所述待發(fā)送報(bào)文進(jìn)行分片處理,發(fā)送攜帶PMTU探測(cè)指示的報(bào)文;各中間節(jié)點(diǎn)接收到攜帶所述PMTU探測(cè)指示的報(bào)文時(shí),轉(zhuǎn)發(fā)所述報(bào)文,發(fā)送包過(guò)大報(bào)文至所述源節(jié)點(diǎn),所述包過(guò)大報(bào)文中攜帶所述中間節(jié)點(diǎn)上查到的出接口的MTU;源節(jié)點(diǎn)接收各中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文,根據(jù)所述包過(guò)大報(bào)文中攜帶的MTU值確定對(duì)應(yīng)的PMTU路由的MTU值。進(jìn)一步的,所述方法還包括,判斷所述待發(fā)送報(bào)文的長(zhǎng)度是否小于該指定值,如果是,直接發(fā)送所述待發(fā)送報(bào)文;以及,所述源節(jié)點(diǎn)為所述待發(fā)送報(bào)文查找到對(duì)應(yīng)的PMTU路由且該P(yáng)MTU路由的MTU值有效,且所述待發(fā)送報(bào)文的長(zhǎng)度小于所述PMTU路由的MTU值時(shí),直接發(fā)送所述待發(fā)送報(bào)文。進(jìn)一步的,所述報(bào)文中通過(guò)如下方式攜帶PMTU探測(cè)指示在所述報(bào)文中攜帶逐跳選項(xiàng)頭,該逐跳選項(xiàng)頭中攜帶一選項(xiàng),該選項(xiàng)攜帶PMTU探測(cè)指示,所述選項(xiàng)為路由告警(route alert)選項(xiàng)或新增選項(xiàng)。進(jìn)一步的,上述方法還可具有以下特點(diǎn),所述源節(jié)點(diǎn)未查找到對(duì)應(yīng)的PMTU路由或者查找到的PMTU路由的MTU值無(wú)效時(shí), 還建立或更新與所述PMTU路由對(duì)應(yīng)的PMTU緩存條目,設(shè)置該P(yáng)MTU緩存條目的MTU值為所述源節(jié)點(diǎn)查到的出節(jié)點(diǎn)的MTU ;所述源節(jié)點(diǎn)根據(jù)所述包過(guò)大報(bào)文中攜帶的MTU值確定對(duì)應(yīng)的PMTU路由的MTU值包括所述源節(jié)點(diǎn)接收到所述中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文后,取出該包過(guò)大報(bào)文中的 MTU值并查找對(duì)應(yīng)的PMTU緩存條目,如果所述取出的MTU值小于所述PMTU緩存條目中的 MTU值,則用所述取出的MTU值替換所述PMTU緩存條目中的MTU值,否則不處理;所述源節(jié)點(diǎn)在處理完所有中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文后,使用該P(yáng)MTU緩存條目的MTU值更新對(duì)應(yīng)的PMTU路由的MTU值,完成該P(yáng)MTU路由的MTU值發(fā)現(xiàn)。進(jìn)一步的,上述方法還可具有以下特點(diǎn),所述源節(jié)點(diǎn)接收所述包過(guò)大報(bào)文后,如果未查找到對(duì)應(yīng)的PMTU緩存條目,則丟棄該包過(guò)大報(bào)文。 進(jìn)一步的,上述方法還可具有以下特點(diǎn),設(shè)定學(xué)習(xí)時(shí)間、有效時(shí)間和老化時(shí)間;所述源節(jié)點(diǎn)發(fā)送攜帶PMTU探測(cè)指示的報(bào)文后,將對(duì)應(yīng)的PMTU緩存條目設(shè)置為學(xué)習(xí)狀態(tài);如果從學(xué)習(xí)狀態(tài)開(kāi)始的所述學(xué)習(xí)時(shí)間內(nèi),所述源節(jié)點(diǎn)完成該P(yáng)MTU路由的MTU值發(fā)現(xiàn),則將所述PMTU緩存條目的狀態(tài)設(shè)置為有效狀態(tài),否則,將所述PMTU緩存條目的狀態(tài)設(shè)置為老化狀態(tài);從所述有效狀態(tài)開(kāi)始超過(guò)所述有效時(shí)間時(shí),將所述PMTU緩存條目設(shè)置為老化狀態(tài);從所述老化狀態(tài)開(kāi)始超過(guò)所述老化時(shí)間時(shí),刪除所述PMTU緩存條目和PMTU路由。進(jìn)一步的,上述方法還可具有以下特點(diǎn),所述源節(jié)點(diǎn)為待發(fā)送報(bào)文查找到對(duì)應(yīng)的PMTU路由且該P(yáng)MTU路由的MTU值有效,且所述待發(fā)送報(bào)文的長(zhǎng)度大于等于所述PMTU路由的MTU值當(dāng)所述PMTU路由對(duì)應(yīng)的PMTU緩存條目為老化狀態(tài)時(shí),以所述PMTU路由的MTU值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送攜帶PMTU探測(cè)指示的報(bào)文,將對(duì)應(yīng)的PMTU緩存條目設(shè)置為學(xué)習(xí)狀態(tài);當(dāng)所述PMTU路由對(duì)應(yīng)的PMTU緩存條目為學(xué)習(xí)狀態(tài)或有效狀態(tài)時(shí),以所述PMTU路由的MTU值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送報(bào)文。本發(fā)明還提供一種節(jié)點(diǎn),包括報(bào)文發(fā)送單元和報(bào)文接收單元,其中所述報(bào)文發(fā)送單元用于在所述節(jié)點(diǎn)作為源節(jié)點(diǎn)時(shí),為待發(fā)送報(bào)文查找是否存在對(duì)應(yīng)的PMTU路由,如果不存在或者查找到的PMTU路由的MTU值無(wú)效,則建立或更新PMTU 路由的MTU值為指定值,所述指定值不大于系統(tǒng)最小的最大傳輸單元,以所述指定值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送攜帶PMTU探測(cè)指示的報(bào)文;所述報(bào)文接收單元用于接收到各中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文時(shí),根據(jù)所述包過(guò)大報(bào)文中攜帶的MTU值確定對(duì)應(yīng)的PMTU路由的MTU值。進(jìn)一步的,上述節(jié)點(diǎn)還可具有以下特點(diǎn),所述報(bào)文發(fā)送單元還用于判斷所述待發(fā)送報(bào)文的長(zhǎng)度是否小于所述指定值,如果是,直接發(fā)送所述待發(fā)送報(bào)文;以及,在所述節(jié)點(diǎn)作為源節(jié)點(diǎn)時(shí),當(dāng)為待發(fā)送報(bào)文查找到對(duì)應(yīng)的PMTU路由且該P(yáng)MTU路由的MTU值有效,且所述待發(fā)送報(bào)文的長(zhǎng)度小于所述PMTU路由的MTU值時(shí),直接發(fā)送所述待發(fā)送報(bào)文。進(jìn)一步的,上述節(jié)點(diǎn)還可具有以下特點(diǎn),所述報(bào)文發(fā)送單元是用于通過(guò)如下方式攜帶所述PMTU探測(cè)指示在所述報(bào)文中攜帶逐跳選項(xiàng)頭,該逐跳選項(xiàng)頭中攜帶一選項(xiàng),該選項(xiàng)攜帶PMTU探測(cè)指示,所述選項(xiàng)為路由告警(route alert)選項(xiàng)或新增選項(xiàng)。進(jìn)一步的,上述節(jié)點(diǎn)還可具有以下特點(diǎn),所述報(bào)文發(fā)送單元還用于未查找到對(duì)應(yīng)的PMTU路由或者查找到的PMTU路由的 MTU值無(wú)效時(shí),建立或更新與所述PMTU路由對(duì)應(yīng)的PMTU緩存條目,設(shè)置該P(yáng)MTU緩存條目的 MTU值為所述源節(jié)點(diǎn)查到的出節(jié)點(diǎn)的MTU ;所述報(bào)文接收單元是用于根據(jù)如下方式確定對(duì)應(yīng)的PMTU路由的MTU值接收到所述中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文后,取出該包過(guò)大報(bào)文中的MTU值并查找對(duì)應(yīng)的PMTU緩存條目,如果所述取出的MTU值小于所述PMTU緩存條目中的MTU值,則用所述取出的MTU值替換所述PMTU緩存條目中的MTU值,否則不處理;在處理完所有中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文后,使用該P(yáng)MTU緩存條目的MTU值更新對(duì)應(yīng)的PMTU路由的MTU值,完成該P(yáng)MTU路由的MTU值發(fā)現(xiàn)。進(jìn)一步的,上述節(jié)點(diǎn)還可具有以下特點(diǎn),所述報(bào)文接收單元接收所述包過(guò)大報(bào)文后,如果未查找到對(duì)應(yīng)的PMTU緩存條目, 則丟棄該包過(guò)大報(bào)文。進(jìn)一步的,上述節(jié)點(diǎn)還可具有以下特點(diǎn),所述報(bào)文發(fā)送單元還用于設(shè)定學(xué)習(xí)時(shí)間、有效時(shí)間和老化時(shí)間;發(fā)送攜帶PMTU探測(cè)指示的報(bào)文后,將對(duì)應(yīng)的PMTU緩存條目設(shè)置為學(xué)習(xí)狀態(tài);如果從學(xué)習(xí)狀態(tài)開(kāi)始的所述學(xué)習(xí)時(shí)間內(nèi),完成該P(yáng)MTU路由的MTU值發(fā)現(xiàn),則將所述PMTU緩存條目的狀態(tài)設(shè)置為有效狀態(tài),否則,將所述PMTU緩存條目的狀態(tài)設(shè)置為老化狀態(tài);從所述有效狀態(tài)開(kāi)始超出所述有效時(shí)間時(shí),將所述PMTU緩存條目設(shè)置為老化狀態(tài);從所述老化狀態(tài)開(kāi)始超出所述老化時(shí)間時(shí),刪除所述PMTU緩存條目和PMTU路由;當(dāng)所述節(jié)點(diǎn)為源節(jié)點(diǎn),為待發(fā)送報(bào)文查找到對(duì)應(yīng)的PMTU路由且該P(yáng)MTU路由的MTU 值有效,且所述待發(fā)送報(bào)文的長(zhǎng)度大于等于所述PMTU路由的MTU值當(dāng)所述PMTU路由對(duì)應(yīng)的PMTU緩存條目為老化狀態(tài)時(shí),以所述PMTU路由的MTU值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送攜帶PMTU探測(cè)指示的報(bào)文,將對(duì)應(yīng)的PMTU緩存條目設(shè)置為學(xué)習(xí)狀態(tài);當(dāng)所述PMTU路由對(duì)應(yīng)的PMTU緩存條目為學(xué)習(xí)狀態(tài)或有效狀態(tài)時(shí),以所述PMTU路由的MTU值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送報(bào)文。進(jìn)一步的,上述節(jié)點(diǎn)還可具有以下特點(diǎn),所述節(jié)點(diǎn)還包括轉(zhuǎn)發(fā)處理單元,所述轉(zhuǎn)發(fā)處理單元用于接收到攜帶PMTU探測(cè)指示的報(bào)文時(shí),當(dāng)該節(jié)點(diǎn)不是該報(bào)文的目的節(jié)點(diǎn)時(shí),轉(zhuǎn)發(fā)所述報(bào)文,發(fā)送包過(guò)大報(bào)文至該報(bào)文的源節(jié)點(diǎn),所述包過(guò)大報(bào)文中攜帶該節(jié)點(diǎn)上查到的出接口的MTU。本發(fā)明進(jìn)行PMTU發(fā)現(xiàn),解決了 PMTU學(xué)習(xí)過(guò)程中數(shù)據(jù)報(bào)文丟包問(wèn)題,減少了 PMTU 學(xué)習(xí)過(guò)程中的報(bào)文交互數(shù)量以及PMTU老化后再學(xué)習(xí)丟包問(wèn)題,同時(shí)還解決了 PMTU學(xué)習(xí)過(guò)程中的安全問(wèn)題,提高了 PMTU學(xué)習(xí)的效率和可靠性。


圖1是現(xiàn)有IPv6路徑MTU發(fā)現(xiàn)原理圖;圖2是逐跳頭選項(xiàng)格式示意圖;圖3是route alert選項(xiàng)格式示意圖;圖4是本發(fā)明定義的一種選項(xiàng)格式示意圖;圖5是PMTU緩存條目狀態(tài)切換圖;圖6是本發(fā)明PMTU發(fā)現(xiàn)示意圖;圖7是源節(jié)點(diǎn)發(fā)包處理流程圖;圖8是源節(jié)點(diǎn)收包處理流程圖。
具體實(shí)施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下文中將結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說(shuō)明。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互任意組合。本發(fā)明的核心思想是源節(jié)點(diǎn)以不大于系統(tǒng)最小的最大傳輸單元的指定值發(fā)送報(bào)文,且報(bào)文中攜帶PMTU探測(cè)指示,中間節(jié)點(diǎn)收到攜帶PMTU探測(cè)指示的報(bào)文時(shí),轉(zhuǎn)發(fā)報(bào)文,并且反饋包過(guò)大報(bào)文至源節(jié)點(diǎn),包過(guò)大報(bào)文中攜帶中間節(jié)點(diǎn)出接口的MTU,源節(jié)點(diǎn)根據(jù)包過(guò)大報(bào)文中的MTU確定PMTU路由的MTU值。
8
本發(fā)明提供一種路徑最大傳輸單元發(fā)現(xiàn)方法,包括源節(jié)點(diǎn)為待發(fā)送報(bào)文查找是否存在對(duì)應(yīng)的PMTU路由,如果不存在或者查找到的 PMTU路由的MTU值無(wú)效,則建立或更新PMTU路由的MTU值為指定值,該指定值不大于系統(tǒng)最小的最大傳輸單元,以指定值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送攜帶PMTU探測(cè)指示的報(bào)文;各中間節(jié)點(diǎn)接收到攜帶所述PMTU探測(cè)指示的報(bào)文時(shí),轉(zhuǎn)發(fā)所述報(bào)文,發(fā)送包過(guò)大報(bào)文至所述源節(jié)點(diǎn),所述包過(guò)大報(bào)文中攜帶所述中間節(jié)點(diǎn)上查到的出接口的MTU;源節(jié)點(diǎn)接收各中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文,根據(jù)所述包過(guò)大報(bào)文中攜帶的MTU值確定對(duì)應(yīng)的PMTU路由的MTU值。其中,所述源節(jié)點(diǎn)為待發(fā)送報(bào)文查找到對(duì)應(yīng)的PMTU路由且該P(yáng)MTU路由的MTU值有效,且所述待發(fā)送報(bào)文的長(zhǎng)度小于所述PMTU路由的MTU值時(shí),直接發(fā)送所述待發(fā)送報(bào)文; 另外,如果查找不到對(duì)應(yīng)的PMTU路由或者查找到的PMTU路由的MTU值無(wú)效,且待發(fā)送報(bào)文的長(zhǎng)度小于該指定值時(shí),直接發(fā)送所述待發(fā)送報(bào)文。這樣可以避免小報(bào)文時(shí)觸發(fā)PMTU學(xué)習(xí),減少浪費(fèi)系統(tǒng)的路由和PMTU存儲(chǔ)空間。其中,通過(guò)如下方式攜帶PMTU探測(cè)指示在所述報(bào)文中攜帶逐跳選項(xiàng)頭,該逐跳選項(xiàng)頭中攜帶一選項(xiàng),該選項(xiàng)攜帶PMTU探測(cè)指示,所述選項(xiàng)為路由告警(route alert)選項(xiàng)或新增選項(xiàng)。發(fā)送的報(bào)文包括如下信息基本報(bào)文頭、包含PMTU探測(cè)指示的逐跳選項(xiàng)頭, 以及要發(fā)送的分片報(bào)文。在IPv6基礎(chǔ)協(xié)議棧中,定義了一種逐跳選項(xiàng)報(bào)文頭,這種選項(xiàng)格式如附圖2所示, 其主要功能就是要求要求報(bào)文傳輸過(guò)程中的每一個(gè)節(jié)點(diǎn)都要進(jìn)行檢查。逐跳選項(xiàng)報(bào)文又可以攜帶一個(gè)或者多個(gè)TLV (Type-Length-Value,類型-長(zhǎng)度-數(shù)據(jù))編碼的選項(xiàng),其中很重要的一種選項(xiàng)是route alert選項(xiàng),這個(gè)route alert選項(xiàng)就是要求對(duì)經(jīng)過(guò)路由器,但是目的地址不是該路由器的報(bào)文進(jìn)行檢查處理,其格式如附圖3所示,2個(gè)字節(jié)的數(shù)據(jù)(網(wǎng)絡(luò)序),目前定義如下0表示報(bào)文是一個(gè)MLD (多播偵聽(tīng)者發(fā)現(xiàn)協(xié)議)報(bào)文1表示報(bào)文是一個(gè)RSVP (資源預(yù)定協(xié)議)報(bào)文2表示報(bào)文是一個(gè)活動(dòng)網(wǎng)絡(luò)協(xié)議報(bào)文3-65535保留待分配本發(fā)明中新定義一個(gè)route alert數(shù)據(jù),使用3-65535中任一個(gè),比如8,作為PMTU 探測(cè)指示,指示報(bào)文為PMTU探測(cè)報(bào)文。還可以使用新增的選項(xiàng)來(lái)攜帶PMTU探測(cè)指示,比如可以定義一個(gè)和route alert 并列的選項(xiàng),該選項(xiàng)也屬于逐跳選項(xiàng)報(bào)文的選項(xiàng),選項(xiàng)格式也是TLV方式,如圖4所示,類型可以從目前保留的里面選一個(gè),比如8等。其中,所述源節(jié)點(diǎn)未查找到對(duì)應(yīng)的PMTU路由或者查找到的PMTU路由的MTU值無(wú)效時(shí),還建立或更新與所述PMTU路由對(duì)應(yīng)的PMTU緩存條目,設(shè)置該P(yáng)MTU緩存條目的MTU 值為所述源節(jié)點(diǎn)查到的出節(jié)點(diǎn)的MTU ;所述源節(jié)點(diǎn)根據(jù)所述包過(guò)大報(bào)文中攜帶的MTU值確定對(duì)應(yīng)的PMTU路由的MTU值包括所述源節(jié)點(diǎn)接收到所述中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文后,取出該包過(guò)大報(bào)文中的 MTU值并查找對(duì)應(yīng)的PMTU緩存條目,如果所述取出的MTU值小于所述PMTU緩存條目中的MTU值,則用所述取出的MTU值替換所述PMTU緩存條目中的MTU值,否則不處理;所述源節(jié)點(diǎn)在處理完所有中間節(jié)點(diǎn)的后,使用該P(yáng)MTU緩存條目的MTU值更新對(duì)應(yīng)的PMTU路由的MTU值,完成該P(yáng)MTU路由的MTU值發(fā)現(xiàn)。其中,源節(jié)點(diǎn)在接收到目的節(jié)點(diǎn)的反饋報(bào)文時(shí),判斷已對(duì)所有中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文進(jìn)行處理。其中,目的節(jié)點(diǎn)的反饋報(bào)文可以是包過(guò)大報(bào)文,也可以是其他指示報(bào)文,指示探測(cè)到達(dá)終端。其中,如果是包過(guò)大報(bào)文,可以在該報(bào)文中攜帶指示消息,通知源節(jié)點(diǎn)PMTU探測(cè)到達(dá)終點(diǎn);也可以攜帶一指定的MTU值,比如0,表明該包過(guò)大報(bào)文是目的節(jié)點(diǎn)返回的,當(dāng)然,MTU值也可以是任意值,源節(jié)點(diǎn)通過(guò)目的節(jié)點(diǎn)返回的報(bào)文中的源地址和該源節(jié)點(diǎn)探測(cè)的目的地址相同判斷PMTU探測(cè)到達(dá)終點(diǎn)。其中,所述源節(jié)點(diǎn)接收所述包過(guò)大報(bào)文后,如果未查找到對(duì)應(yīng)的PMTU緩存條目, 則丟棄該包過(guò)大報(bào)文。該方法可以防范非法報(bào)文攻擊。因?yàn)楸景l(fā)明的PMTU緩存條目先于 PMTU探測(cè)報(bào)文產(chǎn)生,如果是合法報(bào)文,根據(jù)返回的包過(guò)大報(bào)文一定可以找到PMTU緩存條目。找不到則可以認(rèn)為是非法報(bào)文。其中,還為PMTU緩存條目設(shè)定學(xué)習(xí)時(shí)間、有效時(shí)間和老化時(shí)間;所述源節(jié)點(diǎn)發(fā)送攜帶PMTU探測(cè)指示的報(bào)文后,將對(duì)應(yīng)的PMTU緩存條目設(shè)置為學(xué)習(xí)狀態(tài);如果從學(xué)習(xí)狀態(tài)開(kāi)始的所述學(xué)習(xí)時(shí)間內(nèi),所述源節(jié)點(diǎn)完成該P(yáng)MTU路由的MTU值發(fā)現(xiàn),則將所述PMTU緩存條目的狀態(tài)設(shè)置為有效狀態(tài),否則,將所述PMTU緩存條目的狀態(tài)設(shè)置為老化狀態(tài);從所述有效狀態(tài)開(kāi)始超過(guò)所述有效時(shí)間時(shí),將所述PMTU緩存條目設(shè)置為老化狀態(tài);從所述老化狀態(tài)開(kāi)始超過(guò)所述老化時(shí)間時(shí),刪除所述PMTU緩存條目和PMTU路由。 各狀態(tài)之間的轉(zhuǎn)化如圖5所示。其中,所述源節(jié)點(diǎn)為待發(fā)送報(bào)文查找到對(duì)應(yīng)的PMTU路由且該P(yáng)MTU路由的MTU值有效,且所述待發(fā)送報(bào)文的長(zhǎng)度大于等于所述PMTU路由的MTU值當(dāng)所述PMTU路由對(duì)應(yīng)的PMTU緩存條目為老化狀態(tài)時(shí),以所述PMTU路由的MTU值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送攜帶PMTU探測(cè)指示的報(bào)文,將對(duì)應(yīng)的PMTU緩存條目設(shè)置為學(xué)習(xí)狀態(tài);當(dāng)所述PMTU路由對(duì)應(yīng)的PMTU緩存條目為學(xué)習(xí)狀態(tài)或有效狀態(tài)時(shí),以所述PMTU路由的MTU值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送報(bào)文。如圖6所示,為本發(fā)明PMTU發(fā)現(xiàn)的一示意圖。以三個(gè)中間節(jié)點(diǎn)為例,包括源節(jié)點(diǎn)在不存在或者查找到的PMTU路由的MTU值無(wú)效時(shí),以指定值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送報(bào)文,報(bào)文中攜帶PMTU探測(cè)指示,本實(shí)施例中,指定值為系統(tǒng)最小的最大傳輸單元1280 ;中間節(jié)點(diǎn)Rl接收到該攜帶PMTU探測(cè)指示的報(bào)文時(shí),轉(zhuǎn)發(fā)報(bào)文,返回包過(guò)大報(bào)文給源節(jié)點(diǎn),包過(guò)大報(bào)文中攜帶出接口 MTU值1450 ;中間節(jié)點(diǎn)R2接收到Rl轉(zhuǎn)發(fā)的攜帶PMTU探測(cè)指示的報(bào)文時(shí),轉(zhuǎn)發(fā)報(bào)文,返回包過(guò)大報(bào)文給源節(jié)點(diǎn),包過(guò)大報(bào)文中攜帶出接口 MTU值1400 ;
中間節(jié)點(diǎn)R3接收到R2轉(zhuǎn)發(fā)的攜帶PMTU探測(cè)指示的報(bào)文時(shí),轉(zhuǎn)發(fā)報(bào)文,返回包過(guò)大報(bào)文給源節(jié)點(diǎn),包過(guò)大報(bào)文中攜帶出接口 MTU值1300 ;目的節(jié)點(diǎn)接收到R3轉(zhuǎn)發(fā)的攜帶PMTU探測(cè)指示的報(bào)文時(shí),處理報(bào)文,返回包過(guò)大報(bào)文給源節(jié)點(diǎn),攜帶MTU值=0;源節(jié)點(diǎn)對(duì)各包過(guò)大報(bào)文進(jìn)行處理,獲得PMTU路由的MTU值為1300。本發(fā)明提供一種PMTU發(fā)現(xiàn)方法,包括步驟一源節(jié)點(diǎn)進(jìn)行報(bào)文發(fā)送;如圖7所示,包括源節(jié)點(diǎn)向外發(fā)IPv6報(bào)文時(shí),先查路由,查到PMTU路由且該P(yáng)MTU路由的MTU值有效,即系統(tǒng)最小的MTU < =路由MTU <=源節(jié)點(diǎn)出接口 MTU,取該P(yáng)MTU路由的MTU值為分片最大傳輸單元(簡(jiǎn)稱FMTU);判斷待發(fā)送報(bào)文長(zhǎng)度是否小于FMTU,如果是,直接發(fā)送報(bào)文,否則,根據(jù)FMTU進(jìn)行分片發(fā)送;如果未查找到對(duì)應(yīng)的PMTU路由,則以指定值為FMTU,本實(shí)施例中以系統(tǒng)最小的 MTU值1280為指定值;判斷待發(fā)送報(bào)文長(zhǎng)度是否小于FMTU,如果是,直接發(fā)送報(bào)文,否則,產(chǎn)生PMTU路由及PMTU緩存條目,將PMTU路由的MTU值設(shè)置為所述指定值,將PMTU緩存條目的MTU值設(shè)置為源節(jié)點(diǎn)出接口的MTU值,構(gòu)造PMTU探測(cè)報(bào)文,按照FMTU進(jìn)行分片發(fā)送,并設(shè)置PMTU緩存條目的狀態(tài)為學(xué)習(xí)狀態(tài);如果查找到對(duì)應(yīng)的PMTU路由但該P(yáng)MTU路由的MTU值無(wú)效,則以指定值為FMTU, 本實(shí)施例中以系統(tǒng)最小的MTU值1280為指定值;判斷待發(fā)送報(bào)文長(zhǎng)度是否小于FMTU,如果是,直接發(fā)送報(bào)文,否則,更新PMTU路由及PMTU緩存條目,將PMTU路由的MTU值設(shè)置為所述指定值,將PMTU緩存條目的MTU值設(shè)置為源節(jié)點(diǎn)出接口的MTU值,構(gòu)造PMTU探測(cè)報(bào)文, 按照FMTU進(jìn)行分片發(fā)送;將PMTU緩存條目狀態(tài)設(shè)置為學(xué)習(xí)狀態(tài)。步驟二 中間節(jié)點(diǎn)收到報(bào)文,判斷報(bào)文是否攜帶PMTU探測(cè)指示,如果是,則轉(zhuǎn)發(fā)報(bào)文,再給源節(jié)點(diǎn)回一個(gè)ICMPv6的包過(guò)大報(bào)文,包過(guò)大報(bào)文里面返回的MTU為該中間節(jié)點(diǎn)上查到的出接口 MTU,即報(bào)文轉(zhuǎn)發(fā)出接口的MTU值;否則,按照正常的流程處理,轉(zhuǎn)發(fā)或者本地處理。其中,根據(jù)如下方式判斷是否攜帶PMTU探測(cè)指示在報(bào)文轉(zhuǎn)發(fā)的過(guò)程中,中間節(jié)點(diǎn)發(fā)現(xiàn)IPv6報(bào)文攜帶逐跳選項(xiàng)頭,則把報(bào)文送給 IPv6協(xié)議棧處理。IPv6協(xié)議棧解析逐跳選項(xiàng)頭,進(jìn)一步判斷是否帶route alert選項(xiàng),帶了再判斷其route alert選項(xiàng)是不是定義的PMTU學(xué)習(xí)的類型,如果是,則報(bào)文攜帶了 PMTU 探測(cè)指示。當(dāng)然,如果使用新增選項(xiàng)攜帶PMTU指示,則判斷報(bào)文中是否攜帶該新增選項(xiàng)。步驟三目的節(jié)點(diǎn)收到攜帶PMTU探測(cè)指示的報(bào)文后,處理和中間節(jié)點(diǎn)類似,不同的是,此時(shí)不再轉(zhuǎn)發(fā)報(bào)文,且返回給源節(jié)點(diǎn)的ICMPv6的包過(guò)大報(bào)文中攜帶的MTU值為0。步驟四源節(jié)點(diǎn)接收包過(guò)大報(bào)文,根據(jù)包過(guò)大報(bào)文中的MTU值確定PMTU路由。如圖8所示,包括源節(jié)點(diǎn)收到包過(guò)大報(bào)文,取出包過(guò)大報(bào)文中的MTU值,根據(jù)產(chǎn)生該包過(guò)大報(bào)文的原始報(bào)文的目的地址查找PMTU緩存條目,如果找不到則認(rèn)為是攻擊報(bào)文,丟棄該報(bào)文。如果找到對(duì)應(yīng)的PMTU緩存條目,且包過(guò)大報(bào)文中取出的MTU不為0(表明是中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文),并且PMTU緩存條目學(xué)習(xí)狀態(tài)沒(méi)有超時(shí),則判斷取出的MTU和PMTU緩存條目中的MTU大小,如果取出的MTU小于PMTU緩存條目中的MTU,則用取出的MTU 替換PMTU緩存條目中的MTU,否則不處理;如果該包過(guò)大報(bào)文中取出的MTU為0 (表明是目的節(jié)點(diǎn)返回的包過(guò)大報(bào)文,探測(cè)已到終點(diǎn)),用該P(yáng)MTU緩存條目的MTU更新對(duì)應(yīng)的PMTU路由的MTU,并把PMTU緩存條目狀態(tài)設(shè)置為有效狀態(tài),完成PMTU發(fā)現(xiàn)。步驟五源節(jié)點(diǎn)學(xué)習(xí)到PMTU后,再發(fā)送報(bào)文時(shí)就根據(jù)學(xué)習(xí)到的PMTU發(fā)包。PMTU有效時(shí)間到,PMTU緩存條目進(jìn)入老化狀態(tài);以及,如果PMTU緩存條目學(xué)習(xí)狀態(tài)超時(shí),還沒(méi)有收到目的節(jié)點(diǎn)返回的反饋報(bào)文(比如,沒(méi)有收到MTU為0的包過(guò)大報(bào)文),則還沒(méi)有學(xué)習(xí)到PMTU,PMTU緩存條目進(jìn)入老化狀態(tài);進(jìn)入老化狀態(tài)后,如果繼續(xù)有流發(fā)送,根據(jù)FMTU發(fā)一次攜帶PMTU探測(cè)指示的報(bào)文,PMTU緩存條目進(jìn)入學(xué)習(xí)狀態(tài),重復(fù)上面的PMTU學(xué)習(xí)過(guò)程;老化狀態(tài)超時(shí),說(shuō)明老化這段時(shí)間沒(méi)有報(bào)文發(fā)送,則刪除PMTU緩存條目和對(duì)應(yīng)的 PMTU路由。可使用老化定時(shí)器進(jìn)行定時(shí)。本發(fā)明進(jìn)行PMTU發(fā)現(xiàn),解決了 PMTU學(xué)習(xí)過(guò)程中數(shù)據(jù)報(bào)文丟包問(wèn)題,減少了 PMTU 學(xué)習(xí)過(guò)程中的報(bào)文交互數(shù)量以及PMTU老化后再學(xué)習(xí)丟包問(wèn)題,同時(shí)還解決了 PMTU學(xué)習(xí)過(guò)程中的安全問(wèn)題,提高了 PMTU學(xué)習(xí)的效率和可靠性。顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計(jì)算裝置來(lái)實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,或者分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計(jì)算裝置可執(zhí)行的程序代碼來(lái)實(shí)現(xiàn),從而,可以將它們存儲(chǔ)在存儲(chǔ)裝置中由計(jì)算裝置來(lái)執(zhí)行,或者將它們分別制作成各個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來(lái)實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
1權(quán)利要求
1.一種路徑最大傳輸單元發(fā)現(xiàn)方法,其特征在于,包括源節(jié)點(diǎn)為待發(fā)送報(bào)文查找是否存在對(duì)應(yīng)的路徑最大傳輸單元(PMTU)路由,如果不存在或者查找到的PMTU路由的最大傳輸單元(MTU)值無(wú)效,則建立或更新PMTU路由的MTU 值為指定值,該指定值不大于系統(tǒng)最小的最大傳輸單元,以該指定值對(duì)所述待發(fā)送報(bào)文進(jìn)行分片處理,發(fā)送攜帶PMTU探測(cè)指示的報(bào)文;各中間節(jié)點(diǎn)接收到攜帶所述PMTU探測(cè)指示的報(bào)文時(shí),轉(zhuǎn)發(fā)所述報(bào)文,發(fā)送包過(guò)大報(bào)文至所述源節(jié)點(diǎn),所述包過(guò)大報(bào)文中攜帶所述中間節(jié)點(diǎn)上查到的出接口的MTU ;源節(jié)點(diǎn)接收各中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文,根據(jù)所述包過(guò)大報(bào)文中攜帶的MTU值確定對(duì)應(yīng)的PMTU路由的MTU值。
2.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括,判斷所述待發(fā)送報(bào)文的長(zhǎng)度是否小于該指定值,如果是,直接發(fā)送所述待發(fā)送報(bào)文;以及,所述源節(jié)點(diǎn)為所述待發(fā)送報(bào)文查找到對(duì)應(yīng)的PMTU路由且該P(yáng)MTU路由的MTU值有效,且所述待發(fā)送報(bào)文的長(zhǎng)度小于所述PMTU路由的MTU值時(shí),直接發(fā)送所述待發(fā)送報(bào)文。
3.如權(quán)利要求1所述的方法,其特征在于,所述報(bào)文中通過(guò)如下方式攜帶PMTU探測(cè)指示在所述報(bào)文中攜帶逐跳選項(xiàng)頭,該逐跳選項(xiàng)頭中攜帶一選項(xiàng),該選項(xiàng)攜帶PMTU探測(cè)指示,所述選項(xiàng)為路由告警(route alert)選項(xiàng)或新增選項(xiàng)。
4.如權(quán)利要求1所述的方法,其特征在于,所述源節(jié)點(diǎn)未查找到對(duì)應(yīng)的PMTU路由或者查找到的PMTU路由的MTU值無(wú)效時(shí),還建立或更新與所述PMTU路由對(duì)應(yīng)的PMTU緩存條目,設(shè)置該P(yáng)MTU緩存條目的MTU值為所述源節(jié)點(diǎn)查到的出節(jié)點(diǎn)的MTU ;所述源節(jié)點(diǎn)根據(jù)所述包過(guò)大報(bào)文中攜帶的MTU值確定對(duì)應(yīng)的PMTU路由的MTU值包括 所述源節(jié)點(diǎn)接收到所述中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文后,取出該包過(guò)大報(bào)文中的MTU值并查找對(duì)應(yīng)的PMTU緩存條目,如果所述取出的MTU值小于所述PMTU緩存條目中的MTU值, 則用所述取出的MTU值替換所述PMTU緩存條目中的MTU值,否則不處理;所述源節(jié)點(diǎn)在處理完所有中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文后,使用該P(yáng)MTU緩存條目的MTU 值更新對(duì)應(yīng)的PMTU路由的MTU值,完成該P(yáng)MTU路由的MTU值發(fā)現(xiàn)。
5.如權(quán)利要求4所述的方法,其特征在于,所述方法還包括所述源節(jié)點(diǎn)接收所述包過(guò)大報(bào)文后,如果未查找到對(duì)應(yīng)的PMTU緩存條目,則丟棄該包過(guò)大報(bào)文。
6.如權(quán)利要求4所述的方法,其特征在于,所述方法還包括 設(shè)定學(xué)習(xí)時(shí)間、有效時(shí)間和老化時(shí)間;所述源節(jié)點(diǎn)發(fā)送攜帶PMTU探測(cè)指示的報(bào)文后,將對(duì)應(yīng)的PMTU緩存條目設(shè)置為學(xué)習(xí)狀態(tài);如果從學(xué)習(xí)狀態(tài)開(kāi)始的所述學(xué)習(xí)時(shí)間內(nèi),所述源節(jié)點(diǎn)完成該P(yáng)MTU路由的MTU值發(fā)現(xiàn), 則將所述PMTU緩存條目的狀態(tài)設(shè)置為有效狀態(tài),否則,將所述PMTU緩存條目的狀態(tài)設(shè)置為老化狀態(tài);從所述有效狀態(tài)開(kāi)始超過(guò)所述有效時(shí)間時(shí),將所述PMTU緩存條目設(shè)置為老化狀態(tài); 從所述老化狀態(tài)開(kāi)始超過(guò)所述老化時(shí)間時(shí),刪除所述PMTU緩存條目和PMTU路由。
7.如權(quán)利要求6所述的方法,其特征在于,所述方法還包括所述源節(jié)點(diǎn)為待發(fā)送報(bào)文查找到對(duì)應(yīng)的PMTU路由且該P(yáng)MTU路由的MTU值有效,且所述待發(fā)送報(bào)文的長(zhǎng)度大于等于所述PMTU路由的MTU值當(dāng)所述PMTU路由對(duì)應(yīng)的PMTU緩存條目為老化狀態(tài)時(shí),以所述PMTU路由的MTU值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送攜帶PMTU探測(cè)指示的報(bào)文,將對(duì)應(yīng)的PMTU緩存條目設(shè)置為學(xué)習(xí)狀態(tài);當(dāng)所述PMTU路由對(duì)應(yīng)的PMTU緩存條目為學(xué)習(xí)狀態(tài)或有效狀態(tài)時(shí),以所述PMTU路由的 MTU值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送報(bào)文。
8.一種節(jié)點(diǎn),其特征在于,包括報(bào)文發(fā)送單元和報(bào)文接收單元,其中所述報(bào)文發(fā)送單元用于在所述節(jié)點(diǎn)作為源節(jié)點(diǎn)時(shí),為待發(fā)送報(bào)文查找是否存在對(duì)應(yīng)的PMTU路由,如果不存在或者查找到的PMTU路由的MTU值無(wú)效,則建立或更新PMTU路由的 MTU值為指定值,所述指定值不大于系統(tǒng)最小的最大傳輸單元,以所述指定值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送攜帶PMTU探測(cè)指示的報(bào)文;所述報(bào)文接收單元用于接收到各中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文時(shí),根據(jù)所述包過(guò)大報(bào)文中攜帶的MTU值確定對(duì)應(yīng)的PMTU路由的MTU值。
9.如權(quán)利要求8所述的節(jié)點(diǎn),其特征在于,所述報(bào)文發(fā)送單元還用于判斷所述待發(fā)送報(bào)文的長(zhǎng)度是否小于所述指定值,如果是, 直接發(fā)送所述待發(fā)送報(bào)文;以及,在所述節(jié)點(diǎn)作為源節(jié)點(diǎn)時(shí),當(dāng)為待發(fā)送報(bào)文查找到對(duì)應(yīng)的 PMTU路由且該P(yáng)MTU路由的MTU值有效,且所述待發(fā)送報(bào)文的長(zhǎng)度小于所述PMTU路由的MTU 值時(shí),直接發(fā)送所述待發(fā)送報(bào)文。
10.如權(quán)利要求8所述的節(jié)點(diǎn),其特征在于,所述報(bào)文發(fā)送單元是用于通過(guò)如下方式攜帶所述PMTU探測(cè)指示在所述報(bào)文中攜帶逐跳選項(xiàng)頭,該逐跳選項(xiàng)頭中攜帶一選項(xiàng),該選項(xiàng)攜帶PMTU探測(cè)指示,所述選項(xiàng)為路由告警(route alert)選項(xiàng)或新增選項(xiàng)。
11.如權(quán)利要求8所述的節(jié)點(diǎn),其特征在于,所述報(bào)文發(fā)送單元還用于未查找到對(duì)應(yīng)的PMTU路由或者查找到的PMTU路由的MTU 值無(wú)效時(shí),建立或更新與所述PMTU路由對(duì)應(yīng)的PMTU緩存條目,設(shè)置該P(yáng)MTU緩存條目的MTU 值為所述源節(jié)點(diǎn)查到的出節(jié)點(diǎn)的MTU ;所述報(bào)文接收單元是用于根據(jù)如下方式確定對(duì)應(yīng)的PMTU路由的MTU值接收到所述中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文后,取出該包過(guò)大報(bào)文中的MTU值并查找對(duì)應(yīng)的PMTU緩存條目,如果所述取出的MTU值小于所述PMTU緩存條目中的MTU值,則用所述取出的MTU值替換所述PMTU緩存條目中的MTU值,否則不處理;在處理完所有中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文后,使用該P(yáng)MTU緩存條目的MTU值更新對(duì)應(yīng)的PMTU路由的MTU值,完成該P(yáng)MTU路由的MTU值發(fā)現(xiàn)。
12.如權(quán)利要求11所述的節(jié)點(diǎn),其特征在于,所述報(bào)文接收單元接收所述包過(guò)大報(bào)文后,如果未查找到對(duì)應(yīng)的PMTU緩存條目,則丟棄該包過(guò)大報(bào)文。
13.如權(quán)利要求11所述的節(jié)點(diǎn),其特征在于,所述報(bào)文發(fā)送單元還用于設(shè)定學(xué)習(xí)時(shí)間、有效時(shí)間和老化時(shí)間;發(fā)送攜帶PMTU探測(cè)指示的報(bào)文后,將對(duì)應(yīng)的PMTU緩存條目設(shè)置為學(xué)習(xí)狀態(tài); 如果從學(xué)習(xí)狀態(tài)開(kāi)始的所述學(xué)習(xí)時(shí)間內(nèi),完成該P(yáng)MTU路由的MTU值發(fā)現(xiàn),則將所述 PMTU緩存條目的狀態(tài)設(shè)置為有效狀態(tài),否則,將所述PMTU緩存條目的狀態(tài)設(shè)置為老化狀態(tài);從所述有效狀態(tài)開(kāi)始超出所述有效時(shí)間時(shí),將所述PMTU緩存條目設(shè)置為老化狀態(tài); 從所述老化狀態(tài)開(kāi)始超出所述老化時(shí)間時(shí),刪除所述PMTU緩存條目和PMTU路由; 當(dāng)所述節(jié)點(diǎn)為源節(jié)點(diǎn),為待發(fā)送報(bào)文查找到對(duì)應(yīng)的PMTU路由且該P(yáng)MTU路由的MTU值有效,且所述待發(fā)送報(bào)文的長(zhǎng)度大于等于所述PMTU路由的MTU值當(dāng)所述PMTU路由對(duì)應(yīng)的PMTU緩存條目為老化狀態(tài)時(shí),以所述PMTU路由的MTU值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送攜帶PMTU探測(cè)指示的報(bào)文,將對(duì)應(yīng)的PMTU緩存條目設(shè)置為學(xué)習(xí)狀態(tài);當(dāng)所述PMTU路由對(duì)應(yīng)的PMTU緩存條目為學(xué)習(xí)狀態(tài)或有效狀態(tài)時(shí),以所述PMTU路由的 MTU值對(duì)報(bào)文進(jìn)行分片處理,發(fā)送報(bào)文。
14.如權(quán)利要求8所述的節(jié)點(diǎn),其特征在于,所述節(jié)點(diǎn)還包括轉(zhuǎn)發(fā)處理單元,所述轉(zhuǎn)發(fā)處理單元用于接收到攜帶PMTU探測(cè)指示的報(bào)文時(shí),當(dāng)該節(jié)點(diǎn)不是該報(bào)文的目的節(jié)點(diǎn)時(shí), 轉(zhuǎn)發(fā)所述報(bào)文,發(fā)送包過(guò)大報(bào)文至該報(bào)文的源節(jié)點(diǎn),所述包過(guò)大報(bào)文中攜帶該節(jié)點(diǎn)上查到的出接口的MTU。
全文摘要
本發(fā)明提供一種PMTU發(fā)現(xiàn)方法,源節(jié)點(diǎn)為待發(fā)送報(bào)文查找是否存在對(duì)應(yīng)的PMTU路由,如果不存在或者查找到的PMTU路由的MTU值無(wú)效,則建立或更新PMTU路由的MTU值為指定值,該指定值不大于系統(tǒng)最小的MTU,以該指定值對(duì)所述待發(fā)送報(bào)文進(jìn)行分片處理,發(fā)送攜帶PMTU探測(cè)指示的報(bào)文;各中間節(jié)點(diǎn)接收到攜帶PMTU探測(cè)指示的報(bào)文時(shí),轉(zhuǎn)發(fā)報(bào)文,發(fā)送包過(guò)大報(bào)文至源節(jié)點(diǎn),攜帶出接口的MTU;源節(jié)點(diǎn)接收各中間節(jié)點(diǎn)返回的包過(guò)大報(bào)文,根據(jù)其中攜帶的MTU值確定對(duì)應(yīng)的PMTU路由的MTU值。本發(fā)明還提供一種節(jié)點(diǎn)。本發(fā)明解決了PMTU學(xué)習(xí)過(guò)程中數(shù)據(jù)報(bào)文丟包問(wèn)題,減少了PMTU學(xué)習(xí)過(guò)程中的報(bào)文交互數(shù)量。
文檔編號(hào)H04L29/06GK102325076SQ201110136938
公開(kāi)日2012年1月18日 申請(qǐng)日期2011年5月24日 優(yōu)先權(quán)日2011年5月24日
發(fā)明者于海燕, 李洪濤, 許多 申請(qǐng)人:中興通訊股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
定襄县| 长子县| 大厂| 东海县| 尚义县| 惠水县| 鹰潭市| 任丘市| 宜昌市| 安福县| 正宁县| 太原市| 循化| 津南区| 兴国县| 乐至县| 安陆市| 沙田区| 嵊州市| 宣恩县| 博乐市| 罗甸县| 永嘉县| 弋阳县| 长泰县| 安阳县| 广昌县| 米林县| 六安市| 渝中区| 永嘉县| 乌鲁木齐县| 平泉县| 凤山市| 宜良县| 阿尔山市| 南投市| 汤原县| 岑溪市| 久治县| 谷城县|