TWI232049B - Technique to improve network routing using best-match and exact-match techniques - Google Patents

Technique to improve network routing using best-match and exact-match techniques Download PDF

Info

Publication number
TWI232049B
TWI232049B TW092119544A TW92119544A TWI232049B TW I232049 B TWI232049 B TW I232049B TW 092119544 A TW092119544 A TW 092119544A TW 92119544 A TW92119544 A TW 92119544A TW I232049 B TWI232049 B TW I232049B
Authority
TW
Taiwan
Prior art keywords
address
routing information
section
packet
technology
Prior art date
Application number
TW092119544A
Other languages
English (en)
Other versions
TW200412765A (en
Inventor
Ranjeeta Singh
Larry B Huston
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of TW200412765A publication Critical patent/TW200412765A/zh
Application granted granted Critical
Publication of TWI232049B publication Critical patent/TWI232049B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/7453Address table lookup; Address filtering using hashing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/74591Address table lookup; Address filtering using content-addressable memories [CAM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

1232049 玫、發明說明: 【發明所屬之技術領域】 本發明係關於網路路由領域,具體而言,本發明係關於 使用最佳匹配及正確匹配技術以改良網路路由之技術。 【先前技術】 資訊可利用網路位址透過網路來進行傳送。舉例來說, 2由器可接收到欲被路由至另一網路裝置的資訊。該路由 器可利用一網路位址(例如目的地位址)來搜尋適合的路由資 訊。當位址大小增加且網路大小增加時,教路由器便需要 額外的時間來存取記憶體中的路由表以及搜尋路由資訊。 所以’必須縮短路由資訊的搜尋時間,從而改良封包傳遞 速度。 【發明内容】 本發明的具體實施例可包括—種用以改良網路上之資訊 路由效果的方法與設備。當資訊透過網路從_資訊源移^ -特殊目的地時’數個網路裝置便可能需要搜尋路由資 訊。搜尋時可能會使用到網路位址。與搜尋相關的等待時 間可能直接與該網路位址的大小有關。一般來說,用以表 示網路位址的位元越多,用以搜尋路由資訊所需的記憶體 絲《便越多。有許多的路由器會對整個位址實施最長 岫置符號匹配(LPM)運算朿拮慕敗丄次^ , 、… 异木技寸路由貝訊。但是,此項技術 通常需要大量的記憶體存取作業, F果兀具疋位址較大時。該 些記憶體存取可能备_ #藍壬^ ^ 』此曰匕成嚴重的封包延遲。所以吾人可能 需要一種搜尋路由資訊的技術,Α ]卉IJ時可鈿減i己憶體存取 86826.doc 1232049 的次數且縮短封包延遲。 ^須 >王意的係,說明中所提及的「其中一具體實施例」 或一具體實施例」表示的係配合本發明至少一具體實施 例中所内含的具體實施例來說明的特點、結構或特徵。因 此,本說明中各處出現的「於其中一具體實施例中」一詞 並非完全代表同一具體實施例。 本文會提出數項特定的細節,以便更完整地瞭解本發明 的具體實施例。不過,熟習本技術的人士將會瞭解,沒有 這些特定細節亦可實現本發明的具體實施釗。在其它情況 下’為了避免混淆本發明的具體實施例,已熟知的方法、 程序、組件及電路將不作詳細說明。可以瞭解的係,本文 所揭示的特定結構與功能細節都僅係代表範例,並非為限 制本發明的範w壽。 本發明所述的係一種搜尋路由資訊的方法與設備。根據 一具體實施例,會接收到一包括位址的封包。該位址包括 第一區段與第二區段。根據一具體實施例,所敘述的技術 係利用下面的方式來搜尋路由資訊:對一位址的第一區段 的至少一部份使用第一技術,以及對該位址的第二區段的 至少一部份使用第二技術。於其中一具體實施例中,係對 該位址的第一區段的至少一部份使用最佳匹配技術,以及 對該位址的第二區段的一部份使用正確匹配技術。舉例來 說,該最佳匹配技術可能包括LPM技術。舉例來說,該正 確匹配技術可能包括雜湊演算法或是使用内容可定址記憶 體(CAM)或類似技術。 86826 1232049 於其中一具體實施例中,可能會接收到一封包。該封包 可&包括一目的地位址。該目的地位址可能包括數個區 段’其包括一拓樸或網路區段(用以描述網路或網路拓樸)以 及一介面1D或主區段(用以描述主機或主介面)。本文所使 用的介面ID —詞係用以描述對應到或描述一主機或節點介 面/王介面的部份位址。因此,主區段或介面m等詞可交換 使用。 於其中一具體實施例中,介面山可能具有一通用的唯一 數值,並且可能與通用的唯一鏈路層位址柙同或是以其為 基礎。路由系統可對該位址的拓樸區段的至少一部份使用 LPM技術,並且對該位址的介面m或主區段使用雜湊技 術,用以搜尋該封包的路由資訊。於部份具體實施例中, 只2當利用介面ID可發現到額外的路由資訊或是LpM的結 果苻口特疋知件時,孩路由系統才會對該介面ι〇實施雜湊 a查找。^ 一,址的第一區段中實施LPM,然後於該位址的 第一區4又中只知正確匹配技術(例如雜湊法),那麼僅需要較 少的記憶體存取作業便可找到路由資訊。 【實施方式】 現在將詳細地參考該等圖式,其中所有圖式中相同的元 二符號表示相同的部件。圖1為適合實現本發明其中一具體 實施例的系統。圖i為系統100的方塊圖,其包括被一個以 上通信介質連接的數個網路節點。本文中的網路節點(節點) 包括任何能夠叉換資却的姑罢 .t 貝Λ的取置,例如電腦、伺服器、開 關、路由器、橋接器、閘道、個人數位助理、行動裝置 等。通訊介質可能包括能夠攜載資訊信號的任何介質,例 86826.doc 1232049 光纖、射頻、電子信號、聲音 如絞線對電線、同軸電系覽 信號或光學信號等。 更明確地說,系統1 〇 〇可銥勹 匕包括一來源節點102、中間節 點106與107、以及目的地節毁〗1Λ 1 。如圖所示,可以利用通 信介質104、108與109來連接决、、店# /原即點1〇2、中間節點1〇6與 107、以及目的地節點11〇。錐 雖然圖1中僅顯示出一個來源節 點、兩個中間節點、以及—個 固目的地郎點,不過應該瞭解 的係’系統100中可使用任何數量的網路節點,而且皆涵蓋 於本發明具體實施例的範嘴中。再者,;本文中的「連 接」1相連接」及其變化詞語可能表示的係實體連接 及/或邏辑連接。 於其中-示範具體實施例中,中間節點1〇6可能係一核心 路=器或主幹線路由器,而中間節‘_7則可能係—邊緣路 由益舉例來說’邊緣路由器位於網路的邊緣,並且可將 ^路^如網際網路你合至另一網路(例如區域網路)。核 心路由器或主幹線路由器則可能係一高速路由$,其為主 網路(例如網際網路)的一部份。 於其中一具體實施例巾,系、统1〇〇可能包括—封包交換網 其中網路105包括數個節點,例如中間節點1 〇6與 107本文中的封包交換所指的係依照一種以上的通信協 疋,利用較短的封包形式,於一網路上交換資訊。本文中 的封包係指一組有限長度的資訊,其長度一般都係以位元 或位元組來表示。封包長度的範例為1000個位元組。一協 &可能包括一組指令’藉由該組指令便可於該通信介質上 86826 1232049 來交換資訊信號。舉例來說,該協定可能係一封包交換協 定,例如由 Internet Engineering Task Force (IETF) standard 7,Request For Comment (RFC) 793 於 1981 年 9月所定義的傳 送控制協定(TCP) (「TCP規格」);以及由IETF standard 5, RFC 791於1981年9月所定義的網際網路協定(IP)(「IP規 格」),兩者皆可參闊「www.ietf.org丨(兩者合稱為 「TCP/IP規格」)。 於其中一具體實施例中,來源節點102可能包括一可發出 一組貝訊以傳送給目的地郎點1 1 〇的節點。丨目的地節點1 1 〇 可能包括一希望接收該資訊的節點。中間節點1 〇 6與1 〇 7可 能包括一用以於兩個以上的節點之間來交換資訊的節點。 於邵份情況中,可能會有一個以上的來源節點、目的地節 點及/或中間節點。舉例來說,於多重播送的連接中便可能 會有多個目的地節點。於另一範例中,於一來源節點及一 目的地節點之間通常會有多個中間節點。資訊可能包括能 夠被表示成一信號的任何資料,如電訊號、光學訊號、聲 音訊號等。本文中的資㈣例可能包括源自下面方式的資 料:語音交談、視訊會議、動態影片、電子郵件信 息、聲音郵件信息、字母數字符號、圖像、影像、視訊、 文字等。 於奴的作業中’來源節點102可依照Tcp/ip規格透過中 間節㈣6與1G7傳送資訊給目的地節點w。來源節點可將 '組貝訊分解成為一連串的封包。每個封包 — 邵份資訊加上部份的㈣資訊。控制資訊可協助網料的 86826 1232049 中間節點將每個封包路由至目的地節點。來源節點1〇2可傳 送该等封包給中間節點106。中間節點106會接收到該等封 包’短暫地儲存該等封包,並且將其傳送給下一個中間節 點107。中間節點1〇7同樣會接收到該等封包,短暫地儲存 該等封包’然後將其傳送給另一個節點,例如目的地節點 110。最後,目的地節點丨10可接收到整個封包序列,並且 利用孩等封包序列來再生來源節點1〇2所傳送的原始資訊。 圖2為根據其中一具體實施例之路由系統的方塊圖。如圖 2所示’舉例來說,中間節點1〇6與1〇7可能包括一路由系統 200。路由系統2〇〇的内含功能可實現為能夠以處理器來執 行的軟體、硬體電路或結構、或是兩者的組合。該處理器 可能為一個以上的通用或專用處理器或是網路處理器,例 如由下面公司所製造的處理器家族:Intel Corporation、
Motorola Incorporated、Sun Microsystems Incorporated及其 它公司。該軟體可能包括程式化邏輯、指令、或資料,其 可實現本發明具體實施例的特定功能。該軟體可被儲存於 能夠被機器存取之介質或電腦可讀取之介質中,例如唯讀 ?己憶體(ROM)、隨機存取記憶體(RAm)、磁性碟片(例如磁 碟片與硬碟機)、光碟(例如CD-ROM)、或是任何其它資料 儲存介質。於其中一具體實施例中,該介質可以壓縮及/或 編碼格式來儲存程式化指令,以及儲存於被該處理器執行 之前必須經過一安裝器編譯或安裝的指令。或者,可將本 發明的一具體實施例實現成含有可用以實施前述功能之硬 體繞線邏輯的特定硬體組件,或是實現成可程式化之通用 86826 • 11 - 1232049 電腦組件與客戶化硬體組件的任意組合。 =示的具體實施例中,路由系統2。。可能包括一路 引擎L 及—透過線路211㈣合在—起的封包傳遞 擎。路由引擎210可實施與路由相關的工作,並包括 於孩網路中的其它節點進行通信,以收集與該網路拓樸有 關的貝訊’並且產生—可被封包傳遞料存取的傳遞表或 路由表。當網路拓樸改變時,路由引擎21〇便可定期地更新 孩路由表。封包傳遞引擎212可實施數項工作,立包括接收 封包、於該(等)—路由表中搜尋或查找該封包的路由資訊、以 =利用該路由資訊來傳遞該封包。路由資訊可能包括任何 標準的路由資訊,例如埠編號、鏈路編號、通道識別項、 裝置識別項、佇列資訊等。路由表可能係平面式的路由器 表’亦可能包括一連串的階層式路由表。 路由器用於搜尋路由資訊的常用技術係最佳匹配技術, 其中該路由器可搜尋其路由表,用以於其路由表中找出與 該封包之目的地位址產生最佳匹配的數值。常用的其中一 種取佳匹配技術係LPM技術。路由表可能包括數個位址前 置符號。舉例來說,於路由表中,位址前置符號可能係一 匹配該位址中一位以上位元的特定位元圖案。舉例來說, 該位址前置符號可能係一匹配該位址中之最大意義(「向左 對齊」)位元的特定位元圖案。該位址中的其它位元則可能 為通配位元或不理會位元。前置符號長度係被定義成非通 配位元的數量。當透過線路209接收到一封包時,封包傳遞 引擎212便會計算出與該封包中的目的地位址比較之後在其 86826 -12- 1232049 路由表中的該等位址前置符號中何者具有最長的匹配。與 該最長匹配相關的路由資訊可視為最佳或最精確路由資 訊。而後便可以該路由資訊為基礎來傳遞該封包,例如可 透過該路由資訊所找出的輸出鏈路或埠來傳遞該封包。依 此方式’便可將該封包傳遞給下個節點(可能為中間節點或 是目的地節點)。 搜尋路由資訊(例如利用LPM技術)可能會產生嚴重的封包 等待時間。舉例來說,路由表可能包括數千個位址前置符 號。再者,大部份的纪憶體存取作業通常鄭必須實施LpM 技術。其中一種方式便係透過線索式演算法來實施採用 LPM技術的路由查找。所謂的線索可能係一可用於實施快 速資料搜尋的資料結構。可將一位以上的位址位元與該線 索作比較來決定路由路徑,以便移動該線索並且找出最長 的前置符號匹配(該線索中的最長匹配)。在Kehh Skl〇wer所 著的「A Tree-Based Packet R0uting Table f〇r Berkeley
Unix」中便敘述一種使用線索來進行路由表查找的範例。 舉例來說,對64位元位址實施LPM技術時可能需要進行 八次以上的記憶體存取。於1998年7月的RFC 2373中的「ιρ
Version 6 Addressing Architecture」提及,IP版本 6會針對 位址使用128位位元。舉例來說,假設使用8位元線索的 居,那麼對128位元位址實施LPM技術時便可能需要進行16 次的圮憶體存取,其會對封包傳遞過程產生嚴重的延遲。 本文所述的本發明各項具體實施例與特點可適用於具有 各種格式與大小的位址。其中一具體實施例可能使用的係 86826.doc -13 - 1232049 根據RFC 2374於1998年7月所提出的IETF建議標準的位址, 該標準的名稱為「An Internet Protocol Version Six (IPv6) Aggregatable Global Unicast Address Format」(RFC 2374), 皆可參閱「www.ietf.orgj 。RFC 2374會利用一組識別項來 集合且保留初始IPv6的位址空間,用以限定路由階層中的 層數。RFC 2374規定以三個識別項來分割位址的位元邊 界。該等三個識別項包括頂層集合識別項(TLA)、次層集合 識別項(NLA)、以及基層集合識別項(SLA)。剛開始可分配 TLA或子TLA給、一網際網路服務供應商(is#)。而後,該等 組織便可分配NLA給其客戶ISP ;接著,該等客戶ISP便可 分配SLA給末端使用者,用以產生其自有的區域拓樸。介 面識別項可能代表的係IPv6位址的主部,其係由該位址的 最右方64位位元來表示。 圖3為適用於本發明其中一具體實施例的示範位址格式。 圖3為根據RFC 2374的位址格式3〇〇。位址格式300的總長度 可能為128位位元。於本發明的其中一具體實施例中,位址 格式300可能包括一格式前置符號(fp)302、一 TLA 304、一 保留攔位(RES)306、一 NLA 308、一 SLA 310、以及一介面 識別項(介面1〇)312。1^八1〇 304、:^1^1〇 308以及81^1〇 3 10可能包括位址格式300的拓樸區段,因為該些欄位都係 與網路拓樸有關。如前面所述,TLA 3 04可能代表的係路由 階層中的頂層。根據一具體實施例,内定的自由路由器皆 針對每個主動的TL A具有一路由表項目,而且通常具有額 外的項目,用以_提供其所在之TL A的路由資訊。組織分配 86826 -14- 1232049 的TLA可使用NLA 308來產生一位址階層並且找出基站。個 別的組織可利用SLA 31〇來產生其自有的區域定址階層並且 找出子網。該拓樸階段亦可稱為該位址的網路區段(或網路 部)’而該介面識別項亦可稱為該位址的主區段或主部,因 為可以該介面識別項來找出一主介面。 參考圖3,可利用介面識別項312於一鏈路上找出介面。 該等介面識別項應該係該鏈路上獨一無二的。該介面識別 項可能係較廣範圍中獨一無二的,例如全球獨一無二的。 於部分情況中,、可能與介面的鏈路層位址令同或是以其為 基礎’舉例來說,IEEE 802.3的乙太MAC位址。舉例來 說’如果介面識別項312與全球獨一無二的mac位址相同或 是以其為基礎的話,那麼其便可能係全球獨一無二的。舉 例來說,該介面識別項312的長度可能為64位位元,不過亦 可能為其它長度。於其中一具體實施例中,可利用其它位 址(例如IEEE 802.3 MAC位址)將該介面識別項312建構於 IEEE EUI-64格式中。IEEE 802.3 MAC位址的長度為48位位 元。如 1997年 3 月於IEEE 所發表的「Guidelines for 64-Bit Global Identifier (EUI-64) Registration Authority」以及Μ· Crawford 所著的「Transmission of IPv6 Packets Over Ethernet Networks」中所述般,可利用MAC位址來產生一 全球獨一無二的64位元介面識別項(於EUI-64的格式中)。雖 然上面說明介面識別項3 12的特定範例或具體實施例,不過 該介面識別項亦可具有其它各種格式與長度,並不僅限於 IPv6的格式或長度。 86826 -15- 1232049 參考圖4-6可進一步地說明,系統100與2〇〇的作業方式以 及位址格式3 0 0的使用方式。雖然本文中的圖4與5可能包括 特殊的處理流程邏輯,不過可以瞭解的係,該處理邏輯僅 提供一如何實現本文所述之通用功能的範例。另外,除非 另有說明,否則在已知的處理流程邏輯内的每項作業都並 不需要照所列之次序來執行。 圖4為根據本發明其中一具體實施例,可由路由系統來實 知的處理邏輯的方塊流程圖。於本發明的其中一且體實施 例中,該路由系統可能係用以實現如本文和述般之用以路 由資訊的功能的軟體及/或硬體。於本發明的具體實施例 中,該路由系統可被實現為中間節點106或中間節點1〇7的 一部份。不過,可以瞭解的係,可以位於通信網路中任何 位置處的任何裝置或裝置組合來實現此項功能,而且同樣 涵蓋於本發明具體實施例的範疇之中。 圖4為用以搜寻路由資訊的處理邏輯。於方塊41〇中會接 收到一封包。根據其中一具體實施例,該封包可能包括一 目的地位址,其包括至少兩個位址區段。舉例來說,兩個 位址區段可能包括拓樸區段與介面ID 3 12。舉例來說,該 拓樸區段或網路區段可能包括全部的TLA ID 304、NLA ID 308、以及SLA ID 310,或是包括其一部份。或者亦可定義 或使用其它的位址區段。 於方塊412中,該路由系統會對該目的地位址的第一區段 的至少一部份使用第一技術(例如最佳匹配技術)來搜尋該封 包的路由資訊。-最佳匹配技術會搜尋最佳的匹配,而且並 86826 -16 - 1232049 不要求與整個位址產生匹配。舉例來說,該路由系統可對 所接收到的位址中的目的地位址的拓樸區段的至少一部份 實施LPM。舉例來說,可利用線索或其它技術作為該LPM 技術的一部份。 於替代的具體實施例中,在最佳匹配或LPM技術中可省 略該位址之第一區段(拓樸區段)中未被使用的部分。舉例來 說,該等保留欄位未被使用時即為零,因此可予以省略。 如此便可節省記憶體存取作業。 於方塊414中會判斷該目的地位址的介面_別項(介面ID) 是否存在於所接收的封包中。如果該目的地位址包含一介 面ID的話,那麼便可如下面416所述般地對該介面m使用正 確匹配技術。否則,如果介面ID不存在的話(舉例來說,可 由該目的地位址中最小意義的64位位元出現零來表示),那 麼便不必處理該等最小意義的64位位元。判斷介面是否 存在於目的地位址中的其中一種方式係判斷該目的地位址 是否大於預設的長度L(例如64位元)。於此範例中,如果該 目的地位址中有64位元以上的話,那麼便表示有介面⑴存 在。因此’如果該位址大於L的話,便有利於對該位址的一 部份(例如介面ID)使用雜湊演算法或是正 入方塊418。方塊414係非必要的方塊。 能含有方塊414,但其它具體實施例則可 於方塊416中,該路由系統會對該目的 非如此便需要進行大量的記憶體存取。如果該:立址大= 度L的話’處理流程便會進入方塊416。否則,流程便會進 部分具體實施例可 能省略方塊414。 地位址之第二區段 86826 -17- 1232049 的至少一邵份(例如介面ID)使用正確匹配技術來搜尋(額外 的或特走的)路由資訊。有數種正確匹配技術可以使用,其 包括使用内容可定址記憶體(CAM)以及使用雜湊演算法。 舉例來說,可利用雜湊表來實現雜湊演算法。舉例來說, 雜湊演算法可能代表的係將一字元串轉換成代表原來字元 串的較短固足長度數值。雜湊通常係用於索引與擷取資料 庫中的項目’因為相較於利用原來的數值來尋找該項目, 利用孩較短的雜湊數值來尋找該項目的速度通常會比較 快0 . 方鬼1 8中接著’該路由系統便會利用該路由資訊來 傳遞該封包。於部份情況中,可利用取自方塊416中的路由 ;貝訊(例如璋編號)來傳遞該封包。於其它情況中,可利用從 方塊416中找到的路由資訊,該方塊416會對該目 的地位址 之第二區段使用正確匹配技術。 圖5為根據本發明其中一具體實施例,可由路由系統來實 施的處理邏輯的方塊流程圖。圖5中,已、經以方塊5 14來取 代万塊414(圖4)。圖5中的其它方塊則與圖4中的方塊相同。 於方塊5 14中會判斷是否可以該目的地位址的第二區段為 基礎(例如以所有或部份的介面m 3丨2為基礎)來尋找額外的 路由貝訊。有許多不同的方式可判斷該目的地位址的第二 區& (例如介面ID)是否可提供該封包的額外路由資訊給接 收邊封包的路由系統。舉例來説,如果該路由系統係一邊 象各由时的邵份的話,那麼該路由系統便會依照該位址 的第一區段的數值來判斷該封包究竟係被定址到被耦合至 86826 1232049 該路由系統的區域網路内的主機或節點。如果該封包係被 定址到與該路由系統相連接的區域子網路内的節點的話, 那麼該路由系統便會使用第二區段(介面ID)來搜尋額外的 或特定的路由資訊。上述情形僅為範例。亦可利用許多其 它技術來判斷該第二區段或介面ID是否能夠提供該封包的 其它路由資訊。 參考方塊514,根據其中一具體實施例,如果於方塊412 中所實施的最佳匹配(或LPM)技術的結果符合特定條件的 話,該路由系統便可實施方塊416中的正確!匹配技術。此處_ 可使用多項的條件。舉例來說,如果路由表中的最佳匹配 數值與該位址中的預設或最少位元數量產生匹配的話(例如 與該目的地位址中的TLA、NLA及SLA產生匹配),那麼利 用該介面ID來搜寻路由資訊便可獲得額外的路由資訊。因 此,於此示範具體實施例中,如果路由表中的最佳匹配與 TLA ID、NLA ID及SLA ID產生匹配或實質上與該第二區段 產生匹配的話,那麼便可實施方塊416。 於另一具體實施例中,該位址的拓樸區段(第一區段)未必_ 為獨一無二的(例如非唯一),而介面ID(第二區段)則可能為 全球獨一無二的數值。舉例來說,該介面ID可能與全球獨 一無二的MAC位址(例如含全球範圍的MAC位址)相同或是 以其為基礎。因此,於其中一具體實施例中,可對該位址 之非唯一的部份實施最佳匹配技術,並且對該位址的獨一 無二的部份實施正確匹配技術,用以搜尋路由資訊。 對全部128位元的IPv6位址實施LPM技術來搜尋路由資訊 86826 -19- 1232049 可能會產生大量的記憶體存取作業且造成嚴重的封包延 遲。舉例來說’如果使用8位元線索的話,那麼對} 2 8位元 的IPv6位址實施LPM技術時便可能需要進行16次的記憶體 存取。為縮短封包等待時間,如上所述,可對一位址的第 一區段的至少一部份使用最佳匹配技術(例如LPM),並且對 一位址的第二區段的至少一部份使用正確匹配技術(例如 CAM或雜湊演算法),用以搜尋路由資訊。正確匹配技術 特別適用於屬於全球範圍或全球獨一無二的位址區段中, 因為如此作法通常可從該位址中提供單一起配結果。全球 獨 播一的位址區段的範例為ipv6介面ID,其與獨一無二 的鏈路層位址相同或是以其為基礎,例如Mac位址。對 IPv4位址的主部套用正確匹配或雜湊技術並不實際,因為 此邵份並非係獨一無二的,因而便可能產生錯誤的雜湊數 值。相較於對整個128位元的位址使用LPM,同時對其中一 位址區段使用最佳匹配技術(例如8次記憶體存取)並且對另 獨一播二的位址區段使用正確匹配技術(例如1個記憶體 位址),可大幅地減少記憶體存取作業。 根據一具體實施例,其具有使用者選項(例如編譯時間選 員、或可於使用者介面處選擇的選項)作為下面的選擇:1) 利用上述的最佳匹配技術與正確匹配技術的組合方式來搜 尋路由資訊,以及2)僅對整個位址使用最佳匹配技術來搜 尋路由資訊。舉例來說,於部份類型的路由器或路由系統 中(例如核心路由器或主幹線路由器),極少使用位址的介面 末搜寻路由風訊。因此’有時候,此項技術對於核心路 86826 1232049 由器所產生的好處低於對邊緣路由器所產生的好處,因為 邊緣路由器比較可能會使用一位址的介面ID來搜尋路由資 訊。因此,舉例來說,對邊緣路由器而言,使用者可選擇 介面ID的雜湊選項;而對核心路由器而言,則可針對整個 位址選擇使用LPM技術。 圖6為根據本發明其中一具體實施例,用以搜尋路由資訊 的表格使用範例。圖6所示的範例中包括對一位址的拓樸區 段使用LPM技術的範例以及對一介面m使用雜湊演算法的 範例。封包會被一路由系統接收到,而且舍有一目的地位 址。此範例中的目的地位址為TLA ID=1〇1、Nla ID=5〇、 SLA ID=112、以及介面ID=1743。如上所述,TLA m、 NLA ID、以及SLA ID稱為一位址的拓樸區段或網路區段。 如圖6所示,該路由系統包括數個路由表,其包括一 tla 表610、一 NLA表612、以及一儿八表614。該路由系統可使 用该些表分別對TLA ID、NLA ID以及SLA ID實施LPM查 找。雖然圖中顯示的係分離的表,不過,使用拓樸區段的 路由查找通常會使用一個以上的線索。亦可利用一連串的 路由表或其它技術作為該使用該位址之拓樸區段的LpM技 術的一邵份。因為可利用多種方式或技術來實施LpM技 術’所以圖6所闡述的僅係其中一種範例。於其它示範具體 實施例中’每個表(610、612與614)可能皆包括一連串的線 索。有許多不同的方式可表示資料並且利用LpM技術來實 施路由查找。 根據圖6所示的範例,該路由系統會於tla表610中查找 86826 -21 - 1232049 TLA ID=1〇1。)阜3會被當作係路由資訊。㈣〇中的查 會提供一指標611,指向NLA表612。 一碾 接耆,參考圖6,該路由系統會查找NLA 1]>=5〇,找到埠 5作為路由資訊;以及指標613,指向81^表614。相較於 山=1()1,(TLA ID=101,NLA m=5〇)數值係一較長的匹 配則置符號,因此,相較於埠3,埠5可被视為此封包的較 佳或較精確的路由資訊。 又 如果此路由系統無法於該等路由表中其中一者中產生匹 配的話,那麼該路由系統通常便會使用源尋一個發現匹配 的表中的路由資訊。於此範例中,如id==i〇7的話, 那麼於NLA表612中的查找便找不到107的任何項目,如表 612中之-1或NA所示。此時,最長匹配前置符號便係tla ID=101(源自TLA表61〇中的埠3)。路由資訊的搜尋作業會停 止於NLA表處,因為於NLA表612中找不到任何的匹配(於此 特殊範例中)。 接著’假設NLA ID=50,而且於NLA表612中找到匹配, 那麼該路由系統便會於SLA表614中查找SLA ID=112,並且 找到埠4作為路由資訊,並且找到一指標,指向雜湊表 616 〇 於此範例中,該LPM技術會於該等路由表610、612與614 中找到一與該位址之拓樸區段(例如TLA ID、NLA ID及SLA ID)產生匹配或實質匹配的數值。於其中一具體實施例中, 此代表可以該介面ID為基礎找到額外的路由資訊。於另一 具體實施例中,_如果無法從該位址的第一區段(例如該位址 86826 •22- 1232049 的祐樸區段)中取得另外的路由資訊的話或是僅能夠以第二 區段為基礎來找出額外的路由資訊的話,那麼該路由系統 便會實施該位址之第二區段(例如介面ID)的雜湊運算。於 其中一具體實施例中,因為該第二區段(例如介面ID)係全 球獨一無二的,所以有利於使用雜湊表來查找該介面m, 以便減少記憶體存取的次數。 因此’接著,該路由系統便會於雜湊表616中來查找介面 ID=1743。該介面ID=1743會於雜湊表616中找到埠6。因 此,於此範例中,對此封包而言,最精確疼最佳的路由資 訊為埠6。而後,便可利用埠6將該封包傳遞給下一個中間 節點或目的地節點。 圖7為根據本發明其中一具體實施例,用以搜尋路由資訊 的LPM技術與雜湊技術的另一使用範例。根據圖7所示的示 範具體實施例,可利用一個以上的線索71〇或線索查找對該 目的地位址的第一區段(例如網路區段或拓樸區段)運用[PM 技術。如果主區段或介面山存在於所接收到之封包的目的 地位址中的話,那麼便可對該介面1〇運用雜湊演算法,以 繼續進行路由查找。舉例來說,如圖7所示,可於雜湊表 712中來查找該介面山。依此方式,藉由同時對一位址的第 一區段(例如網路區段或拓樸區段)使用LpM技術以及對該位 址的第一區段(例如主區段或介面ID)使用第二技術(例如雜 凑演算HCAM),便可快速地實施路由查找,並且僅需要 較少的記憶體存取作業。 雖然本發明的具體實施例的部份特徵已於本文作說明, 86826 -23- 1232049 不過’熟習本技術的人士將可瞭解到許多修正例、 例、改變例與等效例。因此,必須瞭解的係,隨附之申社 專利範圍係涵蓋所有此等修正例及改變例,並且涵蓋於: 發明具體實施例的真正精神之内。 【圖式簡單說明】 在本文詳細說明中的結論部份特別提出且明確地主張本 發明具體實施例的主要部份。不過,參考上面的詳細說明 且配合附圖便可更清楚本發明之具體實施例的組織、作業 方法、以及其乱的、特點與優點,其中: 圖1為適合貫現本發明其中一具體實施例的示範系統; 圖2為根據本發明其中一具體實施例之示範路由系統的方 塊圖; 圖3為適用於本發明其中一具體實施例的示範位址格式; 圖4為根據本發明其中一具體實施例,可由路由系統來實 施的處理邏輯的方塊流程圖; 圖5為根據本發明其中一具體實施例,可由路由系統來實 知的處理邏輯的方塊流程圖; 圖6為根據本發明其中一具體實施例,用以搜尋路由資訊 的表格使用範例;以及 圖7為根據本發明其中一具體實施例,用以搜尋路由資訊 的LPM技術與雜湊技術的另一使用範例。 【圖式代表符號說明】 1〇〇 系統 102 來源節點 86826 -24- 1232049 104,108,109 通信介質 105 網路由器 106,107 中間節點 110 目的地節點 200 路由系統 209, 211 線路 210 路由引擎 212 封包傳遞引擎 213 (未定義) 300 位址格式! 302 格式前置符號 304 頂層集合識別項 306 保留欄位 308 次層集合識別項 310 基層集合識別項 312 介面識別項 610 TLA表 611 指標 612 NLA表 613 指標 614 SLA表 615 指標 616 雜凑表 710 一個以上的線索 712 雜湊表 86826 -25-

Claims (1)

1232049 拾、申請專利範園: i 一種搜尋路由資訊的方法,其包括: 接收一含有位址的封包,該位址包含至少一第一區段與 弟一區段;以及 對《第一區段的至少—部份使用第一技術以及對該第 —區段的至少一部份使用第二技術,用以搜尋該封包的 路由資訊。 2·如申叩專利範圍第1項之方法,其中該位址包括一目的 地位址。、 i 3.如申請專利範圍第丨項之方法,其中該位址包括一網際 網路協定(IP)位址。 4·如申請專利範圍第1項之方法,其中該位址包括一根據 網際網路協定(IP)版本6(IPv6)而分配到的ι28位元位 址0 5 ·如申請專利範圍第1項之方法,其中該第一區段包括該 位址的拓樸區段,而該第二區段包括該位址的介面識別 項。 6·如申請專利範圍第5項之方法,其中該位址的拓樸區段 包括一個以上的以下識別項··頂層集合識別項、次層集 合識別項、以及基層集合識別項。 7 ·如申請專利範圍第1項之方法,其中該第一技術包括最 佳匹配技術,而該第二技術包括正確匹配技術。 8.如申請專利範圍第7項之方法,其中該最佳匹配技術包 括最長前置符號匹配技術。 86826 1232049 9·如申請專利範圍第7項之方法,其中該第一技術包括利 用最長前置符號匹配技術,以該位址的第一區段的至少 一邵份為基礎,使用一個以上的路由表來查找該封包的 路由資訊。 10·如申請專利範圍第9項之方法,其中該位址的第一區段 包括一目的地位址的祐樸區段。 11 ·如申請專利範圍第7項之方法,其中該正確匹配技術包 括利用内容可定址記憶體與雜湊演算法中至少其中一 者,以該第二區段的至少一部份為基礎卜用以搜尋該封 包的路由資訊。 12·如申請專利範圍第11項之方法,其中該位址的第二區段 包括一介面識別項。 13 ·如申請專利範圍第11項之方法,其中雜湊演算法包括利 用一雜湊表,以該位址的第二區段的至少一部份為基 礎,用以查找該封包的路由資訊。 14· 一種搜尋路由資訊的方法,其包括: 接收一含有位址的封包,該位址包含至少一第一區段 與—第二區段;以及 _該位址的第一區段的至少一部份使用第一技術,用 以搜尋該封包的路由資訊; 如果利用第一技術的搜尋結果符合預設條件的話或是 如果利用第二技術可找到額外的路由資訊的話,便可對 該位址的第二區段的至少一部份使用第二技術,用以搜 尋該封包的路由資訊,該等第一與第二技術並不相同。 86826 -2 - 1232049 15.如申請專利範圍第14項之方法,其中該第一技術包括最 佳匹配技術而該第二技術包括正確匹配技術,利用第二 技術來搜尋路由資訊包括:如果利用最佳匹配技術的搜 尋結果於至少為預設長度的路由表中找到一匹配數值的 話’便可對該位址的第二區段的至少一部份使用正確匹 配技術,用以搜尋路由資訊。 16·如申請專利範圍第14項之方法,其中該第一技術包括最 佳匹配技術而該第二技術包括正確匹配技術,利用第二 技術來搜尋路由資訊包括:如果對該位牡的第二區段的 至少一邵份使用正確匹配技術可獲得額外的路由資訊的 話,便可對該位址的第二區段的至少一部份使用正確匹 配技術,用以搜尋路由資訊。 17·如申請專利範圍第14項之方法,其中該第一技術包括利 用最長前置符號匹配技術,以該位址的第一區段的至少 一部份為基礎,使用一個以上的路由表來查找該封包的 路由資訊。 τ 土 /六丁 石,以 用以搜尋該封包的額 18·如申凊專利範圍第14項之方法,其中該第二技術包捂利 用内容可定址記憶體與雜湊演算法中至少其中一者, 該第二區段的至少一部份為基礎 外的路由資訊。
區段包括一介面識別項。
86826 1232049 網際網路協定版本6(IPv6)的位址,其中該介面識別項係 全球獨一無二的。 2 1 · —種搜尋路由資訊的方法,其包括: 接收一含有位址的封包,該位址包含一拓樸區段與一 介面識別項;以及 對該位址的拓樸區段的至少一部份使用最佳匹配技術 以及對該介面識別項的至少一部份使用正確匹配技術, 用以搜尋該封包的路由資訊。 22·如申請專利範圍第21項之方法,其中該表佳匹配技術包 括利用最長前置符號匹配技術,以該位址的拓樸區段的 至少一部份為基礎,使用一個以上的路由表來查找該封 包的路由資訊。 23 ·如申請專利範圍第21項之方法,其中該正確匹配技術包 括利用内容可定址記憶體與雜湊演算法中至少其中一 者,以該介面識別項的至少一部份為基礎,來搜尋該封 包的路由資訊,該介面識別項係全球獨一無二的。 24· —種搜尋路由資訊的方法,其包括: 接收一含有位址的封包,該位址包含至少一第一區段 與 弟一區段,该弟二區段係全球獨一無二的;以及 對該位址的第一區段的至少一部份使用最長前置符號 匹配技術以及對該位址的第二區段的至少一部份使用正 確匹配技術,用以搜尋該封包的路由資訊。 25·如申請專利範圍第24項之方法,其中該第一區段係非唯 —的區段,其包括網際網路協定版本6(ipv6)位址之拓樸 86826 -4- 1232049 區段的至少一部份。 26·如申請專利範圍第25項之方法,其中該拓樸區段包括一 個以上的以下識別項:頂層集合識別項、次層集合識別 喟、以及基層集合識別項。 27·如申請專利範圍第24項之方法,其中該位址的第二區段 包括一全球獨一無二的介面識別項。 28·如申請專利範圍第27項之方法,其中該介面識別項包括 —介面的鏈路層位址或是以其為基礎。 29*如申請專利範圍第27項之方法,其中該务面識別項包括 —介面的IEEE 802.3介質存取控制(MAC)位址或是以其 為基礎。 3〇·—種搜尋路由資訊的方法,其包括: 接收一含有位址的封包,該位址包含至少一拓樸區段 與一介面識別項; 對m位址的拓樸區段的至少一部份使用最長前置符號 匹配技術,用以搜尋該封包的路由資訊;以及 如果以該介面識別項為基礎可獲得該封包的額外的路 由資訊的話,便可對該介s碑丨 1面减別項的至少一部份使用雜 凑技術,用以搜尋該封包的額外的路由資訊。 31.:申請專利範㈣3㈣之方法,其中轉㈣法包括利 用-雜凑表,以該介面識別項的至少一部份為基礎,用 以查找該封包的較佳的路由資訊。 32·如申請專利範園第3〇項之 ^ ^ ^ + 万去進一步包括以該路由資 訊為基&來傳遞所接收到的封包。 86826 1232049 33. -種搜尋路由資訊的方法,其包括: 接收一含有網際網路協定版本6(IPv6)位址的封包,該 位址包含一全球獨一無二的介面識別項; 對孩位i止的第-部份使用最長前置符號匹配技術,用 以搜尋該封包的路由資訊,該第—部份並不含有該介面 識別項;以及 對孩介面識別項使用正確匹配技術來搜尋該封包的額 外的路由資訊。 34·如_請專利範圍第33項之方法,其中搜^額外的路由資 訊包括:如果以該介面識別項為基礎可找到另外的路由 負訊的話’便可對該介面識別項使用正確匹配技術,用 以搜尋額外的路由資訊。 3 5. —種搜尋路由資訊的方法,其包括: 接收一含有位址的封包,該位址包含一並非全球獨一 無二的的第一區段以及一全球獨一無二的第二區段; 對該位址的至少該第一區段使用最佳匹配技術,用以 搜尋該封包的路由資訊; 如果利用該最佳匹配技術的搜尋結果符合預設條件的 話,便可對至少該第二區段使用正確匹配技術,用以搜 尋該封包的額外的路由資訊。 3 6.如申請專利範圍第35項之方法,其中搜尋額外的路由資 訊包括:如果利用該最佳匹配技術的搜尋結果實質上可 導致該最佳匹配技術中該位址之第一區段的完整匹配的 話,便可對至少該第二區段使用雜湊技術,用以搜尋額 86826 1232049 外的路由資訊。 3 7 · —種用以搜寻路由資訊的設備,該設備會接收一含有位 址的封包,該位址包含至少一第一區段與一第二區段; 該設備可對該第一區段的至少一部份使用第一技術以及 對该第二區段的至少一部份使用第二技術,用以搜尋該 封包的路由資訊。 3 8·如申請專利範圍第37項之設備,其中該設備包括一封包 傳遞引擎。 39·如申請專利範圍第37項之設備,其中該^備包括一路由 器。 40·如申請專利範圍第37項之設備,其中該設備包括一可程 式化處理器。 41_如申請專利範圍第37項之設備,其中該設備包括一可程 式化網路處理器。 42·如申凊專利範圍第37項之設備,其中該設備包括一個以 上的特定應用積體電路(ASIC),用以利用一個以上的表 來搜尋路由資訊。 43·如申請專利範圍第37項之設備,其中該第一技術包括有 關一位址的拓樸區段的至少一部份的最佳匹配技術,而 該第二技術包括有關一位址之介面ID或主部的至少一部 份的正確匹配技術。 44·如申請專利範圍第43項之設備,其中該最佳匹配技術包 括最長前置符號匹配技術,而該正確匹配技術包括内容 可走址i己憶體(CAM)與雜湊演算法中其中一者。 86826 1232049 ,該傳遞引擎會接收
一種網路設備’其包括—傳遞引擎,該傳 一含有位址的封包,該位址包含至少一第 二區段;該傳遞引擎可對該第一區段的至 最佳匹配技術來搜尋該封包的路由資訊, 以該第二區段為基礎可找到該封包的額外的路由資訊的 話,那麼該傳遞引擎便可對該第二區段的至少一部份使 用正確匹配技術來搜尋該封包的額外的路由資訊。 46·如申請專利範圍第45項之設備,其中該‘佳匹配技術包 括最長前置符號匹配,而該正確匹配技術包括雜湊演算 47· —種用以搜尋路由資訊的設備,該設備會接收一含有位 址的封包,該位址包含至少一第一區段與一第二區段; 該設備可對該位址的第一區段的至少一部份使用第一技 術來搜尋該封包的路由資訊,而且如果利用該第一技術 的搜尋結果符合預設條件的話或是如果以該第二區段為 基礎可找到額外的路由資訊的話,那麼該設備還可對該 位址的第二區段的至少一部份使用第二技術,用以搜尋 該封包的路由資訊。 48.如申請專利範圍第47項之設備,其中該第一技術包括有 關一位址的祐樸區段的至少一部份的最佳匹配技術,而 遠第二技術包括有關一位址之介面ID或主部的至少一部 份的正確匹配技術。 49·如申請專利範圍第48項之設備,其中該最佳匹配技術包 86826 1232049 50. 51. 52. 53. 54. 括取長珂置符號匹配技術,而該正確匹配技術包括内容 可疋址記憶體(CAM)與雜湊演算法中其中一者。 一種用以搜尋路由資訊的物品,其包括: 一儲存介質; 孩儲存介質包括被儲存的指令,當被一處理器執行之 後,便會接收一含有位址的封包,該位址包含至少一第 一區段與一第二區段;以及對該第一區段的至少—部份 使用第一技術以及對該第二區段的至少一部份使用第二 技術,用以搜尋該封包的路由資訊。 如申清專利範圍第50項之物品,其中當該等被儲存的指 令被一處理器執行之後,進一步還可以該路由資訊為基 礎來傳遞所接收到的封包。 一種搜尋路由資訊的方法,其包括: 接收一含有位址的封包; 對該第一區段的至少一部份使用最佳匹配技術,用以 搜寻該封包的路由資訊; 债測該位址的第二區段是否存在; 如果第二區段存在的話,對該第二區段的至少一部份 使用正確匹配技術,用以搜尋該封包的路由資訊。 如申請專利範圍第52項之方法,其中該最佳匹配技術包 括最長前置符號匹配(LPM)技術,而其中該正確匹配技 術包括雜凑技術。 如申請專利範圍第52項之方法,其中該第一區段包括一 位址的拓樸區段,而該第二區段包括介面ID。 86826.doc -9- 1232049 55.如申請專利範圍第52項之方法,其中利用該最佳匹配技 術來搜尋包括:當對該第一區段的至少一部份使用最佳 匹配技術來搜尋該封包的路由資訊時,省略該第一區段 中的一個以上的保留欄位。 86826 10-
TW092119544A 2002-07-17 2003-07-17 Technique to improve network routing using best-match and exact-match techniques TWI232049B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/197,981 US7039018B2 (en) 2002-07-17 2002-07-17 Technique to improve network routing using best-match and exact-match techniques

Publications (2)

Publication Number Publication Date
TW200412765A TW200412765A (en) 2004-07-16
TWI232049B true TWI232049B (en) 2005-05-01

Family

ID=30443034

Family Applications (1)

Application Number Title Priority Date Filing Date
TW092119544A TWI232049B (en) 2002-07-17 2003-07-17 Technique to improve network routing using best-match and exact-match techniques

Country Status (5)

Country Link
US (1) US7039018B2 (zh)
EP (1) EP1540522A1 (zh)
AU (1) AU2003243352A1 (zh)
TW (1) TWI232049B (zh)
WO (1) WO2004010336A1 (zh)

Families Citing this family (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100424614B1 (ko) * 2002-04-27 2004-03-27 삼성전자주식회사 인터넷 프로토콜 기반 통신 시스템 및 그의 호스트 주소설정 및 소스 주소 선택 방법
US7058725B2 (en) * 2002-06-13 2006-06-06 Intel Corporation Method and apparatus to perform network routing using multiple length trie blocks
US7039018B2 (en) 2002-07-17 2006-05-02 Intel Corporation Technique to improve network routing using best-match and exact-match techniques
US7206861B1 (en) * 2002-07-29 2007-04-17 Juniper Networks, Inc. Network traffic distribution across parallel paths
US7397768B1 (en) 2002-09-11 2008-07-08 Qlogic, Corporation Zone management in a multi-module fibre channel switch
US6886141B1 (en) * 2002-10-07 2005-04-26 Qlogic Corporation Method and system for reducing congestion in computer networks
US7277386B1 (en) 2002-11-12 2007-10-02 Juniper Networks, Inc. Distribution of label switched packets
US7483430B1 (en) * 2003-02-28 2009-01-27 Cisco Technology, Inc. Hierarchical hash method for performing forward route lookup
US20040208197A1 (en) * 2003-04-15 2004-10-21 Swaminathan Viswanathan Method and apparatus for network protocol bridging
US7325059B2 (en) * 2003-05-15 2008-01-29 Cisco Technology, Inc. Bounded index extensible hash-based IPv6 address lookup method
US7769826B2 (en) * 2003-06-26 2010-08-03 Nominum, Inc. Systems and methods of providing DNS services using separate answer and referral caches
US7620059B2 (en) * 2003-07-16 2009-11-17 Qlogic, Corporation Method and apparatus for accelerating receive-modify-send frames in a fibre channel network
US7453802B2 (en) * 2003-07-16 2008-11-18 Qlogic, Corporation Method and apparatus for detecting and removing orphaned primitives in a fibre channel network
US7471635B2 (en) * 2003-07-16 2008-12-30 Qlogic, Corporation Method and apparatus for test pattern generation
US7525910B2 (en) * 2003-07-16 2009-04-28 Qlogic, Corporation Method and system for non-disruptive data capture in networks
US7512067B2 (en) * 2003-07-21 2009-03-31 Qlogic, Corporation Method and system for congestion control based on optimum bandwidth allocation in a fibre channel switch
US7894348B2 (en) * 2003-07-21 2011-02-22 Qlogic, Corporation Method and system for congestion control in a fibre channel switch
US7466700B2 (en) * 2003-07-21 2008-12-16 Qlogic, Corporation LUN based hard zoning in fibre channel switches
US7792115B2 (en) 2003-07-21 2010-09-07 Qlogic, Corporation Method and system for routing and filtering network data packets in fibre channel systems
US7522522B2 (en) * 2003-07-21 2009-04-21 Qlogic, Corporation Method and system for reducing latency and congestion in fibre channel switches
US7420982B2 (en) * 2003-07-21 2008-09-02 Qlogic, Corporation Method and system for keeping a fibre channel arbitrated loop open during frame gaps
US7646767B2 (en) * 2003-07-21 2010-01-12 Qlogic, Corporation Method and system for programmable data dependant network routing
US7525983B2 (en) * 2003-07-21 2009-04-28 Qlogic, Corporation Method and system for selecting virtual lanes in fibre channel switches
US7684401B2 (en) * 2003-07-21 2010-03-23 Qlogic, Corporation Method and system for using extended fabric features with fibre channel switch elements
US7447224B2 (en) * 2003-07-21 2008-11-04 Qlogic, Corporation Method and system for routing fibre channel frames
US7430175B2 (en) * 2003-07-21 2008-09-30 Qlogic, Corporation Method and system for managing traffic in fibre channel systems
US7558281B2 (en) * 2003-07-21 2009-07-07 Qlogic, Corporation Method and system for configuring fibre channel ports
US7573909B2 (en) * 2003-07-21 2009-08-11 Qlogic, Corporation Method and system for programmable data dependant network routing
US7630384B2 (en) * 2003-07-21 2009-12-08 Qlogic, Corporation Method and system for distributing credit in fibre channel systems
US7477655B2 (en) * 2003-07-21 2009-01-13 Qlogic, Corporation Method and system for power control of fibre channel switches
US7406092B2 (en) * 2003-07-21 2008-07-29 Qlogic, Corporation Programmable pseudo virtual lanes for fibre channel systems
US7580354B2 (en) * 2003-07-21 2009-08-25 Qlogic, Corporation Multi-speed cut through operation in fibre channel switches
US7480293B2 (en) * 2004-02-05 2009-01-20 Qlogic, Corporation Method and system for preventing deadlock in fibre channel fabrics using frame priorities
US7564789B2 (en) * 2004-02-05 2009-07-21 Qlogic, Corporation Method and system for reducing deadlock in fibre channel fabrics using virtual lanes
WO2005089239A2 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method of providing a self-optimizing reservation in space of compute resources
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
US7340167B2 (en) * 2004-04-23 2008-03-04 Qlogic, Corporation Fibre channel transparent switch for mixed switch fabrics
US7930377B2 (en) * 2004-04-23 2011-04-19 Qlogic, Corporation Method and system for using boot servers in networks
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
US8295299B2 (en) * 2004-10-01 2012-10-23 Qlogic, Corporation High speed fibre channel switch element
WO2006053093A2 (en) 2004-11-08 2006-05-18 Cluster Resources, Inc. System and method of providing system jobs within a compute environment
US20100195538A1 (en) * 2009-02-04 2010-08-05 Merkey Jeffrey V Method and apparatus for network packet capture distributed storage system
CA2619141C (en) * 2004-12-23 2014-10-21 Solera Networks, Inc. Method and apparatus for network packet capture distributed storage system
JP4623317B2 (ja) * 2005-01-05 2011-02-02 日本電気株式会社 通信装置、ルーティング方法及びプログラム
US7519058B2 (en) * 2005-01-18 2009-04-14 Qlogic, Corporation Address translation in fibre channel switches
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
US7586895B2 (en) * 2005-04-01 2009-09-08 Cisco Technology, Inc. Performing extended lookups on MAC-based tables including level 3 multicast group destination addresses
ES2614751T3 (es) 2005-04-07 2017-06-01 Iii Holdings 12, Llc Acceso bajo demanda a recursos informáticos
US20060247937A1 (en) * 2005-04-28 2006-11-02 International Business Machines Corporation Method and apparatus for a context-based service look up
US7751331B1 (en) 2005-05-09 2010-07-06 Cisco Technology, Inc. Technique for policy conflict resolution using priority with variance
US8369329B2 (en) * 2005-05-16 2013-02-05 Rockstar Consortium Us Lp Dynamic hierarchical address resource management architecture, method and apparatus
KR100653527B1 (ko) * 2005-05-30 2006-12-05 주식회사 팬택앤큐리텔 인터넷 프로토콜 주소 운용 방법
US20070127474A1 (en) * 2005-12-02 2007-06-07 Cisco Technology, Inc. Automatic mapping of an IPv6 packet in multi-topology routing
US8161185B2 (en) * 2006-04-24 2012-04-17 Cisco Technology, Inc. Method and apparatus for assigning IPv6 link state identifiers
EP1921827B1 (en) * 2006-11-07 2012-03-21 Nokia Siemens Networks GmbH & Co. KG Method for forwarding address prefix data in a network and device
US8374082B2 (en) * 2007-03-13 2013-02-12 Alcatel Lucent Advanced bandwidth management
US8446845B2 (en) * 2007-03-13 2013-05-21 Alcatel Lucent Advanced bandwidth management audit functions
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US8625642B2 (en) 2008-05-23 2014-01-07 Solera Networks, Inc. Method and apparatus of network artifact indentification and extraction
US8521732B2 (en) 2008-05-23 2013-08-27 Solera Networks, Inc. Presentation of an extracted artifact based on an indexing technique
US20090292736A1 (en) * 2008-05-23 2009-11-26 Matthew Scott Wood On demand network activity reporting through a dynamic file system and method
US8064455B2 (en) * 2008-06-08 2011-11-22 Apple Inc. Outbound transmission of packet based on routing search key constructed from packet destination address and outbound interface
CN101621502A (zh) * 2008-06-30 2010-01-06 华为技术有限公司 存储、查找路由表的方法及装置
US8218553B2 (en) * 2009-02-25 2012-07-10 Juniper Networks, Inc. Load balancing network traffic on a label switched path using resource reservation protocol with traffic engineering
US8259585B1 (en) 2009-04-17 2012-09-04 Juniper Networks, Inc. Dynamic link load balancing
US9280609B2 (en) * 2009-09-08 2016-03-08 Brocade Communications Systems, Inc. Exact match lookup scheme
US9465771B2 (en) 2009-09-24 2016-10-11 Iii Holdings 2, Llc Server on a chip and node cards comprising one or more of same
US8599863B2 (en) 2009-10-30 2013-12-03 Calxeda, Inc. System and method for using a multi-protocol fabric module across a distributed server interconnect fabric
US20110103391A1 (en) 2009-10-30 2011-05-05 Smooth-Stone, Inc. C/O Barry Evans System and method for high-performance, low-power data center interconnect fabric
US20130107444A1 (en) 2011-10-28 2013-05-02 Calxeda, Inc. System and method for flexible storage and networking provisioning in large scalable processor installations
US9054990B2 (en) 2009-10-30 2015-06-09 Iii Holdings 2, Llc System and method for data center security enhancements leveraging server SOCs or server fabrics
US9077654B2 (en) 2009-10-30 2015-07-07 Iii Holdings 2, Llc System and method for data center security enhancements leveraging managed server SOCs
US9069929B2 (en) 2011-10-31 2015-06-30 Iii Holdings 2, Llc Arbitrating usage of serial port in node card of scalable and modular servers
US9876735B2 (en) 2009-10-30 2018-01-23 Iii Holdings 2, Llc Performance and power optimized computer system architectures and methods leveraging power optimized tree fabric interconnect
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US9311269B2 (en) 2009-10-30 2016-04-12 Iii Holdings 2, Llc Network proxy for high-performance, low-power data center interconnect fabric
US9680770B2 (en) 2009-10-30 2017-06-13 Iii Holdings 2, Llc System and method for using a multi-protocol fabric module across a distributed server interconnect fabric
US9648102B1 (en) 2012-12-27 2017-05-09 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
WO2011060377A1 (en) * 2009-11-15 2011-05-19 Solera Networks, Inc. Method and apparatus for real time identification and recording of artifacts
WO2011060368A1 (en) * 2009-11-15 2011-05-19 Solera Networks, Inc. Method and apparatus for storing and indexing high-speed network traffic data
US8599853B2 (en) * 2010-04-16 2013-12-03 Wipro Limited System and method for an exact match search using pointer based pipelined multibit trie traversal technique
JP2012034353A (ja) * 2010-06-28 2012-02-16 Panasonic Corp ネットワーク通信装置、通信方法および集積回路
JP5393622B2 (ja) * 2010-09-01 2014-01-22 アラクサラネットワークス株式会社 ネットワーク中継装置およびネットワーク中継方法
US8849991B2 (en) 2010-12-15 2014-09-30 Blue Coat Systems, Inc. System and method for hypertext transfer protocol layered reconstruction
US8666985B2 (en) 2011-03-16 2014-03-04 Solera Networks, Inc. Hardware accelerated application-based pattern matching for real time classification and recording of network traffic
US8767757B1 (en) 2012-02-15 2014-07-01 Applied Micro Circuits Corporation Packet forwarding system and method using patricia trie configured hardware
US9923798B1 (en) 2012-06-28 2018-03-20 Juniper Networks, Inc. Dynamic load balancing of network traffic on a multi-path label switched path using resource reservation protocol with traffic engineering
US9285981B1 (en) 2012-07-16 2016-03-15 Wickr Inc. Discouraging screen capture
US10567349B2 (en) 2013-06-25 2020-02-18 Wickr Inc. Secure time-to-live
US9866591B1 (en) 2013-06-25 2018-01-09 Wickr Inc. Enterprise messaging platform
US10129260B1 (en) 2013-06-25 2018-11-13 Wickr Inc. Mutual privacy management
US9830089B1 (en) 2013-06-25 2017-11-28 Wickr Inc. Digital data sanitization
US9698976B1 (en) 2014-02-24 2017-07-04 Wickr Inc. Key management and dynamic perfect forward secrecy
CN104012053B (zh) 2014-04-30 2017-01-25 华为技术有限公司 查找装置及方法
US9729498B2 (en) * 2014-05-21 2017-08-08 Alcatel Lucent Distributed address resolution protocol forwarding
US9584530B1 (en) 2014-06-27 2017-02-28 Wickr Inc. In-band identity verification and man-in-the-middle defense
US9596181B1 (en) 2014-10-20 2017-03-14 Juniper Networks, Inc. Two stage bloom filter for longest prefix match
US9654288B1 (en) 2014-12-11 2017-05-16 Wickr Inc. Securing group communications
US9680749B2 (en) * 2015-02-27 2017-06-13 Arista Networks, Inc. System and method of using an exact match table and longest prefix match table as a combined longest prefix match
US9584493B1 (en) 2015-12-18 2017-02-28 Wickr Inc. Decentralized authoritative messaging
US10291607B1 (en) 2016-02-02 2019-05-14 Wickr Inc. Providing real-time events to applications
US9602477B1 (en) 2016-04-14 2017-03-21 Wickr Inc. Secure file transfer
US9591479B1 (en) 2016-04-14 2017-03-07 Wickr Inc. Secure telecommunications
US10230621B2 (en) 2017-05-09 2019-03-12 Juniper Networks, Inc. Varying a per-hop-bandwidth constraint in multi-path label switched paths
US11329921B1 (en) * 2020-11-19 2022-05-10 Juniper Networks, Inc Apparatus, system, and method for mapping incremental changes across hierarchical and non-hierarchical forwarding information bases

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0556148B1 (en) * 1992-01-10 1998-07-22 Digital Equipment Corporation Scheme for interlocking a line card to an address recognition engine
US5583996A (en) 1993-03-16 1996-12-10 Bell Communications Research, Inc. Method and system for shortcut routing over public data networks
US5761440A (en) 1994-09-15 1998-06-02 International Business Machines Corporation System and method utilizing multiple search trees to route data within a data processing network
US5884297A (en) 1996-01-30 1999-03-16 Telefonaktiebolaget L M Ericsson (Publ.) System and method for maintaining a table in content addressable memory using hole algorithms
JP3832006B2 (ja) 1996-02-26 2006-10-11 富士ゼロックス株式会社 セルラ通信網およびその通信方法
US5940396A (en) 1996-08-21 1999-08-17 3Com Ltd. Method of routing in an asynchronous transfer mode network
US5825768A (en) 1996-09-30 1998-10-20 Motorola, Inc. Interface for an asymmetric digital subscriber line transceiver
US6011795A (en) * 1997-03-20 2000-01-04 Washington University Method and apparatus for fast hierarchical address lookup using controlled expansion of prefixes
US6018524A (en) * 1997-09-09 2000-01-25 Washington University Scalable high speed IP routing lookups
US6061712A (en) 1998-01-07 2000-05-09 Lucent Technologies, Inc. Method for IP routing table look-up
US6052683A (en) 1998-02-24 2000-04-18 Nortel Networks Corporation Address lookup in packet data communication networks
US6359879B1 (en) * 1998-04-24 2002-03-19 Avici Systems Composite trunking
US6396842B1 (en) * 1998-04-30 2002-05-28 3Com Corporation Method of searching using longest match based Randix Search Trie with variable length keys and having prefix capability
US6430527B1 (en) 1998-05-06 2002-08-06 Avici Systems Prefix search circuitry and method
US6522632B1 (en) 1998-05-06 2003-02-18 Avici Systems Apparatus and method for efficient prefix search
US6449256B1 (en) * 1998-05-07 2002-09-10 Washington University Fast level four switching using crossproducting
US6389024B1 (en) 1998-06-08 2002-05-14 Excel Switching Corporation Flexible call routing system
US6212184B1 (en) * 1998-07-15 2001-04-03 Washington University Fast scaleable methods and devices for layer four switching
US6947398B1 (en) * 1998-11-13 2005-09-20 Lucent Technologies Inc. Addressing scheme for a multimedia mobile network
IT1305103B1 (it) * 1998-12-30 2001-04-10 Cit Alcatel Metodo di smistamento di pacchetti di informazione associati aindirizzi rappresentati tramite stringhe numeriche e relativo apparato
US6636498B1 (en) 1999-01-08 2003-10-21 Cisco Technology, Inc. Mobile IP mobile router
JP3645734B2 (ja) 1999-02-24 2005-05-11 株式会社日立製作所 ネットワーク中継装置及びネットワーク中継方法
US6594268B1 (en) * 1999-03-11 2003-07-15 Lucent Technologies Inc. Adaptive routing system and method for QOS packet networks
GB9912129D0 (en) 1999-05-26 1999-07-28 3Com Corp Communication device with forwarding database having having a trie search facility
US6567380B1 (en) 1999-06-30 2003-05-20 Cisco Technology, Inc. Technique for selective routing updates
WO2001005116A2 (en) 1999-07-13 2001-01-18 Alteon Web Systems, Inc. Routing method and apparatus
US6778530B1 (en) * 1999-11-08 2004-08-17 Juniper Networks, Inc. Method and apparatus for multiple field matching in network device
JP3449326B2 (ja) 1999-12-08 2003-09-22 日本電気株式会社 データ検索システム及びパケット処理装置並びに制御方法
US6665297B1 (en) * 1999-12-09 2003-12-16 Mayan Networks Corporation Network routing table
US6581106B1 (en) 2000-01-13 2003-06-17 Pierluigi Crescenzi Fast address lookup in routing tables
US6678678B2 (en) * 2000-03-09 2004-01-13 Braodcom Corporation Method and apparatus for high speed table search
US6845091B2 (en) 2000-03-16 2005-01-18 Sri International Mobile ad hoc extensions for the internet
US20010040895A1 (en) 2000-03-16 2001-11-15 Templin Fred Lambert An IPv6-IPv4 compatibility aggregatable global unicast address format for incremental deployment of IPv6 nodes within IPv4
US6798777B1 (en) 2000-04-17 2004-09-28 Juniper Networks, Inc. Filtering and route lookup in a switching device
US20020103631A1 (en) * 2000-04-21 2002-08-01 Anja Feldmann Traffic engineering system and method
US6880064B1 (en) 2000-06-21 2005-04-12 Mosaid Technologies, Inc. Method and apparatus for physical width expansion of a longest prefix match lookup table
US6956858B2 (en) 2000-06-30 2005-10-18 Mayan Networks Corporation Network routing table and packet routing method
US7274697B2 (en) * 2000-11-16 2007-09-25 Tensilica, Inc. Fast IP route lookup with 16/K and 16/Kc compressed data structures
US6792423B1 (en) * 2000-11-28 2004-09-14 International Business Machines Corporation Hybrid longest prefix match and fixed match searches
US6996662B2 (en) 2001-06-18 2006-02-07 Integrated Device Technology, Inc. Content addressable memory array having flexible priority support
US6775737B1 (en) 2001-10-09 2004-08-10 Cisco Technology, Inc. Method and apparatus for allocating and using range identifiers as input values to content-addressable memories
US6691171B1 (en) 2002-02-01 2004-02-10 Micrel, Inc. Method and system for address lookup in data communication
US20030220987A1 (en) 2002-05-21 2003-11-27 Aviation Communication & Surveillance Systems, Llc System and method with environment memory for input/output configuration
US7899067B2 (en) 2002-05-31 2011-03-01 Cisco Technology, Inc. Method and apparatus for generating and using enhanced tree bitmap data structures in determining a longest prefix match
US7039018B2 (en) 2002-07-17 2006-05-02 Intel Corporation Technique to improve network routing using best-match and exact-match techniques

Also Published As

Publication number Publication date
WO2004010336A1 (en) 2004-01-29
TW200412765A (en) 2004-07-16
US7039018B2 (en) 2006-05-02
EP1540522A1 (en) 2005-06-15
AU2003243352A1 (en) 2004-02-09
US20040013113A1 (en) 2004-01-22

Similar Documents

Publication Publication Date Title
TWI232049B (en) Technique to improve network routing using best-match and exact-match techniques
EP2869515B1 (en) System and method for routing and for minimum path mtu discovery in content centric networks
US7760720B2 (en) Translating native medium access control (MAC) addresses to hierarchical MAC addresses and their use
US9407549B2 (en) System and method for hash-based forwarding of packets with hierarchically structured variable-length identifiers
EP1506646B1 (en) Method and apparatus to improve network routing
US9130887B2 (en) Hash-based forwarding of packets with hierarchically structured variable-length identifiers over ethernet
WO2011029343A1 (zh) 身份位置分离网络的名址映射系统及数据传输方法
CN108989209B (zh) Bier mpls网络设备、及其报文转发方法和介质
WO2011029322A1 (zh) 名址映射系统、数据传输方法及名址映射维护方法
HU218402B (hu) Eljárás és berendezés több hozzáférési ponttal rendelkező forrás átirányító kommunikációs hálózatban mobil egységekkel folytatott vezeték nélküli kommunikációra
WO2009000200A1 (fr) Procédé pour annoncer un message de parcours, procédé, système et dispositif pour router des paquets
CN107547407B (zh) 报文传输方法、装置和实现装置
CN107580079B (zh) 一种报文传输方法和装置
US20180302323A1 (en) System and method to bypass the forwarding information base (fib) for interest packet forwarding in an information-centric networking (icn) environment
WO2009036678A1 (fr) Procédé, dispositif et système de réseau pour acheminer un message
US9401864B2 (en) Express header for packets with hierarchically structured variable-length identifiers
WO2022184169A1 (zh) 报文转发方法、系统、存储介质及电子装置
TWI241089B (en) Method and apparatus to perform network routing using multiple length trie blocks
US20060114904A1 (en) Differentiated services multicast system and method using encapsulation and unicast
US20220337519A1 (en) Information centric network routing
US9014195B2 (en) Packet forwarding method and system
JP2003348148A (ja) Ipマルチキャスト制御方法およびこれを用いるipマルチキャスト制御システム
KR102397923B1 (ko) 정보 중심 네트워크(icn)에서 플로우 스위칭 장치 및 방법
KR20050054003A (ko) 동일한 아이피 서브넷에 속하는 가상 근거리 통신망 간의데이터 스위칭 시스템 및 방법

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees