国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      多加解密芯片并行處理報文加解密的保序方法及系統(tǒng)的制作方法

      文檔序號:7861681閱讀:223來源:國知局
      專利名稱:多加解密芯片并行處理報文加解密的保序方法及系統(tǒng)的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種多加解密芯片并行處理報文加解密的保序方法及系統(tǒng)。
      背景技術(shù)
      帶網(wǎng)絡(luò)協(xié)議安全性(Internet Protocol Securit, IPSEC)功能的高端網(wǎng)絡(luò)設(shè)備, 大多采用η (η大于等于I)個通用CPU (例如intel的atom通用CPU)加m (m大于等于2) 個加解密專用CPU (例如Cavium Networks公司的cavium加解密芯片)來對發(fā)送或接收的報文進行加解密。但是現(xiàn)有技術(shù)中,多個加解密芯片同時進行報文加解密處理時無法對報文進行保序,在報文處理完成后,會產(chǎn)生報文發(fā)送時的亂序現(xiàn)象(測試中有千分之三的亂序幾率),進而導(dǎo)致丟包或者視頻馬賽克,使得網(wǎng)絡(luò)通信受到較為嚴重的阻滯。發(fā)明內(nèi)容
      (一)要解決的技術(shù)問題
      本發(fā)明要解決的技術(shù)問題是提供一種多加解密芯片并行處理報文加解密的保序方法及系統(tǒng),以解決多個加解密芯片同時進行報文加解密處理時無法對報文進行保序的問題。
      (二)技術(shù)方案
      為解決上述問題,一方面,本發(fā)明提供了一種多加解密芯片并行處理報文加解密的保序方法,包括以下步驟
      SI :設(shè)置報文處理循環(huán)鏈表,任一個CPU接收到報文后獲得所述報文對應(yīng)的加解密密鑰,并將所述報文及對應(yīng)的加解密密鑰按序放入所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上;
      S2 :所述CPU獲取空閑的加解密芯片,并將對應(yīng)報文交給所述加解密芯片;
      S3 :加解密芯片讀取報文對應(yīng)節(jié)點的節(jié)點數(shù)據(jù),根據(jù)報文需要進行的加解密類型對報文進行加解密處理后,將報文放回到所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上。
      其中,在所述步驟S3之后,還包括步驟S4 :
      任意空閑CPU在報文處理循環(huán)鏈表上獲取需要處理的報文,判斷報文是否已經(jīng)被加解密芯片處理完畢如果沒有,則不做任何操作;否則獲取加解密后的報文并處理。
      其中,所述報文處理鏈表上的每個節(jié)點包括以下節(jié)點數(shù)據(jù)需要加解密處理的報文地址指針;加解密處理后的報文地址指針;需要對報文進行的加解密類型信息;加解密使用的加解密密鑰;以及所述報文處理循環(huán)鏈表中下一個節(jié)點的位置。
      其中,所述任一個CPU接收到所述報文后獲得報文對應(yīng)的加解密密鑰的步驟具體為對于需要加密的報文任一個CPU通過配置的安全聯(lián)盟隧道數(shù)據(jù)匹配規(guī)則對報文進行匹配,在匹配成功后獲得匹配成功的安全聯(lián)盟隧道;
      對于需要解密的報文任一個CPU根據(jù)報文的三元組信息找到相應(yīng)的安全聯(lián)盟,并取出所述安全聯(lián)盟中對應(yīng)的解密密鑰。
      其中,所述CPU將所述報文及對應(yīng)的加解密密鑰按序放入所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上的步驟具體為所述CPU獲取當前節(jié)點的下一個節(jié)點,并根據(jù)報文的地址、加解密密鑰、以及需要進行的加解密類型完善獲取的節(jié)點對應(yīng)的節(jié)點數(shù)據(jù)。
      其中,所述步驟S2中所述CPU獲取空閑的加解密芯片的步驟具體為所述CPU獲取當前處理加解密數(shù)據(jù)的加解密芯片的序號+1后除以加解密芯片的總數(shù)再取余,得到空閑的加解密芯片的序號。
      其中,所述步驟S3具體為
      加解密芯片獲取節(jié)點對應(yīng)的節(jié)點數(shù)據(jù)中需要加解密處理的報文地址指針、加解密密鑰以及需要進行的加解密類型,根據(jù)這些節(jié)點數(shù)據(jù)對報文進行加解密處理后,將處理后的報文放入節(jié)點數(shù)據(jù)中加解密處理后的報文地址指針所指的地址中。
      另一方面,本發(fā)明還提供了一種多加解密芯片并行處理報文加解密的保序系統(tǒng), 包括
      報文處理循環(huán)鏈表設(shè)置模塊,用于設(shè)置報文處理循環(huán)鏈表;
      多核CPU,用于在接收到報文后獲得所述報文對應(yīng)的加解密密鑰,并將所述報文及對應(yīng)的加解密密鑰按序放入所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上;獲取空閑的加解密芯片,并將對應(yīng)報文交給所述加解密芯片;
      加解密芯片,用于讀取報文對應(yīng)節(jié)點的節(jié)點數(shù)據(jù),根據(jù)報文需要進行的加解密類型對報文進行加解密處理后,將報文放回到所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上。
      (三)有益效果
      本發(fā)明通過使用循環(huán)鏈表,讓多個加解密芯片獲取當前鏈表上當前位置的節(jié)點報文,處理完此報文后再放回到原來的鏈表節(jié)點上的方法,使多個加解密芯片協(xié)同處理的同時得到報文的保序目的,防止出現(xiàn)報文發(fā)送時的亂序現(xiàn)象。


      圖I為根據(jù)本發(fā)明實施例保序方法的流程示意圖2為根據(jù)本發(fā)明實施例保序系統(tǒng)的結(jié)構(gòu)示意圖。
      具體實施方式
      下面結(jié)合附圖及實施例對本發(fā)明進行詳細說明如下。
      實施例一
      如圖I所示,本實施例記載了一種多加解密芯片并行處理報文加解密的保序方法,包括以下步驟
      SI :設(shè)置報文處理循環(huán)鏈表,任一個CPU接收到報文后獲得所述報文對應(yīng)的加解密密鑰,并將所述報文及對應(yīng)的加解密密鑰按序放入所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上;
      S2 :所述CPU獲取空閑的加解密芯片,并將對應(yīng)報文交給所述加解密芯片;
      S3 :加解密芯片讀取報文對應(yīng)節(jié)點的節(jié)點數(shù)據(jù),根據(jù)報文需要進行的加解密類型對報文進行加解密處理后,將報文放回到所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上。
      本實施例中,在所述步驟S3之后,還包括步驟S4
      任意空閑CPU在報文處理循環(huán)鏈表上獲取需要處理的報文,判斷報文是否已經(jīng)被加解密芯片處理完畢如果沒有,則不做任何操作;否則獲取加解密后的報文并處理。
      下面以一個具體的實施例來說明本發(fā)明
      本實施例以當前有2個通用CPU (CPU0和CPU1)加3個加解密芯片(caviumO, caviuml, cavium2)的架構(gòu)為例。
      設(shè)置鏈表長為500個節(jié)點的報文處理循環(huán)鏈表,每個節(jié)點的結(jié)構(gòu)體中的節(jié)點數(shù)據(jù)包括需要加解密處理的報文地址指針;加解密處理后的報文地址指針;需要對報文進行的加解密類型信息(即加密還是解密);加解密使用的加解密密鑰;以及所述報文處理循環(huán)鏈表中下一個節(jié)點的位置(此數(shù)據(jù)在設(shè)備初始化的時候已經(jīng)設(shè)置好,不需要修改)。
      設(shè)置當前可使用的節(jié)點位置指針全局變量、最后一個處理完的節(jié)點位置指針全局變量、當前處理加解密數(shù)據(jù)的加解密芯片的序號。其中,設(shè)備初始化的時候當前可使用的節(jié)點位置指針全局變量和最后一個處理完的節(jié)點位置指針全局變量會與鏈表第一個節(jié)點的值相同。
      對于需要加密的ip數(shù)據(jù)報文CPU0通過配置的安全聯(lián)盟隧道數(shù)據(jù)匹配規(guī)則對報文進行匹配,在匹配成功后獲得匹配成功的安全聯(lián)盟隧道,用于對報文進行加密;對于需要解密的esp/ah報文CPU0根據(jù)報文的三元組信息(spi、協(xié)議號、原ip地址)找到相應(yīng)的安全聯(lián)盟(ipsec sa),并取出所述安全聯(lián)盟中對應(yīng)的解密密鑰,CPUO根據(jù)當前節(jié)點的節(jié)點數(shù)據(jù)中下一個節(jié)點的位置獲取當前節(jié)點的下一個節(jié)點,并根據(jù)報文的地址、加解密密鑰、以及需要進行的加解密類型完善獲取的節(jié)點對應(yīng)的節(jié)點數(shù)據(jù)。然后將當前可使用的節(jié)點位置指針全局變量賦值為所述下一個節(jié)點。
      CPUO獲取當前處理加解密數(shù)據(jù)的加解密芯片的序號+1后除以加解密芯片的總數(shù)再取余,得到空閑的加解密芯片的序號;然后將空閑加解密芯片全局變量加I。即
      空閑的加解密芯片的序號=| (當前處理加解密數(shù)據(jù)的加解密芯片的序號+l)/n|, 其中η為加解密芯片的總數(shù)。
      如本實施例中,加解密芯片的總數(shù)為3,若當前處理加解密數(shù)據(jù)的加解密芯片為 caviumO,其序號為O,則| (0+1)/3 | =1,即獲取空閑的加解密芯片caviuml。
      加解密芯片獲取節(jié)點對應(yīng)的節(jié)點數(shù)據(jù)中需要加解密處理的報文地址指針、加解密密鑰以及需要進行的加解密類型,根據(jù)這些節(jié)點數(shù)據(jù)對報文進行加解密處理后,將處理后的報文放入節(jié)點數(shù)據(jù)中加解密處理后的報文地址指針所指的地址中。
      本實施例中,所述步驟S4具體為
      任意空閑CPU讀取當前可使用的節(jié)點位置指針全局變量和最后一個處理完的節(jié)點位置指針全局變量的值,判斷是否相同,如果相同,說明沒有報文需要處理,如果不相同, 則讀取最后一個處理完的節(jié)點位置指針全局變量的值,并判斷節(jié)點的節(jié)點數(shù)據(jù)中的加解密處理后的報文地址指針是否為空,如果為空,說明加解密芯片還沒有處理完,則不做任何操作,如果不為空,則首先獲取加解密處理后的報文地址指針(加解密后的報文)并將最后一個處理完的節(jié)點位置指針全局變量的值賦值為最后一個處理完的節(jié)點位置指針全局變量的下一個節(jié)點的位置值,然后處理之前獲取的加解密后的報文。
      本發(fā)明通過使用循環(huán)鏈表,讓多個加解密芯片獲取當前鏈表當前位置的節(jié)點報5文,處理完此報文后再放回到原來的鏈表節(jié)點上的方法,使多個加解密CPU協(xié)同處理的同時得到報文的保序目的,防止出現(xiàn)報文發(fā)送時的亂序現(xiàn)象。
      實施例二
      如圖2所示,本實施例記載了一種多加解密芯片并行處理報文加解密的保序系統(tǒng),包括
      報文處理循環(huán)鏈表設(shè)置模塊201,用于設(shè)置報文處理循環(huán)鏈表;
      多核CPU 202,用于在接收到報文后獲得所述報文對應(yīng)的加解密密鑰,并將所述報文及對應(yīng)的加解密密鑰按序放入所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上;獲取空閑的加解密芯片,并將對應(yīng)報文交給所述加解密芯片;
      加解密芯片203,用于讀取報文對應(yīng)節(jié)點的節(jié)點數(shù)據(jù),根據(jù)報文需要進行的加解密類型對報文進行加解密處理后,將報文放回到所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上。
      以上實施方式僅用于說明本發(fā)明,而并非對本發(fā)明的限制,有關(guān)技術(shù)領(lǐng)域的普通技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術(shù)方案也屬于本發(fā)明的范疇,本發(fā)明的專利保護范圍應(yīng)由權(quán)利要求限定。
      權(quán)利要求
      1.一種多加解密芯片并行處理報文加解密的保序方法,其特征在于,包括以下步驟 51:設(shè)置報文處理循環(huán)鏈表,任一個CPU接收到報文后獲得所述報文對應(yīng)的加解密密鑰,并將所述報文及對應(yīng)的加解密密鑰按序放入所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上; 52:所述CPU獲取空閑的加解密芯片,并將對應(yīng)報文交給所述加解密芯片; S3:加解密芯片讀取報文對應(yīng)節(jié)點的節(jié)點數(shù)據(jù),根據(jù)報文需要進行的加解密類型對報文進行加解密處理后,將報文放回到所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上。
      2.如權(quán)利要求I所述的方法,其特征在于,在所述步驟S3之后,還包括步驟S4 任意空閑CPU在報文處理循環(huán)鏈表上獲取需要處理的報文,判斷報文是否已經(jīng)被加解密芯片處理完畢如果沒有,則不做任何操作;否則獲取加解密后的報文并處理。
      3.如權(quán)利要求I或2所述的方法,其特征在于,所述報文處理鏈表上的每個節(jié)點包括以下節(jié)點數(shù)據(jù)需要加解密處理的報文地址指針;加解密處理后的報文地址指針;需要對報文進行的加解密類型信息;加解密使用的加解密密鑰;以及所述報文處理循環(huán)鏈表中下一個節(jié)點的位置。
      4.如權(quán)利要求I所述的方法,其特征在于,所述步驟SI中,所述任一個CPU接收到所述報文后獲得報文對應(yīng)的加解密密鑰的步驟具體為 對于需要加密的報文任一個CPU通過配置的安全聯(lián)盟隧道數(shù)據(jù)匹配規(guī)則對報文進行匹配,在匹配成功后獲得匹配成功的安全聯(lián)盟隧道; 對于需要解密的報文任一個CPU根據(jù)報文的三元組信息找到相應(yīng)的安全聯(lián)盟,并取出所述安全聯(lián)盟中對應(yīng)的解密密鑰。
      5.如權(quán)利要求3所述的方法,其特征在于,所述步驟SI中,所述CPU將所述報文及對應(yīng)的加解密密鑰按序放入所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上的步驟具體為所述CPU獲取當前節(jié)點的下一個節(jié)點,并根據(jù)報文的地址、加解密密鑰、以及需要進行的加解密類型完善獲取的節(jié)點對應(yīng)的節(jié)點數(shù)據(jù)。
      6.如權(quán)利要求3所述的方法,其特征在于,所述步驟S2中所述CPU獲取空閑的加解密芯片的步驟具體為所述CPU獲取當前處理加解密數(shù)據(jù)的加解密芯片的序號+1后除以加解密芯片的總數(shù)再取余,得到空閑的加解密芯片的序號。
      7.如權(quán)利要求3所述的方法,其特征在于,所述步驟S3具體為 加解密芯片獲取節(jié)點對應(yīng)的節(jié)點數(shù)據(jù)中需要加解密處理的報文地址指針、加解密密鑰以及需要進行的加解密類型,根據(jù)這些節(jié)點數(shù)據(jù)對報文進行加解密處理后,將處理后的報文放入節(jié)點數(shù)據(jù)中加解密處理后的報文地址指針所指的地址中。
      8.一種多加解密芯片并行處理報文加解密的保序系統(tǒng),其特征在于,包括 報文處理循環(huán)鏈表設(shè)置模塊,用于設(shè)置報文處理循環(huán)鏈表; 多核CPU,用于在接收到報文后獲得所述報文對應(yīng)的加解密密鑰,并將所述報文及對應(yīng)的加解密密鑰按序放入所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上;獲取空閑的加解密芯片,并將對應(yīng)報文交給所述加解密芯片; 加解密芯片,用于讀取報文對應(yīng)節(jié)點的節(jié)點數(shù)據(jù),根據(jù)報文需要進行的加解密類型對報文進行加解密處理后,將報文放回到所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上。
      全文摘要
      本發(fā)明公開了一種多加解密芯片并行處理報文加解密的保序方法,包括以下步驟S1設(shè)置報文處理循環(huán)鏈表,任一個CPU接收到報文后獲得所述報文對應(yīng)的加解密密鑰,并將所述報文及對應(yīng)的加解密密鑰按序放入所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上;S2所述CPU獲取空閑的加解密芯片,并將對應(yīng)報文交給所述加解密芯片;S3加解密芯片讀取報文對應(yīng)節(jié)點的節(jié)點數(shù)據(jù),根據(jù)報文需要進行的加解密類型對報文進行加解密處理后,將報文放回到所述報文處理循環(huán)鏈表相應(yīng)的節(jié)點上。本發(fā)明還公開了一種實現(xiàn)上述保序方法的保序系統(tǒng)。本發(fā)明在多個加解密芯片同時進行報文加解密處理時也能保證報文的順序,防止出現(xiàn)報文發(fā)送時的亂序現(xiàn)象。
      文檔編號H04L9/18GK102932141SQ20121036656
      公開日2013年2月13日 申請日期2012年9月27日 優(yōu)先權(quán)日2012年9月27日
      發(fā)明者陳海濱 申請人:漢柏科技有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1