System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及ipsec緩存管理,特別涉及一種高性能的ipsec緩存管理裝置和管理方法。
技術介紹
1、報文ipsec(internet?protocol?security)是為ip網絡提供安全性的協議和服務的集合。由于ip報文本身未集成任何安全特性,ip數據包在公用網絡如internet(因特網)中傳輸可能會面臨被偽造、竊取或篡改的風險。
2、通信雙方通過ipsec建立一條ipsec隧道,ip數據包通過ipsec隧道進行加密傳輸,有效保證了數據在不安全的網絡環境如因特網中傳輸的安全性;通過硬件加解密引擎實現的ipsec能大幅卸載cpu的計算能力,但是目前商用ip存在如下問題:一是加解密算法復雜,單加速引擎無法滿足日益增長的網絡帶寬需求,線速ipsec是個挑戰;二是普遍存在的ipsec架構是單引擎帶獨立報文緩存,在網絡帶寬增長的情況下,每增加一個單引擎的處理能力需要增加一個獨立報文緩存,成本高。
技術實現思路
1、本申請的目的在于提供一種高性能的ipsec緩存管理裝置和方法,旨在解決現有ipsec部署不夠靈活的問題。
2、根據本申請的第一方面,提供了一種ipsec緩存管理裝置,包含輸入隊列管理模塊、緩存池模塊、ipsec核模塊、輸出隊列管理模塊;
3、所述輸入隊列管理模塊,接收前級解析完畢的報文并輸入報文隊列,將包含報文頭的第一個存儲單元(cell)和報文解析信息作為數據,基于報文的端口加入到待加解密的報文頭隊列,其余報文內容存入到緩存池模塊的共享緩
4、所述ipsec核模塊,在檢測到自身處于空閑狀態時,向所述報文頭隊列下發空閑資源信息,根據報文頭的調度,按存儲單元將待加解密的報文頭和其對應的報文其他內容存入本地報文緩存(cache)并對本地報文緩存中的內容進行加解密以及哈希操作(hash操作,用于數據的離散計算);并在處理完當前存儲單元后,根據報文信息指示,將加解密后的數據回填到緩存池模塊的共享緩存中,并向共享緩存發起報文的下一個存儲單元的數據讀取申請操作;
5、所述緩存池模塊,通過其中的共享緩存執行報文內容的讀取操作;
6、所述輸出隊列管理模塊:將ipsec核模塊處理之后的報文數據,從緩存池模塊中基于輸出隊列將報文輸出。
7、在可選的實施方式中,所述接收前級解析完畢的報文并輸入報文隊列,將包含報文頭的第一個存儲單元和報文解析信息作為數據,基于報文的端口加入到待加解密的報文頭隊列包括:為每個報文隊列設置不同的優先級或/和特性標識,所述報文頭可能包含多個存儲單元,存儲單元間通過鏈表的形式實現包內串鏈。
8、在可選的實施方式中,所述ipsec核模塊中集成了多個獨立的ipsec加解密引擎以及哈希處理邏輯引擎,各獨立引擎的處理能力可以相同或不同。
9、在可選的實施方式中,所述ipsec核模塊中的多個本地報文緩存用于提供帶寬的加速比,多個本地報文緩存可作為整體視為一份高速緩存。
10、在可選的實施方式中,所述緩存池模塊中的共享緩存由多個獨立的緩存組塊組成,所述多個獨立的緩存組之間采用負荷分擔的算法。
11、根據本申請的第二方面,提供一種高性能的ipsec緩存管理方法,運用于ipsec緩存管理裝置,所述ipsec緩存管理裝置包含輸入隊列管理模塊、緩存池模塊、ipsec核模塊、輸出隊列管理模塊;該方法包括如下步驟:
12、由輸入隊列管理模塊接收前級解析完畢的報文并輸入報文隊列,將包含報文頭的第一個存儲單元和報文解析信息作為數據,基于報文的端口加入到待加解密的報文頭隊列,其余報文內容存入到緩存池模塊的共享緩存空間中;
13、在檢測到自身處于空閑狀態時,由所述ipsec核模塊向所述報文頭隊列下發空閑資源信息,根據報文頭的調度,按存儲單元將待加解密的報文頭和其對應的報文其他內容存入本地報文緩存并對本地報文緩存中的內容進行加解密以及哈希操作;
14、在處理完當前存儲單元后,由ipsec核模塊根據報文信息指示,將加解密后的數據回填到緩存池模塊的共享緩存中,并向共享緩存發起報文的下一個存儲單元的數據讀取申請操作;
15、通過緩存池模塊中的共享緩存執行報文內容的讀取操作;
16、由輸出隊列管理模塊將ipsec核模塊處理之后的報文數據,從緩存池模塊中基于輸出隊列將報文輸出。
17、在可選的實施方式中,所述接收前級解析完畢的報文并輸入報文隊列,將包含報文頭的第一個存儲單元和報文解析信息作為數據,基于報文的端口加入到待加解密的報文頭隊列包括:為每個報文隊列設置不同的優先級或/和特性標識,所述報文頭可包含多個存儲單元,存儲單元間通過鏈表的形式實現包內串鏈。
18、在可選的實施方式中,所述ipsec核模塊中集成了多個獨立的ipsec加解密引擎以及哈希處理邏輯引擎,各獨立引擎的處理能力可以相同或不同。
19、在可選的實施方式中,所述ipsec核模塊中的多個本地報文緩存用于提供帶寬的加速比,多個本地報文緩存可作為整體視為一份高速緩存。
20、在可選的實施方式中,所述緩存池模塊中的共享緩存由多個獨立的緩存組塊組成,所述多個獨立的緩存組之間采用負荷分擔的算法。
21、相比于相關技術,本申請的技術方案至少具備以下優點:
22、本申請實施例的裝置和方法通過采用獨立ipsec核模塊,內置待處理報文cache,由于ipsec核模塊獨立于其他控制單元,性能可擴展性高;所有ipsec核模塊共享一份高速緩存,節省緩存開銷;采用多組機制加多組間空閑地址的負載均衡操作,可以重復提高組帶寬的利用率;并且可以基于cell的ipsec處理單元和緩存管理單元,可以通過擴展cell大小和出入口位寬,可以實現t級數據帶寬的吞吐量。
23、本申請的其它特征和優點將在隨后的說明書中闡述,并且部分地從說明書中變得顯而易見,或者通過實施本申請而了解。本申請的目的和其他優點可以通過在說明書以及附圖中所指出的結構和流程來實現和獲取。
本文檔來自技高網...【技術保護點】
1.一種IPSEC緩存管理裝置,包含輸入隊列管理模塊、緩存池模塊、IPSEC核模塊和輸出隊列管理模塊;其特征在于,
2.根據權利要求1所述的IPSEC緩存管理裝置,其特征在于,所述接收前級解析完畢的報文并輸入報文隊列,將包含報文頭的第一個存儲單元和報文解析信息作為數據,基于報文的端口加入到待加解密的報文頭隊列包括:為每個報文隊列設置不同的優先級或/和特性標識,所述報文頭可包含多個存儲單元,存儲單元間通過鏈表的形式實現包內串鏈。
3.根據權利要求1所述的IPSEC緩存管理裝置,其特征在于,所述IPSEC核模塊中集成了多個獨立的IPSEC加解密引擎以及哈希處理邏輯引擎,各獨立引擎的處理能力可以相同或不同。
4.根據權利要求1所述的IPSEC緩存管理裝置,其特征在于,所述IPSEC核模塊中的多個本地報文緩存用于提供帶寬的加速比,多個本地報文緩存可作為整體視為一份高速緩存。
5.根據權利要求1所述的IPSEC緩存管理裝置,其特征在于,所述緩存池模塊中的共享緩存由多個獨立的緩存組組成,所述多個獨立的緩存組之間采用負荷分擔的算法。
7.根據權利要求6所述的IPSEC緩存管理方法,其特征在于,所述接收前級解析完畢的報文并輸入報文隊列,將包含報文頭的第一個存儲單元和報文解析信息作為數據,基于報文的端口加入到待加解密的報文頭隊列包括:為每個報文隊列設置不同的優先級或/和特性標識,所述報文頭可包含多個存儲單元,存儲單元間通過鏈表的形式實現包內串鏈。
8.根據權利要求6所述的IPSEC緩存管理方法,其特征在于,所述IPSEC核模塊中集成了多個獨立的IPSEC加解密引擎以及哈希處理邏輯引擎,各獨立引擎的處理能力可以相同或不同。
9.根據權利要求6所述的IPSEC緩存管理方法,其特征在于,所述IPSEC核模塊中的多個本地報文緩存用于提供帶寬的加速比,多個本地報文緩存可作為整體視為一份高速緩存。
10.根據權利要求6所述的IPSEC緩存管理方法,其特征在于,所述緩存池模塊中的共享緩存由多個獨立的緩存組塊組成,所述多個獨立的緩存組之間采用負荷分擔的算法。
...【技術特征摘要】
1.一種ipsec緩存管理裝置,包含輸入隊列管理模塊、緩存池模塊、ipsec核模塊和輸出隊列管理模塊;其特征在于,
2.根據權利要求1所述的ipsec緩存管理裝置,其特征在于,所述接收前級解析完畢的報文并輸入報文隊列,將包含報文頭的第一個存儲單元和報文解析信息作為數據,基于報文的端口加入到待加解密的報文頭隊列包括:為每個報文隊列設置不同的優先級或/和特性標識,所述報文頭可包含多個存儲單元,存儲單元間通過鏈表的形式實現包內串鏈。
3.根據權利要求1所述的ipsec緩存管理裝置,其特征在于,所述ipsec核模塊中集成了多個獨立的ipsec加解密引擎以及哈希處理邏輯引擎,各獨立引擎的處理能力可以相同或不同。
4.根據權利要求1所述的ipsec緩存管理裝置,其特征在于,所述ipsec核模塊中的多個本地報文緩存用于提供帶寬的加速比,多個本地報文緩存可作為整體視為一份高速緩存。
5.根據權利要求1所述的ipsec緩存管理裝置,其特征在于,所述緩存池模塊中的共享緩存由多個獨立的緩存組組成,所述多個獨立的緩存組之間采用負荷分擔的算法。
6.一種高性能的ips...
【專利技術屬性】
技術研發人員:廖惠勇,向榮,杜欣,
申請(專利權)人:無錫眾星微系統技術有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。