[發明專利]一種快速匹配網絡數據包的方法及系統有效
| 申請號: | 202011028474.9 | 申請日: | 2020-09-27 |
| 公開(公告)號: | CN111935021B | 公開(公告)日: | 2020-12-25 |
| 發明(設計)人: | 周僑;高玫濤;曾毅;薄一帆 | 申請(專利權)人: | 翱捷智能科技(上海)有限公司 |
| 主分類號: | H04L12/741 | 分類號: | H04L12/741;H04L12/747;H04L12/749;H04L29/06 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 201306 上海市浦*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 快速 匹配 網絡 數據包 方法 系統 | ||
本申請公開了一種快速匹配網絡數據包的方法。步驟S10:在內部緩存中設置表一至表六,在外部存儲器中設置表十一至表十四。步驟S20:讀取網絡數據包并提取五元組。步驟S30:計算哈希值。步驟S40:將計算出的哈希值與表一或表二中作為索引的哈希值進行匹配。步驟S50:判斷表一或表二中匹配的表項記錄的五元組是否存在于表五或表六中。步驟S60:比較網絡數據包的五元組以及在表五或表六或表十一或表十二中讀取的五元組。步驟S70:判斷表一或表二中匹配的表項是否有碰撞表項記錄在表三或表四中。本申請動態實時更新匹配內容,選出匹配的網絡數據包進行特殊處理,過濾掉不匹配的網絡數據包進行普通處理。
技術領域
本申請涉及一種網絡數據包的處理方法。
背景技術
網絡設備的不同網絡業務通常有不同的優先級、帶寬等特殊需求,這些特殊需求通常以不同的網絡連接的五元組信息來區分。所述網絡連接的五元組信息是指網絡連接的源IP地址、目的IP地址、源端口、目的端口、協議。接收設備需要對這些具有特殊需求的網絡業務的數據包進行特殊處理,如優先處理、通過硬件和/或軟件加速處理、分配更多帶寬等等。
發明內容
本申請所要解決的技術問題是提供一種快速匹配網絡數據包的方法,從網絡設備上的所有網絡連接中根據配置選取屬于某些網絡連接的數據包進行特殊處理,對其他網絡連接的數據包進行普通處理。
為解決上述技術問題,本申請提出了一種快速匹配網絡數據包的方法,包括如下步驟。步驟S10:在網絡設備的內部緩存中設置表一至表六,在網絡設備的外部存儲器中設置表十一至表十四。表一中,每一表項是以IPv4網絡連接的五元組信息的哈希值為索引,記錄該哈希值對應的IPv4網絡連接的五元組信息是否存在于表五中;是否存在于表十一中;如存在于表五中,在表五中的位置;如存在碰撞情形,碰撞表項在表三中的位置。表二中,每一表項是以IPv6網絡連接的五元組信息的哈希值為索引,記錄該哈希值對應的IPv6網絡連接的五元組信息是否存在于表六中;是否存在于表十二中;如存在于表六中,在表六中的位置;如存在碰撞情形,碰撞表項在表四中的位置。表三中,每一表項記錄存在哈希值碰撞情形時的某一條IPv4網絡連接的五元組信息是否存在于表十三中;如存在于表十三中,在表十三中的位置;是否存在于表五中;如存在于表五中,在表五中的位置。表四中,每一表項記錄存在哈希值碰撞情形時的某一條IPv6網絡連接的五元組信息是否存在于表十四中;如存在于表十四中,在表十四中的位置;是否存在于表六中;如存在于表六中,在表六中的位置。表五用來記錄多條IPv4網絡連接的五元組信息。表六用來記錄多條IPv6網絡連接的五元組信息。表十一用來記錄多條IPv4網絡連接的五元組信息及其哈希值;表五是表十一的一個子集。表十二用來記錄多條IPv6網絡連接的五元組信息及其哈希值;表六是表十二的一個子集。表十三用來記錄存在哈希值碰撞情形時的IPv4網絡連接的五元組信息。表十四用來記錄存在哈希值碰撞情形時的IPv6網絡連接的五元組信息。步驟S20:讀取網絡數據包,并提取網絡數據包對應的網絡連接的五元組信息。步驟S30:計算網絡數據包對應的網絡連接的五元組信息的哈希值。步驟S40:將計算出的網絡數據包對應的網絡連接的五元組信息的哈希值根據IPv4或IPv6網絡連接的不同,分別與表一或表二中作為索引的哈希值進行匹配。如果找到匹配的表項,進入步驟S50。如果未找到匹配的表項,對該網絡數據包進行普通處理。步驟S50:判斷表一或表二中匹配的表項記錄的網絡連接的五元組信息是否存在于表五或表六中。如果是,根據表一或表二中匹配的表項找到對應的網絡連接的五元組信息在表五或表六中的位置。如果不是,根據表一或表二中匹配的表項,找到對應的網絡連接的五元組信息是否存在于表十一或表十二中;如果是,根據表一或表二中匹配的表項找到對應的網絡連接的五元組信息在表十一或表十二中的位置;如果不是,對該網絡數據包進行普通處理。步驟S60:比較該網絡數據包對應的網絡連接的五元組信息、以及在表五或表六或表十一或表十二中讀取的網絡連接的五元組信息。如果兩者完全一致,對該網絡數據包進行特殊處理。如果兩者不完全一致,進入步驟S70。步驟S70:判斷表一或表二中匹配的表項是否有碰撞表項記錄在表三或表四中。如果是,根據表一或表二中匹配的表項,在表三或表四中找到對應的碰撞表項,并根據表三或表四中找到的每一條碰撞表項找到對應的網絡連接的五元組信息在表十三或表十四的位置;然后比較該網絡數據包對應的網絡連接的五元組信息、以及在表十三或表十四中讀取的每條碰撞表項對應的網絡連接的五元組信息;如果任何一次比較完全一致,對該網絡數據包進行特殊處理;如果全部比較都不一致,對該網絡數據包進行普通處理。如果否,對該網絡數據包進行普通處理。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于翱捷智能科技(上海)有限公司,未經翱捷智能科技(上海)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011028474.9/2.html,轉載請聲明來源鉆瓜專利網。





