两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種路由器連接狀態(tài)宣告的生成方法和裝置的制作方法

文檔序號:7965753閱讀:204來源:國知局
專利名稱:一種路由器連接狀態(tài)宣告的生成方法和裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及路由信息的擴(kuò)散,特別涉及一種路由器連接狀態(tài)宣告的生成方法和裝置。
背景技術(shù)
隨著網(wǎng)絡(luò)的快速普及以及網(wǎng)絡(luò)應(yīng)用的不斷豐富,導(dǎo)致網(wǎng)絡(luò)上的流量在不斷膨脹,與此相對應(yīng),網(wǎng)絡(luò)的規(guī)模也越來越大。為滿足這種不斷膨脹的需求,各種網(wǎng)絡(luò)設(shè)備的接入、交換能力必須不斷的得以提升。
在網(wǎng)絡(luò)中,路由信息通常都是通過內(nèi)部網(wǎng)關(guān)協(xié)議(IGP,Interior GatewayProtoco1)和邊界網(wǎng)關(guān)協(xié)議(BGP,Broader Gateway Protocol)協(xié)議來分發(fā)、收集。而最短路徑優(yōu)先(OSPF,Open Shortest Path First)協(xié)議是一種典型的IGP協(xié)議。目前OSPF協(xié)議具有非常廣泛的應(yīng)用。
OSPF允許將自制系統(tǒng)中的一些網(wǎng)絡(luò)設(shè)備組合到一起,這樣的組被稱為區(qū)域(Area)。區(qū)域通常是一個子網(wǎng)化了的IP網(wǎng)絡(luò)。區(qū)域?qū)ψ灾葡到y(tǒng)中的其他部分隱藏其內(nèi)部的拓?fù)浣Y(jié)構(gòu),信息的隱藏極大地減少了路由流量,同時,區(qū)域內(nèi)的路由僅由區(qū)域自身的拓?fù)鋪頉Q定。
OSPF是一種連接狀態(tài)路由協(xié)議,它通過多種連接狀態(tài)宣告(LSA,LinkState Advertisement)來收集和擴(kuò)散網(wǎng)絡(luò)的拓?fù)湫畔⒁约奥酚尚畔?。其中,路由器?biāo)識以及接口、鄰居信息通過路由器連接狀態(tài)宣告(Router-LSA)來描述,現(xiàn)有技術(shù)中對OSPF協(xié)議如何利用Router-LSA來描述路由器的直連信息進(jìn)行了完整、清楚的描述。
Router-LSA包含的具體信息如圖1所示Router-LSA前24個字節(jié)為固定長度的LSA頭部信息。該頭部信息中包括“連接狀態(tài)標(biāo)識”(Link State ID)、“宣告路由器”(Advertising Router)、“長度”(Length)以及“連接數(shù)”(#Link)。隨后的內(nèi)容為路由器的連接信息。每個連接(Link)又至少包括“連接標(biāo)識”(Link ID)、“連接數(shù)據(jù)”(Link Data)、“連接類型”(Type)、“TOS數(shù)”(#TOS)和“距離值”(metric)。如果TOS數(shù)大于等于1,則連接中還需要包括相應(yīng)TOS的描述。
Router-LSA描述了路由器在區(qū)域中運(yùn)作的連接(及接口或通道),并依據(jù)路由器所接入的網(wǎng)絡(luò)類型決定連接的類型。在Router-LSA中,每條連接都包含一個連接標(biāo)識,并通過該連接標(biāo)識和其它連接相區(qū)別。表1是Router-LSA中連接類型的描述,以及對應(yīng)連接標(biāo)識中內(nèi)容代表的含義

表1在一個路由器的Route-LLSA中,一條點(diǎn)到點(diǎn)類型的連接包含了連接的對端路由器標(biāo)識以及本地對應(yīng)的接口IP地址,而一條廣播網(wǎng)絡(luò)以及非廣播多址(NBMA,Non-broadcast Multiple Access)網(wǎng)絡(luò)類型的連接則包含了連接本地對應(yīng)接口的IP地址以及指派路由器(DR,Designated Router)的IP地址。在每個接入了至少兩臺路由器的廣播和非廣播多址網(wǎng)絡(luò)中,都有一臺路由器作為指派路由器。指派路由器生成網(wǎng)絡(luò)連接狀態(tài)宣告(Network-LSA),并在運(yùn)行協(xié)議時完成其他特定職責(zé)。
每個Network-LSA包含的信息如圖2所示。Network-LSA的“連接狀態(tài)標(biāo)識”是指派路由器的接口IP地址,將該接口IP地址與包含在該Network-LSA中的網(wǎng)絡(luò)地址掩碼進(jìn)行運(yùn)算可得出網(wǎng)絡(luò)IP地址。僅當(dāng)指派路由器與網(wǎng)絡(luò)上至少一臺路由器完全鄰接后,才生成Network-LSA。Network-LSA包含了指派路由器標(biāo)識以及與指派路由器完全鄰接的鄰居路由器的OSPF路由器標(biāo)識。Network-LSA僅在包含該傳輸網(wǎng)絡(luò)的區(qū)域中洪泛(flooding)。
從圖1以及上面的描述可以看出,每一條連接至少需要12字節(jié)來描述(包括“連接標(biāo)識”、“連接數(shù)據(jù)”、“連接類型”、“TOS數(shù)”和“距離值”)。對于一條點(diǎn)到點(diǎn)類型的連接,通常需要使用一條類型1的連接和一條類型3的連接來描述;而對于一條廣播網(wǎng)絡(luò)的連接,只需要一條類型2或者類型3的連接來描述。
Router-LSA的“長度”域占用兩個字節(jié),最大長度為65535,在考慮4字節(jié)對齊的情況下,最大長度為65532;固定的LSA頭部信息占用了24字節(jié)。另外,Router-LSA需要通過更新(UPDATE)報文來傳送,而更新報文最大長度也是65535字節(jié),其中固定的頭部信息占用了28字節(jié)。
所以,在全部是廣播網(wǎng)絡(luò)連接的情況下,一個Router-LSA最多可以容納5456條連接;在全部是點(diǎn)到點(diǎn)連接的情況下,最多容納2728條連接。如果連接中帶有多個“TOS”字段,那么容納的連接數(shù)量會更少。
OSPF對每個區(qū)域只使用一個Router-LSA來描述路由器在這個區(qū)域內(nèi)的所有直連信息(包括連接、主機(jī)路由等),而一個Router-LSA的最大長度為65535,如果一個路由器在一個區(qū)域內(nèi)有過多的直連信息,那么可能無法使用一個Router-LSA來承載所有的直連信息。一旦出現(xiàn)這種情況,通常需要重新進(jìn)行網(wǎng)絡(luò)規(guī)劃,簡化網(wǎng)絡(luò)配置,或者選擇其他IGP協(xié)議來替代OSPF,例如中間系統(tǒng)-中間系統(tǒng)(ISIS)協(xié)議。
或者,雖然一個路由器在一個區(qū)域內(nèi)的直連信息可以由一個Router-LSA承載,但是由于直連信息比較多,所以Router-LSA的長度很長,從而導(dǎo)致承載它的更新報文長度遠(yuǎn)大于接口的最大傳輸單位(Maximum TransmissionUnit,MTU),在這種情況下,更新報文在接口上發(fā)送時必須被分成多個片來傳送。而在傳送過程中,如果更新報文有一個分片丟失,則更新報文所有的分片都需要被重新發(fā)送。在網(wǎng)絡(luò)繁忙的情況下,會因?yàn)橛械姆制粊G棄而導(dǎo)致承載Router-LSA的更新報文不斷被全部重傳,甚至導(dǎo)致該Router-LSA不能發(fā)送到鄰居路由器中。在這種情況下,該路由器所在區(qū)域的路由計(jì)算就無法在正確的路由信息下進(jìn)行。
隨著網(wǎng)絡(luò)規(guī)模的日益擴(kuò)大,上述問題將使OSPF協(xié)議的廣泛應(yīng)用受到很大的限制。所以需要提供一種技術(shù)方案,來解決上述存在的問題。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種路由器連接狀態(tài)宣告的生成方法和裝置,通過該方法和裝置,解決在一個區(qū)域內(nèi)的直連信息過多而導(dǎo)致路由器連接狀態(tài)宣告的長度超過其所能承載的最大長度的問題。
一種路由器連接狀態(tài)宣告的生成方法,包括如下步驟步驟A,指定虛擬網(wǎng)段地址和至少一個虛擬路由器標(biāo)識;步驟B,生成以虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的路由器連接狀態(tài)宣告,將路由器的直連信息裝入所述的路由器連接狀態(tài)宣告中,且每個路由器連接狀態(tài)宣告中存在以所述虛擬網(wǎng)段地址為連接標(biāo)識的網(wǎng)絡(luò)型連接。
步驟B之后還包括步驟C、生成連接狀態(tài)標(biāo)識為所述虛擬網(wǎng)段地址的網(wǎng)絡(luò)連接狀態(tài)宣告,該網(wǎng)絡(luò)連接狀態(tài)宣告中生成的網(wǎng)絡(luò)連接狀態(tài)宣告的接入路由器域包括所述虛擬路由器標(biāo)識。
所述步驟B包括如下步驟步驟B11,確定路由器連接狀態(tài)宣告的最大長度;步驟B12,將路由器的直連信息裝入生成的以所述虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的路由器連接狀態(tài)宣告,每個路由器連接狀態(tài)宣告的長度不超過所述的最大長度,且每個路由器連接狀態(tài)宣告中存在以所述虛擬網(wǎng)段地址為連接標(biāo)識的網(wǎng)絡(luò)型連接。
如果還存在未裝入的直連信息,還包括步驟步驟D1,選擇一個或多個步驟B12中生成的路由器連接狀態(tài)宣告來裝載未裝入的直連信息;步驟D2,以新的虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識生成路由器連接狀態(tài)宣告,并將未裝入的直連信息裝入該路由器連接狀態(tài)宣告;步驟D3,在步驟C生成的網(wǎng)絡(luò)連接狀態(tài)宣告的接入路由器域中添加步驟D1所述的虛擬路由器標(biāo)識。
所述路由器連接狀態(tài)宣告的最大長度根據(jù)區(qū)域內(nèi)接口的最大傳輸單位決定,且設(shè)定為一固定值。
步驟B中還包括,真實(shí)標(biāo)識被用來作為生成路由器連接狀態(tài)宣告的連接狀態(tài)標(biāo)識。
當(dāng)有新的直連信息加入時,如果存在未使用的虛擬路由器標(biāo)識,則還包括如下步驟
步驟E1,以未使用的虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識生成一個新的路由器連接狀態(tài)宣告,并將新的直連信息裝入該路由器連接狀態(tài)宣告;步驟E2,在步驟C生成的網(wǎng)絡(luò)連接狀態(tài)宣告的接入路由器域中添加步驟E1中啟用的虛擬路由器標(biāo)識。
當(dāng)一個已經(jīng)用來生成路由器連接狀態(tài)宣告的虛擬路由器標(biāo)識被刪除時,如果存在其它未被使用的虛擬路由器標(biāo)識,則還包括如下步驟步驟F1,以未使用的虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識生成一個新的路由器連接狀態(tài)宣告,并將所述刪除虛擬路由器標(biāo)識對應(yīng)的路由器連接狀態(tài)宣告承載的直連信息裝入新生成的路由器連接狀態(tài)宣告中;步驟F2,在步驟C生成的網(wǎng)絡(luò)連接狀態(tài)宣告的接入路由器域中,將被刪除的虛擬路由器標(biāo)識更改為新啟用的虛擬路由器標(biāo)識。
一種路由連接狀態(tài)宣告生成裝置,包括指定模塊,用于指定虛擬網(wǎng)段地址和至少一個虛擬路由器標(biāo)識;宣告生成模塊,用于生成以虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的路由器連接狀態(tài)宣告,將路由器的直連信息裝入所述的路由器連接狀態(tài)宣告中,且每個路由器連接狀態(tài)宣告中存在以所述虛擬網(wǎng)段地址為連接標(biāo)識的網(wǎng)絡(luò)型連接。
所述宣告生成模塊還包括度量單元,用于確定路由器連接狀態(tài)宣告的最大長度;裝載單元,與度量單元連接,用于將路由器的直連信息裝入生成的以所述虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的路由器連接狀態(tài)宣告,每個路由器連接狀態(tài)宣告的長度不超過所述的最大長度。
從上面所述可以看出,使用本發(fā)明的方法和裝置,可以把一臺真實(shí)路由器上的所有直連信息分配到位于一個虛擬廣播網(wǎng)上的一個或者多個虛擬路由器的Router-LSA中,在該方法下,如果一個路由器的直連信息過多,超過了一個Router-LSA在OSPF協(xié)議中所能承載的最大長度,就可以將其直連信息分配到多個Router-LSA中,從而克服了一個路由器的直連信息過多而Router-LSA長度有限帶來的問題。另一方面,在步驟B11中確定的最大長度小于接口的最大傳輸單位的情況下,可以減少承載Router-LSA的更新報文傳送時的分片,減少了因?yàn)楦聢笪姆制瑏G失而需要全部重傳更新報文帶來的網(wǎng)絡(luò)流量。


