用于網關設備的數據處理方法和裝置制造方法
【專利摘要】本發明公開了一種用于網關設備的數據處理方法和裝置。其中,用于網關設備的數據處理方法包括:網關設備接收來自互聯網的數據包;網關設備對數據包進行檢測,得到檢測結果;網關設備根據檢測結果判斷數據包是否為異常數據;如果網關設備判斷出數據包為異常數據,則網關設備建立數據包對應的會話信息;以及當再次接收數據包時,網關設備根據數據包對應的會話信息丟棄數據包。通過本發明,達到了提高網關設備對于異常數據的處理效率的效果。
【專利說明】用于網關設備的數據處理方法和裝置
【技術領域】
[0001]本發明涉及計算機網絡領域,具體而言,涉及一種用于網關設備的數據處理方法和裝置。
【背景技術】
[0002]網關設備用于隔離本地計算機與外界網絡,是本地計算機與外界網絡之間的一道防御系統。網關設備對流經它的網絡數據流量進行過濾,把安全合法的數據流量正常轉發,把異常的不合法的數據流量即異常數據丟棄,從而最大限度地阻止網絡中的黑客對本地計算機的攻擊。即安全網關設備既要實現數據流量的正常轉發,又要最大限度地阻止網絡攻擊。
[0003]為了實現數據的快速轉發,現有的技術是建立會話session表(也稱快速轉發表)來記錄數據信息,通過session表中記錄的數據信息實現數據的快速轉發。Session表中包括數據的源IP、目的IP、源端口、目的端口和協議信息等五個元素,又名五元組,用來唯一的描述一組數據流(即數據包)。在session表建立以后,后續的數據包經過安全網關的時候就會對比session表里的信息,進而實現轉發或是丟棄。采用上述數據轉發技術,大大縮減了 IP報文的排隊流程,減少了報文的轉發時間,提高了 IP報文的轉發吞吐量,提高了安全網關的性能。具體地,現有的數據轉發技術在安全網關設備接收到數據包之后,先將數據包的屬性信息(例如數據的五元組)去匹配session表中的信息,如果匹配到session表中的信息則進入匹配轉發流程,即,對數據包直接進行轉發;否則進入慢速轉發流程,即,獲取該數據包的屬性信息,判斷該數據包的屬性信息是否合法,依據判斷結果確定對該數據包是否進行轉發。然而,當網關設備接收到的數據為異常數據時,都會進入慢速轉發流程,但是匹配結果通常都為丟棄,且慢速轉發流程會占用中央處理器CPU,從而浪費CPU的利用率,降低了數據處理的效率。
[0004]針對現有技術中網關設備對于異常數據的處理效率低的問題,目前尚未提出有效的解決方案。
【發明內容】
[0005]本發明的主要目的在于提供一種用于網關設備的數據處理方法和裝置,以解決網關設備對于異常數據的處理效率低的問題。
[0006]為了實現上述目的,根據本發明的一個方面,提供了一種用于網關設備的數據處理方法。根據本發明的用于網關設備的數據處理方法包括:網關設備接收來自互聯網的數據包;網關設備對數據包進行檢測,得到檢測結果;網關設備根據檢測結果判斷數據包是否為異常數據;如果網關設備判斷出數據包為異常數據,則網關設備建立數據包對應的會話信息;以及當再次接收數據包時,網關設備根據數據包對應的會話信息丟棄數據包。
[0007]進一步地,在網關設備建立數據包對應的會話信息之后,數據處理方法還包括:網關設備將數據包對應的會話信息添加到的會話表中,網關設備根據數據包對應的會話信息丟棄數據包包括:網關設備獲取數據包的屬性信息;網關設備將數據包的屬性信息與會話表中的信息進行匹配;如果數據包的屬性信息匹配到存儲在會話表中的數據包對應的會話信息,則網關設備將數據包丟棄。
[0008]進一步地,網關設備對數據包進行檢測,得到檢測結果包括:網關設備確定數據包對應的執行動作,執行動作為用于對數據包的處理動作;網關設備判斷執行動作是否為執行拒絕動作,其中,執行拒絕動作用于對數據包執行丟棄處理,其中,如果網關設備判斷出執行動作為執行拒絕動作,則確定數據包為異常數據。
[0009]進一步地,在確定數據包為異常數據之后,數據處理方法還包括:網關設備設置異常數據的超時時間為預設超時時間,其中,預設超時時間小于非異常數據的超時時間。
[0010]進一步地,在網關設備接收來自互聯網的數據包之后,數據處理方法還包括:網關設備獲取數據包的屬性信息;網關設備將屬性信息與網關設備的會話表中的信息進行匹配;以及如果屬性信息與網關設備的會話表中的信息匹配,則網關設備轉發數據包。
[0011]為了實現上述目的,根據本發明的另一方面,提供了一種用于網關設備的數據處理裝置。根據本發明的用于網關設備的數據處理裝置包括:接收單元,用于使得網關設備接收來自互聯網的數據包;檢測單元,用于使得網關設備對數據包進行檢測,得到檢測結果;判斷單元,用于使得網關設備根據檢測結果判斷數據包是否為異常數據;建立單元,用于當網關設備判斷出數據包為異常數據時,使得網關設備建立數據包對應的會話信息;以及丟棄單元,用于當再次接收數據包時,使得網關設備根據數據包對應的會話信息丟棄數據包。
[0012]進一步地,數據處理裝置還包括:添加單元,用于在網關設備建立數據包對應的會話信息之后,使得網關設備將數據包對應的會話信息添加到的會話表中,丟棄單元包括:獲取模塊,用于使得網關設備獲取數據包的屬性信息;匹配模塊,用于使得網關設備將數據包的屬性信息與會話表中的信息進行匹配;丟棄模塊,用于當數據包的屬性信息匹配到存儲在會話表中的數據包對應的會話信息時,使得網關設備將數據包丟棄。
[0013]進一步地,檢測單元包括:確定模塊,用于使得網關設備確定數據包對應的執行動作,執行動作為用于對數據包的處理動作;判斷模塊,用于使得網關設備判斷執行動作是否為執行拒絕動作,其中,執行拒絕動作用于對數據包執行丟棄處理,其中,如果網關設備判斷出執行動作為執行拒絕動作,則確定數據包為異常數據。
[0014]進一步地,數據處理裝置還包括:設置單元,用于在確定數據包為異常數據之后,使得網關設備設置異常數據的超時時間為預設超時時間,其中,預設超時時間小于非異常數據的超時時間。
[0015]進一步地,數據處理裝置還包括:獲取單元,用于在網關設備接收來自互聯網的數據包之后,使得網關設備獲取數據包的屬性信息;匹配單元,用于使得網關設備將屬性信息與網關設備的會話表中的信息進行匹配;以及轉發單元,用于當屬性信息與網關設備的會話表中的信息匹配,使得網關設備轉發數據包。
[0016]通過本發明,在判斷出接收的數據包為異常數據時,如果網關設備初次接收到該數據包,則建立該數據包對應的session信息,如果再次接收到該數據包時,可以直接匹配該session信息,對數據包執行丟棄操作,無需經過CPU處理,避免每次接收到相同的異常數據時,都經過CPU進行處理,解決了網關設備對于異常數據的處理效率低的問題,達到了提高網關設備對于異常數據的處理效率的效果。【專利附圖】
【附圖說明】
[0017]構成本申請的一部分的附圖用來提供對本發明的進一步理解,本發明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中:
[0018]圖1是根據本發明第一實施例的用于網關設備的數據處理裝置的示意圖;
[0019]圖2是根據本發明第二實施例的用于網關設備的數據處理裝置的示意圖;
[0020]圖3是根據本發明第一實施例的用于網關設備的數據處理方法的流程圖;
[0021]圖4是根據本發明第二實施例的用于網關設備的數據處理方法的流程圖;
[0022]圖5是根據本發明實施例的第一測試環境的示意圖;以及
[0023]圖6是根據本發明實施例的第二測試環境的示意圖。
【具體實施方式】
[0024]需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。下面將參考附圖并結合實施例來詳細說明本發明。
[0025]為了使本【技術領域】的人員更好地理解本發明方案,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分的實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬于本發明保護的范圍。
[0026]需要說明的是,本發明的說明書和權利要求書及上述附圖中的術語“第一”、“第二”等是用于區別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數據在適當情況下可以互換,以便這里描述的本發明的實施例。此外,術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統、產品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對于這些過程、方法、產品或設備固有的其它步驟或單元。
[0027]本發明實施例提供了一種用于網關設備的數據處理裝置,該裝置可以通過網關設備實現其功能。
[0028]圖1是根據本發明第一實施例的用于網關設備的數據處理裝置的示意圖。如圖1所示,該用于網關設備的數據處理裝置包括接收單元10、檢測單元20、判斷單元30、建立單元40和丟棄單元50。
[0029]接收單元10用于使得網關設備接收來自互聯網的數據包。
[0030]接收單元10可以是設置在網關設備中的單元。互聯網可以是包括本地計算機和外界網絡在內的互聯網,其中,數據包可以是外界網絡發送到本地計算機的數據包,也可以是本地計算機發送到外界網絡的數據包。在數據包傳遞的過程中,數據包先經過網關設備,網關設備接收該數據包,以便于對數據包進行檢測和過濾等處理。數據包也可以稱為數據流量、網絡流量等。
[0031]在網關設備接收來自互聯網的數據包之后,網關設備獲取該數據包的屬性信息,如數據包的源IP、目的IP、源端口、目的端口和協議信息等,將數據包的屬性信息與存儲在網關設備的會話表即session表進行匹配,如果匹配到session表中的表項,貝U可以確定該數據包為正常數據,即非異常數據,直接將數據包轉發。其中,session表中的表項即為session表中的session信息項。如果未匹配到session表中的表項,則可以對該數據包進行檢測,以便于判斷數據包是否為異常數據。
[0032]檢測單元20用于使得網關設備對數據包進行檢測,得到檢測結果。
[0033]檢測單元20可以是設置在網關設備中的單元。在網關設備接收來自互聯網的數據包之后,網關設備對數據包進行檢測,以便于基于檢測結果判斷該數據包是否為異常數據。具體地,可以是對數據包進行安全策略檢測,其中,安全策略是指在某個網絡安全區域,用于所有與安全相關活動的一套規則,這些規則是由此安全區域中所設立的一個安全權力機構建立的,并由安全控制機構來描述、實施和實現的。通過對數據包進行檢測,判斷該數據包對應的執行動作,例如執行拒絕動作或者執行允許動作,從而判斷該數據包是否為異常數據。
[0034]判斷單元30用于使得網關設備根據檢測結果判斷數據包是否為異常數據。
[0035]判斷單元30可以是設置在網關設備中的單元。在得到檢測結果之后,網關設備根據檢測結果判斷數據包是否異常,是否為異常數據如攻擊數據。例如,網關設備對數據包進行安全策略檢測,如果檢測到數據包對應的執行動作為執行允許動作,則可以確定該數據包為正常數據。如果檢測到數據包對應的執行動作為執行拒絕動作,則可以確定該數據包為異常數據。
[0036]建立單元40用于當網關設備判斷出數據包為異常數據時,使得網關設備建立數據包對應的會話信息。
[0037]建立單元40可以是設置在網關設備中的單元。在網關設備判斷出數據包為異常數據時,如果網關設備是初次接受到該數據包,在建立該異常的數據包對應的會話信息即session信息,由于數據包為異常數據,建立數據包的session信息之后,可以將該session信息添加到session表中,以便于以后再次接收到該數據包時,可以直接將數據包與session表進行匹配,實現快速轉發。
[0038]丟棄單元50用于當再次接收數據包時,使得網關設備根據數據包對應的會話信息丟棄數據包。
[0039]丟棄單元50可以是設置在網關設備中的單元。當再次接收到異常數據的數據包時,網關設備可以將該數據包與存儲在網關設備的session表進行匹配。由于網關設備初次接收到該數據包時,建立數據包的session信息,在再次接收到相同的數據包時,可以直接匹配預先建立的session信息,對該數據包執行丟棄操作,無需再對數據包進行檢測等處理。
[0040]根據本發明實施例,在判斷出接收的數據包為異常數據時,如果網關設備初次接收到該數據包,則建立該數據包對應的session信息,如果再次接收到該數據包時,可以直接匹配該session信息,對數據包執行丟棄操作,無需經過CPU處理,避免每次接收到相同的異常數據時,都經過CPU進行處理,解決了網關設備對于異常數據的處理效率低的問題,達到了提高網關設備對于異常數據的處理效率的效果。
[0041]圖2是根據本發明第二實施例的用于網關設備的數據處理裝置的示意圖。如圖2所示,該用于網關設備的數據處理裝置包括接收單元10、檢測單元20、判斷單元30、建立單元40和丟棄單元50,其中,數據處理裝置還包括添加單元60,丟棄單元50包括獲取模塊501、匹配模塊502和丟棄模塊503。
[0042]添加單元60用于在網關設備建立數據包對應的會話信息之后,使得網關設備將數據包對應的會話信息添加到的會話表中。
[0043]在建立數據包對應的session信息之后,其中,數據包為異常數據,將該異常數據對應的session信息添加到網關設備的session表中,以便于再次接受到該異常數據時,可以直接匹配session表中的session信息。
[0044]獲取模塊501用于使得網關設備獲取數據包的屬性信息。
[0045]數據包屬性信息可以是數據包的源IP、目的IP、源端口、目的端口和協議信息等,該數據包為異常數據,獲取到數據包的屬性信息,以便于將該數據包的屬性信息與session表進行匹配,從而可以快速地確定該數據包為異常數據。
[0046]匹配模塊502用于使得網關設備將數據包的屬性信息與會話表中的信息進行匹配。
[0047]由于在初次接收到異常數據之后,網關設備建立異常數據的session信息,并將該session信息添加到session表中,將獲取到數據包的屬性信息與session表中的信息進行匹配,即,判斷數據包在session表中是否存在session信息,匹配到的話,可以直接丟棄該數據包。
[0048]丟棄模塊503用于當數據包的屬性信息匹配到存儲在會話表中的數據包對應的會話信息時,使得網關設備將數據包丟棄。
[0049]如果數據包的屬性信息匹配到session表中的數據包對應的session信息,貝Ij直接將數據包丟棄。例如,網關設備接收到數據包A,并判斷出數據包A為異常數據,則建立數據包A的session信息A-1,并將session信息A-1添加到session表中。當再次接收到數據包A時,將數據包A與session表進行匹配,如果匹配到session表中的session信息A-1,則直接將數據包A丟棄。
[0050]根據本發明實施例,通過將數據包對應的會話信息添加到的會話表中,當再次接收到數據包時,將數據包與session表進行匹配,從而使得網關設備接收到正常數據或者異常數據時,均可以通過與session表進行匹配,實現數據包的轉發和丟棄操作,進一步提高了轉發處理的效率。
[0051 ] 本發明實施例中,檢測單元包括確定模塊和判斷模塊。
[0052]確定模塊用于使得網關設備確定數據包對應的執行動作,執行動作為用于對數據包的處理動作。
[0053]執行動作為用于對數據包的處理動作。具體地,可以是對數據包進行安全策略檢測,從安全策略中確定數據包對應的執行動作,該執行動作包括執行拒絕動作和執行允許動作。
[0054]判斷模塊用于使得網關設備判斷執行動作是否為執行拒絕動作,其中,執行拒絕動作用于對數據包執行丟棄處理,其中,如果網關設備判斷出執行動作為執行拒絕動作,則確定數據包為異常數據。如果網關設備判斷出安全策略為執行允許動作,則確定數據包為正常數據。
[0055]根據本發明實施例,通過對數據包的進行安全策略檢測,從而確定數據包是否為異常數據,提高了網關設備數據處理的效率。[0056]優選地,數據處理裝置還包括設置單元,該設置單元用于在確定數據包為異常數據之后,使得網關設備設置異常數據的超時時間為預設超時時間,其中,預設超時時間小于非異常數據的超時時間。
[0057]預設超時時間可以根據需要進行設置,可以設置比較短的時間如30s,預設超時時間小于非異常數據的超時時間,即,異常數據的超時時間小于非異常數據的超時時間,非異常數據即為正常數據。通過設置異常數據的超時時間為較短的時間,可以避免分步攻擊的異常數據對本地計算機的傷害,阻止網絡中的分步攻擊,提高了網絡的安全性。
[0058]本發明實施例中,數據處理裝置還包括獲取單元、匹配單元和轉發單元。
[0059]獲取單元用于在網關設備接收來自互聯網的數據包之后,使得網關設備獲取數據包的屬性信息;匹配單元用于使得網關設備將屬性信息與網關設備的會話表中的信息進行匹配;以及轉發單元用于當屬性信息與網關設備的會話表中的信息匹配,使得網關設備轉發數據包。其中,如果屬性信息與網關設備的會話表中的信息不匹配,則可以數據包進行檢測,以判斷該數據包是否為異常數據。
[0060]具體地,在接收到數據包之后,均將數據包與session表進行匹配,如果未匹配到session項,則可以建立數據包的session信息,無論數據包為異常數據還是正常數據,當數據包為異常數據時,建立異常數據的session信息,如果接收到的數據包為正常數據,則建立正常數據的session信息。在將數據包與session表進行匹配之后,如果數據包匹配到正常數據的session信息,則將數據包轉發;如果數據包匹配到異常數據的session信息,則將數據包丟棄;如果未匹配到,則可以對該數據包進行檢測,判斷其為異常數據還是正常數據,在確定數據包為異常數據或者正常數據之后,可以建立數據包相應的session信息,并添加到session表中,以便于下次加收到相同的數據包時,可以直接將該數據包與session表進行匹配。由此可知,網關設備的session表中的表項是不斷增加的。
[0061]優選地,在建立數據包的session信息之后,如果數據包為異常數據,則可以向session信息添加丟棄標記drop ;如果數據包為異常數據,貝U可以向session信息添加轉發標記foreward。在數據包匹配到session信息之后,可以查詢session信息的標記信息,從而快速確定轉發還是丟棄數據包,進一步提高數據處理的效率。
[0062]本發明實施例還提供了一種用于網關設備的數據處理方法。該方法運行在網關設備上。需要說明的是,本發明實施例的用于網關設備的數據處理方法可以通過本發明實施例所提供的用于網關設備的數據處理裝置來執行,本發明實施例的用于網關設備的數據處理裝置也可以用于執行本發明實施例所提供的用于網關設備的數據處理方法。
[0063]圖3是根據本發明第一實施例的用于網關設備的數據處理方法的流程圖。如圖3所示,該用于網關設備的數據處理方法包括步驟如下:
[0064]步驟S302,網關設備接收來自互聯網的數據包。
[0065]互聯網可以是包括本地計算機和外界網絡在內的互聯網,其中,數據包可以是外界網絡發送到本地計算機的數據包,也可以是本地計算機發送到外界網絡的數據包。在數據包傳遞的過程中,數據包先經過網關設備,網關設備接收該數據包,以便于對數據包進行檢測和過濾等處理。數據包也可以稱為數據流量、網絡流量等。
[0066]在網關設備接收來自互聯網的數據包之后,網關設備獲取該數據包的屬性信息,如數據包的源IP、目的IP、源端口、目的端口和協議信息等,將數據包的屬性信息與存儲在網關設備的會話表即session表進行匹配,如果匹配到session表中的表項,貝U可以確定該數據包為正常數據,即非異常數據,直接將數據包轉發。其中,session表中的表項即為session表中的session信息項。如果未匹配到session表中的表項,貝U可以對該數據包進行檢測,以便于判斷數據包是否為異常數據。
[0067]步驟S304,網關設備對數據包進行檢測,得到檢測結果。
[0068]在網關設備接收來自互聯網的數據包之后,網關設備對數據包進行檢測,以便于基于檢測結果判斷該數據包是否為異常數據。具體地,可以是對數據包進行安全策略檢測,其中,安全策略是指在某個網絡安全區域,用于所有與安全相關活動的一套規則,這些規則是由此安全區域中所設立的一個安全權力機構建立的,并由安全控制機構來描述、實施和實現的。通過對數據包進行檢測,判斷該數據包對應的執行動作,例如執行拒絕動作或者執行允許動作,從而判斷該數據包是否為異常數據。
[0069]步驟S306,網關設備根據檢測結果判斷數據包是否為異常數據。
[0070]在得到檢測結果之后,網關設備根據檢測結果判斷數據包是否異常,是否為異常數據如攻擊數據。例如,網關設備對數據包進行安全策略檢測,如果檢測到數據包對應的執行動作為執行允許動作,則可以確定該數據包為正常數據。如果檢測到數據包對應的執行動作為執行拒絕動作,則可以確定該數據包為異常數據。
[0071]步驟S308,如果網關設備判斷出數據包為異常數據,則網關設備建立數據包對應的會話信息。
[0072]在網關設備判斷出數據包為異常數據時,如果網關設備是初次接受到該數據包,在建立該異常的數據包對應的會話信息即session信息,由于數據包為異常數據,建立數據包的session信息之后,可以將該session信息添加到session表中,以便于以后再次接收到該數據包時,可以直接將數據包與session表進行匹配,實現快速轉發。
[0073]步驟S310,當再次接收數據包時,網關設備根據數據包對應的會話信息丟棄數據包。
[0074]當再次接收到異常數據的數據包時,網關設備可以將該數據包與存儲在網關設備的session表進行匹配。由于網關設備初次接收到該數據包時,建立數據包的session信息,在再次接收到相同的數據包時,可以直接匹配預先建立的session信息,對該數據包執行丟棄操作,無需再對數據包進行檢測等處理。
[0075]根據本發明實施例,在判斷出接收的數據包為異常數據時,如果網關設備初次接收到該數據包,則建立該數據包對應的session信息,如果再次接收到該數據包時,可以直接匹配該session信息,對數據包執行丟棄操作,無需經過CPU處理,避免每次接收到相同的異常數據時,都經過CPU進行處理,解決了網關設備對于異常數據的處理效率低的問題,達到了提高網關設備對于異常數據的處理效率的效果。
[0076]圖4是根據本發明第二實施例的用于網關設備的數據處理方法的流程圖。該實施例的用于網關設備的數據處理方法可以是上述實施例的用于網關設備的數據處理方法的一種優選實施方式。如圖4所示,該用于網關設備的數據處理方法包括步驟如下:
[0077]步驟S402、步驟S404、步驟S406和步驟S408分別與圖3所示的步驟S302、步驟S304、步驟S306和步驟S308相同,這里不做贅述。
[0078]步驟S410,網關設備將數據包對應的會話信息添加到會話表中。[0079]在建立數據包對應的session信息之后,其中,數據包為異常數據,將該異常數據對應的session信息添加到網關設備的session表中,以便于再次接受到該異常數據時,可以直接匹配session表中的session信息。
[0080]步驟S412,當再次接收到數據包時,網關設備獲取數據包的屬性信息。
[0081]數據包屬性信息可以是數據包的源IP、目的IP、源端口、目的端口和協議信息等,該數據包為異常數據,獲取到數據包的屬性信息,以便于將該數據包的屬性信息與session表進行匹配,從而可以快速地確定該數據包為異常數據。
[0082]步驟S414,網關設備將數據包的屬性信息與會話表中的信息進行匹配。
[0083]由于在初次接收到異常數據之后,網關設備建立異常數據的session信息,并將該session信息添加到session表中,將獲取到數據包的屬性信息與session表中的信息進行匹配,即,判斷數據包在session表中是否存在session信息,匹配到的話,可以直接丟棄該數據包。
[0084]步驟S416,如果數據包的屬性信息匹配到存儲在會話表中的數據包對應的會話信息,則網關設備將數據包丟棄。
[0085]如果數據包的屬性信息匹配到session表中的數據包對應的session信息,貝Ij直接將數據包丟棄。例如,網關設備接收到數據包A,并判斷出數據包A為異常數據,則建立數據包A的session信息A-1,并將session信息A-1添加到session表中。當再次接收到數據包A時,將數據包A與session表進行匹配,如果匹配到session表中的session信息A-1,則直接將數據包A丟棄。
[0086]根據本發明實施例,通過將數據包對應的會話信息添加到的會話表中,當再次接收到數據包時,將數據包與session表進行匹配,從而使得網關設備接收到正常數據或者異常數據時,均可以通過與session表進行匹配,實現數據包的轉發和丟棄操作,進一步提高了轉發處理的效率。
[0087]本發明實施例中,在網關設備接收來自互聯網的數據包之后,網關設備獲取數據包的屬性信息;網關設備將屬性信息與網關設備的會話表中的信息進行匹配;以及如果屬性信息與網關設備的會話表中的信息匹配,則網關設備轉發數據包。其中,如果屬性信息與網關設備的會話表中的信息不匹配,則可以數據包進行檢測,以判斷該數據包是否為異常數據。
[0088]具體地,在接收到數據包之后,均將數據包與session表進行匹配,如果未匹配到session項,則可以建立數據包的session信息,無論數據包為異常數據還是正常數據,當數據包為異常數據時,建立異常數據的session信息,如果接收到的數據包為正常數據,則建立正常數據的session信息。在將數據包與session表進行匹配之后,如果數據包匹配到正常數據的session信息,則將數據包轉發;如果數據包匹配到異常數據的session信息,則將數據包丟棄;如果未匹配到,則可以對該數據包進行檢測,判斷其為異常數據還是正常數據,在確定數據包為異常數據或者正常數據之后,可以建立數據包相應的session信息,并添加到session表中,以便于下次加收到相同的數據包時,可以直接將該數據包與session表進行匹配。由此可知,網關設備的session表中的表項是不斷增加的。
[0089]優選地,在建立數據包的session信息之后,如果數據包為異常數據,則可以向session信息添加丟棄標記drop ;如果數據包為異常數據,貝U可以向session信息添加轉發標記foreward。在數據包匹配到session信息之后,可以查詢session信息的標記信息,從而快速確定轉發還是丟棄數據包,進一步提高數據處理的效率。
[0090]優選地,網關設備根據檢測結果判斷數據包是否為異常數據包括以下步驟:
[0091]第一步,網關設備確定數據包對應的執行動作。
[0092]執行動作為用于對數據包的處理動作。具體地,可以是對數據包進行安全策略檢測,從安全策略中確定數據包對應的執行動作,該執行動作包括執行拒絕動作和執行允許動作。
[0093]第二步,網關設備判斷執行動作是否為執行拒絕動作,其中,執行拒絕動作用于對數據包執行丟棄處理。其中,如果網關設備判斷出安全策略為執行拒絕動作,則確定數據包為異常數據。如果網關設備判斷出安全策略為執行允許動作,則確定數據包為正常數據。
[0094]根據本發明實施例,通過對數據包的進行安全策略檢測,從而確定數據包是否為異常數據,提高了網關設備數據處理的效率。
[0095]優選地,在確定數據包為異常數據之后,數據處理方法還包括:網關設備設置異常數據的超時時間為預設超時時間,其中,預設超時時間小于非異常數據的超時時間。
[0096]預設超時時間可以根據需要進行設置,可以設置比較短的時間如30s,預設超時時間小于非異常數據的超時時間,即,異常數據的超時時間小于非異常數據的超時時間,非異常數據即為正常數據。通過設置異常數據的超時時間為較短的時間,可以避免分步攻擊的異常數據對本地計算機的傷害,阻止網絡中的分步攻擊,提高了網絡的安全性。
[0097]下面提供了本發明實施例的一種優選的用于網關設備的數據處理方法。該實施例的用于網關設備的數據處理方法可以是上述實施例的用于網關設備的數據處理方法的一種優選實施方式。該用于網關設備的數據處理方法包括步驟如下:
[0098]步驟1,網關設備接收數據包。
[0099]步驟2,網關設備先將數據包與session表進行匹配,匹配成功以后則進入步驟3進入快速轉發流程,匹配失敗則進入步驟4進入慢速流程。其中,快速轉發流程可以直接將數據包轉發或者丟棄,慢速流程需要對數據進行檢測。
[0100]步驟3,進入快速轉發流程查詢標記信息是否為drop,若為drop則直接丟棄,反之則進行轉發處理。
[0101 ] 步驟4,進入慢速流程,判斷數據包在安全策略檢測之前是否丟棄,若被丟棄,直接執行丟棄處理,若不被丟棄,則檢查安全策略行為。
[0102]步驟5,若安全策略是執行允許動作則添加標記為foreward的session信息,若是執行拒絕動作依然會添加標記為drop的session信息,但是標記為drop的session信息的超時時間設置比較短,如30秒。然后再進行步驟3執行轉發或是丟棄動作。
[0103]根據本發明實施例,通過添加了對丟棄數據的session表項的建立機制,實現了對后續這組數據包的快速丟棄。建立異常數據的session表項,快速轉發后續的這組數據,實現節省網絡資源,提高數據轉發吞吐量,進而提高安全網關的性能。
[0104]本發明實施例中,當檢測到數據通信時,會建立關于該數據的session信息(快速轉發表),正常數據正常轉發,但是當檢測到數據流量為異常數據時,如攻擊數據,依然會建立該數據的session信息,只不過會把該數據的session信息的行為標記為drop并且超時時間會設置較短,如30秒,再此段時間內若是接收并檢測到符合該session的數據包時,就會走快速轉發流程直接丟棄該數據包,節省資源的同時提高安全網關的性能。
[0105]為更進一步闡述本發明為達成預定目的所采用的技術手段及功效,下面結合測試結果,對本發明實施例的技術方案作進一步詳細描述。選擇兩個安全網關設備分別為設備I和設備2,其中設備I采用現有的數據轉發技術,設備2采用本發明實施例的數據轉發技術,通過測試兩種設備在正常數據和遭受攻擊時的性能數據對比,體現本發明實施例的數據轉發技術的優勢。
[0106]首先,按照圖5搭建環境,測試的設備統稱為DUT設備,測試儀器模擬正常數據包發送到DUT設備,分別測試現有的轉發技術和本發明實施例的轉發技術的新建能力,CPU利用率。新建連接速率的測試方法可以選擇HTTP1.0協議版本連接,通過發起三次握手,GET頁面大小為Ibyte的測試文件并使用RST方式關閉連接請求,測試待測設備的新建連接速率。測試結果如表1所示。
[0107]表1:
[0108]
【權利要求】
1.一種用于網關設備的數據處理方法,其特征在于,包括: 網關設備接收來自互聯網的數據包; 所述網關設備對所述數據包進行檢測,得到檢測結果; 所述網關設備根據所述檢測結果判斷所述數據包是否為異常數據; 如果所述網關設備判斷出所述數據包為異常數據,則所述網關設備建立所述數據包對應的會話信息;以及 當再次接收所述數據包時,所述網關設備根據所述數據包對應的會話信息丟棄所述數據包。
2.根據權利要求1所述的數據處理方法,其特征在于, 在所述網關設備建立所述數據包對應的會話信息之后,所述數據處理方法還包括:所述網關設備將所述數據包對應的會話信息添加到的會話表中, 所述網關設備根據所述數據包對應的會話信息丟棄所述數據包包括:所述網關設備獲取所述數據包的屬性信息;所述網關設備將所述數據包的屬性信息與所述會話表中的信息進行匹配;如果所述數據包的屬性信息匹配到存儲在所述會話表中的所述數據包對應的會話信息,則所述網關設備將所述數據包丟棄。
3.根據權利要求1 所述的數據處理方法,其特征在于,所述網關設備對所述數據包進行檢測,得到檢測結果包括: 所述網關設備確定所述數據包對應的執行動作,所述執行動作為用于對所述數據包的處理動作; 所述網關設備判斷所述執行動作是否為執行拒絕動作,其中,所述執行拒絕動作用于對所述數據包執行丟棄處理, 其中,如果所述網關設備判斷出所述執行動作為所述執行拒絕動作,則確定所述數據包為異常數據。
4.根據權利要求3所述的數據處理方法,其特征在于,在確定所述數據包為異常數據之后,所述數據處理方法還包括: 所述網關設備設置異常數據的超時時間為預設超時時間,其中,所述預設超時時間小于非異常數據的超時時間。
5.根據權利要求1所述的數據處理方法,其特征在于,在網關設備接收來自互聯網的數據包之后,所述數據處理方法還包括: 所述網關設備獲取所述數據包的屬性信息; 所述網關設備將所述屬性信息與所述網關設備的會話表中的信息進行匹配;以及如果所述屬性信息與所述網關設備的會話表中的信息匹配,則所述網關設備轉發所述數據包。
6.一種用于網關設備的數據處理裝置,其特征在于,包括: 接收單元,用于使得網關設備接收來自互聯網的數據包; 檢測單元,用于使得所述網關設備對所述數據包進行檢測,得到檢測結果; 判斷單元,用于使得所述網關設備根據所述檢測結果判斷所述數據包是否為異常數據; 建立單元,用于當所述網關設備判斷出所述數據包為異常數據時,使得所述網關設備建立所述數據包對應的會話信息;以及 丟棄單元,用于當再次接收所述數據包時,使得所述網關設備根據所述數據包對應的會話信息丟棄所述數據包。
7.根據權利要求6所述的數據處理裝置,其特征在于, 所述數據處理裝置還包括:添加單元,用于在所述網關設備建立所述數據包對應的會話信息之后,使得所述網關設備將所述數據包對應的會話信息添加到的會話表中, 所述丟棄單元包括:獲取模塊,用于使得所述網關設備獲取所述數據包的屬性信息;匹配模塊,用于使得所述網關設備將所述數據包的屬性信息與所述會話表中的信息進行匹配;丟棄模塊,用于當所述數據包的屬性信息匹配到存儲在所述會話表中的所述數據包對應的會話信息時,使得所述網關設備將所述數據包丟棄。
8.根據權利要求6所述的數據處理裝置,其特征在于,所述檢測單元包括: 確定模塊,用于使得所述網關設備確定所述數據包對應的執行動作,所述執行動作為用于對所述數據包的處理動作; 判斷模塊,用于使得所述網關設備判斷所述執行動作是否為執行拒絕動作,其中,所述執行拒絕動作用于對所述數據包執行丟棄處理,其中,如果所述網關設備判斷出所述執行動作為所述執行拒絕動作,則確定所述數據包為異常數據。
9.根據權利要求8所述的數據處理裝置,其特征在于,所述數據處理裝置還包括: 設置單元,用于在確定所述數據包為異常數據之后,使得所述網關設備設置異常數據的超時時間為預設超時時間,其中,所述預設超時時間小于非異常數據的超時時間。
10.根據權利要求6所述的數據處理裝置,其特征在于,所述數據處理裝置還包括: 獲取單元,用于在網關設備接收來自互聯網的數據包之后,使得所述網關設備獲取所述數據包的屬性信息; 匹配單元,用于使得所述網關設備將所述屬性信息與所述網關設備的會話表中的信息進行匹配;以及 轉發單元,用于當所述屬性信息與所述網關設備的會話表中的信息匹配,使得所述網關設備轉發所述數據包。
【文檔編號】H04L12/66GK103812875SQ201410083752
【公開日】2014年5月21日 申請日期:2014年3月7日 優先權日:2014年3月7日
【發明者】王瑞, 薛蒙蒙 申請人:網神信息技術(北京)股份有限公司, 網神科技(北京)有限公司