專(zhuān)利名稱(chēng):在無(wú)線(xiàn)網(wǎng)絡(luò)中建立雙向虛電路的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種在無(wú)線(xiàn)通信網(wǎng)絡(luò)中利用多協(xié)議標(biāo)簽交換(下文簡(jiǎn)稱(chēng)MPLS,即MultiProtocol Label Switching)原理建立雙向的虛電路的方法。屬于無(wú)線(xiàn)通信網(wǎng)絡(luò)的技術(shù)領(lǐng)域。
背景技術(shù):
隨著下一代網(wǎng)絡(luò)技術(shù)的興起,越來(lái)越多的寬帶實(shí)時(shí)業(yè)務(wù)需要全部或部分的通過(guò)無(wú)線(xiàn)網(wǎng)絡(luò)來(lái)承載。而無(wú)線(xiàn)信道帶寬窄,誤碼率高,不適合寬帶實(shí)時(shí)業(yè)務(wù)的傳輸。所以我們要盡量壓縮數(shù)據(jù)率而提高信道利用率。目前應(yīng)用層的數(shù)據(jù)壓縮技術(shù)已經(jīng)取得了很好的效果,例如在全球移動(dòng)系統(tǒng)(即Global system of mobile簡(jiǎn)稱(chēng)GSM)中,編碼后的語(yǔ)音速率平均可達(dá)13.2Kbps,而對(duì)于LPC(線(xiàn)性預(yù)測(cè)編碼)可達(dá)到5.6KBPS([1]Frank Fitzek,Stefan Hendrata,Patrick Seeling,MartinReisslein.Header Compression Scheme for Wireless Internet Access[EB/OL].http//www.eas.asu.edu/~mre/rohc_book.pdf)。也就是說(shuō)對(duì)應(yīng)用層的實(shí)際負(fù)載進(jìn)行壓縮的空間已經(jīng)很小了。而相比之下各層協(xié)議字段的開(kāi)銷(xiāo)(如TCP/IP報(bào)頭)占了信道中數(shù)據(jù)傳輸?shù)暮艽笠徊糠郑鐚?duì)于LPC而言IPV4的協(xié)議頭占總的傳輸數(shù)據(jù)的74%,而IPV6的協(xié)議頭則要占到81%。我們知道,協(xié)議字段的開(kāi)銷(xiāo)并不能為用戶(hù)提供所需要的業(yè)務(wù)信息,從而降低了信道利用率。所以人們提出了各種報(bào)頭壓縮技術(shù)[1]來(lái)降低在信道中實(shí)際傳輸?shù)膱?bào)頭信息數(shù)據(jù)量。然而目前的報(bào)頭壓縮技術(shù)都是存在于點(diǎn)對(duì)點(diǎn)的基礎(chǔ)上的,即數(shù)據(jù)包每經(jīng)過(guò)一個(gè)結(jié)點(diǎn)都調(diào)用一次報(bào)頭解壓縮算法來(lái)恢復(fù)完整IP報(bào)頭,而完整IP報(bào)頭經(jīng)過(guò)網(wǎng)絡(luò)層的處理(如尋路)后再調(diào)用報(bào)頭壓縮算法剝?nèi)?bào)頭轉(zhuǎn)發(fā)到信道上。這無(wú)疑會(huì)增加網(wǎng)絡(luò)的處理時(shí)延,對(duì)于寬帶實(shí)時(shí)業(yè)務(wù)而言是很不利的。
如果我們考慮在無(wú)線(xiàn)網(wǎng)絡(luò)中利用虛電路來(lái)傳輸數(shù)據(jù),那么當(dāng)虛電路建立起來(lái)后我們就可以在網(wǎng)絡(luò)的入口節(jié)點(diǎn)用標(biāo)簽(或所謂的虛電路號(hào))來(lái)替換報(bào)頭而在出口結(jié)點(diǎn)恢復(fù)出報(bào)頭信息[1]。而中間結(jié)點(diǎn)只利用標(biāo)簽來(lái)轉(zhuǎn)發(fā)數(shù)據(jù),每個(gè)標(biāo)簽綁定一對(duì)源地址目的地址。這樣就避免了在中間節(jié)點(diǎn)反復(fù)調(diào)用報(bào)頭壓縮與解壓縮算法從而既減少了時(shí)延又提高了信道利用率。而且標(biāo)簽是定長(zhǎng)的(而IP報(bào)頭卻是變長(zhǎng)的)有利于用硬件轉(zhuǎn)發(fā),這樣就進(jìn)一步提高的轉(zhuǎn)發(fā)速度,降低時(shí)延。另外,在基于TDMA,CDMA的信道上,利用虛電路可以實(shí)現(xiàn)面向流的動(dòng)態(tài)的分配時(shí)隙和碼片資源([2]MarioGerla,JackTzu-ChiehTsai.Multicluster,Mobile,MultimediaRadioNetwork[EB/OL].http//www.ics.uci.edu/~atm/adhoc/paper-collection/gerla-multicluster-winet95.pdf)。而不是每個(gè)結(jié)點(diǎn)分配固定的時(shí)隙,這樣能更有效的利用有限的信道資源。而MPLS是一種建立虛電路的良好手段。
MPLS是一種面向連接的,利用定長(zhǎng)標(biāo)簽(label)進(jìn)行轉(zhuǎn)發(fā)的交換技術(shù)。在MPLS網(wǎng)絡(luò)中的轉(zhuǎn)發(fā)節(jié)點(diǎn)稱(chēng)為標(biāo)簽交換路由器LSR(label switch router)。所謂標(biāo)簽即是網(wǎng)絡(luò)中的路由器根據(jù)IP分組中的目的地址,在原始IP分組的前部添加的一個(gè)字段,一個(gè)標(biāo)簽對(duì)應(yīng)一個(gè)或一系列目的地址。一旦標(biāo)簽被插入IP數(shù)據(jù)報(bào)中,網(wǎng)絡(luò)中的節(jié)點(diǎn)就根據(jù)收到的數(shù)據(jù)報(bào)的標(biāo)簽字段而不是變長(zhǎng)的IP地址來(lái)決定下一跳。當(dāng)一個(gè)傳統(tǒng)的IP包進(jìn)入MPLS網(wǎng)絡(luò)中時(shí),入口路由器(ingress LSR,即MPLS網(wǎng)絡(luò)和IP網(wǎng)絡(luò)交界處的邊沿路由器)根據(jù)IP報(bào)頭中的目的地址和選路協(xié)議確定的路由,為該報(bào)文建立一條標(biāo)簽通道LSP(label switch path)。所謂標(biāo)簽通道其實(shí)就是該報(bào)文從入口節(jié)點(diǎn)到出口節(jié)點(diǎn)需要經(jīng)過(guò)的一系列路由器,也就相當(dāng)于一個(gè)虛電路。這樣網(wǎng)絡(luò)中兩個(gè)IP網(wǎng)絡(luò)之間的通信就可以沿著LSP<LSRA,LSRB,LSRC,LSRD...>進(jìn)行傳遞。
MPLS網(wǎng)絡(luò)中的路由器將那些以同樣方式對(duì)待的分組歸為一類(lèi)稱(chēng)之為等價(jià)轉(zhuǎn)發(fā)類(lèi)FEC(Forwarding Equivalent Class)([3]E.Rosen,A.Viswanathan,R.Callon.RFC3031-Multiprotocol Label SwitchingAchitecture[EB/OL].http//www.faqs.org/rfcs/rfc3031.html,2001-01.)。簡(jiǎn)單的說(shuō)就是下一跳相同的分組的集合。在實(shí)際應(yīng)用中一般采取每個(gè)目的地址綁定一個(gè)FEC(細(xì)粒度)或每個(gè)子網(wǎng)綁定一個(gè)FEC(粗粒度)兩種標(biāo)識(shí)FEC的方式。在對(duì)一個(gè)流進(jìn)行標(biāo)簽轉(zhuǎn)發(fā)之前網(wǎng)絡(luò)要利用標(biāo)簽分配協(xié)議LDP([4]L.Andersson,P.Doolan,N.Feldman.RFC3036-LDP Specification[EB/OL].http//www.faqs.org/rfcs/rfc3036.html,2001-01.)(Label Distribute Protocol)為該LSP上的每一個(gè)LSR分配標(biāo)簽并建立各自的標(biāo)簽轉(zhuǎn)發(fā)表。標(biāo)簽轉(zhuǎn)發(fā)表的表項(xiàng)類(lèi)似路由轉(zhuǎn)發(fā)表,包括綁定目的地址的FEC字段、識(shí)別該FEC的入標(biāo)簽字段、供下一跳路由器識(shí)別該FEC的出標(biāo)簽字段、下一跳端口字段。當(dāng)一個(gè)路由器收到一個(gè)數(shù)據(jù)包后,首先檢查是否是一個(gè)打了標(biāo)簽的MPLS數(shù)據(jù)包,若不是則利用標(biāo)簽分配協(xié)議(LDP)分配一條標(biāo)簽鏈路。若是則檢查自己的標(biāo)簽轉(zhuǎn)發(fā)表的入標(biāo)簽字段中是否有與數(shù)據(jù)包中的標(biāo)簽相同的表項(xiàng),若有則用該表項(xiàng)的出標(biāo)簽值替換數(shù)據(jù)包中的標(biāo)簽然后轉(zhuǎn)發(fā)到表項(xiàng)中指定的下一跳端口。若沒(méi)有相應(yīng)的表項(xiàng)則采用第三層IP轉(zhuǎn)發(fā)。所謂的第三層轉(zhuǎn)發(fā)就是IP轉(zhuǎn)發(fā),就是路由器利用IP層的路由表項(xiàng)查找匹配數(shù)據(jù)包的IP地址,然后將其轉(zhuǎn)發(fā)到靠近目的節(jié)點(diǎn)的下一個(gè)路由器的工作方式。
MPLS網(wǎng)絡(luò)中,各路由器按照標(biāo)簽分配協(xié)議LDP(Label DistributionProtocol)分配標(biāo)簽。當(dāng)標(biāo)簽分配完畢后,一條LSP中各LSR中的標(biāo)簽轉(zhuǎn)發(fā)表也就建立起來(lái)了。LDP的標(biāo)簽分配一般是下游給上游分配標(biāo)簽[3]。如圖3所示的網(wǎng)絡(luò),若A有一個(gè)原始IP報(bào)文需要經(jīng)由B發(fā)往目的地址,并且A中不存在綁定此報(bào)文目的地址的等價(jià)轉(zhuǎn)發(fā)類(lèi)的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),那么A會(huì)發(fā)送一個(gè)標(biāo)簽請(qǐng)求消息(request)給B,B在收到這個(gè)請(qǐng)求消息后會(huì)發(fā)回一個(gè)標(biāo)簽應(yīng)答消息(response)給A。這個(gè)應(yīng)答消息包含了一個(gè)B分配給A的標(biāo)簽,A收到該應(yīng)答后就在自己的標(biāo)簽轉(zhuǎn)發(fā)表中添加一個(gè)綁定這個(gè)包的目的地址的FEC的表項(xiàng)并用B發(fā)回的標(biāo)簽作為出標(biāo)簽,同樣B也在自己的標(biāo)簽轉(zhuǎn)發(fā)表中添加綁定這個(gè)FEC的表項(xiàng)并且用剛剛回送給A的那個(gè)標(biāo)簽作為入標(biāo)簽。對(duì)于這條路徑上的其他路由器,也依次執(zhí)行相同的操作。直到整個(gè)LSP上的路由器的標(biāo)簽轉(zhuǎn)發(fā)表建立成功。這時(shí)一個(gè)面向連接的虛電路就建立起來(lái)了,A就可以利用建立好的標(biāo)簽轉(zhuǎn)發(fā)表來(lái)轉(zhuǎn)發(fā)這類(lèi)報(bào)文了。
由上面的背景技術(shù)分析我們發(fā)現(xiàn),要想在無(wú)線(xiàn)網(wǎng)絡(luò)中有效的傳輸壓縮報(bào)頭的數(shù)據(jù)包、提高信道利用率,就要能夠快速有效的建立虛電路。然而,上面所述的MPLS標(biāo)簽鏈路的建立方法并不理想。首先他在分配標(biāo)簽的時(shí)候采用逐段請(qǐng)求<一>應(yīng)答的方式,這明顯增大了網(wǎng)絡(luò)時(shí)延,與我們希望的高有效性背道而馳。其次,若我們需要建立一個(gè)全雙工通信,那么反向鏈路的建立同樣要經(jīng)歷這樣一個(gè)建鏈過(guò)程,這不僅增大了時(shí)延而且增大了無(wú)線(xiàn)信道上的通信量,浪費(fèi)了寶貴的帶寬資源。
發(fā)明內(nèi)容
技術(shù)問(wèn)題本發(fā)明旨在提出一種利用多協(xié)議標(biāo)簽交換原理在無(wú)線(xiàn)網(wǎng)絡(luò)中建立雙向虛電路的方法,該方法可以快速建立雙向虛電路,并且只用了相當(dāng)于傳統(tǒng)MPLS建鏈的一半的開(kāi)銷(xiāo)。如此則可以配合報(bào)頭壓縮算法提高無(wú)線(xiàn)網(wǎng)絡(luò)作為T(mén)CP/IP的承載網(wǎng)時(shí)的信道利用率和減少時(shí)延,為無(wú)線(xiàn)網(wǎng)絡(luò)上的寬帶實(shí)時(shí)業(yè)務(wù)的傳輸提供底層保障。
技術(shù)方案本發(fā)明的目的是提供一種無(wú)線(xiàn)網(wǎng)絡(luò)中的雙向虛電路的建鏈方法。它基于MPLS。但對(duì)于MPLS的標(biāo)簽鏈路建立過(guò)程作了一些修改。主要是采用一個(gè)流的首個(gè)包來(lái)觸發(fā)建鏈過(guò)程,即第一個(gè)包按照第三層協(xié)議來(lái)轉(zhuǎn)發(fā),但同時(shí)攜帶建鏈信息和標(biāo)簽分配信息,當(dāng)?shù)谝粋€(gè)包傳送完畢后我們的標(biāo)簽虛電路就建立起來(lái)了,隨后的數(shù)據(jù)包就可以利用建立好的標(biāo)簽轉(zhuǎn)發(fā)路徑來(lái)轉(zhuǎn)發(fā)數(shù)據(jù)包了。其基本方案如下本發(fā)明的無(wú)線(xiàn)分組網(wǎng)中的幀格式在該網(wǎng)絡(luò)中比一般的分組網(wǎng)絡(luò)多了三個(gè)字段,即類(lèi)型字段、標(biāo)簽字段和綁定地址字段,網(wǎng)絡(luò)中處理這三個(gè)字段的位置可稱(chēng)之MPLS層,處于網(wǎng)絡(luò)層和數(shù)據(jù)鏈路層之間。
類(lèi)型字段占據(jù)2bit,用于標(biāo)記后面的分組是正常的標(biāo)簽轉(zhuǎn)發(fā)分組還是標(biāo)簽建鏈分組??梢再x予三種值
00代表正常轉(zhuǎn)發(fā)的帶標(biāo)簽的分組,如果一個(gè)LSR收到了這樣的分組則按照它后面的標(biāo)簽字段的值來(lái)查找標(biāo)簽轉(zhuǎn)發(fā)表,確定下一跳物理地址(下一跳端口)。
10表示一個(gè)綁定源地址的反向鏈路建鏈分組,該分組的源地址為會(huì)話(huà)發(fā)起端。
11表示一個(gè)綁定目的地址的正向鏈路建鏈分組,收到這個(gè)分組的路由器將按照第一個(gè)標(biāo)簽轉(zhuǎn)發(fā)分組,按照第二個(gè)標(biāo)簽修改轉(zhuǎn)發(fā)表。
01空閑不用!因?yàn)閷?duì)于外網(wǎng)發(fā)送過(guò)來(lái)的需要穿越本網(wǎng)絡(luò)的分組,并不存在我們的類(lèi)型字段和標(biāo)簽字段,而處在該位置上的一般是IPV4或者IPV6的類(lèi)型字段的前兩個(gè)比特,而不管是IPV4還是IPV6,這兩個(gè)比特的值都應(yīng)該是01,所以若路由器收到在該位置上為01的分組,則可以判斷為常規(guī)不帶標(biāo)簽的IP分組。而該路由器一般是入口或出口路由器。
標(biāo)簽字段與類(lèi)型字段配合使用,當(dāng)類(lèi)型為00和11時(shí),此字段是這個(gè)分組標(biāo)簽轉(zhuǎn)發(fā)的依據(jù),即是入標(biāo)簽。當(dāng)類(lèi)型為10時(shí),此字段為反向鏈路下游分配給上游的綁定源地址的FEC的出標(biāo)簽。
第二標(biāo)簽字段該字段只在類(lèi)型為11時(shí)存在,這時(shí)它表示正向鏈路的下游分配給上游的綁定目的地址的FEC的出標(biāo)簽。
分組頭該字段也只有在類(lèi)型為11時(shí)有效,表示需要綁定的一個(gè)流的分組頭信息。
本發(fā)明在無(wú)線(xiàn)網(wǎng)絡(luò)中建立雙向虛電路的方法的具體步驟為1、路由器檢測(cè)是否收到了一個(gè)包若沒(méi)有,則返回步驟1;2、判斷數(shù)據(jù)包的類(lèi)型如果不認(rèn)識(shí)則丟棄包返回步驟1;如果是原始IP,則繼續(xù);若是反向建鏈包,則跳到步驟6;若是正向建鏈包,則跳到步驟10;若是正常的打了標(biāo)簽的非建鏈數(shù)據(jù)包,則跳到步驟13;3、檢查標(biāo)簽轉(zhuǎn)發(fā)表,看是否有一個(gè)與目的地址一致的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),若有則繼續(xù),否則跳到步驟5;4、將該IP包的頭部(即IP報(bào)頭,其中含有IP地址等第三層轉(zhuǎn)發(fā)需要的信息)剝?nèi)?,并且在?shù)據(jù)前加上類(lèi)型字段和標(biāo)簽字段,其中類(lèi)型字段為00,標(biāo)簽字段為步驟3所查到的簽轉(zhuǎn)發(fā)表項(xiàng)的“出標(biāo)簽”字段的值。然后將新的數(shù)據(jù)包轉(zhuǎn)發(fā)至標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng)中“下一個(gè)路由器地址”。然后跳至步驟1;5、在原始IP數(shù)據(jù)包上插入反向建鏈類(lèi)型值和分配給下一個(gè)節(jié)點(diǎn)的反向鏈路出標(biāo)簽值,然后在自己的標(biāo)簽轉(zhuǎn)發(fā)表上添加一條綁定這個(gè)數(shù)據(jù)包的源地址的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),表項(xiàng)的入標(biāo)簽字段為此數(shù)據(jù)包攜帶的標(biāo)簽字段的值,下一個(gè)路由器地址字段為這個(gè)數(shù)據(jù)包傳過(guò)來(lái)的端口號(hào);出標(biāo)簽字段值為空(具體路有表項(xiàng)的結(jié)構(gòu)見(jiàn)圖4-圖7)。然后利用網(wǎng)絡(luò)層協(xié)議確定的路由發(fā)送至下一個(gè)路由器,再跳到步驟1;6、檢查自己的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),是否存在綁定此包源地址的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),若存在則繼續(xù),否則跳到步驟8;7、修改這條表項(xiàng),使“入標(biāo)簽”字段不變,而將“出標(biāo)簽”字段替換為這個(gè)數(shù)據(jù)包的標(biāo)簽字段(圖2)所攜帶的值,“下一個(gè)路由器地址”字段為剛剛轉(zhuǎn)發(fā)這個(gè)數(shù)據(jù)包的路由器。然后跳到步驟9。
8、向標(biāo)簽轉(zhuǎn)發(fā)表中添加一條表項(xiàng),其中“入標(biāo)簽”字段為路由器在空閑標(biāo)簽空間中任意選擇的一個(gè),而“出標(biāo)簽”字段是這個(gè)數(shù)據(jù)包的標(biāo)簽字段的值,“下一個(gè)路由器地址”字段為剛剛收到數(shù)據(jù)的端口。
9、用該表項(xiàng)的如標(biāo)簽的值替換掉數(shù)據(jù)包中的標(biāo)簽字段的值,并轉(zhuǎn)給網(wǎng)絡(luò)層協(xié)議決定的下一個(gè)路由器(注意這個(gè)路由器是過(guò)網(wǎng)絡(luò)層查路由表所得到的轉(zhuǎn)發(fā)依據(jù),而與上面所說(shuō)的標(biāo)簽轉(zhuǎn)發(fā)表中的“下一個(gè)路由器地址”字段的值不一樣),跳回步驟1;10、檢查自己的標(biāo)簽轉(zhuǎn)發(fā)表中是否存在“入標(biāo)簽字段”值與收到包的“標(biāo)簽字段”值相同的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng)。若有則繼續(xù),若無(wú)則跳到步驟1;11、在標(biāo)簽轉(zhuǎn)發(fā)表中添加一條表項(xiàng),其中“出標(biāo)簽”字段為數(shù)據(jù)包中指定的第二標(biāo)簽字段(圖2)的值,而“入標(biāo)簽”字段為路由器在空閑標(biāo)簽空間中任意指定的一個(gè)標(biāo)簽?!跋乱粋€(gè)路由器地址”字段為剛剛轉(zhuǎn)發(fā)這個(gè)包的路由器的地址;12、用剛剛添加的這個(gè)表項(xiàng)的“入標(biāo)簽”字段的值替換數(shù)據(jù)包中的第二標(biāo)簽字段的值,然后按照MPLS的標(biāo)簽轉(zhuǎn)發(fā)策略在標(biāo)簽轉(zhuǎn)發(fā)表中尋找“入標(biāo)簽字段”值與收到的數(shù)據(jù)包中的“標(biāo)簽字段”(圖2)的值相等的表項(xiàng),然后利用該表項(xiàng)轉(zhuǎn)發(fā)這個(gè)包至下一個(gè)路由器。跳回步驟1;
13、查詢(xún)標(biāo)簽轉(zhuǎn)發(fā)表看是否存在“入標(biāo)簽”字段與數(shù)據(jù)包中的“標(biāo)簽字段”的值相一致的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng)。如存在則繼續(xù),否則轉(zhuǎn)至步驟15;14、利用該標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng)按照MPLS規(guī)則轉(zhuǎn)發(fā)該數(shù)據(jù)包,即用表項(xiàng)中的出標(biāo)簽替換掉數(shù)據(jù)包中的標(biāo)簽字段然后轉(zhuǎn)發(fā)到表項(xiàng)中指定的下一個(gè)路由器,跳回步驟1;15、利用網(wǎng)絡(luò)層選路協(xié)議確定的路由轉(zhuǎn)發(fā)數(shù)據(jù)包,然后跳回步驟1。
以上就是本分組網(wǎng)的路由器的工作方式,由以上的討論可知當(dāng)一個(gè)IP報(bào)文的第一個(gè)分組來(lái)到本網(wǎng)絡(luò)中時(shí),入口節(jié)點(diǎn)就將其封裝成一個(gè)反向建鏈數(shù)據(jù)包,當(dāng)這個(gè)包到達(dá)每個(gè)路由器時(shí),路由器修改自己的轉(zhuǎn)發(fā)表。當(dāng)這個(gè)包順利通過(guò)了本網(wǎng)后,從出節(jié)點(diǎn)到入節(jié)點(diǎn)的反向鏈路就建立起來(lái)了。這時(shí)出節(jié)點(diǎn)再利用建立好的標(biāo)簽鏈路回送一個(gè)正向建鏈數(shù)據(jù)包,當(dāng)這個(gè)數(shù)據(jù)包順利到達(dá)入節(jié)點(diǎn)的時(shí)候,正向標(biāo)簽鏈路也就建立起來(lái)了。那么第一個(gè)分組之后的分組就可以利用建立好的全雙工標(biāo)簽鏈路來(lái)轉(zhuǎn)發(fā)了。
有益效果由技術(shù)方案中的分析可知本發(fā)明利用MPLS的面向連接特性建立了雙向虛電路。摒棄了MPLS中的逐段請(qǐng)求應(yīng)答方式,利用第一個(gè)數(shù)據(jù)包傳輸?shù)倪^(guò)程建立標(biāo)簽鏈路,具有建鏈速度快,延時(shí)小,故障恢復(fù)快,丟包率低的特點(diǎn)??梢蕴岣邿o(wú)線(xiàn)網(wǎng)絡(luò)通信的QOS。并且綜合了IP的面向無(wú)連接的特性提高了有效性。當(dāng)我們的網(wǎng)絡(luò)作為寬帶實(shí)時(shí)業(yè)務(wù)(如多媒體)的承載網(wǎng)時(shí),配合報(bào)頭壓縮策略,可以進(jìn)一步提高網(wǎng)絡(luò)的有效性,減少處理時(shí)延。非常適用于具有一定移動(dòng)性的無(wú)線(xiàn)網(wǎng)絡(luò),特別適用于條件惡劣、以群移動(dòng)模式為主的軍事無(wú)線(xiàn)通信網(wǎng)絡(luò)。
下面結(jié)合附圖對(duì)本發(fā)明進(jìn)一步說(shuō)明。
圖1MPLS網(wǎng)絡(luò)實(shí)例示意圖。其中紅色云為一個(gè)MPLS網(wǎng)絡(luò),黃色的兩片云為兩個(gè)IP網(wǎng)絡(luò),黃線(xiàn)為連接線(xiàn),黃線(xiàn)之間連接的是標(biāo)簽交換路由器。
圖2本網(wǎng)絡(luò)中的幀格式示意圖。其中有DL層首部字段,類(lèi)型,標(biāo)簽,第二標(biāo)簽,分組頭。
圖3標(biāo)簽建立過(guò)程示意圖。指示出了一個(gè)網(wǎng)絡(luò)實(shí)例作為我們具體實(shí)施方式
中的一個(gè)實(shí)例。其中兩邊的圓形為IP網(wǎng)絡(luò);A至D分別代表標(biāo)簽交換路由器A至標(biāo)簽交換路由器D;數(shù)字1至6為各路由器之間連接的端口號(hào)。
圖4標(biāo)簽交換路由器A的標(biāo)簽轉(zhuǎn)發(fā)表。
圖5標(biāo)簽交換路由器B的標(biāo)簽轉(zhuǎn)發(fā)表。
圖6標(biāo)簽交換路由器C的標(biāo)簽轉(zhuǎn)發(fā)表。
圖7標(biāo)簽交換路由器D的標(biāo)簽轉(zhuǎn)發(fā)表。
圖8快速建鏈時(shí)路由器的具體工作過(guò)程示意圖。
具體實(shí)施例方式
圖2是本網(wǎng)絡(luò)中的幀格式示意圖。其中DL層首部字段本模塊不處理;而其后的類(lèi)型,標(biāo)簽,第二標(biāo)簽和分組頭字段含義如下類(lèi)型字段占據(jù)2bit,用于標(biāo)記后面的分組是正常的標(biāo)簽轉(zhuǎn)發(fā)分組還是標(biāo)簽建鏈分組??梢再x予三種值00代表正常轉(zhuǎn)發(fā)的帶標(biāo)簽的分組,如果一個(gè)LSR收到了這樣的分組則按照它后面的標(biāo)簽字段的值來(lái)查找標(biāo)簽轉(zhuǎn)發(fā)表,確定下一跳物理地址(下一跳端口)。
10表示一個(gè)綁定源地址的反向鏈路建鏈分組,該分組的源地址為會(huì)話(huà)發(fā)起端。
11表示一個(gè)綁定目的地址的正向鏈路建鏈分組,收到這個(gè)分組的路由器將按照第一個(gè)標(biāo)簽轉(zhuǎn)發(fā)分組,按照第二個(gè)標(biāo)簽修改轉(zhuǎn)發(fā)表。
01空閑不用!因?yàn)閷?duì)于外網(wǎng)發(fā)送過(guò)來(lái)的需要穿越本網(wǎng)絡(luò)的分組,并不存在我們的類(lèi)型字段和標(biāo)簽字段,而處在該位置上的一般是IPV4或者IPV6的類(lèi)型字段的前兩個(gè)比特,而不管是IPV4還是IPV6,這兩個(gè)比特的值都應(yīng)該是01,所以若路由器收到在該位置上為01的分組,則可以判斷為常規(guī)不帶標(biāo)簽的IP分組。而該路由器一般是入口或出口路由器。
標(biāo)簽字段與類(lèi)型字段配合使用,當(dāng)類(lèi)型為00和11時(shí),此字段是這個(gè)分組標(biāo)簽轉(zhuǎn)發(fā)的依據(jù),即是入標(biāo)簽。當(dāng)類(lèi)型為10時(shí),此字段為反向鏈路下游分配給上游的綁定源地址的FEC的出標(biāo)簽。
第二標(biāo)簽字段該字段只在類(lèi)型為11時(shí)存在,這時(shí)它表示正向鏈路的下游分配給上游的綁定目的地址的FEC的出標(biāo)簽。
分組頭該字段也只有在類(lèi)型為11時(shí)有效,表示需要綁定的一個(gè)流的分組頭信息。
本發(fā)明在無(wú)線(xiàn)網(wǎng)絡(luò)中建立雙向虛電路的方法的具體步驟為步驟1)、路由器檢測(cè)是否收到了一個(gè)包若沒(méi)有,則返回步驟1;步驟2)、判斷數(shù)據(jù)包的類(lèi)型如果不認(rèn)識(shí),則丟棄包返回步驟1;如果是原始IP,則繼續(xù);若是反向建鏈包,則跳到步驟6;若是正向建鏈包,則跳到步驟10;若是正常的打了標(biāo)簽的非建鏈數(shù)據(jù)包,則跳到步驟13;步驟3)、檢查標(biāo)簽轉(zhuǎn)發(fā)表,看是否有一個(gè)與目的地址一致的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),若有則繼續(xù),否則跳到步驟5;步驟4)、將該IP包的頭部即IP報(bào)頭剝?nèi)?,其中含有IP地址等第三層轉(zhuǎn)發(fā)需要的信息,并且在數(shù)據(jù)前加上類(lèi)型字段和標(biāo)簽字段,其中類(lèi)型字段為00,標(biāo)簽字段為步驟3所查到的簽轉(zhuǎn)發(fā)表項(xiàng)的“出標(biāo)簽”字段的值,然后將新的數(shù)據(jù)包轉(zhuǎn)發(fā)至標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng)中“下一個(gè)路由器地址”,然后跳至步驟1;步驟5)、在原始IP數(shù)據(jù)包上插入反向建鏈的類(lèi)型字段,也就是將類(lèi)型字段賦值為二進(jìn)制“10”(等價(jià)的十進(jìn)制數(shù)為2),和分配給下一個(gè)節(jié)點(diǎn)的反向鏈路出標(biāo)簽值,這個(gè)值是路由器再當(dāng)前空閑標(biāo)簽域任選的一個(gè)值;然后利用網(wǎng)絡(luò)層協(xié)議確定的路由發(fā)送至下一個(gè)相鄰路由器;修改自己的標(biāo)簽轉(zhuǎn)發(fā)表即添加一條綁定這個(gè)數(shù)據(jù)包的源地址的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),其“入標(biāo)簽”字段為剛剛選定的值,“下一個(gè)路由器地址”字段為剛剛轉(zhuǎn)發(fā)這個(gè)數(shù)據(jù)包的路由器,“出標(biāo)簽”字段沒(méi)有,然后跳到步驟1;步驟6)、檢查自己的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),是否存在綁定此包源地址的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),若存在則繼續(xù),否則跳到步驟8;步驟7)、修改這條表項(xiàng),使“入標(biāo)簽”字段不變,而將“出標(biāo)簽”字段替換為這個(gè)數(shù)據(jù)包的標(biāo)簽字段所攜帶的值,“下一個(gè)路由器地址”字段為剛剛轉(zhuǎn)發(fā)這個(gè)數(shù)據(jù)包的路由器,然后跳到步驟9;
步驟8)、向標(biāo)簽轉(zhuǎn)發(fā)表中添加一條表項(xiàng),其中入標(biāo)簽為路由器在空閑標(biāo)簽空間中任意選擇的一個(gè),而出標(biāo)簽是這個(gè)數(shù)據(jù)包的標(biāo)簽字段的值,下一跳端口為剛剛收到數(shù)據(jù)的端口;步驟9)、用該表項(xiàng)的“入標(biāo)簽”字段的值替換掉數(shù)據(jù)包中的標(biāo)簽字段的值,并將最后得到的數(shù)據(jù)包轉(zhuǎn)發(fā)給網(wǎng)絡(luò)層協(xié)議尋路所得的下一個(gè)路由器,這個(gè)路由器是過(guò)網(wǎng)絡(luò)層查路由表所得到的轉(zhuǎn)發(fā)依據(jù),而與上面所說(shuō)的標(biāo)簽轉(zhuǎn)發(fā)表中的“下一個(gè)路由器地址”字段的值不一樣,跳回步驟1;步驟10)、檢查自己的標(biāo)簽轉(zhuǎn)發(fā)表中是否存在綁定該包目的地址的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),若有繼續(xù),若無(wú)則跳到步驟1;步驟11)、在標(biāo)簽轉(zhuǎn)發(fā)表中添加一條表項(xiàng),其中“出標(biāo)簽”字段為數(shù)據(jù)包中指定的第二標(biāo)簽字段的值,而“入標(biāo)簽”字段為路由器在空閑標(biāo)簽空間中任意指定的一個(gè)標(biāo)簽,“下一個(gè)路由器地址”字段為剛剛轉(zhuǎn)發(fā)這個(gè)包的路由器的地址;步驟12)、用剛剛添加的這個(gè)表項(xiàng)的“入標(biāo)簽”字段的值替換數(shù)據(jù)包中的第二標(biāo)簽字段的值,然后按照MPLS的標(biāo)簽轉(zhuǎn)發(fā)策略在標(biāo)簽轉(zhuǎn)發(fā)表中尋找“入標(biāo)簽字段”值與收到的數(shù)據(jù)包中的“標(biāo)簽字段”的值相等的表項(xiàng),然后利用該表項(xiàng)轉(zhuǎn)發(fā)這個(gè)包至下一個(gè)路由器,跳回步驟1;步驟13)、查詢(xún)標(biāo)簽轉(zhuǎn)發(fā)表看是否存在“入標(biāo)簽”字段與數(shù)據(jù)包中的標(biāo)簽字段的值相一致的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),如存在則繼續(xù),否則轉(zhuǎn)至步驟15;步驟14)、利用該標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng)按照MPLS規(guī)則轉(zhuǎn)發(fā)該數(shù)據(jù)包,即用表項(xiàng)中的出標(biāo)簽替換掉數(shù)據(jù)包中的標(biāo)簽字段然后轉(zhuǎn)發(fā)到表項(xiàng)中指定的下一個(gè)路由器,跳回步驟1;步驟15)、利用網(wǎng)絡(luò)層選路協(xié)議確定的路由轉(zhuǎn)發(fā)數(shù)據(jù)包,然后跳回步驟1。
鏈路建立過(guò)程我們結(jié)合一個(gè)網(wǎng)絡(luò)實(shí)例(圖3)來(lái)說(shuō)明無(wú)線(xiàn)網(wǎng)絡(luò)中的虛電路的快速建立的
具體實(shí)施例方式1、當(dāng)LSRA收到一個(gè)分組則檢查其數(shù)據(jù)鏈路層后的類(lèi)型字段。若為00,則代表是帶標(biāo)簽的分組,需要查找標(biāo)簽轉(zhuǎn)發(fā)表轉(zhuǎn)發(fā)至下一個(gè)路由器;若為01則代表是一個(gè)需要穿越本網(wǎng)的外網(wǎng)IP數(shù)據(jù),LSRA就在數(shù)據(jù)報(bào)前端插入2個(gè)bit(將值設(shè)為10代表反向建鏈包)的類(lèi)型字段,并且隨機(jī)選擇一個(gè)空閑的標(biāo)簽值L1(8bit)插入到類(lèi)型字段后面,轉(zhuǎn)發(fā)至下一跳路由器LSRB(同時(shí)保留分組頭部信息,以備后續(xù)的第三層轉(zhuǎn)發(fā)之需)。以通知LSRB“我要發(fā)數(shù)據(jù)給本分組中的目的地址(在分組頭信息里),你以后若有發(fā)往這個(gè)反向建鏈包的源地址的數(shù)據(jù),請(qǐng)用我給你的標(biāo)簽字段的值作為出標(biāo)簽發(fā)給我”。同時(shí)建立本地的標(biāo)簽轉(zhuǎn)發(fā)表如圖4。
圖中F1為綁定源地址的轉(zhuǎn)發(fā)等價(jià)類(lèi);L1為L(zhǎng)SRA分配給LSRB的出標(biāo)簽,也是LSRA的入標(biāo)簽,以備反向通信應(yīng)用;由于這個(gè)包是由一個(gè)非MPLS域發(fā)來(lái)的,所以“出標(biāo)簽”字段為空,也就是LSRA為這個(gè)路徑的入節(jié)點(diǎn),反向通信的包將在離開(kāi)LSRA后不再具有標(biāo)簽轉(zhuǎn)發(fā)特性。
2、LSRB收到LSRA發(fā)來(lái)的分組之后,動(dòng)作同LSRA,只是當(dāng)它監(jiān)測(cè)到類(lèi)型字段的值為10時(shí),則以該分組的標(biāo)簽字段(圖2)作為出標(biāo)簽綁定源地址,構(gòu)造標(biāo)簽轉(zhuǎn)發(fā)表如圖5,其中的“入標(biāo)簽”字段L2為L(zhǎng)SRB在空閑標(biāo)簽空間中任取的值。然后用L2替換剛剛收到的分組的標(biāo)簽字段(圖2),利用IP層協(xié)議轉(zhuǎn)發(fā)至下一個(gè)路由器LSRC。LSRB的標(biāo)簽轉(zhuǎn)發(fā)表如圖5。
3、LSRC的動(dòng)作如LSRB。
4、LSRD收到LSRC發(fā)的分組后,發(fā)現(xiàn)自己就是這個(gè)分組在本網(wǎng)絡(luò)的出節(jié)點(diǎn)(這可通過(guò)MPLS的HELLO機(jī)制來(lái)發(fā)現(xiàn),后面將詳述)。則與LSRC一樣修改標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng)(如圖6),然后剝離類(lèi)型和標(biāo)簽字段交給第三層轉(zhuǎn)發(fā)。并且創(chuàng)建一個(gè)正向建鏈幀(如圖2)回發(fā)送給LSRC。其中類(lèi)型字段為11;標(biāo)簽字段為剛剛建立起來(lái)的反向鏈路的出標(biāo)簽L3;第二標(biāo)簽字段部分為L(zhǎng)SRD在空閑的標(biāo)簽值中任選的一個(gè)標(biāo)簽L4,該標(biāo)簽將分配給LSRC,作為F2對(duì)應(yīng)的標(biāo)簽。LSRD發(fā)此幀說(shuō)明“我準(zhǔn)備建立一條綁定到這個(gè)正向建鏈包的源地址的FEC(F2),以后你有發(fā)往這個(gè)地址的分組就用我的第二標(biāo)簽字段的值作為出標(biāo)簽來(lái)轉(zhuǎn)發(fā)給我”。
5、LSRC收到LSRD發(fā)來(lái)的類(lèi)型為11的幀后,則利用第二標(biāo)簽字段的值作為“出標(biāo)簽”來(lái)建立與分組頭字段中的原地址相綁定等價(jià)轉(zhuǎn)發(fā)類(lèi)F2如圖7。并且按照反向建鏈時(shí)建立好的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng)F1轉(zhuǎn)發(fā)該分組(即在標(biāo)簽轉(zhuǎn)發(fā)表中搜尋“入標(biāo)簽字段”與收到的正向建鏈包的標(biāo)簽字段(圖2)的值相等的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng))。
6、LSRB的動(dòng)作與LSRC同。
7、LSRA收到類(lèi)型為11的幀后,發(fā)現(xiàn)自己是這個(gè)流的入節(jié)點(diǎn),則按照LSRB的辦法建立標(biāo)簽轉(zhuǎn)發(fā)表。所不同的是出標(biāo)簽將設(shè)為空,因?yàn)槭侨牍?jié)點(diǎn)。
此時(shí)雙向標(biāo)簽鏈路已經(jīng)建立成功。各路由器可以按照建立好的標(biāo)簽轉(zhuǎn)發(fā)表轉(zhuǎn)發(fā)其后的分組。同時(shí),其后的分組可以用標(biāo)簽直接替換IP分組頭,在出口端再用存儲(chǔ)的分組頭恢復(fù)分組(有些頭部信息如校驗(yàn)可能需要重新計(jì)算),從而減少了分組在無(wú)線(xiàn)網(wǎng)中的開(kāi)銷(xiāo)。如果分組頭中某些變化字段對(duì)高層應(yīng)用比較重要(如TTL字段),則這些變化字段可以保留傳輸,在我們所研究的網(wǎng)絡(luò)中由于變化字段如TTL均意義不大,因此這些變化字段在設(shè)計(jì)時(shí)均未考慮。
二、鄰站維護(hù)以及鏈路故障恢復(fù)無(wú)線(xiàn)網(wǎng)絡(luò)中的各站點(diǎn)具有移動(dòng)性,全網(wǎng)的拓?fù)涫翘幵谧兓械?。所以我們有必要?duì)鄰站的可達(dá)性進(jìn)行維護(hù)和對(duì)由于拓?fù)渥兓鸬逆溌饭收线M(jìn)行修復(fù)和解決。
1、鄰站可達(dá)性維護(hù)在MPLS網(wǎng)絡(luò)中,每一個(gè)節(jié)點(diǎn)周期性的向鄰站發(fā)送HELLO消息,以確定自己周?chē)穆酚善魇欠窨蛇_(dá)。同時(shí),HELLO消息里攜帶一個(gè)標(biāo)志位,標(biāo)明自己是否支持虛電路建鏈,每個(gè)結(jié)點(diǎn)根據(jù)HELLO消息建立一個(gè)MPLS鄰接結(jié)點(diǎn)表。若收到鄰站的標(biāo)志位設(shè)置的HELLO信息,則代表鄰站可達(dá),并且具有MPLS功能(即代表是本網(wǎng)絡(luò)中的路由器)。鄰接點(diǎn)信息表和MPLS鄰接點(diǎn)信息表將作為下一步虛電路建鏈的依據(jù)。
2、鏈路故障及恢復(fù)由于隨著網(wǎng)絡(luò)拓?fù)涞淖兓行┱究赡軙?huì)不可達(dá),因此有可能會(huì)出現(xiàn)已經(jīng)建好的鏈路因?yàn)橥負(fù)涞淖兓a(chǎn)生斷鏈。這時(shí)就需要一些鏈路的恢復(fù)策略。
這里采用“重定向”的路徑恢復(fù)策略[5]。即當(dāng)需要轉(zhuǎn)發(fā)的數(shù)據(jù)來(lái)到這個(gè)路由器時(shí),發(fā)現(xiàn)標(biāo)簽轉(zhuǎn)發(fā)表中的下一個(gè)路由器地址(物理地址)不可達(dá)時(shí),就將該分組封裝成類(lèi)型為10的建鏈分組,然后利用第三層轉(zhuǎn)發(fā),以此來(lái)建立新的鏈路。在建鏈過(guò)程中,若LSR中已經(jīng)存在建鏈幀欲綁定的FEC的表項(xiàng),就利用舊的表項(xiàng)的入標(biāo)簽和上游分配的出標(biāo)簽進(jìn)行重建鏈并轉(zhuǎn)發(fā),(但下一跳可能會(huì)變化)!這對(duì)實(shí)現(xiàn)MPLS層的組播十分有利,可以快速的建立組播鏈路樹(shù)。并且值得注意的是,LSR為每一個(gè)標(biāo)簽轉(zhuǎn)發(fā)表的表項(xiàng)維護(hù)一個(gè)計(jì)時(shí)器,表項(xiàng)每被應(yīng)用一次就重置計(jì)時(shí)器,若在超時(shí)時(shí)間內(nèi)某個(gè)表項(xiàng)仍未被應(yīng)用,則路由器認(rèn)為這是一個(gè)閑置的流,則刪除該表項(xiàng),這將更加有利于節(jié)省標(biāo)簽空間。超時(shí)計(jì)時(shí)器的大小可根據(jù)具體網(wǎng)絡(luò)規(guī)模及環(huán)境設(shè)定。建議比路由更新周期稍大一些,這樣可以與拓?fù)渥兓l度相一致。
權(quán)利要求
1.一種在無(wú)線(xiàn)網(wǎng)絡(luò)中建立雙向虛電路的方法,其特征在于該方法的具體步驟為步驟1)、路由器檢測(cè)是否收到了一個(gè)包若沒(méi)有,則返回步驟1;步驟2)、判斷數(shù)據(jù)包的類(lèi)型如果不認(rèn)識(shí),則丟棄包返回步驟1;如果是原始IP,則繼續(xù);若是反向建鏈包,則跳到步驟6;若是正向建鏈包,則跳到步驟10;若是正常的打了標(biāo)簽的非建鏈數(shù)據(jù)包,則跳到步驟13;步驟3)、檢查標(biāo)簽轉(zhuǎn)發(fā)表,看是否有一個(gè)與目的地址一致的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),若有則繼續(xù),否則跳到步驟5;步驟4)、將該IP包的頭部即IP報(bào)頭剝?nèi)?,其中含有IP地址等第三層轉(zhuǎn)發(fā)需要的信息,并且在數(shù)據(jù)前加上類(lèi)型字段和標(biāo)簽字段,其中類(lèi)型字段為00,標(biāo)簽字段為步驟3所查到的簽轉(zhuǎn)發(fā)表項(xiàng)的“出標(biāo)簽”字段的值,然后將新的數(shù)據(jù)包轉(zhuǎn)發(fā)至標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng)中“下一個(gè)路由器地址”,然后跳至步驟1;步驟5)、在原始IP數(shù)據(jù)包上插入反向建鏈的類(lèi)型字段,也就是將類(lèi)型字段賦值為二進(jìn)制“10”(等價(jià)的十進(jìn)制數(shù)為2),和分配給下一個(gè)節(jié)點(diǎn)的反向鏈路出標(biāo)簽值,這個(gè)值是路由器再當(dāng)前空閑標(biāo)簽域任選的一個(gè)值;然后利用網(wǎng)絡(luò)層協(xié)議確定的路由發(fā)送至下一個(gè)相鄰路由器;修改自己的標(biāo)簽轉(zhuǎn)發(fā)表即添加一條綁定這個(gè)數(shù)據(jù)包的源地址的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),其“入標(biāo)簽”字段為剛剛選定的值,“下一個(gè)路由器地址”字段為剛剛轉(zhuǎn)發(fā)這個(gè)數(shù)據(jù)包的路由器,“出標(biāo)簽”字段沒(méi)有,然后跳到步驟1;步驟6)、檢查自己的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),是否存在綁定此包源地址的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),若存在則繼續(xù),否則跳到步驟8;步驟7)、修改這條表項(xiàng),使“入標(biāo)簽”字段不變,而將“出標(biāo)簽”字段替換為這個(gè)數(shù)據(jù)包的標(biāo)簽字段所攜帶的值,“下一個(gè)路由器地址”字段為剛剛轉(zhuǎn)發(fā)這個(gè)數(shù)據(jù)包的路由器,然后跳到步驟9;步驟8)、向標(biāo)簽轉(zhuǎn)發(fā)表中添加一條表項(xiàng),其中入標(biāo)簽為路由器在空閑標(biāo)簽空間中任意選擇的一個(gè),而出標(biāo)簽是這個(gè)數(shù)據(jù)包的標(biāo)簽字段的值,下一跳端口為剛剛收到數(shù)據(jù)的端口;步驟9)、用該表項(xiàng)的“入標(biāo)簽”字段的值替換掉數(shù)據(jù)包中的標(biāo)簽字段的值,并將最后得到的數(shù)據(jù)包轉(zhuǎn)發(fā)給網(wǎng)絡(luò)層協(xié)議尋路所得的下一個(gè)路由器,這個(gè)路由器是過(guò)網(wǎng)絡(luò)層查路由表所得到的轉(zhuǎn)發(fā)依據(jù),而與上面所說(shuō)的標(biāo)簽轉(zhuǎn)發(fā)表中的“下一個(gè)路由器地址”字段的值不一樣,跳回步驟1;步驟10)、檢查自己的標(biāo)簽轉(zhuǎn)發(fā)表中是否存在綁定該包目的地址的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),若有繼續(xù),若無(wú)則跳到步驟1;步驟11)、在標(biāo)簽轉(zhuǎn)發(fā)表中添加一條表項(xiàng),其中“出標(biāo)簽”字段為數(shù)據(jù)包中指定的第二標(biāo)簽字段的值,而“入標(biāo)簽”字段為路由器在空閑標(biāo)簽空間中任意指定的一個(gè)標(biāo)簽,“下一個(gè)路由器地址”字段為剛剛轉(zhuǎn)發(fā)這個(gè)包的路由器的地址;步驟12)、用剛剛添加的這個(gè)表項(xiàng)的“入標(biāo)簽”字段的值替換數(shù)據(jù)包中的第二標(biāo)簽字段的值,然后按照MPLS的標(biāo)簽轉(zhuǎn)發(fā)策略在標(biāo)簽轉(zhuǎn)發(fā)表中尋找“入標(biāo)簽字段”值與收到的數(shù)據(jù)包中的“標(biāo)簽字段”的值相等的表項(xiàng),然后利用該表項(xiàng)轉(zhuǎn)發(fā)這個(gè)包至下一個(gè)路由器,跳回步驟1;步驟13)、查詢(xún)標(biāo)簽轉(zhuǎn)發(fā)表看是否存在“入標(biāo)簽”字段與數(shù)據(jù)包中的標(biāo)簽字段的值相一致的標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng),如存在則繼續(xù),否則轉(zhuǎn)至步驟15;步驟14)、利用該標(biāo)簽轉(zhuǎn)發(fā)表項(xiàng)按照MPLS規(guī)則轉(zhuǎn)發(fā)該數(shù)據(jù)包,即用表項(xiàng)中的出標(biāo)簽替換掉數(shù)據(jù)包中的標(biāo)簽字段然后轉(zhuǎn)發(fā)到表項(xiàng)中指定的下一個(gè)路由器,跳回步驟1;步驟15)、利用網(wǎng)絡(luò)層選路協(xié)議確定的路由轉(zhuǎn)發(fā)數(shù)據(jù)包,然后跳回步驟1。
全文摘要
無(wú)線(xiàn)網(wǎng)絡(luò)中的雙向虛電路的建鏈方法,它基于多協(xié)議標(biāo)簽交換,在外網(wǎng)的IP數(shù)據(jù)報(bào)進(jìn)入本網(wǎng)以后,就在鏈路層首部和IP首部之間插入類(lèi)型標(biāo)識(shí)字段和建鏈標(biāo)簽字段等表示建鏈信息的字段。這樣在第三層轉(zhuǎn)發(fā)的同時(shí)各路由器就可以利用這些建鏈信息來(lái)建立正向和反向的標(biāo)簽鏈路了。本方法采用下游自主為上游分配標(biāo)簽的方法,先建立反向鏈路,然后再利用建立好的標(biāo)簽鏈路采用標(biāo)簽轉(zhuǎn)發(fā)策略建立正向鏈路(所以延時(shí)和開(kāi)銷(xiāo)又進(jìn)一步減少了)。這種方法綜合了面向連接和無(wú)連接各自的優(yōu)勢(shì)。具有故障恢復(fù)快,丟包率低的特點(diǎn),非常適用于具有一定移動(dòng)性的無(wú)線(xiàn)網(wǎng)絡(luò),特別適用于條件惡劣、以群移動(dòng)模式為主的軍事無(wú)線(xiàn)通信網(wǎng)絡(luò)。
文檔編號(hào)H04L12/56GK1694431SQ20051003796
公開(kāi)日2005年11月9日 申請(qǐng)日期2005年3月4日 優(yōu)先權(quán)日2005年3月4日
發(fā)明者王海, 牛大偉, 趙文棟 申請(qǐng)人:中國(guó)人民解放軍理工大學(xué)