圖1所示為現(xiàn)有技術(shù)OSPF中路由器連接狀態(tài)宣告格式的示意圖;圖2所示為現(xiàn)有技術(shù)OSPF中網(wǎng)絡(luò)連接狀態(tài)宣告格式的示意圖;圖3所示為本發(fā)明將一臺真實(shí)路由器模擬成在一個廣播網(wǎng)絡(luò)中的多臺虛擬路由器的示意圖。
圖4所示為本發(fā)明的裝置的結(jié)構(gòu)示意圖。
具體實(shí)施例方式
本發(fā)明的基本思想是,將一臺路由器模擬成在一個廣播網(wǎng)絡(luò)上的多臺虛擬路由器,從而將現(xiàn)有技術(shù)中通過一個Router-LSA承載的連接信息分解到多個虛擬路由器對應(yīng)的Router-LSA中。如圖3所示,將一臺真實(shí)的路由器RTA模擬成在一個廣播網(wǎng)絡(luò)上的虛擬路由器A1和A2以及相應(yīng)的虛擬指派路由器,從而將路由器A的原本通過一個Router-LSA承載的直連信息分解到與虛擬路由器A1至A2對應(yīng)的多個Router-LSA中去,可以避免一個承載路由器直連信息的Router-LSA長度過大或者超出范圍導(dǎo)致的問題。
在下面的描述中,為了便于概念的區(qū)分,把上述的真實(shí)存在的路由器稱為真實(shí)路由器,把由虛擬路由器組成的虛擬廣播網(wǎng)絡(luò)稱為“虛擬網(wǎng)段”。在虛擬網(wǎng)段上,需要由指派路由器來產(chǎn)生Network-LSA,稱這個指派路由器為“虛擬指派路由器”。虛擬指派路由器的功能由真實(shí)路由器來完成。真實(shí)路由器在生成Network-LSA時可以任意挑選一個虛擬路由器作為Network-LSA的“宣告路由器”。為虛擬指派路由器分配的有效IP地址稱為“虛擬網(wǎng)段地址”,相應(yīng)的掩碼稱為“虛擬網(wǎng)段掩碼”。虛擬網(wǎng)段地址的掩碼可以根據(jù)需要指定長度,真實(shí)路由器通過Network-LSA將虛擬網(wǎng)段地址/掩碼通告到OSPF區(qū)域中。
本發(fā)明OSPF協(xié)議中路由器連接狀態(tài)宣告的一種實(shí)現(xiàn)方法包括如下步驟步驟A1,指定虛擬網(wǎng)段地址和虛擬路由器標(biāo)識。
首先為虛擬指派路由器在OSPF中指定一個IP地址,同時為這個地址指定一個掩碼,作為虛擬網(wǎng)段的地址和掩碼。虛擬路由器連接到虛擬網(wǎng)段的接口IP地址可以指定與虛擬網(wǎng)段地址不同的IP地址,但為了節(jié)省IP地址,所有虛擬路由器使用虛擬網(wǎng)段的IP地址作為連接到虛擬網(wǎng)段的接口IP地址,虛擬網(wǎng)段地址作為Network-LSA的連接狀態(tài)標(biāo)識。在下面的描述中,都以虛擬網(wǎng)段內(nèi)的地址作為虛擬路由器連接到虛擬網(wǎng)段的接口IP地址為例進(jìn)行描述。而指定掩碼的長度沒有特殊要求,虛擬指派路由器將使用這個掩碼作為其生成的Network-LSA網(wǎng)段的掩碼。
上述指定的虛擬網(wǎng)段地址/掩碼可以是與真實(shí)路由器沒有關(guān)系的IP地址和掩碼,也可以是真實(shí)路由器上某個接口,例如一個環(huán)回接口(LoopbackInterface)的IP地址/掩碼。這個指定的接口可以運(yùn)行OSPF協(xié)議,也可以不運(yùn)行OSPF協(xié)議。
由于指派路由器產(chǎn)生的Network-LSA只在指派路由器所在的區(qū)域內(nèi)洪泛,所以虛擬網(wǎng)段地址/掩碼只在其所在的區(qū)域內(nèi)有意義,因此在OSPF不同區(qū)域內(nèi)指定的虛擬網(wǎng)段地址/掩碼可以相同,也可以不同。
在上面的描述中,將虛擬網(wǎng)段地址和掩碼同時指定。但實(shí)際上,虛擬網(wǎng)段的掩碼也可以在生成Network-LSA的時候指定,并不影響本發(fā)明方法的實(shí)際效果。
同時指定一系列OSPF中的路由器標(biāo)識,作為虛擬路由器標(biāo)識。這些路由器標(biāo)識在OSPF域中必須是唯一的,也就是說,不能和OSPF域中其他路由器標(biāo)識相沖突。虛擬路由器標(biāo)識中可以包含真實(shí)路由器標(biāo)識。
步驟A2,生成以虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的Router-LSA,用來承載真實(shí)路由器的直連信息,在生成的Router-LSA中存在連接來描述指定的虛擬網(wǎng)段。
確定生成以虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的Router-LSA的個數(shù),以及真實(shí)路由器的直連信息在生成的Router-LSA中分配,可以通過多種方法實(shí)現(xiàn),下面給出兩種具體的實(shí)現(xiàn)方法,其中,方法一包括如下步驟步驟A2.11,確定每個Router-LSA的最大長度。
可以將Router-LSA的最大長度指定為一個固定值,也可以動態(tài)地決定。動態(tài)決定Router-LSA最大長度的一種方法是根據(jù)真實(shí)路由器所在的區(qū)域內(nèi)接口的最大傳輸單位來決定使承載具有最大長度Router-LSA的更新報文的長度仍小于區(qū)域內(nèi)最小的接口最大傳輸單位。同時,因?yàn)樘摂M路由器的Router-LSA必須攜帶至少一個直連信息,通常是兩條連接;另外,虛擬路由器的Router-LSA中還必須帶有一條指向虛擬網(wǎng)段的連接,所以Router-LSA的最大長度必須保證Router-LSA至少承載三條連接,也就是說,該最大長度必須大于等于60字節(jié)。
步驟A2.12,生成第一個Router-LSA,并從指定的虛擬路由器標(biāo)識中挑選一個作為該Router-LSA的連接狀態(tài)標(biāo)識。
將真實(shí)路由器的直連信息裝入上述的Router-LSA中,直到所有的直連信息都已經(jīng)被裝入或者Router-LSA的長度達(dá)到步驟A2.11確定的最大長度。根據(jù)真實(shí)路由器直連信息是否通過多個虛擬路由器Router-LSA來承載,分別處理如下情況一真實(shí)路由器在區(qū)域內(nèi)的直連信息較少,只需要生成一個Router-LSA來承載真實(shí)路由器的所有直連信息。
在這種情況下,如果指定的虛擬網(wǎng)段地址/掩碼沒有包含在Router-LSA描述的連接信息中,則在Router-LSA中添加一類型3的連接來描述這個的虛擬網(wǎng)段,表示它是一條直連路由,同時將該連接的“距離值”域設(shè)為0。如果指定的虛擬網(wǎng)段地址/掩碼已經(jīng)包含在Router-LSA中,也就是說,指定的虛擬網(wǎng)段地址/掩碼是真實(shí)路由器上某個接口的主IP地址/掩碼,則將其“距離值”修改為0,在這種情況下,實(shí)際上修改真實(shí)路由器上一個接口連接的“距離值”域的值,所以應(yīng)避免將真實(shí)路由器上運(yùn)行了OSPF協(xié)議的接口的IP地址/掩碼指定為虛擬網(wǎng)段地址/掩碼。
情況二需要多個虛擬路由器Router-LSA來承載真實(shí)路由器所有的直連信息。
在這種情況下,在生成的第一個Router-LSA中用類型2的連接描述這個虛擬網(wǎng)段,表示這是一個連接到廣播網(wǎng)絡(luò)的鏈路,其中,“連接標(biāo)識”和“連接數(shù)據(jù)”域都填寫為虛擬網(wǎng)段地址,“距離值”域則設(shè)為0,并繼續(xù)執(zhí)行如下的步驟步驟A2.13,繼續(xù)生成以未被使用過的虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的Router-LSA。
判斷當(dāng)前Router-LSA的長度是否已經(jīng)達(dá)到最大長度,如果已經(jīng)達(dá)到最大長度而且還存在未裝入的連接,如果還存在未使用的虛擬路由器標(biāo)識,則從未使用的虛擬路由器標(biāo)識中選擇一個且生成一個新的Router-LSA,將未裝入的連接繼續(xù)裝入到新生成的Router-LSA。新生成Router-LSA的“連接狀態(tài)標(biāo)識”和“宣告路由器”域都填寫選中的虛擬路由器標(biāo)識。在該Router-LSA中也使用一條類型2的連接來描述指定的虛擬網(wǎng)段地址,表示這個虛擬路由器也是連接到虛擬廣播網(wǎng)絡(luò)的一臺路由器。這條類型為2的連接的“連接標(biāo)識”和“連接數(shù)據(jù)”域都填寫為虛擬網(wǎng)段地址,“距離值”域填寫為0。
重復(fù)執(zhí)行步驟A2.13,直到真實(shí)路由器的所有直連信息都被裝入Router-LSA,或者雖然還存在未被裝入的直連信息,但所有指定的虛擬路由器標(biāo)識都被用來生成Router-LSA且所有生成的Router-LSA長度都達(dá)到最大值。在后一種情況下,可以把未被裝入的直連信息都裝入到一個已經(jīng)生成的Router-LSA中,例如,如果真實(shí)路由器標(biāo)識也被用來生成Router-LSA,可以將未被裝入的直連信息都裝入到該Router-LSA中,此時該Router-LSA的長度將會超過確定的最大長度。也可以把未被裝入的直連信息平均分配到所有生成的Router-LSA中。或者,指定了新的路由器標(biāo)識,則可以繼續(xù)執(zhí)行步驟A2.13,直到真實(shí)路由器的所有直連信息都被裝入Router-LSA。
上述是方法一的實(shí)現(xiàn)步驟。
方法二包括步驟如下步驟A2.21,為指定的每個虛擬路由器標(biāo)識生成一個Router-LSA,虛擬路由器標(biāo)識為對應(yīng)Router-LSA的連接狀態(tài)標(biāo)識。
步驟A2.22,將真實(shí)路由器的直連信息依次裝入生成的Router-LSA中,直到真實(shí)路由器的所有直連信息都被裝入。
在只生成一個Router-LSA的情況下,如果指定的虛擬網(wǎng)段地址/掩碼沒有包含在Router-LSA描述的連接信息中,在Router-LSA中添加一條類型3的連接來描述這個的虛擬網(wǎng)段,表示它是一條直連路由,同時將該連接的“距離值”域設(shè)為0;如果指定的虛擬網(wǎng)段地址/掩碼已經(jīng)包含在Router-LSA中,也就是說,指定的虛擬網(wǎng)段地址/掩碼是真實(shí)路由器上某個接口的IP地址/掩碼,則將其“距離值”修改為0。
在生成多個Router-LSA來承載真實(shí)路由器所有的直連信息的情況下,則在每個生成的Router-LSA中用類型2的連接描述這個虛擬網(wǎng)段,表示這是一個連接到廣播網(wǎng)絡(luò)的鏈路,其中,“連接標(biāo)識”和“連接數(shù)據(jù)”域都填寫為虛擬網(wǎng)段地址,“距離值”域則設(shè)為0。
本發(fā)明的一個具體實(shí)施例是,在步驟A1中指定的路由器標(biāo)識包含真實(shí)路由器標(biāo)識,并且在生成的Router-LSA也包含一個以真實(shí)路由器標(biāo)識為連接狀態(tài)標(biāo)識。
步驟A3,生成虛擬廣播網(wǎng)絡(luò)的Network-LSA。
真實(shí)路由器在其直連信息都被裝入生成的Router-LSA后,生成Network-LSA。在該Network-LSA中,“連接狀態(tài)標(biāo)識”域填寫步驟A1中所指定的虛擬網(wǎng)段地址,“宣告路由器”域填寫步驟A2.13或者A2.21中啟用的一個路由器標(biāo)識。如果虛擬網(wǎng)段的掩碼尚未指定,則可以指定一個掩碼作為虛擬網(wǎng)段的掩碼,并在生成的Router-LSA的“掩碼”域填寫上述指定的虛擬網(wǎng)段掩碼。在“接入路由器”域填步驟A2.13或者A2.21中啟用的所有虛擬路由器標(biāo)識。
通過上述的方法,可以把一臺真實(shí)路由器上的所有直連信息分配到多個虛擬路由器的Router-LSA中,從而克服了由于Router-LSA長度限制帶來的不能承載所有的直連信息。通過確定恰當(dāng)?shù)腞outer-LSA最大長度,可以克服由于Router-LSA的長度過長而導(dǎo)致承載它的更新報文需要大量分片的問題。而且通過在Network-LSA中標(biāo)明這些虛擬路由器都位于同一個廣播網(wǎng)中,且“距離值”域的值為0,所以也不會影響路由的結(jié)果。這樣對真實(shí)路由器所在區(qū)域的其他路由器來說,原來的一臺真實(shí)路由器現(xiàn)在變成了通過一個廣播網(wǎng)絡(luò)直接相連的多臺虛擬路由器。但是由于“距離值”填寫為0,所以其他路由器到這些虛擬路由器上的任何一個直連路由的距離都與到真實(shí)路由器的距離相同。
當(dāng)一個路由器在一個區(qū)域內(nèi)的直連信息繼續(xù)增加時,如果存在未使用的虛擬路由器標(biāo)識,或者增加新指定的虛擬路由器標(biāo)識,則可以生成以未使用的虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的新的Router-LSA,并將新增的直連信息裝入到該Router-LSA中,該過程包括如下步驟
步驟B1,生成一個新的Router-LSA。該Router-LSA的“連接狀態(tài)標(biāo)識”和“宣告路由器”域都填寫新選中的虛擬路由器標(biāo)識。在Router-LSA中使用一條類型2的連接來描述指定的虛擬網(wǎng)段地址,表示這個虛擬路由器連接到虛擬廣播網(wǎng)絡(luò)。這條類型2的連接的“連接標(biāo)識”和“連接數(shù)據(jù)”域填寫虛擬網(wǎng)段地址,“距離值”域填寫0。
步驟B2,修改虛擬網(wǎng)段對應(yīng)的Network-LSA,在“接入路由器”域中添加步驟B1中啟用的虛擬路由器標(biāo)識。
當(dāng)一個路由器在一個區(qū)域內(nèi)的直連信息繼續(xù)增加,如果已經(jīng)啟用的Router-LSA可以承載更多的直連信息,則可以將新增的直連信息裝入到該已經(jīng)啟用的虛擬路由器標(biāo)識對應(yīng)的Router-LSA中。例如,當(dāng)所有的已經(jīng)啟用的虛擬路由器標(biāo)識對應(yīng)的Router-LSA都達(dá)到步驟A2.11確定的最大長度時,仍然可以把新增加的直連信息添加到一個已經(jīng)啟用的虛擬路由器標(biāo)識對應(yīng)的Router-LSA中,例如與真實(shí)路由器標(biāo)識的Router-LSA中,即使該Router-LSA的長度超過確定的最大長度。
當(dāng)刪除一個已經(jīng)用來生成Router-LSA的虛擬路由器標(biāo)識時,如果存在其它未被使用的虛擬路由器標(biāo)識,可以生成一個新的以未被使用的虛擬路由器標(biāo)識為連接標(biāo)識的Router-LSA,將連接狀態(tài)標(biāo)識被刪除的Router-LSA承載的連接信息裝入新的Router-LSA中,然后在Network-LSA的“接入路由器”域中被刪除的路由器標(biāo)識更改為新選中的虛擬路由器標(biāo)識。如果不存在其它未被使用的虛擬路由器標(biāo)識,則可以將該Router-LSA中的連接信息分配到其它的Router-LSA中,并在Network-LSA的“接入路由器”域中去掉被刪除的虛擬路由器標(biāo)識。
本發(fā)明的另外一種OSPF中Router-LSA的實(shí)現(xiàn)方法是,將一個真實(shí)路由器虛擬成多個全連接的虛擬路由器,主要包括如下步驟步驟C1,指定多個虛擬路由器標(biāo)識。
步驟C2,生成以指定虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的Router-LSA,用來承載真實(shí)路由器的直連信息,并在每個生成的Router-LSA中包含該Router-LSA對應(yīng)的虛擬路由器與其它虛擬路由器的連接信息。
本發(fā)明還提供一種路由連接狀態(tài)宣告生成裝置,包括
指定模塊,用于指定虛擬網(wǎng)段地址和至少一個虛擬路由器標(biāo)識;宣告生成模塊,用于生成以虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的路由器連接狀態(tài)宣告,將路由器的直連信息裝入所述的路由器連接狀態(tài)宣告中,且每個路由器連接狀態(tài)宣告中存在以所述虛擬網(wǎng)段地址為連接標(biāo)識的網(wǎng)絡(luò)型連接。
所述宣告生成模塊還包括度量單元,用于確定路由器連接狀態(tài)宣告的最大長度;裝載單元,與度量單元連接,用于將路由器的直連信息裝入生成的以所述虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的路由器連接狀態(tài)宣告,每個路由器連接狀態(tài)宣告的長度不超過所述的最大長度。
通過本發(fā)明的方法和裝置,將原來真實(shí)路由器在一個Router-LSA中承載的信息分解到許多個Router-LSA中,每個Router-LSA承載的內(nèi)容都是原來的Router-LSA的一小部分,這樣就減小了報文長度,增強(qiáng)了報文傳輸?shù)目煽啃裕欢彝ㄟ^增加分解后的Router-LSA的數(shù)量來承載更多的信息,可以使信息的總量不再受一個Router-LSA長度的限制;在按照實(shí)際需求指定Router-LSA的最大長度的情況下,使得Router-LSA更容易順利擴(kuò)散到真實(shí)路由器的所有鄰居路由器。
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.一種路由器連接狀態(tài)宣告的生成方法,其特征在于,包括如下步驟步驟A,指定虛擬網(wǎng)段地址和至少一個虛擬路由器標(biāo)識;步驟B,生成以虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的路由器連接狀態(tài)宣告,將路由器的直連信息裝入所述的路由器連接狀態(tài)宣告中,且每個路由器連接狀態(tài)宣告中存在以所述虛擬網(wǎng)段地址為連接標(biāo)識的網(wǎng)絡(luò)型連接。
2.如權(quán)利要求1所述的方法,其特征在于,步驟B之后還包括步驟C、生成連接狀態(tài)標(biāo)識為所述虛擬網(wǎng)段地址的網(wǎng)絡(luò)連接狀態(tài)宣告,該網(wǎng)絡(luò)連接狀態(tài)宣告中生成的網(wǎng)絡(luò)連接狀態(tài)宣告的接入路由器域包括所述虛擬路由器標(biāo)識。
3.如權(quán)利要求1或2所述的方法,其特征在于,所述步驟B包括如下步驟步驟B11,確定路由器連接狀態(tài)宣告的最大長度;步驟B12,將路由器的直連信息裝入生成的以所述虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的路由器連接狀態(tài)宣告,每個路由器連接狀態(tài)宣告的長度不超過所述的最大長度,且每個路由器連接狀態(tài)宣告中存在以所述虛擬網(wǎng)段地址為連接標(biāo)識的網(wǎng)絡(luò)型連接。
4.如權(quán)利要求3所述的方法,其特征在于,如果還存在未裝入的直連信息,還包括步驟步驟D1,選擇一個或多個步驟B12中生成的路由器連接狀態(tài)宣告來裝載未裝入的直連信息;步驟D2,以新的虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識生成路由器連接狀態(tài)宣告,并將未裝入的直連信息裝入該路由器連接狀態(tài)宣告;步驟D3,在步驟C生成的網(wǎng)絡(luò)連接狀態(tài)宣告的接入路由器域中添加步驟D1所述的虛擬路由器標(biāo)識。
5.如權(quán)利要求3所述的方法,其特征在于,所述路由器連接狀態(tài)宣告的最大長度根據(jù)區(qū)域內(nèi)接口的最大傳輸單位決定,且設(shè)定為一固定值。
6.如權(quán)利要求1或2所述的方法,其特征在于,步驟B中還包括,真實(shí)標(biāo)識被用來作為生成路由器連接狀態(tài)宣告的連接狀態(tài)標(biāo)識。
7.如權(quán)利要求1或2所述的方法,其特征在于,當(dāng)有新的直連信息加入時,如果存在未使用的虛擬路由器標(biāo)識,則還包括如下步驟步驟E1,以未使用的虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識生成一個新的路由器連接狀態(tài)宣告,并將新的直連信息裝入該路由器連接狀態(tài)宣告;步驟E2,在步驟C生成的網(wǎng)絡(luò)連接狀態(tài)宣告的接入路由器域中添加步驟E1中啟用的虛擬路由器標(biāo)識。
8.如權(quán)利要求1或2所述的方法,其特征在于,當(dāng)一個已經(jīng)用來生成路由器連接狀態(tài)宣告的虛擬路由器標(biāo)識被刪除時,如果存在其它未被使用的虛擬路由器標(biāo)識,則還包括如下步驟步驟F1,以未使用的虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識生成一個新的路由器連接狀態(tài)宣告,并將所述刪除虛擬路由器標(biāo)識對應(yīng)的路由器連接狀態(tài)宣告承載的直連信息裝入新生成的路由器連接狀態(tài)宣告中;步驟F2,在步驟C生成的網(wǎng)絡(luò)連接狀態(tài)宣告的接入路由器域中,將被刪除的虛擬路由器標(biāo)識更改為新啟用的虛擬路由器標(biāo)識。
9.一種路由連接狀態(tài)宣告生成裝置,其特征在于,包括指定模塊,用于指定虛擬網(wǎng)段地址和至少一個虛擬路由器標(biāo)識;宣告生成模塊,用于生成以虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的路由器連接狀態(tài)宣告,將路由器的直連信息裝入所述的路由器連接狀態(tài)宣告中,且每個路由器連接狀態(tài)宣告中存在以所述虛擬網(wǎng)段地址為連接標(biāo)識的網(wǎng)絡(luò)型連接。
10.如權(quán)利要求9所述的裝置,其特征在于,所述宣告生成模塊還包括度量單元,用于確定路由器連接狀態(tài)宣告的最大長度;裝載單元,與度量單元連接,用于將路由器的直連信息裝入生成的以所述虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的路由器連接狀態(tài)宣告,每個路由器連接狀態(tài)宣告的長度不超過所述的最大長度。
全文摘要
本發(fā)明公開了一種OSPF協(xié)議中路由器連接狀態(tài)宣告的實(shí)現(xiàn)方法,該方法指定虛擬網(wǎng)段地址和至少一個虛擬路由器標(biāo)識;將路由器的直連信息裝入以所述虛擬路由器標(biāo)識為連接狀態(tài)標(biāo)識的路由器連接狀態(tài)宣告中,且每個路由器連接狀態(tài)宣告中存在以所述虛擬網(wǎng)段地址為連接標(biāo)識的網(wǎng)絡(luò)型連接;生成連接狀態(tài)標(biāo)識為所述虛擬網(wǎng)段地址的網(wǎng)絡(luò)連接狀態(tài)宣告,且該網(wǎng)絡(luò)連接狀態(tài)宣告的接入路由器域包括虛擬路由器標(biāo)識。通過這樣的方法,可以克服路由器連接狀態(tài)宣告的長度限制問題,或者由于路由器連接狀態(tài)宣告的長度過長導(dǎo)致承載它的更新報文超出接口的最大傳輸單位而需要分片的問題。
文檔編號H04L12/46GK1889544SQ20061010784
公開日2007年1月3日 申請日期2006年7月26日 優(yōu)先權(quán)日2006年7月26日
發(fā)明者馮路, 杜敏松, 祝韶暉 申請人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
武川县| 营口市| 申扎县| 阿巴嘎旗| 潍坊市| 磐安县| 武鸣县| 唐海县| 镶黄旗| 壤塘县| 施秉县| 婺源县| 乐平市| 老河口市| 若尔盖县| 南昌市| 昭平县| 中方县| 噶尔县| 萨迦县| 二连浩特市| 塔河县| 嫩江县| 全椒县| 敖汉旗| 中阳县| 阿城市| 满洲里市| 汉中市| 南岸区| 黄山市| 胶州市| 芦溪县| 温宿县| 甘孜县| 衡山县| 张家港市| 西林县| 衢州市| 九龙坡区| 阜阳市|