專利名稱:在路由設備中為分組選擇路由的方法
本申請要求2001年12月28日提交的韓國申請P2000-84709的優先權,在本文中結合作為參考。
圖1說明包含典型路由設備10的網絡系統。主處理器1檢查是否通過端口6接收到了分組。當路由設備10收到分組時(該分組的目標地址設置為另一個節點或另一個路由設備(例如,R2)),主處理器1將該分組發送到包含在路由設備10中的協議層2。協議層2可以是IP(互聯網協議)層2A、IPX(內聯網分組交換)層2B、橋接器層2C等等的任何一個。
例如,當IP層2A收到來自主處理器1的分組時,它開始確定是否處理該分組。一旦它決定處理該分組,則IP層2A將這些分組發送到頂層應用模塊3。
另一方面,如果它決定不處理該分組,則檢驗該分組的目標地址。例如,IP層2A通過搜索路由表4的IP路由表4A獲得對應于該分組目標地址的接口號。而且它將該分組發送到所找到的接口。然后該分組被傳送到相應于該分組目標地址的節點或路由設備。
如上所述,分組經過包含主處理器1和IP層2A的路由選擇路徑,如圖2所示。因為這種路由選擇路徑的形成與分組各自的特性無關,所以路由設備10的分組處理速度低。因此,路由設備的性能降低。
雖然非常希望提供一種根據每個分組的特性設置路由選擇路徑的方法,但現在還沒有這樣的方法可以用于現有的路由設備。
本發明的一個目的是提供一種在路由設備中為分組選擇路由的方法,其中路由選擇路徑與每個數據分組的特性相關。
本發明的另一個目的是提供一種為分組選擇路由的方法,它通過最小化每個分組的數據處理時間而優化路由設備的路由選擇性能。
本發明的其它優點、目的和特征部分將在以下的說明書中進行闡述,部分則對于本領域的技術人員經過對以下內容的檢驗后會變得明了,或者通過本發明的實踐而體會到。本發明的目的和其它優點可以通過說明書和權利要求書以及附圖所具體指出的結構來實現和獲得。
為了實現這些目的和其他優點,根據本發明的目的,正如這里所體現并詳細描述的,一種在路由設備中為分組選擇路由的方法包括(a)接收包含目標地址的分組,(b)檢驗目標地址是否屬于該路由設備,(c)如果目標地址不屬于該路由設備,則檢驗目標地址是否與新近地址相同,和(d)如果目標地址與新近地址相同則將分組傳送到新近接口。其中的路由設備具有主處理器,主處理器包含主緩存表和瞬時緩存表。
本方法還包括如下步驟(e)如果在步驟(c)確定目標地址與新近地址不同,則計算目標地址的散列密鑰值(N),(f)檢驗目標地址是否與存儲在主緩存表的第N個緩存地址相同,和(g)如果目標地址與第N個緩存地址相同則將分組傳送到對應于第N個緩存地址的第一接口。
最后,該方法包括步驟(h)將存儲在瞬時緩存表中的新近地址和新近接口分別重新設置成第N個緩存地址和第一接口。
在本發明的另一個方面,一種在路由設備中為分組選擇路由的方法包括(a)接收包含目標IP地址的分組,(b)檢驗目標IP地址是否屬于該路由設備,(c)如果目標IP地址不屬于該路由設備,則檢驗目標IP地址是否與當前IP地址相同,和(d)如果目標IP地址與當前IP地址相同則將分組傳送到當前IP接口。其中的路由設備具有主處理器,主處理器包含主緩存表和瞬時緩存表。
該方法還包括步驟(e)如果在步驟(c)確定目標IP地址與當前IP地址不同,則計算目標IP地址的散列密鑰值(N),(f)檢驗目標IP地址是否與存儲在主緩存表的第N個緩存IP地址相同,和(g)如果目標IP地址與第N個緩存IP地址相同則將分組傳送到對應于第N個緩存IP地址的第一IP接口。
最后,該方法包括步驟(h)將存儲在瞬時緩存表的當前IP地址和當前IP接口分別重新設置成第N個緩存IP地址和第一IP接口。
可以理解本發明的上面的概述和下面的詳細說明是示例性的和說明性的,旨在對權利要求所限定的本發明作進一步解釋。
優選實施例詳述以下詳細說明本發明的優選實施例,在附圖中說明了這些實施例。相同的標號在所有的附圖中用于表示相同或類似的部件。
圖3說明了包含根據本發明的路由設備20的網絡系統。由圖可見,該裝置包括主處理器11、協議層12、頂層應用模塊13和路由表14。
協議層12可以包括IP(互聯網協議)層12A、IPX(內聯網分組交換)層12B、橋接器層12C等等的任何一個。
包含在本發明路由設備20中的主處理器11包括主緩存表11A和瞬時緩存表11B。主緩存表11A另外存儲一些存在路由表14中的核心信息。
例如,在路由表14存儲各種信息的情況下,例如目標互聯網協議(IP)地址、子集掩碼、網關、量度、協議和接口,主緩存表11A另外存儲包含緩存IP地址和接口的核心信息。當然,存儲在主緩存表11A的緩存IP地址等同于存在路由表14(例如IP路由表14A)中的目標地址。
另外,瞬時緩存表11B存儲新近地址和與路由設備20進行的最近的分組傳輸相關的相應接口。
當路由設備20收到來自另一個節點或路由設備的分組時,主處理器11能夠在不需要傳送分組到協議層12的情況下,利用兩個表(11A和11B)完成分組傳輸處理。
在圖1所示的現有路由設備中,所有的核心信息存儲在路由表4中,因此,每個分組必須通過包含主處理器1和IP層2A的路由選擇路徑而傳輸。
另一方面,在本發明的路由設備中,與確定分組選擇路由有關的核心信息不僅存儲在與協議層12相連的路由表14中,而且存儲在主處理器11所包含的主緩存表11A和瞬時緩存表11B中。
因此,可以選擇只包括主處理器11的路由選擇路徑或包括主處理器11和協議層12的另一條路由選擇路徑來傳輸分組。該選擇取決于分組的特性。
例如,如圖4所示,只包括主處理器11的路由選擇路徑可用于傳送分組。結果可以減少處理分組所需的時間。
現在將詳細說明根據本發明的在路由設備中為分組選擇路由的方法,該方法的例子在圖5中示出。
首先,路由設備20的主處理器11周期地檢驗每個端口6是否收到分組(S1)。如果沒有收到分組,則等待直到預定的時間過去(S2),并在每個端口再次重復步驟S1。
如果在步驟S1確定通過端口收到分組,則主處理器11檢驗分組的目標地址(例如,目標IP地址)是否屬于該路由設備(S3)。也就是說,主處理器11檢驗該分組是否應當傳送到另一個節點或路由設備。例如,主處理器11通過搜索14個字節的IP報頭之后得到分組的目標地址(例如,IP地址)。
如果收到的分組目標地址(例如,IP地址)屬于包含主處理器11的路由設備20,則主處理器11確定該分組應當在協議層12(例如,IP層12A)處理。因此,它把分組發送到協議層12(例如,IP層)(S20)。
當協議層12收到來自主處理器11的分組時,IP層12開始確定分組是否在協議層(例如,IP層)12處理(選擇路由)(S21)。
如果否,則協議層12將分組發送到頂層應用模塊(TAM)13(S22)。否則,協議層12通過搜索路由表14(例如,IP路由表14A)而找到對應于分組目標地址的接口(S23),并將該分組發送到所找到的接口(S24)。
再回到步驟S3,如果分組的目標地址對應于另一個路由設備,則主處理器11檢驗分組的目標地址是否是單點傳送(S4)。
如果否(例如,多點傳送、廣播等等),則主處理器11向協議層12發送分組(S20)。然后協議層12重復步驟S21到S24。
否則,主處理器11搜索存儲在瞬時緩存表11B中的核心信息(S5),檢驗分組的目標地址是否與瞬時緩存表11B中的新近地址相同(S6)。如前所述,新近地址表示與路由設備最近進行的分組傳輸相關的地址。
如果分組的目標地址與瞬時緩存表11B中存儲的新近地址相同,則主處理器11找到對應于新近地址的接口并將分組發送到所找到的接口(S7)。
另一方面,如果分組的目標地址不同于瞬時緩存表11B中存儲的新近地址,則主處理器11利用散列函數得到對應于目標地址的散列密鑰(S8)。
例如,可以由下面的等式1得到散列密鑰K=(N1+N2+N3+N4)/T其中,K和T表示散列密鑰和主緩存表11A的大小,N1、N2、N3和N4表示分組目標地址的第1、第2、第3和第4字節。
此后,主處理器11通過搜索主緩存表11A找到對應于計算出的散列密鑰的緩存地址(S9)。例如,如果散列密鑰是4,則在主緩存表11A的第4入口找到緩存地址。如果散列密鑰15,則在主緩存表11A的第15入口找到緩存地址。
接下來,主處理器11檢驗分組的目標地址是否與在步驟S9找到的緩存地址相同(S10)。
例如,如果散列密鑰是4,則主處理器11檢驗屬于主緩存表11A第4入口的緩存地址是否與分組的目標地址相同。
如果分組的目標地址不同于在步驟S9找到的緩存IP地址,則主處理器11判斷主緩存表11A中沒有目標地址。因此,它將分組發送到協議層12(S30)。
當協議層12收到分組時,協議層12開始確定分組是否應該在協議層12中處理(S31)。
如果否,則協議層12將分組發送到頂層應用模塊(TAM)12(S32)。否則,協議層12通過搜索路由表14(例如,IP路由表14A)找到對應于分組目標地址的接口(S33),并將分組發送到所找到的接口(S34)。
接下來,主處理器11將與步驟S34中進行的分組傳送處理相關的地址和接口存儲在主緩存表11A中(S55)。還將同樣的信息存儲在瞬時緩存表11B中(S36)。相應地,瞬時緩存表11B包含與最新的分組傳送信息相關的新近地址和接口。
回到步驟S10,如果在步驟S10中確定分組的目標地址與步驟S9找到的緩存地址相同,則主處理器11將分組發送到對應于緩存地址的接口(S11)。
同樣,主處理器11將與步驟S11中進行的分組傳送處理相關的接口和緩存地址存儲到瞬時緩存表11B中(S12)。
總而言之,與確定路由選擇路徑相關的核心信息不僅存儲在協議層12的路由表14中,而且存儲在包含在主處理器11中的瞬時緩存表(11A和11B)之中。因為給定分組的路由路徑的選擇取決于分組的特性,所以減少了分組的數據處理時間。結果,增強了路由設備的路由選擇性能。
對于本領域技術人員來說,很顯然可以對本發明進行各種修改和變化。因此,在所附權利要求及其等同物的范圍內,本發明包括對本發明的各種改進和變化。
權利要求
1.一種在路由設備中為分組選擇路由的方法,所述路由設備具有包含主緩存表和瞬時緩存表的主處理器,所述瞬時緩存表存儲與所述路由設備進行的最新分組傳輸處理相關的新近地址和新近接口,該方法包括步驟(a)接收分組,該分組包含其目標地址;(b)檢驗所述目標地址是否屬于所述路由設備;(c)如果所述目標地址不屬于所述路由設備,則檢驗所述目標地址是否與所述新近地址相同;和(d)如果所述目標地址與所述新近地址相同則將所述分組傳送到所述新近接口。
2.根據權利要求1所述的方法,還包括步驟(e)如果在步驟(c)確定所述目標地址與所述新近地址不同,則計算所述目標地址的散列密鑰值(N);(f)檢驗所述目標地址是否與存儲在所述主緩存表中的第N個緩存地址相同;和(g)如果所述目標地址與所述第N個緩存地址相同,則將所述分組傳送到對應于所述第N個緩存地址的第一接口。
3.根據權利要求2所述的方法,還包括步驟(h)將存儲在所述瞬時緩存表中的所述新近地址和新近接口分別重新設置成所述第N個緩存地址和所述第一接口。
4.根據權利要求1所述的方法,還包括步驟如果在步驟(b)確定所述目標地址屬于所述路由設備,則將所述分組發送到包含在所述路由設備中的協議層,所述協議層與路由表連接。
5.根據權利要求4所述的方法,還包括將所述分組發送到包含在所述路由設備中的頂層應用模塊的步驟。
6.根據權利要求4所述的方法,還包括將所述分組傳送到對應于所述目標地址的第一接口的步驟。
7.根據權利要求6所述的方法,其中,通過搜索所述路由表而找到對應于所述目標地址的所述第一接口。
8.根據權利要求2所述的方法,還包括步驟如果在步驟(f)確定所述目標地址不同于所述第N個緩存地址,則將所述分組發送到包含在所述路由設備中的協議層,所述協議層與路由表連接。
9.根據權利要求8所述的方法,還包括將所述分組發送到包含在所述路由設備中的頂層應用模塊的步驟。
10.根據權利要求8所述的方法,還包括將所述分組傳送到對應于所述目標地址的第二接口的步驟。
11.根據權利要求10所述的方法,其中,通過搜索所述路由表而找到對應于所述目標地址的所述第二接口。
12.根據權利要求10所述的方法,還包括步驟將所述目標地址和所述第二接口存儲到所述主緩存表中;和將所述瞬時緩存表存儲的所述新近地址和新近接口重新設置成所述目標地址和所述第二接口。
13.根據權利要求2所述的方法,其中所述散列密鑰是這樣確定的K=(N1+N2+N3+N4)/T其中K表示所述散列密鑰值,T表示所述主緩存表的大小,和N1到N4分別表示所述目標地址的第一、第二、第三和第四字節數據。
14.一種在路由設備中為分組選擇路由的方法,所述路由設備具有包含主緩存表和瞬時緩存表的主處理器,所述瞬時緩存表存儲與所述路由設備進行的最新分組傳輸處理相關的新近地址和新近接口,該方法包括步驟(a)接收分組,該分組包含它自己的目標IP地址;(b)檢驗所述目標IP地址是否屬于所述路由設備;(c)如果所述目標IP地址不屬于所述路由設備,則檢驗所述目標IP地址是否與所述當前IP地址相同,和(d)如果所述目標IP地址與所述當前IP地址相同,則將所述分組傳送到所述當前IP接口。
15.根據權利要求14所述的方法,還包括步驟(e)如果在步驟(c)確定所述目標IP地址與所述當前IP地址不同,則計算所述目標IP地址的散列密鑰值(N);(f)檢驗所述目標IP地址是否與存儲在所述主緩存表中的第N個緩存IP地址相同;和(g)如果所述目標IP地址與所述第N個緩存IP地址相同,則將所述分組傳送到對應于所述第N個緩存IP地址的第一IP接口。
16.根據權利要求15所述的方法,還包括步驟(h)將存儲在所述瞬時緩存表中的所述當前IP地址和當前IP接口分別重新設置成所述第N個緩存IP地址和所述第一IP接口。
17.根據權利要求14所述的方法,還包括如下步驟如果在步驟(b)確定所述目標IP地址屬于所述路由設備,則將所述分組發送到包含在所述路由設備中的IP層,所述IP層與IP路由表連接。
18.根據權利要求17所述的方法,還包括如下步驟將所述分組傳送到對應于所述目標IP地址的第一IP接口,通過搜索所述IP路由表而找到對應于所述目標IP地址的所述第一IP接口。
19.根據權利要求15所述的方法,還包括如下步驟如果在步驟(f)確定所述目標IP地址不同于所述第N個緩存IP地址,則將所述分組發送到在所述路由設備中所包含的協議層,所述IP層與IP路由表相連接。
20.根據權利要求19所述的方法,還包括如下步驟將所述分組傳送到對應于所述目標IP地址的第二IP接口,其中通過搜索所述路由表找到對應于所述目標IP地址的所述第二IP接口。
21.根據權利要求20所述的方法,還包括步驟將所述目標IP地址和所述第二IP接口存儲到所述主緩存表;和將所述瞬時緩存表存儲的所述當前IP地址和當前IP接口重新設置成所述目標IP地址和所述第二IP接口。
全文摘要
一種在路由設備中為分組選擇路由的方法,其中的路由設備具有包含主緩存表和瞬時緩存表的主處理器,瞬時緩存表存儲與路由設備進行的最新分組傳輸處理相關的新近地址和新近接口,該方法包括:接收包含目標地址的分組,檢驗目標地址是否屬于該路由設備,如果目標地址不屬于該路由設備,則檢驗目標地址是否與新近地址相同,如果目標地址與新近地址相同則將分組傳送到新近接口。結果,與確定路由選擇路徑相關的核心信息不僅存入協議層的路由表,而且存入包含在主處理器中的瞬時緩存表。因為根據分組的特性為給定分組選擇路由路徑,所以減少了分組的數據處理時間。結果,增強了路由設備的路由選擇性能。
文檔編號H04L12/56GK1362820SQ0114483
公開日2002年8月7日 申請日期2001年12月27日 優先權日2000年12月28日
發明者樸成旭 申請人:Lg電子株式會社