[發明專利]一種網絡包處理器及對數據包的處理方法在審
| 申請號: | 201911316396.X | 申請日: | 2019-12-19 |
| 公開(公告)號: | CN111147326A | 公開(公告)日: | 2020-05-12 |
| 發明(設計)人: | 楊珂;朱敏 | 申請(專利權)人: | 芯創智(北京)微電子有限公司 |
| 主分類號: | H04L12/26 | 分類號: | H04L12/26;H04L12/741;H04L12/851 |
| 代理公司: | 北京天悅專利代理事務所(普通合伙) 11311 | 代理人: | 任曉航;文永明 |
| 地址: | 100176 北京市大興區北京經濟*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 網絡 處理器 數據包 處理 方法 | ||
1.一種網絡包處理器對數據包的處理方法,其特征在于,所述方法包括以下步驟:
(1)預設包括M個數據抽樣和比較規則的規則表,為每個端口預設一個M位的數據抽樣和比較規則使能寄存器,M為自然數;
(2)接收數據包頭,根據數據包的輸入端口得到數據包的輸入端口號;
(3)根據所述輸入端口號獲取對應的數據抽樣和比較規則;
(4)根據所述數據抽樣和比較規則對數據包頭進行抽樣比較,得到M位特征數據;
(5)將獲得的數據包的M位特征數據與所述輸入端口號組成一個特征向量,使用該特征向量對特征向量配置表進行匹配查找,若匹配查找成功則獲得動作表地址索引,用得到的動作表地址索引查動作表,得到數據包的處理方式,若匹配查找不成功,則根據數據包的輸入端口號,采用基于輸入端口的數據包缺省處理方式對數據包進行處理。
2.根據權利要求1所述的網絡包處理器對數據包的處理方法,其特征在于,所述步驟(2)還包括:
判斷接收的數據包是否有2K字節,若不足,則在數據包尾后面用0補足,將接收的數據包補足到2K字節,再從數據包中提取2K字節的數據包頭,一般情況下,K為不小于7的自然數。
3.根據權利要求1所述的網絡包處理器對數據包的處理方法,其特征在于,所述步驟(3)中所述數據抽樣和比較規則具體包括:
數據包的抽樣點、抽樣距離、數據比較掩碼和比較數據。
4.根據權利要求3所述的網絡包處理器對數據包的處理方法,其特征在于,所述步驟(4)具體包括:
根據數據抽樣和比較規則使能寄存器中每個使能的數據抽樣和比較規則定義的數據包頭的抽樣點和抽樣距離,對數據包頭抽樣,得到N字節的抽樣數據;
根據數據比較掩碼將所述抽樣數據和比較數據進行比較,若兩者相等則得到一位數1,不相等則得到一位數0;
每個不使能的數據抽樣和比較規則,不會對數據包頭進行數據抽樣和比較,只會得到一位數0;
按照所述規則表對數據包頭進行抽樣比較,M個抽樣規則對數據包抽樣比較后,可以得到數據包頭的M位特征數據。
5.根據權利要求1所述的網絡包處理器對數據包的處理方法,其特征在于,在步驟(4)之后,步驟(5)之前所述方法還包括:
預設特征向量配置表,所述特征向量配置表包括:表項有效位、特征數據、輸入端口號和動作表地址索引。
6.根據權利要求1所述的網絡包處理器對數據包的處理方法,其特征在于,所述步驟(5)還包括:
預設動作表,所述預設動作表為與動作表地址索引對應的數據包處理方式,包括:不做任何修改的直接轉發到指定端口、包修改之后轉發到指定端口、丟棄或上交CPU處理。
7.根據權利要求1所述的網絡包處理器對數據包的處理方法,其特征在于,所述步驟(5)還包括:
若所述特征向量中至少一項與所述特征向量配置表每個表項中內容不相同,或雖然有內容相同的一個表項,但該表項有效位表明該表項無效,則為匹配失敗;
若匹配失敗,對所述數據包采用其輸入端口定義的缺省處理方式處理,缺省處理方式包括:不做任何修改的直接轉發到指定端口、包修改之后轉發到指定端口、丟棄或上交CPU處理。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于芯創智(北京)微電子有限公司,未經芯創智(北京)微電子有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911316396.X/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:井下救援機器人
- 下一篇:一種云環境可信連接方法





