[發明專利]網絡處理器中查找模塊的實現方法及系統在審
| 申請號: | 201410464912.4 | 申請日: | 2014-09-12 |
| 公開(公告)號: | CN104301228A | 公開(公告)日: | 2015-01-21 |
| 發明(設計)人: | 邱益波;李苗 | 申請(專利權)人: | 中國電子科技集團公司第三十二研究所 |
| 主分類號: | H04L12/741 | 分類號: | H04L12/741;G06F17/30 |
| 代理公司: | 上海漢聲知識產權代理有限公司 31236 | 代理人: | 郭國中 |
| 地址: | 200233 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 網絡 處理器 查找 模塊 實現 方法 系統 | ||
技術領域
本發明涉及網絡通訊領域,具體地,涉及一種網絡處理器中查找模塊的實現方法及系統。
背景技術
網絡處理器是經過專門設計和高度優化來實現網絡功能的可編程硬件,用于完成報文處理、協議分析、路由轉發等通信工作。網絡處理器擁有高性能和可編程的優點,支持不斷涌現的網絡技術。
圖1是現有網絡處理器的核心組成部分。網絡處理器包括解析模塊、查找模塊、更新轉發模塊和修改模塊。每個模塊用于完成不同的任務。其中,解析模塊從幀存儲器讀出相關的幀,對數據包進行分類解析,識別并提取關鍵信息,根據需要將多個信息進行組合構成多個查找關鍵字。每個幀包含多個關鍵字,每個關鍵字和某張表相關。查找模塊接收來自數據包解析模塊的查找關鍵字,對相關表進行查找和管理。更新轉發模塊根據查找結果決定幀的輸出端口和輸出隊列。修改模塊從幀存儲器中讀出幀,根據需要修改內容后寫回幀存儲器。
在片內存儲器或片外存儲器上保存多張表,包括二層轉發表、三層路由表、端口映射表,統稱查找表。每張表有一個特定的序號,序號和表一一對應。圖2是表的基本結構。每張表包含多個表項,每個表項至少包含關鍵字字段和結果字段。利用某種特定方法,對要查找的關鍵字進行轉換,得到存儲器中的地址。訪問地址讀出表項,將查找的關鍵字和表項中的表項中的關鍵字進行比較。如果匹配,返回包括目標地址、目標端口在內的結果信息。表的類型不同,訪問存儲器的次數不同,查找需要的時間就不同。在保證數據幀順序的前提下,必須合理設計結構、充分利用資源,提高處理速度。
發明內容
針對現有技術中的缺陷,本發明的目的是提供一種網絡處理器中查找模塊的實現方法。本發明能夠及時接收來自解析模塊的查找關鍵字,避免長時間占用解析模塊資源,影響數據幀線性收發;本發明采用多個查找引擎對關鍵字進行處理;允許查找引擎并行執行查表操作、亂序傳遞查找結果,加快了處理速度,提高工作效率;按照關鍵字的接收順序保存對應的查找結果并順序提交;本發明在保證功能的前提下隱藏單個查找的處理時間;不同應用場合選擇不同數目的工作引擎,速度盡量快的前提下占用的資源少。
根據本發明的一個方面提供的網絡處理器中查找模塊的實現方法,所述網絡處理器包括解析模塊、查找模塊、更新轉發模塊以及修改模塊,包括如下步驟:
步驟1:關鍵字接收,具體為,根據關鍵字的接收順序為接收到的關鍵字分配存儲地址和查找引擎并根據存儲地址和查找引擎添加相對應的標簽;
步驟2:關鍵字查找,具體為,若干個查找引擎并行處理若干個關鍵字的查找,進而生成查找結果;
步驟3:查找結果匯總,具體為,將查找結果根據所述標簽按順序保存。
優選地,所述步驟1包括如下步驟:
步驟1.1:根據所有查找引擎空閑或忙碌的狀態,在上一個關鍵字分配的引擎號基礎上,為新接收的關鍵字選擇一個空閑的查找引擎,將新接收的關鍵字保存到所述查找引擎對應的寄存器中;
步驟1.2:根據上一個關鍵字的查找結果占用的存儲地址確定新接收的關鍵字查找結果的存儲地址;
步驟1.3:根據新接收的關鍵字的存儲地址和查找引擎的引擎號添加標簽,所述標簽用于標識所述關鍵字。
優選地,所述步驟2中關鍵字查找包括單查找引擎模式和多查找引擎并行模式;
所述單查找引擎模式為僅一個查找引擎工作,用于調試定位錯誤;
所述多查找引擎并行模式具體為多個查找引擎對多個幀中的多個關鍵字進行并行處理。
優選地,當一幀的查找結果都保存后,由所述更新轉發模塊取用同時釋放存儲資源。
優選地,所述步驟1之前還包括如下步驟:
-當解析模塊發出一幀的關鍵字,讀取關鍵字和相應的輔助信息;所述輔助信息包括關鍵字的長度、查找表的序號和返回結果的長度。
根據本發明的另一個方面提供的網絡處理器中查找模塊的實現系統,所述網絡處理器包括解析模塊、查找模塊、更新轉發模塊以及修改模塊,所述網絡處理器中查找模塊的實現系統包括如下模塊:
關鍵字接收模塊,用于根據關鍵字的接收順序為接收到的關鍵字分配存儲地址和查找引擎并根據存儲地址和查找引擎添加相對應的標簽;
關鍵字查找模塊,用于若干個查找引擎并行處理若干個關鍵字的查找,進而生成查找結果;
查找結果匯總模塊,用于將查找結果根據所述標簽按順序保存。
優選地,所述關鍵字接收模塊包括如下模塊:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國電子科技集團公司第三十二研究所,未經中國電子科技集團公司第三十二研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410464912.4/2.html,轉載請聲明來源鉆瓜專利網。





