国产精品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>

      數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)系統(tǒng)、負(fù)載均衡方法及裝置制造方法

      文檔序號(hào):7783358閱讀:149來(lái)源:國(guó)知局
      數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)系統(tǒng)、負(fù)載均衡方法及裝置制造方法
      【專利摘要】本發(fā)明公開(kāi)了數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)系統(tǒng),包括:數(shù)據(jù)包轉(zhuǎn)發(fā)模塊,多個(gè)安全引擎和與多個(gè)安全引擎一一對(duì)應(yīng)的環(huán)形隊(duì)列,其中:數(shù)據(jù)包轉(zhuǎn)發(fā)模塊包括包收取模塊,包處理模塊和包發(fā)送模塊;安全引擎,用于從與自身對(duì)應(yīng)的所述環(huán)形隊(duì)列中獲取待轉(zhuǎn)發(fā)數(shù)據(jù)包;對(duì)待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全防護(hù)檢測(cè);將攜帶有安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包放入與自身對(duì)應(yīng)的環(huán)形隊(duì)列中;環(huán)形隊(duì)列,用于存儲(chǔ)包處理模塊發(fā)送的待轉(zhuǎn)發(fā)數(shù)據(jù)包和與自身對(duì)應(yīng)的安全引擎發(fā)送的攜帶有表示安全的安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包。采用本發(fā)明實(shí)施例提供的方案,提高了對(duì)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)的處理效率。
      【專利說(shuō)明】數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)系統(tǒng)、負(fù)載均衡方法及裝置
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及通信領(lǐng)域,尤其涉及數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)系統(tǒng)、負(fù)載均衡方法及裝置。
      【背景技術(shù)】
      [0002]在網(wǎng)絡(luò)通信中進(jìn)行數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí),數(shù)據(jù)包經(jīng)過(guò)網(wǎng)絡(luò)通信中的工作層,可以經(jīng)過(guò)物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層和應(yīng)用層等,在數(shù)據(jù)轉(zhuǎn)發(fā)的過(guò)程中,數(shù)據(jù)包可能會(huì)受到安全威脅,例如,數(shù)據(jù)包可能會(huì)受到DTP攻擊,ARP Flood攻擊,SYN Flood攻擊以及應(yīng)用層的病毒注入等,因此,對(duì)于在網(wǎng)絡(luò)通信中轉(zhuǎn)發(fā)的數(shù)據(jù)包,需要進(jìn)行安全防護(hù)檢測(cè),以保證轉(zhuǎn)發(fā)數(shù)據(jù)包的安全性。
      [0003]目前,現(xiàn)有的進(jìn)行數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)主要為串行式的數(shù)據(jù)包處理方式,具體為:獲取一個(gè)待轉(zhuǎn)發(fā)數(shù)據(jù)包,對(duì)當(dāng)前待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全防護(hù)檢測(cè),當(dāng)檢測(cè)到該當(dāng)前待轉(zhuǎn)發(fā)數(shù)據(jù)包存在安全威脅時(shí),對(duì)該當(dāng)前待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行阻斷或丟棄處理,當(dāng)檢測(cè)該當(dāng)前待轉(zhuǎn)發(fā)數(shù)據(jù)包安全時(shí),將該當(dāng)前待轉(zhuǎn)發(fā)數(shù)據(jù)包發(fā)送給接收端,當(dāng)該當(dāng)前待轉(zhuǎn)發(fā)數(shù)據(jù)包轉(zhuǎn)發(fā)結(jié)束后,對(duì)下一個(gè)待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行上述轉(zhuǎn)發(fā)和安全防護(hù)處理。
      [0004]上述現(xiàn)有的數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)的處理方式中,由于采用串行的數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)處理方式,每次只能針對(duì)一個(gè)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè),數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)的效率低。

      【發(fā)明內(nèi)容】

      [0005]本發(fā)明實(shí)施例提供數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)系統(tǒng)、負(fù)載均衡方法及裝置,用以解決現(xiàn)有技術(shù)中存在的對(duì)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)的處理效率低的問(wèn)題。
      [0006]本發(fā)明實(shí)施例提供一種數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)系統(tǒng),其特征在于,包括:數(shù)據(jù)包轉(zhuǎn)發(fā)模塊,多個(gè)安全引擎和與多個(gè)安全引擎一一對(duì)應(yīng)的環(huán)形隊(duì)列,其中:
      [0007]所述數(shù)據(jù)包轉(zhuǎn)發(fā)模塊包括包收取模塊,包處理模塊和包發(fā)送模塊;
      [0008]所述包收取模塊,用于接收多個(gè)待轉(zhuǎn)發(fā)數(shù)據(jù)包;將多個(gè)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包發(fā)送給所述包處理模塊;
      [0009]所述包處理模塊,用于接收所述包收取模塊發(fā)送的多個(gè)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包;根據(jù)預(yù)設(shè)負(fù)載均衡算法,將所述待轉(zhuǎn)發(fā)數(shù)據(jù)包發(fā)送給多個(gè)安全引擎中負(fù)載能力最強(qiáng)的安全引擎對(duì)應(yīng)的環(huán)形隊(duì)列;接收多個(gè)所述環(huán)形隊(duì)列中攜帶有安全檢測(cè)結(jié)果標(biāo)識(shí)的所述待轉(zhuǎn)發(fā)數(shù)據(jù)包;向所述包發(fā)送模塊發(fā)送攜帶有表示安全的安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包;對(duì)攜帶有表示數(shù)據(jù)包有安全威脅的安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行丟棄或者阻斷轉(zhuǎn)發(fā)處理;
      [0010]所述包發(fā)送模塊,用于接收所述包處理模塊發(fā)送的所述攜帶有表示安全的安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包;將所述攜帶有表示安全的安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包發(fā)送給接收端;[0011]所述安全引擎,用于從與自身對(duì)應(yīng)的所述環(huán)形隊(duì)列中獲取待轉(zhuǎn)發(fā)數(shù)據(jù)包;對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全防護(hù)檢測(cè);將攜帶有安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包放入與自身對(duì)應(yīng)的環(huán)形隊(duì)列中;
      [0012]所述環(huán)形隊(duì)列,用于存儲(chǔ)所述包處理模塊發(fā)送的所述待轉(zhuǎn)發(fā)數(shù)據(jù)包和與自身對(duì)應(yīng)的所述安全引擎發(fā)送的攜帶有表示安全的安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包。
      [0013]采用本發(fā)明提供的上述系統(tǒng),由于采用多個(gè)安全引擎同時(shí)對(duì)待轉(zhuǎn)發(fā)數(shù)據(jù)包并行地進(jìn)行安全檢測(cè),提高了對(duì)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)的處理效率。
      [0014]進(jìn)一步的,所述包處理模塊,具體用于對(duì)從所述包收取模塊接收的多個(gè)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行底層安全防護(hù)檢測(cè);針對(duì)每個(gè)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包,當(dāng)對(duì)該待轉(zhuǎn)發(fā)數(shù)據(jù)包的檢測(cè)結(jié)果為該待轉(zhuǎn)發(fā)數(shù)據(jù)包安全時(shí),根據(jù)預(yù)設(shè)負(fù)載均衡算法,將該待轉(zhuǎn)發(fā)數(shù)據(jù)包發(fā)送給多個(gè)安全引擎中負(fù)載能力最強(qiáng)的安全引擎對(duì)應(yīng)的環(huán)形隊(duì)列;當(dāng)對(duì)該待轉(zhuǎn)發(fā)數(shù)據(jù)包的檢測(cè)結(jié)果為該待轉(zhuǎn)發(fā)數(shù)據(jù)包有安全威脅時(shí),將該待轉(zhuǎn)發(fā)數(shù)據(jù)包丟棄或者阻斷轉(zhuǎn)發(fā)處理。
      [0015]進(jìn)一步的,上述系統(tǒng),還包括:配置解析模塊,用于根據(jù)性能需求和處理器硬件制約條件設(shè)置所述數(shù)據(jù)包轉(zhuǎn)發(fā)模塊的線程個(gè)數(shù)和安全引擎的個(gè)數(shù),對(duì)所述數(shù)據(jù)包轉(zhuǎn)發(fā)模塊和安全引擎進(jìn)行初始化設(shè)置。
      [0016]進(jìn)一步的,所述配置解析模塊,還用于根據(jù)已配置的所述安全引擎的個(gè)數(shù),分別為每個(gè)安全引擎分配與自身對(duì)應(yīng)的環(huán)形隊(duì)列。
      [0017]本發(fā)明實(shí)施例提供一種負(fù)載均衡方法,應(yīng)用于數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)系統(tǒng),所述數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)系統(tǒng)包括:多個(gè)用于對(duì)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎和與多個(gè)安全引擎一一對(duì)應(yīng)的環(huán)形隊(duì)列,所述環(huán)形隊(duì)列用于存儲(chǔ)與該環(huán)形隊(duì)列對(duì)應(yīng)的安全引擎將要進(jìn)行檢測(cè)的數(shù)據(jù)包,該方法包括:
      [0018]根據(jù)待轉(zhuǎn)發(fā)數(shù)據(jù)包的源IP、目的IP和所述安全引擎的個(gè)數(shù)進(jìn)行哈希運(yùn)算,得到哈希運(yùn)算結(jié)果;
      [0019]確定是否存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引;
      [0020]當(dāng)存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎;
      [0021]當(dāng)不存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),從所述多個(gè)安全引擎中確定對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎,并建立所述哈希運(yùn)算結(jié)果與確定的該安全弓I擎對(duì)應(yīng)的環(huán)形隊(duì)列索引之間的對(duì)應(yīng)關(guān)系。
      [0022]采用本發(fā)明實(shí)施例提供的上述方法,由于通過(guò)判斷待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行哈希運(yùn)算的結(jié)果是否存在對(duì)應(yīng)的環(huán)形隊(duì)列索引,確定對(duì)待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎,對(duì)待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行合理的分配,提高了安全引擎對(duì)數(shù)據(jù)包進(jìn)行安全檢測(cè)的性能。
      [0023]進(jìn)一步的,當(dāng)存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎,具體包括:
      [0024]當(dāng)存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值是否不小于預(yù)設(shè)權(quán)值閾值,所述負(fù)載權(quán)值為基于所述安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定的,所述負(fù)載權(quán)值表示該安全引擎的當(dāng)前數(shù)據(jù)包處理能力,所述當(dāng)前數(shù)據(jù)處理流量表示該安全引擎當(dāng)前單位時(shí)間內(nèi)處理的數(shù)據(jù)包的流量;[0025]當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值不小于預(yù)設(shè)權(quán)值閾值時(shí),確定該環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎。
      [0026]進(jìn)一步的,上述方法,還包括:
      [0027]當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值小于預(yù)設(shè)權(quán)值閾值時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值是否為零;
      [0028]當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值不為零時(shí),確定除該環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎以外的負(fù)載權(quán)值最大的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎。
      [0029]進(jìn)一步的,上述方法,還包括: [0030]當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值為零時(shí),將已分發(fā)給該安全引擎的數(shù)據(jù)包標(biāo)記為安全狀態(tài);或者
      [0031]當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值為零時(shí),將已分發(fā)給該安全引擎的數(shù)據(jù)包分發(fā)給除該安全引擎以外的負(fù)載權(quán)值最大的安全引擎;或者
      [0032]當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值為零時(shí),將已分發(fā)給該安全引擎的數(shù)據(jù)包平均分發(fā)給除該安全引擎以外的安全引擎。
      [0033]進(jìn)一步的,確定所述安全引擎的負(fù)載權(quán)值,具體包括:
      [0034]每隔預(yù)設(shè)周期,基于所述安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定所述安全引擎的負(fù)載權(quán)值。
      [0035]進(jìn)一步的,當(dāng)不存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),從所述多個(gè)安全引擎中確定對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎,具體包括:
      [0036]當(dāng)不存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),從所述多個(gè)安全引擎中確定負(fù)載權(quán)值最大的安全引擎為對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎,所述負(fù)載權(quán)值為基于所述安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定的,所述負(fù)載權(quán)值表示該安全引擎的當(dāng)前數(shù)據(jù)包處理能力,所述當(dāng)前數(shù)據(jù)處理流量表示該安全引擎當(dāng)前單位時(shí)間內(nèi)處理的數(shù)據(jù)包的流量。
      [0037]進(jìn)一步的,針對(duì)每個(gè)安全引擎,基于該安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定該安全引擎的負(fù)載權(quán)值,具體包括:
      [0038]采用如下公式確定該安全引擎的負(fù)載權(quán)值:
      [0039]F(iH<xQx[ax(l-C//Jc:)+bx(l-S//^;S/)];
      /=1 i=l
      [0040]其中,F(xiàn)(i)為第i個(gè)安全引擎的負(fù)載權(quán)值,K為常數(shù),Q表示第i個(gè)安全引擎的工作狀態(tài),Q=O表示該安全引擎的工作狀態(tài)為異常,Q=I表示該安全引擎的工作狀態(tài)為正常,Ci



      n
      為第i個(gè)安全引擎的CPU占用率,Xc'/為各安全引擎的CPU占用率的和,Si為第i個(gè)安全



      Z-1



      n
      引擎的當(dāng)前數(shù)據(jù)處理流量,!>/為各安全引擎的當(dāng)前數(shù)據(jù)處理流量的和,n為所有安全引



      /=1
      擎的個(gè)數(shù),a, b為常數(shù),a>b。
      [0041]本發(fā)明實(shí)施例還提供了一種負(fù)載均衡裝置,應(yīng)用于安全檢測(cè)系統(tǒng),所述安全檢測(cè)系統(tǒng)包括:多個(gè)用于對(duì)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎和與多個(gè)安全引擎一一對(duì)應(yīng)的環(huán)形隊(duì)列,所述環(huán)形隊(duì)列用于存儲(chǔ)與該環(huán)形隊(duì)列對(duì)應(yīng)的安全引擎將要進(jìn)行檢測(cè)的數(shù)據(jù)包;所述裝置,包括:
      [0042]運(yùn)算單元,用于根據(jù)待轉(zhuǎn)發(fā)數(shù)據(jù)包的源IP、目的IP和所述安全引擎的個(gè)數(shù)進(jìn)行哈希運(yùn)算,得到哈希運(yùn)算結(jié)果;
      [0043]索引確定單元,用于確定是否存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引;
      [0044]第一確定單元,用于當(dāng)存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎;
      [0045]第二確定單元,用于當(dāng)不存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),從所述多個(gè)安全引擎中確定對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎,并建立所述哈希運(yùn)算結(jié)果與確定的該安全引擎對(duì)應(yīng)的環(huán)形隊(duì)列索引之間的對(duì)應(yīng)關(guān)系。
      [0046]進(jìn)一步的,所述第一確定單元,具體用于當(dāng)存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值是否不小于預(yù)設(shè)權(quán)值閾值,所述負(fù)載權(quán)值為基于所述安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定的,所述負(fù)載權(quán)值表示該安全引擎的當(dāng)前數(shù)據(jù)包處理能力,所述當(dāng)前數(shù)據(jù)處理流量表示該安全引擎當(dāng)前單位時(shí)間內(nèi)處理的數(shù)據(jù)包的流量;當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值不小于預(yù)設(shè)權(quán)值閾值時(shí),確定該環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎。
      [0047]進(jìn)一步的,上述裝置,還包括:
      [0048]第三確定單元,用于當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值小于預(yù)設(shè)權(quán)值閾值時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值是否為零;
      [0049]第四確定單元,用于當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值不為零時(shí),確定除該環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎以外的負(fù)載權(quán)值最大的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎。
      [0050]進(jìn)一步的,上述裝置,還包括:
      [0051]分發(fā)單元,用于當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值為零時(shí),將已分發(fā)給該安全引擎的數(shù)據(jù)包標(biāo)記為安全狀態(tài);或者
      [0052]當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值為零時(shí),將已分發(fā)給該安全引擎的數(shù)據(jù)包分發(fā)給除該安全引擎以外的負(fù)載權(quán)值最大的安全引擎;或者
      [0053]當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值為零時(shí),將已分發(fā)給該安全引擎的數(shù)據(jù)包平均分發(fā)給除該安全引擎以外的安全引擎。
      [0054]進(jìn)一步的,所述第一確定單元,具體用于每隔預(yù)設(shè)周期,基于所述安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定所述安全引擎的負(fù)載權(quán)值。
      [0055]進(jìn)一步的,所述第二確定單元,具體用于當(dāng)不存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),從所述多個(gè)安全引擎中確定負(fù)載權(quán)值最大的安全引擎為對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎,所述負(fù)載權(quán)值為基于所述安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定的,所述負(fù)載權(quán)值表示該安全引擎的當(dāng)前數(shù)據(jù)包處理能力,所述當(dāng)前數(shù)據(jù)處理流量表示該安全引擎當(dāng)前單位時(shí)間內(nèi)處理的數(shù)據(jù)包的流量。
      [0056]進(jìn)一步的,所述第一確定單元,具體用于采用如下公式確定所述安全引擎的負(fù)載權(quán)值:
      【權(quán)利要求】
      1.一種數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)系統(tǒng),其特征在于,包括:數(shù)據(jù)包轉(zhuǎn)發(fā)模塊,多個(gè)安全引擎和與多個(gè)安全引擎一一對(duì)應(yīng)的環(huán)形隊(duì)列,其中: 所述數(shù)據(jù)包轉(zhuǎn)發(fā)模塊包括包收取模塊,包處理模塊和包發(fā)送模塊; 所述包收取模塊,用于接收多個(gè)待轉(zhuǎn)發(fā)數(shù)據(jù)包;將多個(gè)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包發(fā)送給所述包處理模塊; 所述包處理模塊,用于接收所述包收取模塊發(fā)送的多個(gè)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包;根據(jù)預(yù)設(shè)負(fù)載均衡算法,將所述待轉(zhuǎn)發(fā)數(shù)據(jù)包發(fā)送給多個(gè)安全引擎中負(fù)載能力最強(qiáng)的安全引擎對(duì)應(yīng)的環(huán)形隊(duì)列;接收多個(gè)所述環(huán)形隊(duì)列中攜帶有安全檢測(cè)結(jié)果標(biāo)識(shí)的所述待轉(zhuǎn)發(fā)數(shù)據(jù)包;向所述包發(fā)送模塊發(fā)送攜帶有表示安全的安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包;對(duì)攜帶有表示數(shù)據(jù)包有安全威脅的安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行丟棄或者阻斷轉(zhuǎn)發(fā)處理; 所述包發(fā)送模塊,用于接收所述包處理模塊發(fā)送的所述攜帶有表示安全的安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包;將所述攜帶有表示安全的安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包發(fā)送給接收端; 所述安全引擎,用于從與自身對(duì)應(yīng)的所述環(huán)形隊(duì)列中獲取待轉(zhuǎn)發(fā)數(shù)據(jù)包;對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全防護(hù)檢測(cè);將攜帶有安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包放入與自身對(duì)應(yīng)的環(huán)形隊(duì)列中; 所述環(huán)形隊(duì)列,用于存儲(chǔ)所述包處理模塊發(fā)送的所述待轉(zhuǎn)發(fā)數(shù)據(jù)包和與自身對(duì)應(yīng)的所述安全引擎發(fā)送的攜帶有表示安全的安全檢測(cè)結(jié)果標(biāo)識(shí)的待轉(zhuǎn)發(fā)數(shù)據(jù)包。
      2.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述包處理模塊,具體用于對(duì)從所述包收取模塊接收的多個(gè)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行底層協(xié)議安全防護(hù)檢測(cè);針對(duì)每個(gè)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包,當(dāng)對(duì)該待轉(zhuǎn)發(fā)數(shù)據(jù)包的檢測(cè)結(jié)果為該待轉(zhuǎn)發(fā)數(shù)據(jù)包安全時(shí),根據(jù)預(yù)設(shè)負(fù)載均衡算法,將該待轉(zhuǎn)發(fā)數(shù)據(jù)包發(fā)送給多個(gè)安全引擎中負(fù)載能力最強(qiáng)的安全引擎對(duì)應(yīng)的環(huán)形隊(duì)列;當(dāng)對(duì)該待轉(zhuǎn)發(fā)數(shù)據(jù)包的檢測(cè)結(jié)果為該待轉(zhuǎn)發(fā)數(shù)據(jù)包有安全威脅時(shí),將該待轉(zhuǎn)發(fā)數(shù)據(jù)包丟棄或者阻斷轉(zhuǎn)發(fā)處理。
      3.如權(quán)利要求1所述的系統(tǒng),其特征在于,還包括:配置解析模塊,用于根據(jù)性能需求和處理器硬件制約條件設(shè)置所述數(shù)據(jù)包轉(zhuǎn)發(fā)模塊的線程個(gè)數(shù)和安全引擎的個(gè)數(shù),對(duì)所述數(shù)據(jù)包轉(zhuǎn)發(fā)模塊和安全引擎進(jìn)行初始化設(shè)置。
      4.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述配置解析模塊,還用于根據(jù)已配置的所述安全引擎的個(gè)數(shù),分別為每個(gè)安全引擎分配與自身對(duì)應(yīng)的環(huán)形隊(duì)列。
      5.一種負(fù)載均衡方法,其特征在于,應(yīng)用于數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)系統(tǒng),所述數(shù)據(jù)包轉(zhuǎn)發(fā)和安全防護(hù)檢測(cè)系統(tǒng)包括:多個(gè)用于對(duì)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎和與多個(gè)安全引擎一一對(duì)應(yīng)的環(huán)形隊(duì)列,所述環(huán)形隊(duì)列用于存儲(chǔ)與該環(huán)形隊(duì)列對(duì)應(yīng)的安全引擎將要進(jìn)行檢測(cè)的數(shù)據(jù)包;所述方法包括: 根據(jù)待轉(zhuǎn)發(fā)數(shù)據(jù)包的源IP、目的IP和所述安全引擎的個(gè)數(shù)進(jìn)行哈希運(yùn)算,得到哈希運(yùn)算結(jié)果; 確定是否存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引; 當(dāng)存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎; 當(dāng)不存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),從所述多個(gè)安全引擎中確定對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎,并建立所述哈希運(yùn)算結(jié)果與確定的該安全引擎對(duì)應(yīng)的環(huán)形隊(duì)列索引之間的對(duì)應(yīng)關(guān)系。
      6.如權(quán)利要求5所述的方法,其特征在于,當(dāng)存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎,具體包括: 當(dāng)存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值是否不小于預(yù)設(shè)權(quán)值閾值,所述負(fù)載權(quán)值為基于所述安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定的,所述負(fù)載權(quán)值表示該安全引擎的當(dāng)前數(shù)據(jù)包處理能力,所述當(dāng)前數(shù)據(jù)處理流量表示該安全引擎當(dāng)前單位時(shí)間內(nèi)處理的數(shù)據(jù)包的流量; 當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值不小于預(yù)設(shè)權(quán)值閾值時(shí),確定該環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎。
      7.如權(quán)利要求6所述的方法,其特征在于,還包括: 當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值小于預(yù)設(shè)權(quán)值閾值時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值是否為零; 當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值不為零時(shí),確定除該環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎以外的負(fù)載權(quán)值最大的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎。
      8.如權(quán)利要求7所述的方法,其特征在于,還包括: 當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值為零時(shí),將已分發(fā)給該安全引擎的數(shù)據(jù)包標(biāo)記為安全狀態(tài);或者 當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引`擎的負(fù)載權(quán)值為零時(shí),將已分發(fā)給該安全引擎的數(shù)據(jù)包分發(fā)給除該安全引擎以外的負(fù)載權(quán)值最大的安全引擎;或者 當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值為零時(shí),將已分發(fā)給該安全引擎的數(shù)據(jù)包平均分發(fā)給除該安全引擎以外的安全引擎。
      9.如權(quán)利要求6所述的方法,其特征在于,確定所述安全引擎的負(fù)載權(quán)值,具體包括: 每隔預(yù)設(shè)周期,基于所述安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定所述安全引擎的負(fù)載權(quán)值。
      10.如權(quán)利要求5所述的方法,其特征在于,當(dāng)不存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),從所述多個(gè)安全引擎中確定對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎,具體包括: 當(dāng)不存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),從所述多個(gè)安全引擎中確定負(fù)載權(quán)值最大的安全引擎為對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎,所述負(fù)載權(quán)值為基于所述安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定的,所述負(fù)載權(quán)值表示該安全引擎的當(dāng)前數(shù)據(jù)包處理能力,所述當(dāng)前數(shù)據(jù)處理流量表示該安全引擎當(dāng)前單位時(shí)間內(nèi)處理的數(shù)據(jù)包的流量。
      11.如權(quán)利要求6-10任一所述的方法,其特征在于,針對(duì)每個(gè)安全引擎,基于該安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定該安全引擎的負(fù)載權(quán)值,具體包括:采用如下公式確定該安全引擎的負(fù)載權(quán)值:

      12.—種負(fù)載均衡裝置,其特征在于,應(yīng)用于安全檢測(cè)系統(tǒng),所述安全檢測(cè)系統(tǒng)包括:多個(gè)用于對(duì)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎和與多個(gè)安全引擎一一對(duì)應(yīng)的環(huán)形隊(duì)列,所述環(huán)形隊(duì)列用于存儲(chǔ)與該環(huán)形隊(duì)列對(duì)應(yīng)的安全引擎將要進(jìn)行檢測(cè)的數(shù)據(jù)包;所述裝置,包括: 運(yùn)算單元,用于根據(jù)待轉(zhuǎn)發(fā)數(shù)據(jù)包的源IP、目的IP和所述安全引擎的個(gè)數(shù)進(jìn)行哈希運(yùn)算,得到哈希運(yùn)算結(jié)果; 索引確定單元,用于確定是否存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引; 第一確定單元,用于當(dāng)存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎; 第二確定單元,用于當(dāng)不存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),從所述多個(gè)安全引擎中確定對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎,并建立所述哈希運(yùn)算結(jié)果與確定的該安全引擎對(duì)應(yīng)的環(huán)形隊(duì)列索引之間的對(duì)應(yīng)關(guān)系。
      13.如權(quán)利要求12所述的裝置,其特征在于,所述第一確定單元,具體用于當(dāng)存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值是否不小于預(yù)設(shè)權(quán)值閾值,所述負(fù)載權(quán)值為基于所述安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定的,所述負(fù)載權(quán)值表示該安全引擎的當(dāng)前數(shù)據(jù)包處理能力,所述當(dāng)前數(shù)據(jù)處理流量表示該安全引擎當(dāng)前單位時(shí)間內(nèi)處理的數(shù)據(jù)包的流量;當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值不小于預(yù)設(shè)權(quán)值閾值時(shí),確定該環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎。
      14.如權(quán)利要求13所述的裝置,其特征在于,還包括: 第三確定單元,用于當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值小于預(yù)設(shè)權(quán)值閾值時(shí),確定所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值是否為零; 第四確定單元,用于當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值不為零時(shí),確定除該環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎以外的負(fù)載權(quán)值最大的安全引擎為將要對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎。
      15.如權(quán)利要求14所述的裝置,其特征在于,還包括: 分發(fā)單元,用于當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值為零時(shí),將已分發(fā)給該安全引擎的數(shù)據(jù)包標(biāo)記為安全狀態(tài);或者 當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值為零時(shí),將已分發(fā)給該安全引擎的數(shù)據(jù)包分發(fā)給除該安全引擎以外的負(fù)載權(quán)值最大的安全引擎;或者 當(dāng)所述環(huán)形隊(duì)列索引對(duì)應(yīng)的安全引擎的負(fù)載權(quán)值為零時(shí),將已分發(fā)給該安全引擎的數(shù)據(jù)包平均分發(fā)給除該安全引擎以外的安全引擎。
      16.如權(quán)利要求13所述的裝置,其特征在于,所述第一確定單元,具體用于每隔預(yù)設(shè)周期,基于所述安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定所述安全引擎的負(fù)載權(quán)值。
      17.如權(quán)利要求12所述的裝置,其特征在于,所述第二確定單元,具體用于當(dāng)不存在與所述哈希運(yùn)算結(jié)果對(duì)應(yīng)的環(huán)形隊(duì)列索引時(shí),從所述多個(gè)安全引擎中確定負(fù)載權(quán)值最大的安全引擎為對(duì)所述待轉(zhuǎn)發(fā)數(shù)據(jù)包進(jìn)行安全檢測(cè)的安全引擎,所述負(fù)載權(quán)值為基于所述安全引擎的工作狀態(tài)、CPU占用率和獲取的該安全引擎的當(dāng)前數(shù)據(jù)處理流量確定的,所述負(fù)載權(quán)值表示該安全引擎的當(dāng)前數(shù)據(jù)包處理能力,所述當(dāng)前數(shù)據(jù)處理流量表示該安全引擎當(dāng)前單位時(shí)間內(nèi)處理的數(shù)據(jù)包的流量。
      18.如權(quán)利要求13-17任一所述的裝置,其特征在于,所述第一確定單元,具體用于采用如下公式確定所述安全引擎的負(fù)載權(quán)值:
      【文檔編號(hào)】H04L29/06GK103685321SQ201310753226
      【公開(kāi)日】2014年3月26日 申請(qǐng)日期:2013年12月31日 優(yōu)先權(quán)日:2013年12月31日
      【發(fā)明者】彭權(quán) 申請(qǐng)人:北京神州綠盟信息安全科技股份有限公司, 北京神州綠盟科技有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1