TWI778716B - 根據查表處理封包的方法和系統 - Google Patents
根據查表處理封包的方法和系統 Download PDFInfo
- Publication number
- TWI778716B TWI778716B TW110126499A TW110126499A TWI778716B TW I778716 B TWI778716 B TW I778716B TW 110126499 A TW110126499 A TW 110126499A TW 110126499 A TW110126499 A TW 110126499A TW I778716 B TWI778716 B TW I778716B
- Authority
- TW
- Taiwan
- Prior art keywords
- packet
- entry
- bitmap
- packet header
- look
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/566—Grouping or aggregating service requests, e.g. for unified processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本發明提供了一種根據查表處理封包的方法,包括:接收封包,封包包括封包表頭,封包表頭由控制信息組成;提供M個條目的查找表,其中每個條目包括N個條件和結果/動作指示符,M個條目按優先級排序;將信息與N個條件匹配;並在匹配結果上具有最高優先級的匹配條目結果/動作指示符應用在封包上。
Description
本發明涉及一種根據查表進行分組處理的方法和系統,更具體地,涉及一種用於硬體查表以搜索優先(search prioritized)、多條件(multi-condition)和包含通配符(wildcard)的表條目的方法和系統。
傳統上,有幾種現有方法來實現查找表。一種是使用所謂的CAM(Content-Addressable Memory),另一種是通過使用Hash Function(散列函式)來計算表索引。
內容可尋址記憶體(CAM)可以指在某些超高速搜尋應用中使用的特殊類型的記憶體。它也稱為內容尋址記憶體,它包括針對存儲數據表的輸入搜尋數據,並回傳匹配數據的地址。
CAM還經常用於網絡設備中,因為CAM加速了轉發信息庫和路由表操作。這種關聯記憶體也用於快取記憶體。在關聯快取記憶體中,地址和內容並排存儲。當地址匹配時,從快取記憶體中取出相應的內容。
此外,散列函數是可用於將任意大小的數據映射到固定大小值的任何函數。散列函數返回的值稱為散列值、雜湊值、摘要或簡稱為散列。這些值通常用於索引稱為散列表的固定大小表。使用散列函數索引散列表稱為散列尋址或分散存儲尋址。
然而,使用CAM或散列解決方案會導致更高的成本和電路複雜性。就功能而言,搜索小型查找表不一定需要 CAM 或散列解決方案。在某些情況下,考慮到目標市場和銷售價格,它不符合產品要求。
本發明涉及一種根據查表進行分組處理的方法和系統,更具體地,涉及一種用於硬體查表以搜索優先、多條件和包含通配符的表條目的方法和系統。
根據本發明,本發明提供了一種根據查表處理封包的方法,包括:接收封包,封包包括封包表頭,該封包表頭由控制信息組成;提供M個條目的查找表,其中每個條目包括N個條件和結果/動作指示符,M個條目按優先級排序;將信息與N個條件匹配;並在匹配結果上具擁有有最高優先級的匹配條目結果/動作指示符應用在封包上。
較佳地,對於封包表頭中的每個信息,匹配後給出一個位元圖陣列。
較佳地,將自封包表頭中每個信息搜尋後的位元圖陣列用邏輯或閘(logic OR)程序處理以合併位元陣列。
較佳地,所有合併後的位元陣列以邏輯及閘(logic AND)程序進行處理以產生具有優先順序的最終簡化位元圖陣列。
較佳地,結果/動作指示符指示讓封包通過、丟棄封包、轉發封包或修改數據封包表頭的內容。
較佳地,封包表頭的信息包括IP版本、源/目的IP地址、生存時間計數、源/目的MAC地址、VLAN標籤、TCP/UDP源/目的端口號碼及其他通訊協議。
較佳地,優先順序由軟體排序。
根據本發明,本發明提供一種根據查表處理封包的系統,包括:接收器,用於接收封包,其中包包括封包表頭,封包表頭由控制信息組成;記憶體,存儲有M個表項的查找表,其中每個表項包括N個條件和結果/動作指示,M個表項按優先級排序;以及處理器,其中處理器將信息與N個條件匹配,並將在匹配上具擁有有最高優先級的匹配條目結果/動作指示符應用在封包上。
較佳地,對於封包表頭中的每個信息,匹配後給出一個位元圖陣列。
較佳地,將自封包表頭中每個信息的位元陣列用邏輯或閘(logic OR)程序處理以合併位元陣列。
較佳地,所有合併後的位元陣列以邏輯及閘(logic AND)程序進行處理以產生具有優先順序的最終簡化位元陣列。
較佳地,結果/動作指示符指示讓封包通過、丟棄封包、轉發封包或修改數據封包表頭的內容。
較佳地,封包表頭的信息包括IP版本、源/目的IP地址、生存時間計數、源/目的MAC地址、VLAN標籤、TCP/UDP源/目的端口號碼及其他通訊協議。
較佳地,優先順序由軟體排序。
除非另外定義,否則本文使用的所有技術和科學術語具有與本公開所屬領域的技術人員通常理解的相同的含義。將進一步理解術語;例如在常用詞典中定義的那些,應被解釋為具有與其在相關技術和本公開的上下文中的含義一致的含義,並且除非明確如此定義,否則不會以理想化或過於正式的含義進行解釋在此處。
在整個說明書中對“一個實施例”或“一個實施例”的引用意味著結合該實施例描述的特定特徵、結構或特性被封包括在至少一個實施例中。因此,在本說明書各處出現的短語“在一個實施例中”或“在一個實施例中”不一定都指代相同的實施例。此外,特定特徵、結構或特性可以在一個或多個實施例中以任何合適的方式組合。
參考圖1和2。圖1A-1D示出了本發明的一個實施例。首先參考圖1A,圖1A示出了查找表100 (Lookup table)。查找表100包括四個條目(Entry),每個條目標記為條目1(Entry 1)、條目2(Entry 2)、條目3(Entry 3)和條目4(Entry 4)。這四個條目被預先確定,並且優先級為從高到低,即從條目 1 到條目 4。每個條目包括兩個條件(condition)和一個結果/行動指示符(result/action indicator)。每個條件都標記為條件 1 (condition 1)和條件 2(condition 2)。
需要說明的是,條目的數量不僅限於四個,條件的數量也不僅限於兩個。本實施例中的條目和條件的數量主要是為了示例,不應限製本發明的範圍。
在本實施例中,條件1代表源IP(以下稱為“Src IP”, Source IP),條件2代表目的IP(以下稱為“Dst IP”, destination IP)。從圖1A中可以看出,對於Src IP,也可以理解為Condition 1 Src IP 101的Lookup table,對於Dst IP,也可以理解為Condition 2 Src IP 102的Lookup table。進一步,查找表100可以在任何類型的記憶體上實現。
在Entry 3的Condition 1中,條件為“Src IP:Any Value”,這樣的條件意味著無論進來什麼值,匹配總是為真。或者,也可以理解為,無論進來什麼值,匹配總會成立(或一直匹配)。任何值也可以稱為通配符,如條件 1 Src IP 101 的查找表和條件 2 Dst IP 102 的查找表中所示。
接下來參考圖1B,接收分組103。封包103包括具有Src IP 3.3.3.3和Dst IP 4.4.4.4的數據封包表頭信息(例如IP表頭, IP header)(在一些其他實施例中,數據封包表頭可以包括其他信息,例如源MAC地址、目的地MAC地址、以太網類型信息等)。根據本發明,IP 頭的Src IP 3.3.3.3將被處理以確定該Src IP匹配哪個條目的條件1,並且IP表頭的Dst IP 4.4.4.4將被處理以確定該Dst IP匹配哪個條目的條件2 . 從圖1B中可以看出,IP表頭的Src IP 3.3.3.3將根據Condition 1 Src IP 101的Lookup table進行處理,IP header的Dst IP 4.4.4.4將根據Condition 2 Src IP的Lookup table進行處理102。
接下來參考圖1C。由於IP表頭的Src IP是3.3.3.3,這樣的Src IP不匹配Entry 1的Condition 1,匹配Entry 2的Condition 1,不匹配Entry 4的Condition 1,匹配Entry 3的Condition 1,因為這樣的條件是通配符(任何值都將匹配,如上所述)。
進一步參考Condition 1 Src IP 101的Lookup table的位元圖陣列 (bit map array),對於Entry 1,沒有匹配,因此位元圖陣列可以表示為0.0.0.0。對於Entry 2,有一個匹配,因此位元圖陣列可以表示為0.0.1.0。對於Entry 4,沒有匹配,因此位元圖陣列可以表示為0.0.0.0。對於Entry 3,存在匹配,因此位元圖陣列可以表示為0.1.0.0。然後通過 OR 邏輯閘計算四個位元圖陣列。因此,對於IP表頭的Src IP 3.3.3.3,它匹配Entry 2和Entry 3,這個結果可以簡化為0.1.1.0的簡化位元圖陣列。
進一步參考Condition 2 Dst IP 101的Lookup table的位元圖陣列,對於Entry 1,沒有匹配,因此位元圖陣列可以表示為0.0.0.0。對於Entry 2,有一個匹配,因此位元圖陣列可以表示為0.0.1.0。對於Entry 3,沒有匹配,因此位元圖陣列可以表示為0.0.0.0。對於Entry 4,有一個匹配,因此位元圖陣列可以表示為1.0.0.0。然後通過 OR 邏輯閘計算四個位元圖陣列。因此,對於IP表頭的Dst IP 4.4.4.4,它匹配Entry 2和Entry 4,這個結果可以簡化為1.0.1.0的簡化位元圖陣列。
此外,接下來通過AND邏輯閘110處理兩個簡化位元圖陣列,位元圖陣列0.1.1.0和位元圖陣列1.0.1.0,以實現優先級條件,如圖1C所示。
接下來參考圖1D。由於每個條目都有優先級,本實施例中Entry 1到Entry 4的優先級是從高到低,因此,經過AND邏輯處理後,最終的位元圖陣列為0.0.1.0,如圖. 1D。也就是說,對於IP表頭的3.3.3.3 Src IP和4.4.4.4 Dst IP,只有Entry 2符合所有條件。位元圖陣列也可稱為位元圖向量(bit map vector)。
根據查找表和匹配,該封包將被丟棄(drop packet),因為匹配條目的結果/動作是丟棄該封包。
需要說明的是,如果多個條目匹配所有條件,則僅選擇具有最高優先級的條目,並將其對應的結果/動作應用於該封包。
此外,結果/動作不僅限於“讓封包通過”和“丟棄封包”。結果/動作也可能是“修改封包表頭的內容”。本領域普通技術人員可以對這樣的結果/動作進行修改或具有其他實現方式。
還需要說明的是,在查找之後生成位元圖索引(bit map index)。此外,對於每個位元圖索引,它指向存儲在存儲空間中的位元圖陣列(也稱為位元圖向量)。
接下來參考圖1和2。圖2A-2D示出了本發明的一般實施例,用於一般查找表匹配和相應的分組處理過程。如圖2A所示,查找表200包括M個條目,每個條目標記為條目1、條目2……到條目M。優先級是從上到下(即從條目1到條目M)從高到低.每個條目包括N個條件,標記為條件1, 條件2 … to 條件N。每個條目在條件N之後都有一個結果/動作區域(如前述之結果/動作指示符)。對於查表操作,就是找出滿足多個條件並且是最高優先級的匹配條目。
條目的數量不受限制。例如,條目的數量可以是20。此外,條件的數量不受限制。例如,條件的數目可以是30,本領域普通技術人員可以根據自己的需要改變這些數目。
本發明的一般目的之一可以是針對組合搜索條件找出對應的結果/動作(即,如何處理分組)。例如,根據不同類型的數據封包表頭的組合字段來區分不同類型的網絡封包,並對封包採取相應的動作。再例如,根據組合條件找出封包的相應輸出端口/隊列。再舉一個例子,設計一個事件觸發機制,在設定多個匹配條件下觸發一個事件。
接著參考圖2B,需要說明的是,每個表項的優先級是由軟體排序的。排序對於本領域普通技術人員來說是公知的,為方便起見,不再贅述。此外,使用分而治之的方法來並行檢查每個匹配條件與所有指定的匹配值。
接下來參考圖2C,匹配條件的每個匹配值具有對應的位元圖陣列,其指示哪些表條目請求對值進行精確匹配。此外,每個匹配條件都有一個對應的通配符位元圖陣列,用於指示哪些表項總是滿足條件。
如圖2C所示,對於條件X(條件X可以是條件1、條件2……或條件N),每個條目的每個條件X都存儲有一個值(例如前面描述的條件)實施例、4.4.4.4、6.6.6.6 或其他)。然後位元圖陣列將由 OR 邏輯閘處理,以生成條件 X 的簡化位元圖陣列,並指示優先級。
最後參考圖2D,其中通過AND邏輯閘處理每個條件的每個位元圖陣列。然後將根據屬於具有最高優先級的匹配條目的結果/操作來處理該封包。
此外,對於匹配條件,合併(使用OR 邏輯閘)所有匹配值的位元圖元陣列和通配符位元圖陣列以獲得單條件結果位元圖陣列,其中敘速哪些表條目滿足匹配條件。
對於所有匹配條件,合併(使用AND邏輯閘)所有單條件結果位陣列以獲得最終的多條件結果位元圖陣列,其中敘述哪些表條目滿足所有匹配條件。
位元圖陣列的序列代表每個表條目的優先級。檢查最終的多條件結果位元圖陣列以找出具有最高優先級的匹配條目。
對於查表操作,是找出滿足多個條件且優先級最高的匹配條目。
在邏輯及閘(使用OR邏輯閘)運算之後,在位元圖陣列中定義優先級順序。優先級順序可以是從 MSB 到 LSB 或從 LSB 到 MSB,這取決於硬體實現方法。優先級順序取決於應用程序要求,並且軟體能夠重新排列順序。
綜上所述,本發明將一個大的查找表(邏輯的)劃分為若干個小的查找表(物理上的),每個小查找表與表項的匹配條件相關聯。此外,所謂的小查找表是由有限數量的合法匹配值產生的,這對於某些查找應用程序來說已經足夠了。因此,查找操作不需要 CAM 或散列解決方案。
總之,最合適的查找算法能夠分別應用於每個表以獲得最佳性能,這取決於每個表的匹配條件。
此外,本發明可以應用於各種通信和網絡設備。此外,本發明還可以應用於需要具有優先級、多條件和包含通配符的條目的表查找操作的所有硬體設計。
綜上所述,本發明提供了一種可擴展的硬體查表方法來搜索優先級、多條件和包含通配符的表項,其中優先級表項通過軟體進行排序,這種設計降低了硬體複雜度並增加了硬體搜尋速度表現。
此外,在本發明中,同時進行多個條件的匹配過程以減少查表響應時間。
此外,包含通配符的設計提供了指定匹配值的靈活性,因此增加了表的利用率。
還需要說明的是,封包表頭的控制信息可以包括MAC表頭、VLAN標籤、IP表頭、TCP表頭、UDP表頭等。封包表頭對於本領域的普通技術人員來說是眾所周知的技術。
可見本揭露在突破先前之技術下,確實已達到所欲增進之功效,且也非熟悉該項技藝者所易於思及,其所具之進步性、實用性,顯已符合專利之申請要件,爰依法提出專利申請。
以上所述僅為舉例性,而非為限制性者。其它任何未脫離本揭露之精神與範疇,而對其進行之等效修改或變更,均應該封包含於後附之申請專利範圍中。
100、200:查找表
101:條件1之源IP查找表
102:條件2之目的地IP查找表
103:封包
110:AND邏輯
圖1A-1D示出了本發明的示例性實施例;以及
圖2A-2D說明了本發明的一般實施例。
100:查找表
101:條件1之源IP查找表
102:條件2之目的地IP查找表
103:封包
110:AND邏輯
Claims (12)
- 一種根據查表處理封包的方法,包括:接收封包,其中該封包包含封包表頭信息,該封包表頭包含控制信息;提供M個條目的查找表,其中每個條目包括N個條件和結果/動作指示符,M個條目按優先級排序;將信息與N個條件匹配;以及在匹配結果上擁有最高優先級的匹配條目結果/動作指示符應用在封包上;其中,對於封包表頭中的每個信息,匹配後給出一個位元圖陣列。
- 如權利要求1所述的根據查表處理封包的方法,其中,自封包表頭中每個信息的位元圖陣列用邏輯或閘(logic OR)程序處理以合併位元圖陣列。
- 如權利要求2所述的根據查表處理封包的方法,其中,將所有合併後的位元圖陣列以邏輯及閘(logic AND)程序進行處理以產生具有優先順序的最終簡化位元圖陣列。
- 如權利要求1所述的根據查表處理封包的方法,其中,結果/動作指示符指示讓封包通過、丟棄封包、轉發封包或修改數據封包表頭的內容。
- 如權利要求1所述的根據查表處理封包的方法,其中,封包表頭的信息包括IP版本、源/目的IP地址、生存時間計數、源/目的MAC地址、VLAN標籤、TCP/UDP源/目的端口號碼及其他通訊協議。
- 如權利要求1所述的根據查表處理封包的方法,其中,優先順序由軟體排序。
- 一種根據查表處理封包的系統,包括:接收器,用於接收封包,其中包包括封包表頭,該封包表頭由控制信息組成;記憶體,存儲有M個表項的查找表,其中每個表項包括N個條件和結果/動作指示,M個表項按優先級排序;以及處理器,其中處理器將信息與N個條件匹配,並將結果/動作指示符應用在匹配的具有最高優先級的條目中的封包;其中,對於封包表頭中的每個信息,匹配後給出一個位元圖陣列。
- 如權利要求7所述的根據查表處理封包的系統,其中,自封包表頭中每個信息的位元圖用邏輯或閘(logic OR)程序處理以合併位元圖陣列。
- 如權利要求8所述的根據查表處理封包的系統,其中,將所有合併後的位元圖陣列以邏輯與(logic AND)程序進行處理以產生具有優先順序的最終簡化位元圖陣列。
- 如權利要求7所述的根據查表處理封包的系統,其中,結果/動作指示符指示讓封包通過、丟棄封包、轉發封包或修改數據封包表頭的內容。
- 如權利要求7所述的根據查表處理封包的系統,其中,封包表頭的信息包括IP版本、源/目的IP地址、生存時間計數、源/目的MAC地址、VLAN標籤、TCP/UDP源/目的端口號碼及其他通訊協議。
- 如權利要求7所述的根據查表處理封包的系統,其中,優先順序由軟體排序。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063055345P | 2020-07-23 | 2020-07-23 | |
US63/055,345 | 2020-07-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202220415A TW202220415A (zh) | 2022-05-16 |
TWI778716B true TWI778716B (zh) | 2022-09-21 |
Family
ID=79688794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110126499A TWI778716B (zh) | 2020-07-23 | 2021-07-19 | 根據查表處理封包的方法和系統 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11711305B2 (zh) |
CN (1) | CN114050997B (zh) |
TW (1) | TWI778716B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI291622B (en) * | 2005-08-11 | 2007-12-21 | Ic Plus Corp | Controller and method for per-flow rate |
TW201933831A (zh) * | 2018-01-30 | 2019-08-16 | 香港商阿里巴巴集團服務有限公司 | 監測配網設備的網路連接狀態的方法、裝置和系統 |
TWI692948B (zh) * | 2019-08-02 | 2020-05-01 | 瑞昱半導體股份有限公司 | 光網路單元與傳送動態頻寬報告上行資訊的方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101350771B (zh) * | 2008-07-07 | 2010-12-29 | 中国人民解放军国防科学技术大学 | 三态内容可寻址存储器条目免排序存储方法及其系统 |
CN101620623A (zh) * | 2009-08-12 | 2010-01-06 | 杭州华三通信技术有限公司 | 内容可寻址存储器表项管理方法和装置 |
CN102647336B (zh) * | 2011-02-22 | 2016-09-07 | 瑞昱半导体股份有限公司 | 用于封包内容转换的方法以及网络装置 |
TWI520530B (zh) * | 2013-05-17 | 2016-02-01 | 智邦科技股份有限公司 | 封包交換裝置及方法 |
CN104468381B (zh) * | 2014-12-01 | 2017-05-10 | 国家计算机网络与信息安全管理中心 | 一种多域流规则匹配的实现方法 |
WO2016106506A1 (zh) * | 2014-12-29 | 2016-07-07 | 华为技术有限公司 | 一种路由方法和设备 |
US10389626B2 (en) * | 2017-03-28 | 2019-08-20 | Alaxala Networks Corporation | Transfer device |
US10447496B2 (en) * | 2017-03-30 | 2019-10-15 | Cisco Technology, Inc. | Multicast traffic steering using tree identity in bit indexed explicit replication (BIER) |
US11184259B2 (en) * | 2019-06-05 | 2021-11-23 | Vmware, Inc. | Highly-scalable, software-defined, in-network multicasting of load statistics data |
-
2021
- 2021-07-19 TW TW110126499A patent/TWI778716B/zh active
- 2021-07-19 CN CN202110812109.5A patent/CN114050997B/zh active Active
- 2021-07-20 US US17/380,013 patent/US11711305B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI291622B (en) * | 2005-08-11 | 2007-12-21 | Ic Plus Corp | Controller and method for per-flow rate |
TW201933831A (zh) * | 2018-01-30 | 2019-08-16 | 香港商阿里巴巴集團服務有限公司 | 監測配網設備的網路連接狀態的方法、裝置和系統 |
TWI692948B (zh) * | 2019-08-02 | 2020-05-01 | 瑞昱半導體股份有限公司 | 光網路單元與傳送動態頻寬報告上行資訊的方法 |
Also Published As
Publication number | Publication date |
---|---|
US20220029923A1 (en) | 2022-01-27 |
CN114050997B (zh) | 2023-06-09 |
CN114050997A (zh) | 2022-02-15 |
US11711305B2 (en) | 2023-07-25 |
TW202220415A (zh) | 2022-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11102120B2 (en) | Storing keys with variable sizes in a multi-bank database | |
US9385957B1 (en) | Flow key lookup involving multiple simultaneous cam operations to identify hash values in a hash bucket | |
JP4742167B2 (ja) | Camのキーサイズを超えるテーブルインデックスを用いてテーブルルックアップ動作を実行する方法 | |
US10389633B2 (en) | Hash-based address matching | |
US7852850B2 (en) | Double-hash lookup mechanism for searching addresses in a network device | |
US9590948B2 (en) | CCN routing using hardware-assisted hash tables | |
US8571023B2 (en) | Methods and Apparatus Related to Packet Classification Based on Range Values | |
US9569561B2 (en) | Label masked addressable memory | |
US6665297B1 (en) | Network routing table | |
US10491521B2 (en) | Field checking based caching of ACL lookups to ease ACL lookup search | |
US7281085B1 (en) | Method and device for virtualization of multiple data sets on same associative memory | |
US6721800B1 (en) | System using weighted next hop option in routing table to include probability of routing a packet for providing equal cost multipath forwarding packets | |
US20060248095A1 (en) | Efficient RAM lookups by means of compressed keys | |
US20070171911A1 (en) | Routing system and method for managing rule entry thereof | |
JP2009522868A (ja) | 仮想ルータ機能を提供する方法 | |
US7403526B1 (en) | Partitioning and filtering a search space of particular use for determining a longest prefix match thereon | |
US9866480B1 (en) | Hash range lookup command | |
US20200226099A1 (en) | Method and apparatus for improving hash searching throughput in the event of hash collisions | |
US9742702B1 (en) | End-to-end cache for network elements | |
TWI778716B (zh) | 根據查表處理封包的方法和系統 | |
Li et al. | Scalable packet classification using bit vector aggregating and folding | |
CN107204926B (zh) | 预处理cache的路由快速查找方法 | |
US11924102B2 (en) | Minimizing deviation from average latency of table lookups |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GD4A | Issue of patent certificate for granted invention patent |