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

路由方法和路由系統(tǒng)的制作方法

文檔序號:7934330閱讀:230來源:國知局
專利名稱:路由方法和路由系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明有關(guān)于一種路由方法和路由系統(tǒng),特別有關(guān)一種路由前綴高速緩存的具體實(shí)現(xiàn)方案,其利用多個(gè)不同但固定長度的路由前綴路由表,以增加路由高速緩存器(Cache Memory)效能,并加快網(wǎng)絡(luò)設(shè)備尋徑速度的方法和裝置。
背景技術(shù)
國際互聯(lián)網(wǎng)(Internet)已明顯地影響了人類的生活,各式網(wǎng)絡(luò)應(yīng)用亦正蓬勃地被發(fā)展當(dāng)中,因此需要更高品質(zhì)的網(wǎng)絡(luò)傳輸能力,例如具有較大吞吐量(Throughput)及較短的延遲(Delay)等。然而在網(wǎng)絡(luò)設(shè)備傳送網(wǎng)絡(luò)數(shù)據(jù)包的過程中,路由查詢(Routing-Lookup)是最耗時(shí)的部份,路由系統(tǒng)必須為每一個(gè)接收到的網(wǎng)絡(luò)互連協(xié)議(Internet Protocol,下文簡稱IP)數(shù)據(jù)包,在其路由表中尋找IP數(shù)據(jù)包中目的端地址的“最長符合的路由前綴”(Longest Matching Prefix),再依照相對應(yīng)的路由數(shù)據(jù)遞送該數(shù)據(jù)包,但這個(gè)程序卻相當(dāng)耗時(shí)。
為解決上述的問題,一種高速緩存路由前綴(Routing Prefix)的路由方法被提出。由于一個(gè)路由前綴可以解答此路由前綴所對應(yīng)的多個(gè)目的端地址的路由查詢,因此若以路由高速緩存器高速緩存路由前綴,而非高速緩存目的端地址的路由結(jié)果(Routing Result),等同大小的路由高速緩存器便能解答較多的路由查詢,而此方法則稱為路由前綴高速緩存(Pretix Caching)。由于路由前綴高速緩存所需的儲存單元的數(shù)目較一般目的端地址高速緩存(Destination Caching)為少,所以實(shí)作路由前綴高速緩存的路由高速緩存器可具有較佳的利用率(Utilization),而加快網(wǎng)絡(luò)設(shè)備路由查詢的速度。
然而對于每一個(gè)目的端地址而言,皆僅有一“最長符合的路由前綴”,而其對應(yīng)的路由數(shù)據(jù)才是該目的端地址正確的傳送路徑。因此,若有多個(gè)路由前綴涵蓋同一目的端地址,則須找出其“最長符合的路由前綴”以獲得正確的路由結(jié)果。為此,路由前綴高速緩存必須再加上找出“最長符合的路由前綴”的機(jī)制。

發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提出一種新的路由方法,在采用復(fù)數(shù)路由高速緩存器,但各路由高速緩存器皆只需儲存某一選定比特長度的路由前綴的設(shè)計(jì)下,實(shí)作路由前綴高速緩存。而由于各路由高速緩存器皆只需儲存某一選定比特長度的路由前綴,故各路由高速緩存器可選用一般的二進(jìn)制內(nèi)容尋址儲存器(Binary ContentAddressable Memory)。
本發(fā)明的另一目的在于提出一種新的路由系統(tǒng),其具有復(fù)數(shù)路由高速緩存器,利用上述新的路由方法及一高速緩存更新方法,以實(shí)作路由前綴高速緩存,藉此提高路由高速緩存器的利用率,而加快網(wǎng)絡(luò)設(shè)備路由查詢的速度。
為達(dá)成上述目的,本發(fā)明提供一種路由方法,其用于一路由系統(tǒng)中,其包括下列步驟。首先,選擇m個(gè)路由前綴長度,分別為L1比特、L2比特、L3比特、…、Lm比特,其中m、L1、L2、L3、…、Lm為正整數(shù)且L1<L2<L3<…<Lm。接著,將該路由系統(tǒng)所應(yīng)處理之復(fù)數(shù)路由前綴,依其路由前綴長度分為m個(gè)群組,分別為0~L1比特、L1+1~L2比特、L2+1~L3比特、…、Lm-1+1~Lm比特,并分別建立對應(yīng)的第1~第m路由表;其中,當(dāng)所應(yīng)處理的一路由前綴的路由前綴長度為j比特,且介于(Li-1+1)~Li比特,而屬于第i群組時(shí),使用一擴(kuò)展模塊將該路由前綴擴(kuò)展為2Li-j個(gè)Li比特的路由前綴,并將此擴(kuò)展后的路由前綴與其對應(yīng)的路由數(shù)據(jù),儲入該第i路由表,其中i與j為正整數(shù)且2≤i≤m,L1+1≤j≤Lm。此外,該路由系統(tǒng)并同時(shí)維持一高速緩存路由表,該高速緩存路由表儲存復(fù)數(shù)路由前綴長度為L1比特的路由前綴及其所對應(yīng)的復(fù)數(shù)路由數(shù)據(jù)。
而在接收一Lm比特的目的端地址的網(wǎng)絡(luò)數(shù)據(jù)包,依據(jù)該目的端地址的前L1比特在該高速緩存路由表中尋找和該目的端地址的前L1比特相同的路由前綴;同時(shí)依據(jù)該目的端地址的前L2比特在該第二路由表中尋找和該目的端地址的前L2比特相同的路由前綴;依此類推,同時(shí)依據(jù)該目的端地址的所有Lm比特在該第m路由表中尋找和該目的端地址的所有Lm比特相同的路由前綴。而于上述搜尋比對中有一至多個(gè)相符合的路由前綴時(shí),則由該等相符合的路由前綴中選出具最大比特長度者,并取出其所對應(yīng)的路由數(shù)據(jù),并依據(jù)該路由數(shù)據(jù)將該網(wǎng)絡(luò)數(shù)據(jù)包傳出。而于上述搜尋比對中無任何一個(gè)相符合的路由前綴時(shí),在該第一路由表中搜尋并取出該目的端地址的前L1比特所對應(yīng)的路由數(shù)據(jù),并依據(jù)該路由數(shù)據(jù)將該網(wǎng)絡(luò)數(shù)據(jù)包傳出,并將該目的端地址的前L1比特以及該路由數(shù)據(jù),交由該高速緩存路由表儲存?;蛘?,于上述搜尋比對中無任何一個(gè)相符合的路由前綴時(shí),在一全路由表中搜尋并取出該目的端地址所對應(yīng)的路由數(shù)據(jù),并依據(jù)該路由數(shù)據(jù),將該網(wǎng)絡(luò)數(shù)據(jù)包傳出,并將該目的端地址的前L1比特以及該路由數(shù)據(jù),交由該高速緩存路由表儲存。其中該全路由表儲存所有該路由系統(tǒng)所應(yīng)處理的復(fù)數(shù)路由前綴及所對應(yīng)的復(fù)數(shù)路由數(shù)據(jù)。
配合上述路由方法,本發(fā)明另外提出一種路由系統(tǒng),其包括一第一路由裝置及一第二路由裝置。該第一路由裝置包括一接收單元、路由前綴長度處理器、復(fù)數(shù)路由高速緩存器、一擴(kuò)展模塊及一選擇傳送單元。第二路由裝置包括一第一路由表或一全路由表。


圖1表示本發(fā)明實(shí)施例中建立路由表的處理過程的示意圖。
圖2表示本發(fā)明實(shí)施例的路由方法的處理過程的示意圖。
圖3表示本發(fā)明實(shí)施例中對于無法在路由高速緩存器中找到該目的端地址所對應(yīng)的路由數(shù)據(jù)時(shí)的處理過程的示意圖。
圖4表示本發(fā)明實(shí)施例的路由系統(tǒng)一范例的方框圖。
圖5表示本發(fā)明實(shí)施例的路由系統(tǒng)另一范例的方框圖。
{Ad}~路由前綴;
20~目的端地址;80、480、580~高速緩存路由表;50、450~第一路由表;60、460、560~第二路由表;70、470、570~第三路由表;550~全路由表;22、404、504~選擇傳送單元;R1、R2、R3、R4、Rcache~搜尋結(jié)果;10、408、508~路由前綴長度處理器;12a、12b、410、510~擴(kuò)展模塊;406a、406b、406c、506a、506b、506c~二進(jìn)制內(nèi)容尋址儲存器;400a、400b、500a、500b~路由器;402、502~接收單元。
具體實(shí)施例方式
本發(fā)明所揭露的路由高速緩存器,主要用于網(wǎng)絡(luò)設(shè)備的路由技術(shù),所以稱作路由高速緩存器(routing cache),以有別于一般用于計(jì)算機(jī)技術(shù)的高速緩存器(Memory Cache)。以下配合圖式,詳細(xì)說明本發(fā)明的最佳實(shí)施例。
圖1表示本發(fā)明實(shí)施例中建立路由表的處理過程的示意圖。在此實(shí)施例中,選擇3個(gè)路由前綴長度分別24、28以及32比特,并分別建立第一路由表50、第二路由表60以及第三路由表70。首先,將該路由系統(tǒng)應(yīng)處理的復(fù)數(shù)路由前綴{Ad}送入路由前綴長度處理器10,路由前綴長度處理器10則依照路由前綴{Ad}的比特長度進(jìn)行分組。
當(dāng)路由前綴{Ad}的長度為0~24比特時(shí),將路由前綴{Ad}及其路由數(shù)據(jù)儲入路由系統(tǒng)中的第一路由表50。當(dāng)路由前綴{Ad}的長度為25~28比特時(shí),經(jīng)由擴(kuò)展模塊12a將路由前綴{Ad}依下列規(guī)則擴(kuò)展為1至8個(gè)長度為28比特的路由前綴當(dāng)路由前綴{Ad}的長度為25比特時(shí),于路由前綴{Ad}尾端分別附加8個(gè)長度為3比特的樣式,分別為000、001、010、011、100、101、110及111,而成為8個(gè)長度為28比特的路由前綴;當(dāng)路由前綴{Ad}的長度為26比特時(shí),于路由前綴{Ad}尾端分別附加4個(gè)長度為2比特的樣式,分別為00、01、10及11,而成為4個(gè)長度為28比特的路由前綴;當(dāng)路由前綴{Ad}的長度為27比特時(shí),于路由前綴{Ad}尾端分別附加2個(gè)長度為1比特的樣式,分別為0及1,而成為2個(gè)長度為28比特的路由前綴;當(dāng)路由前綴{Ad}的長度為28比特時(shí),則無需進(jìn)行附加動(dòng)作,直接輸出該路由前綴{Ad}。并將擴(kuò)展模塊12a輸出的長度皆為28比特的路由前綴及路由前綴{Ad}的路由數(shù)據(jù),儲入第二路由表60。
而當(dāng)路由前綴{Ad}的長度為29~32比特時(shí),經(jīng)由擴(kuò)展模塊12b將路由前綴{Ad}依下列規(guī)則擴(kuò)展為1至8個(gè)長度為32比特的路由前綴當(dāng)路由前綴{Ad}的長度為29比特時(shí),于路由前綴{Ad}尾端分別附加8個(gè)長度為3比特的樣式,分別為000、001、010、011、100、101、110及111,而成為8個(gè)長度為32比特的路由前綴;當(dāng)路由前綴{Ad}的長度為30比特時(shí),于路由前綴{Ad}尾端分別附加4個(gè)長度為2比特的樣式,分別為00、01、10及11,而成為4個(gè)長度為32比特的路由前綴;當(dāng)路由前綴{Ad}的長度為31比特時(shí),于路由前綴{Ad}尾端分別附加2個(gè)長度為1比特的樣式,分別為0及1,而成為2個(gè)長度為32比特的路由前綴;當(dāng)路由前綴{Ad}的長度為32比特時(shí),無需進(jìn)行附加動(dòng)作,直接輸出該路由前綴{Ad}。并將擴(kuò)展模塊12b輸出的長度皆為32比特的路由前綴及路由前綴{Ad}的路由數(shù)據(jù),儲入第三路由表70。
圖2表示本發(fā)明實(shí)施例的路由方法的處理過程的示意圖。首先,依照圖1的處理流程建立第一路由表50(圖中未顯示)、第二路由表60及第三路由表70,并維持一高速緩存路由表80。高速緩存路由表80儲存復(fù)數(shù)24比特的路由前綴及對應(yīng)的路由數(shù)據(jù)。高速緩存路由表80采用一路由高速緩存器,且該路由高速緩存器采用一更新算法(Algorithm)以更新高速緩存路由表80,而該更新算法可為最久不使用(Least-Recently-Used,LRU)、隨機(jī)(Random)或先入先出(First-In-First-Out,F(xiàn)IFO)等算法。第二路由表60和第三路由表70亦分別采用路由高速緩存器,但此二路由高速緩存器不采用更新算法,而分別僅能為前述圖1的擴(kuò)展模塊12a與12b所更新。
接著,當(dāng)路由系統(tǒng)接收一網(wǎng)絡(luò)數(shù)據(jù)包,而該網(wǎng)絡(luò)數(shù)據(jù)包的目的端地址20為32比特時(shí),分別將該目的端地址20的前24比特、前28比特及所有32比特,分別送至高速緩存路由表80、第二路由表60及第三路由表70以進(jìn)行搜尋。當(dāng)在高速緩存路由表80中找到與該目的端地址20的前24比特相同的路由前綴時(shí),輸出該路由前綴所對應(yīng)的路由數(shù)據(jù)R1;而當(dāng)在高速緩存路由表80中找不到與該目的端地址20的前24比特相同的路由前綴時(shí),不輸出搜尋結(jié)果。當(dāng)在第二路由表60中找到與該目的端地址20的前28比特相同的路由前綴時(shí),輸出該路由前綴所對應(yīng)的路由數(shù)據(jù)R2;而當(dāng)在第二路由表60中找不到與該目的端地址20的前28比特相同的路由前綴時(shí),不輸出搜尋結(jié)果。當(dāng)在第三路由表70中找到與該目的端地址20所有32比特相同的路由前綴時(shí),輸出該路由前綴所對應(yīng)的路由數(shù)據(jù)R3;而當(dāng)在第三路由表70中找不到與該目的端地址20所有32比特相同的路由前綴時(shí),不輸出搜尋結(jié)果。
接著,將高速緩存路由表80、第二路由表60以及第三路由表70的搜尋結(jié)果,由選擇傳送單元22依照第三路由表70優(yōu)先、第二路由表60其次、高速緩存路由表80最后的順序,選出該目的端地址的“最長符合的路由前綴”的路由數(shù)據(jù)Rcache,并依據(jù)該路由數(shù)據(jù)Rcache將該網(wǎng)絡(luò)數(shù)據(jù)包傳出。如果在高速緩存路由表80、第二路由表60及第三路由表70中,皆無法找到該目的端地址20所對應(yīng)的路由數(shù)據(jù)時(shí),亦即皆沒有輸出搜尋結(jié)果時(shí),那么在該路由系統(tǒng)的第一路由表50中,搜尋該目的端地址20所對應(yīng)的路由數(shù)據(jù)(參閱圖3的說明)。
圖3表示本發(fā)明實(shí)施例中,當(dāng)在高速緩存路由表80、第二路由表60及第三路由表70中,皆無法找到該目的端地址20所對應(yīng)的路由數(shù)據(jù)時(shí),其處理過程的示意圖。當(dāng)在圖2中的高速緩存路由表80、第二路由表60及第三路由表70皆沒有輸出搜尋結(jié)果時(shí),將該目的端地址20的前24比特送至該路由系統(tǒng)的第一路由表50。由于第一路由表50儲存了路由前綴長度為0~24比特間的復(fù)數(shù)路由前綴及其對應(yīng)的路由數(shù)據(jù),因此在第一路由表50中搜尋該目的端地址20的前24比特,一定可找到對應(yīng)于該目的端地址20的前24比特的“最長符合的路由前綴”,并輸出該路由前綴所對應(yīng)的路由數(shù)據(jù)R4。并依據(jù)該路由數(shù)據(jù)R4將該網(wǎng)絡(luò)數(shù)據(jù)包傳出(圖中未顯示)。并將該目的端地址20的前24比特與路由數(shù)據(jù)R4送至高速緩存路由表80,而由高速緩存路由表80所采用的路由高速緩存器的更新算法決定是否應(yīng)儲存此筆數(shù)據(jù),而該更新算法可為最久不使用、隨機(jī)或先入先出等算法。
若該路由系統(tǒng)有一全路由表(未顯示于圖1中),而該全路由表儲存了路由前綴長度為0~32比特間(亦即所有的路由前綴長度)所有路由前綴及其對應(yīng)的路由數(shù)據(jù),則在圖2中,當(dāng)在高速緩存路由表80、第二路由表60及第三路由表70中,皆無法找到該目的端地址20所對應(yīng)的路由數(shù)據(jù)時(shí),亦可將目的端地址20的所有32比特送至此全路由表(此部份并未在此實(shí)施例中以圖標(biāo)說明)。由于此全路由表儲存了路由前綴長度為0~32比特間的所有路由前綴及其對應(yīng)的路由數(shù)據(jù),因此在此全路由表中搜尋該目的端地址20的所有32比特,一定可找到對應(yīng)于該目的端地址20的所有32比特的“最長符合的路由前綴”,并輸出該路由前綴所對應(yīng)的路由數(shù)據(jù)。并依據(jù)該路由數(shù)據(jù)將該網(wǎng)絡(luò)數(shù)據(jù)包傳出。并將該目的端地址20的前24比特與該路由數(shù)據(jù)送至高速緩存路由表80,而由高速緩存路由表80所采用的路由高速緩存器的更新算法決定是否應(yīng)儲存此筆數(shù)據(jù)。
圖4表示本發(fā)明實(shí)施例的路由系統(tǒng)一范例的方框圖。如圖所示,路由系統(tǒng)在此實(shí)施例中包括第一路由器400a以及第二路由器400b;第一路由器400a包括接收單元402、選擇傳送單元404、路由高速緩存器406a~406c、路由前綴長度處理器408以及擴(kuò)展模塊410;第二路由器400b包括第一路由表450。
在此實(shí)施例中,路由高速緩存器406a~406c為二進(jìn)制內(nèi)容尋址儲存器(Binary Content Addressable Memory),且在二進(jìn)制內(nèi)容尋址儲存器406a中存有第二路由表460,在二進(jìn)制內(nèi)容尋址儲存器406b中存有第三路由表470,在二進(jìn)制內(nèi)容尋址儲存器406c中存有高速緩存路由表480。二進(jìn)制內(nèi)容尋址儲存器406c采用一更新算法以更新高速緩存路由表480中儲存的數(shù)據(jù),該更新算法可為最久不使用、隨機(jī)、先入先出等更新算法。但第二路由表460和第三路由表470僅由路由前綴長度處理器408與擴(kuò)展模塊410建立于二進(jìn)制內(nèi)容尋址儲存器406a和406b中,而二進(jìn)制內(nèi)容尋址儲存器406a和406b不決定是否更新第二路由表460和第三路由表470。
路由前綴長度處理器408則依照路由前綴{Ad}的比特長度進(jìn)行分組。當(dāng)路由前綴{Ad}的長度為0~24比特時(shí),將路由前綴{Ad}及其路由數(shù)據(jù)儲入該路由系統(tǒng)的第一路由表450。當(dāng)路由前綴{Ad}的長度為25~28比特時(shí),經(jīng)由擴(kuò)展模塊410將路由前綴{Ad}依下列規(guī)則擴(kuò)展為1至8個(gè)長度為28比特的路由前綴當(dāng)路由前綴{Ad}的長度為25比特時(shí),于路由前綴{Ad}尾端分別附加8個(gè)長度為3比特的樣式,分別為000、001、010、011、100、101、110及111,而成為8個(gè)長度為28比特的路由前綴;當(dāng)路由前綴{Ad}的長度為26比特時(shí),于路由前綴{Ad}尾端分別附加4個(gè)長度為2比特的樣式,分別為00、01、10及11,而成為4個(gè)長度為28比特的路由前綴;當(dāng)路由前綴{Ad}的長度為27比特時(shí),于路由前綴{Ad}尾端分別附加2個(gè)長度為1比特的樣式,分別為0及1,而成為2個(gè)長度為28比特的路由前綴;當(dāng)路由前綴{Ad}的長度為28比特時(shí),則無需進(jìn)行附加動(dòng)作,直接輸出該路由前綴{Ad}。并將擴(kuò)展模塊410輸出的長度皆為28比特的路由前綴及路由前綴{Ad}的路由數(shù)據(jù),儲入第二路由表460。
而當(dāng)路由前綴{Ad}的長度為29~32比特時(shí),經(jīng)由擴(kuò)展模塊410將路由前綴{Ad}依下列規(guī)則擴(kuò)展為1至8個(gè)長度為32比特的路由前綴當(dāng)路由前綴{Ad}的長度為29比特時(shí),于路由前綴{Ad}尾端分別附加8個(gè)長度為3比特的樣式,分別為000、001、010、011、100、101、110及111,而成為8個(gè)長度為32比特的路由前綴;當(dāng)路由前綴{Ad}的長度為30比特時(shí),于路由前綴{Ad}尾端分別附加4個(gè)長度為2比特的樣式,分別為00、01、10及11,而成為4個(gè)長度為32比特的路由前綴;當(dāng)路由前綴{Ad}的長度為31比特時(shí),于路由前綴{Ad}尾端分別附加2個(gè)長度為1比特的樣式,分別為0及1,而成為2個(gè)長度為32比特的路由前綴;當(dāng)路由前綴{Ad}的長度為32比特時(shí),無需進(jìn)行附加動(dòng)作,直接輸出該路由前綴{Ad}。并將擴(kuò)展模塊410輸出的長度皆為32比特的路由前綴及路由前綴{Ad}的路由數(shù)據(jù),儲入第三路由表470。
接收單元402接收具有32比特的目的端地址的IP數(shù)據(jù)包,并將IP數(shù)據(jù)包的目的端地址送入二進(jìn)制內(nèi)容尋址儲存器406a~406c中。而在二進(jìn)制內(nèi)容尋址儲存器406a~406c中,分別依據(jù)該目的端地址的前24比特、前28比特和所有32比特,分別在高速緩存路由表480、第二路由表460以及第三路由表470中查詢。
選擇傳送單元404耦接至二進(jìn)制內(nèi)容尋址儲存器406a~406c,依據(jù)在高速緩存路由表480、第二路由表460以及第三路由表470輸出的搜尋結(jié)果,由選擇傳送單元404依照第三路由表470優(yōu)先、第二路由表460其次、高速緩存路由表480最后的順序,選出對應(yīng)該目的端地址的“最長符合的路由前綴”的路由數(shù)據(jù),并依據(jù)該路由數(shù)據(jù)將該網(wǎng)絡(luò)數(shù)據(jù)包傳出。
當(dāng)在高速緩存路由表480、第二路由表460及第三路由表470皆無法找到對應(yīng)該目的端地址的“最長符合的路由前綴”的路由數(shù)據(jù)時(shí),亦即皆沒有輸出搜尋結(jié)果時(shí),在該路由系統(tǒng)的第一路由表450中,搜尋對應(yīng)該目的端地址的“最長符合的路由前綴”的路由數(shù)據(jù)。該路由系統(tǒng)將該目的端地址的前24比特送至第一路由表450,而在第一路由表450中搜尋該目的端地址的前24比特所對應(yīng)的路由數(shù)據(jù),并依據(jù)搜尋到的路由數(shù)據(jù)將該IP數(shù)據(jù)包傳出。并將該目的端地址的前24比特與該路由數(shù)據(jù),送至高速緩存路由表480,而由高速緩存路由表480所采用的路由高速緩存器的更新算法決定是否應(yīng)儲存此筆數(shù)據(jù),該更新算法可為最久不使用、隨機(jī)或先入先出等算法。
圖5表示本發(fā)明實(shí)施例的路由系統(tǒng)另一范例的方框圖。如圖所示,路由系統(tǒng)在此實(shí)施例中包括第一路由器500a以及第二路由器500b;第一路由器500a包括接收單元502、選擇傳送單元504、路由高速緩存器506a~506c、路由前綴長度處理器508以及擴(kuò)展模塊510;第二路由器500b包括全路由表550。
在此實(shí)施例中,路由高速緩存器506a~506c為二進(jìn)制內(nèi)容尋址儲存器,且在二進(jìn)制內(nèi)容尋址儲存器506a中存有第二路由表560,在二進(jìn)制內(nèi)容尋址儲存器506b中存有第三路由表570,在二進(jìn)制內(nèi)容尋址儲存器506c中存有高速緩存路由表580。
二進(jìn)制內(nèi)容尋址儲存器506c采用一更新算法以更新高速緩存路由表580中儲存的數(shù)據(jù),該更新算法可為最久不使用、隨機(jī)、先入先出等更新算法。但第二路由表560和第三路由表570僅由路由前綴長度處理器508與擴(kuò)展模塊510建立于二進(jìn)制內(nèi)容尋址儲存器506a和506b中,而二進(jìn)制內(nèi)容尋址儲存器506a和506b并不決定是否更新第二路由表560和第三路由表570。
全路由表550用以儲存路由前綴長度為0~32比特間(亦即所有路由前綴長度)的所有路由前綴及其對應(yīng)的路由數(shù)據(jù)。路由前綴長度處理器508則依照路由前綴{Ad}的比特長度進(jìn)行分組。當(dāng)路由前綴{Ad}的長度為0~32比特時(shí),將路由前綴{Ad}及其路由數(shù)據(jù)儲入該路由系統(tǒng)的全路由表550。當(dāng)路由前綴{Ad}的長度為25~28比特時(shí),經(jīng)由擴(kuò)展模塊510將路由前綴{Ad}依下列規(guī)則擴(kuò)展為1至8個(gè)長度為28比特的路由前綴當(dāng)路由前綴{Ad}的長度為25比特時(shí),于路由前綴{Ad}尾端分別附加8個(gè)長度為3比特的樣式,分別為000、001、010、011、100、101、110及111,而成為8個(gè)長度為28比特的路由前綴;當(dāng)路由前綴{Ad}的長度為26比特時(shí),于路由前綴{Ad}尾端分別附加4個(gè)長度為2比特的樣式,分別為00、01、10及11,而成為4個(gè)長度為28比特的路由前綴;當(dāng)路由前綴{Ad}的長度為27比特時(shí),于路由前綴{Ad}尾端分別附加2個(gè)長度為1比特的樣式,分別為0及1,而成為2個(gè)長度為28比特的路由前綴;當(dāng)路由前綴{Ad}的長度為28比特時(shí),則無需進(jìn)行附加動(dòng)作,直接輸出該路由前綴{Ad}。并將擴(kuò)展模塊510輸出的長度皆為28比特的路由前綴及路由前綴{Ad}的路由數(shù)據(jù),儲入第二路由表560。
而當(dāng)路由前綴{Ad}的長度為29~32比特時(shí),經(jīng)由擴(kuò)展模塊510將路由前綴{Ad}依下列規(guī)則擴(kuò)展為1至8個(gè)長度為32比特的路由前綴當(dāng)路由前綴{Ad}的長度為29比特時(shí),于路由前綴{Ad}尾端分別附加8個(gè)長度為3比特的樣式,分別為000、001、010、011、100、101、110及111,而成為8個(gè)長度為32比特的路由前綴;當(dāng)路由前綴{Ad}的長度為30比特時(shí),于路由前綴{Ad}尾端分別附加4個(gè)長度為2比特的樣式,分別為00、01、10及11,而成為4個(gè)長度為32比特的路由前綴;當(dāng)路由前綴{Ad}的長度為31比特時(shí),于路由前綴{Ad}尾端分別附加2個(gè)長度為1比特的樣式,分別為0及1,而成為2個(gè)長度為32比特的路由前綴;當(dāng)路由前綴{Ad}的長度為32比特時(shí),無需進(jìn)行附加動(dòng)作,直接輸出該路由前綴{Ad}。并將擴(kuò)展模塊510輸出的長度皆為32比特的路由前綴及路由前綴{Ad}的路由數(shù)據(jù),儲入第三路由表570。
接收單元502接收具有32比特的目的端地址的IP數(shù)據(jù)包,并將IP數(shù)據(jù)包的目的端地址送入二進(jìn)制內(nèi)容尋址儲存器506a~506c中。而在二進(jìn)制內(nèi)容尋址儲存器506a~506c中,分別依據(jù)該目的端地址的前24比特、前28比特和所有32比特,分別在高速緩存路由表580、第二路由表560以及第三路由表570中查詢。
選擇傳送單元504耦接至二進(jìn)制內(nèi)容尋址儲存器506a~506c,依據(jù)在高速緩存路由表580、第二路由表560以及第三路由表570輸出的搜尋結(jié)果,由選擇傳送單元504依照第三路由表570優(yōu)先、第二路由表560其次、高速緩存路由表580最后的順序,選出對應(yīng)該目的端地址的“最長符合的路由前綴”的路由數(shù)據(jù),并依據(jù)該路由數(shù)據(jù)將該IP數(shù)據(jù)包傳出。
當(dāng)在高速緩存路由表580、第二路由表560及第三路由表570皆無法找到對應(yīng)該目的端地址的“最長符合的路由前綴”的路由數(shù)據(jù)時(shí),亦即皆沒有輸出搜尋結(jié)果時(shí),在該路由系統(tǒng)的全路由表550中,搜尋對應(yīng)該目的端地址的“最長符合的路由前綴”的路由數(shù)據(jù)。該路由系統(tǒng)將該目的端地址的所有32比特送至全路由表550,而在全路由表550中搜尋該目的端地址的所有32比特所對應(yīng)的路由數(shù)據(jù),并依據(jù)搜尋到的路由數(shù)據(jù)將該IP數(shù)據(jù)包傳出。并將該目的端地址的前24比特與該路由數(shù)據(jù)送至高速緩存路由表580,而由高速緩存路由表580所采用的路由高速緩存器的更新算法決定是否應(yīng)儲存此筆數(shù)據(jù),該更新算法可為最久不使用、隨機(jī)或先入先出等算法。
權(quán)利要求
1.一種路由方法,用于一路由系統(tǒng)中,其特征是,包括下列步驟選擇m個(gè)路由前綴長度,分別為L1比特、L2比特、L3比特、…、Lm比特,其中m、L1、L2、L3、…、Lm為正整數(shù)且L1<L2<L3<…<Lm;將該路由系統(tǒng)所應(yīng)處理的復(fù)數(shù)路由前綴依其路由前綴長度分為m個(gè)群組,分別為0~L1比特、L1+1~L2比特、L2+1~L3比特、…、Lm-1+1~Lm比特,并分別建立對應(yīng)的第2~第m路由表,該路由系統(tǒng)同時(shí)維持一高速緩存路由表;其中當(dāng)所應(yīng)處理的一路由前綴的路由前綴長度為j比特,且介于(Li-1+1)~Li比特,而屬于第i群組時(shí),使用一擴(kuò)展模塊將該路由前綴擴(kuò)展為2Li-j個(gè)Li比特的路由前綴,并將此擴(kuò)展后的路由前綴與其對應(yīng)的路由數(shù)據(jù),儲入該第i路由表,其中i與j為正整數(shù),且2≤i≤m,L1+1≤j≤Lm;該高速緩存路由表儲存復(fù)數(shù)路由前綴長度為L1比特的路由前綴及其所對應(yīng)的復(fù)數(shù)路由數(shù)據(jù);接收一目的端地址為Lm比特的網(wǎng)絡(luò)數(shù)據(jù)包;依據(jù)該目的端地址的前L1比特在該高速緩存路由表中尋找和該目的端地址的前L1比特相同的路由前綴,同時(shí)依據(jù)該目的端地址的前L2比特在該第二路由表中尋找和該目的端地址的前L2比特相同的路由前綴,依此類推,同時(shí)依據(jù)該目的端地址的所有Lm比特在該第m路由表中尋找和該目的端地址的所有Lm比特相同的路由前綴;以及于上述搜尋比對中有一至多個(gè)相符合的路由前綴,則由該等相符合的路由前綴中選出具最大比特長度者,并取出其所對應(yīng)的路由數(shù)據(jù),以依據(jù)該路由數(shù)據(jù)傳送該IP數(shù)據(jù)包。
2.如權(quán)利要求1所述的路由方法,其特征是,更包括下列步驟將該路由系統(tǒng)所應(yīng)處理的復(fù)數(shù)路由前綴中,長度為0~L1比特者,建立一第一路由表;并于上述搜尋比對無任何一個(gè)相符合的路由前綴時(shí),在該第一路由表中搜尋并取出對應(yīng)該目的端地址的前L1比特的路由前綴中,路由前綴長度最長者所對應(yīng)的路由數(shù)據(jù);以及依據(jù)該路由數(shù)據(jù)傳送該IP數(shù)據(jù)包,并將該目的端地址的前L1比特以及該路由數(shù)據(jù),交由該高速緩存路由表儲存。
3.如權(quán)利要求1所述的路由方法,其特征是,更包括下列步驟將該路由系統(tǒng)所應(yīng)處理的復(fù)數(shù)路由前綴中,路由前綴長度為0~Lm比特者,建立一全路由表;并于上述搜尋比對無任何一個(gè)相符合的路由前綴時(shí),在該全路由表中搜尋并取出對應(yīng)該目的端地址的所有Lm比特的路由前綴中,路由前綴長度最長者所對應(yīng)的路由數(shù)據(jù);以及依據(jù)該路由數(shù)據(jù)傳送該IP數(shù)據(jù)包,并將該目的端地址的前L1比特以及該路由數(shù)據(jù),交由該高速緩存路由表儲存。
4.如權(quán)利要求1所述的路由方法,其特征是,其中m為3,而L1為24、L2為28且L3為32。
5.如權(quán)利要求1所述的路由方法,其特征是,其中m為4,而L1為24、L2為48、L3為64且L4為128。
6.一種路由系統(tǒng),其特征是,該系統(tǒng)包括一第一路由裝置,其包括一接收單元,其接收目的端地址為r比特的IP數(shù)據(jù)包;一路由前綴長度處理器,用以將所應(yīng)處理的復(fù)數(shù)路由前綴,依其路由前綴長度分為m個(gè)群組,分別為0~L1比特、L1+1~L2比特、L2+1~L3比特、…、Lm-1+1~Lm比特,其中m、L1、L2、L3、…、Lm為正整數(shù)且L1<L2<L3<…<Lm;復(fù)數(shù)路由高速緩存器,其耦接至該接收單元,接收該IP數(shù)據(jù)包的目的端地址,其包括復(fù)數(shù)路由表,分別為第2~第m路由表,依據(jù)該目的端地址的前L2比特在該第二路由表中尋找和該目的端地址的前L2比特相同的路由前綴,依此類推,同時(shí)依據(jù)該目的端地址的所有Lm比特在該第m路由表中尋找和該目的端地址的所有Lm比特相同的路由前綴;及一高速緩存路由表,用于儲存復(fù)數(shù)L1比特的路由前綴,及所對應(yīng)的復(fù)數(shù)路由數(shù)據(jù),同時(shí)依據(jù)該目的端地址的前L1比特在該高速緩存路由表中尋找和該目的端地址的前L1比特相同的路由前綴;一擴(kuò)展模塊,用以在路由前綴長度為j比特,且介于(Li-1+1)~Li比特時(shí),將該路由前綴擴(kuò)展為2Li-j個(gè)Li比特的路由前綴,并將此擴(kuò)展后的路由前綴與其對應(yīng)的路由數(shù)據(jù),儲入該第i路由表,其中i與j為正整數(shù)且2≤i≤m,L1+1≤j≤Lm;及一選擇傳送單元,其耦接至上述路由高速緩存器,于上述搜尋比對有一至多個(gè)相符合的路由前綴,由該等相符路由前綴中選出最大比特長度者及其對應(yīng)的路由數(shù)據(jù),并依據(jù)該路由數(shù)據(jù)將IP數(shù)據(jù)包傳出;以及一第二路由裝置,其包括一第一路由表,其耦接至該選擇傳送單元、該高速緩存路由表以及該前綴長度處理器,該第一路由表儲存該路由系統(tǒng)所應(yīng)處理的復(fù)數(shù)路由前綴,長度為0~L1比特,及所對應(yīng)的復(fù)數(shù)路由數(shù)據(jù);于上述搜尋比對無任何一個(gè)相符合的路由前綴時(shí),在該第一路由表中搜尋并取出對應(yīng)該目的端地址的前L1比特的路由前綴中,路由前綴長度最長者所對應(yīng)的路由數(shù)據(jù);并依據(jù)該路由數(shù)據(jù),將該IP數(shù)據(jù)包傳出;并將該目的端地址的前L1比特以及該路由數(shù)據(jù),交由該高速緩存路由表儲存。
7.如權(quán)利要求6所述的路由方法,其特征是,其中m為3,而L1為24、L2為28且L3為32。
8.如權(quán)利要求6所述的路由裝置,其特征是,其中上述路由高速緩存器采用二進(jìn)制內(nèi)容尋址儲存器。
9.一種路由系統(tǒng),其特征是,該系統(tǒng)包括一第一路由裝置,其包括一接收單元,其接收目的端地址為r比特的IP數(shù)據(jù)包;一路由前綴長度處理器,用以將所應(yīng)處理的復(fù)數(shù)路由前綴,依其路由前綴長度分為m個(gè)群組,分別為0~L1比特、L1+1~L2比特、L2+1~L3比特、…、Lm-1+1~Lm比特,其中m、L1、L2、L3、…、Lm為正整數(shù)且L1<L2<L3<…<Lm;復(fù)數(shù)路由高速緩存器,其耦接至該接收單元,接收該IP數(shù)據(jù)包的目的端地址,其包括復(fù)數(shù)路由表,分別為第2~第m路由表,依據(jù)該目的端地址的前L2比特在該第二路由表中尋找和該目的端地址的前L2比特相同的路由前綴,依此類推,同時(shí)依據(jù)該目的端地址的所有Lm比特在該第m路由表中尋找和該目的端地址的所有Lm比特相同的路由前綴;及一高速緩存路由表,用于儲存復(fù)數(shù)L1比特的路由前綴及上述路由前綴所對應(yīng)的復(fù)數(shù)路由數(shù)據(jù),同時(shí)依據(jù)該目的端地址的前L1比特在該高速緩存路由表中尋找和該目的端地址的前L1比特相同的路由前綴;一擴(kuò)展模塊,用以在路由前綴長度為j比特,且介于(Li-1+1)~Li比特時(shí),將該路由前綴擴(kuò)展為2Li-j個(gè)Li比特的路由前綴,并將此擴(kuò)展后的路由前綴與其對應(yīng)的路由數(shù)據(jù),儲入該第i路由表,其中i與j為正整數(shù)且2≤i≤m,L1+1≤j≤Lm;及一選擇傳送單元,其耦接至上述路由高速緩存器,于上述搜尋比對有一至多個(gè)相符合的路由前綴,由該等相符路由前綴中選出最大比特長度者及其對應(yīng)的路由數(shù)據(jù),并依據(jù)該路由數(shù)據(jù)將IP數(shù)據(jù)包傳出;以及一第二路由裝置,其包括一全路由表,其耦接至該選擇傳送單元、該高速緩存路由表以及該前綴長度處理器,該全路由表儲存該路由系統(tǒng)所應(yīng)處理的所有路由前綴,及所對應(yīng)的復(fù)數(shù)路由數(shù)據(jù);于上述搜尋比對無任何一個(gè)相符合的路由前綴時(shí),在該全路由表中搜尋并取出對應(yīng)該目的端地址的所有r比特的路由前綴中,路由前綴長度最長者所對應(yīng)的路由數(shù)據(jù);并依據(jù)該路由數(shù)據(jù),將該IP數(shù)據(jù)包傳出;并將該目的端地址的前L1比特以及該路由數(shù)據(jù),交由該高速緩存路由表儲存。
10.如權(quán)利要求9所述的路由方法,其特征是,其中m為3,而L1為24、L2為28且L3為32。
11.如權(quán)利要求9所述的路由裝置,其特征是,其中上述路由高速緩存器采用二進(jìn)制內(nèi)容尋址儲存器。
全文摘要
一種路由方法,其包括下列步驟。首先,選擇m個(gè)路由前綴長度,分別為L
文檔編號H04L12/56GK1494276SQ02146628
公開日2004年5月5日 申請日期2002年10月28日 優(yōu)先權(quán)日2002年10月28日
發(fā)明者吳承崧, 侯延昭, 徐偉倫 申請人:智邦科技股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
乌兰浩特市| 德江县| 高陵县| 永清县| 台东县| 长宁县| 巨野县| 阳高县| 镇平县| 兴宁市| 临夏市| 英山县| 舟山市| 唐河县| 桃源县| 中方县| 济阳县| 抚顺市| 达州市| 保亭| 宜丰县| 南木林县| 万盛区| 和林格尔县| 平果县| 罗江县| 长岛县| 南平市| 乐陵市| 牡丹江市| 常德市| 凤冈县| 双江| 江津市| 海原县| 缙云县| 泰安市| 江门市| 武冈市| 金塔县| 山东|