專利名稱:一種基于IPsec的DPD探測方法和設備的制作方法
技術領域:
本發明涉及通信技術領域,尤其是涉及一種基于IPsec (IP Security, IP安全)的DPD (Dead Peer Detection,死亡對端檢測)探測方法和設備。
背景技術:
IPsec是三層隧道加密協議,是實現三層VPN (Virtual Private Network,虛擬專用網絡)的安全技術,且IPsec在兩個端點之間提供安全通信,兩個端點被稱為IPsec對等體,分別為IPsec發起方和IPsec響應方;進一步的,IPsec用于在IP層提供以下安全服務
(I)數據機密性=IPsec發送方在通過網絡傳輸報文前對報文進行加密;(2)數據完整性IPsec響應方對接收報文進行認證,以確保報文在傳輸過程中沒有被篡改;(3)數據來源認證IPsec響應方可以認證發送IPsec報文的IPsec發送方是否合法;(4)防重放IPsec響應方可以檢測并拒絕接收過時或者重復的報文。為了實現上述安全服務,IPsec提供了認證和加密等兩種安全機制;認證機制使IP通信的響應方能夠確認報文發送方的真實身份以及報文在傳輸過程中是否遭篡改;加密機制通過對報文進行加密運算來保證報文的機密性,防止報文在傳輸過程中被竊聽。此外,SA(Security Association,安全聯盟)是IPsec對等體之間對某些要素的約定;如使用哪種協議(AH(Authentication Header,驗證頭)、ESP(Encapsulating SecurityPayload,封裝安全載荷)等)、使用哪種協議封裝模式(傳輸模式、隧道模式等)、使用哪種加密算法等;進一步的,IPsec對等體之間可以通過IKE (Internet Key Exchange, Internet密鑰交換)協商建立SA信息,如圖I所示,為IPsec與IKE的關系示意圖;IKE通過以下階段為IPsec進行密鑰協商并建立SA ;第一階段,IPsec發起方和IPsec響應方之間建立一個ISAKMP (Internet Security Association and Key Management Protocol, Internet 安全關聯和密鑰管理協議)SA,該SA為用于進行IKE協商的SA (簡稱為IKE SA);第二階段,利用第一階段的IKE SA為IPsec協商具體的SA,該SA為用于IP數據安全傳輸的SA (簡稱為 IPsec SA)ο為了在IPsec對等體之間建立IPsec會話,IPsec對等體之間需要有IP連接性,但由于路由選擇、對等體重啟等原因,IPsec對等體之間可能失去了 IP連接性,從而導致IPsec會話的一端繼續向不可達的IPsec對端發送進行加密操作的數據流,浪費了 CPU(Central Processing Unit,中央處理單兀)資源。
發明內容
本發明實施例提供一種基于IPsec的DH)探測方法和設備,以及時獲知IPsec對端是否存在,并節省CPU資源。為了達到上述目的,本發明實施例提供一種基于IPsec的DTO探測方法,應用于包括探測方設備和被探測方設備的IPsec網絡中,該方法包括
在所述探測方設備上存在多個IKE SA時,所述探測方設備選擇所述多個IKE SA中最后協商的IKE SA,通過選擇的IKE SA對DH)探測請求報文進行加密處理,并將加密處理后的Dro探測請求報文發送給所述被探測方設備;
如果所述探測方設備接收到所述被探測方設備返回的經過IKE SA加密處理的Dro探測響應報文,則利用自身存在的IKE SA對所述Dro探測響應報文進行解密處理;如果解密成功,則確定所述被探測方設備存在;如果解密不成功或者所述探測方設備沒有接收到所述被探測方設備返回的Dro探測響應報文,則確定所述被探測方設備不存在。所述方法進一步包括所述探測方設備在將加密處理后的Dro探測請求報文發送給所述被探測方設備后,為所述Dro探測請求報文啟動重傳定時器;
所述探測方設備在解密成功時,檢查所述Dro探測響應報文的合法性;如果合法性檢查通過,則停止所述重傳定時器,確定所述被探測方設備存在;
所述探測方設備在合法性檢查不通過、或解密不成功、或沒有接收到Dro探測響應報文時,如果所述重傳定時器超時,則向所述被探測方設備重新發送加密處理后的Dro探測·請求報文,并啟動所述重傳定時器;
如果所述探測方設備向所述被探測方設備發送Dro探測請求報文的次數達到預設次數,且沒有收到合法性檢查通過的Dro探測響應報文,則所述探測方設備確定所述被探測方設備不存在。所述探測方設備確定所述被探測方設備不存在,之后還包括所述探測方設備刪除自身存在的所述多個IKE SA,并刪除自身存在的所述多個IKE SA對應的IPsec SA。本發明實施例提供一種基于IPsec的DTO探測方法,應用于包括探測方設備和被探測方設備的IPsec網絡中,該方法包括以下步驟
所述被探測方設備接收來自所述探測方設備的經過IKE SA加密處理的DH)探測請求報文,且所述IKE SA為所述探測方設備從自身存在的多個IKE SA中選擇的最后協商的IKESA ;
所述被探測方設備利用自身存在的IKE SA對所述DH)探測請求報文進行解密處理;如果解密成功,則利用自身存在的IKE SA對DH)探測響應報文進行加密處理,并將加密處理后的Dro探測響應報文發送給所述探測方設備;如果解密不成功,則丟棄所述Dro探測請求報文。所述方法進一步包括所述被探測方設備在解密成功時,檢查所述Dro探測請求報文的合法性;如果合法性檢查通過,則利用自身存在的IKE SA對Dro探測響應報文進行加密處理;如果合法性檢查不通過,則丟棄所述Dro探測請求報文。本發明實施例提供一種探測方設備,應用于包括所述探測方設備和被探測方設備的IPsec網絡中,所述探測方設備包括
選擇模塊,用于在本設備上存在多個IKE SA時,選擇所述多個IKE SA中最后協商的IKE SA ;
處理模塊,用于通過選擇的IKE SA對Dro探測請求報文進行加密處理;
發送模塊,用于將加密處理后的Dro探測請求報文發送給被探測方設備;
確定模塊,用于當收到被探測方設備返回的經過IKE SA加密處理的Dro探測響應報文時,利用本設備存在的IKE SA對Dro探測響應報文進行解密處理;當解密成功時,確定所述被探測方設備存在;當解密不成功或沒有收到被探測方設備返回的Dro探測響應報文時,確定所述被探測方設備不存在。所述處理模塊,還用于在將加密處理后的Dro探測請求報文發送給所述被探測方設備之后,為所述Dro探測請求報文啟動重傳定時器;
所述確定模塊,進一步用于在解密成功時,檢查所述Dro探測響應報文的合法性;如果合法性檢查通過,則停止所述重傳定時器,確定所述被探測方設備存在;在合法性檢查不通過、或解密不成功、或沒有收到Dro探測響應報文時,如果所述重傳定時器超時,則向所述被探測方設備重新發送加密處理后的Dro探測請求報文,并啟動所述重傳定時器;如果向所述被探測方設備發送Dro探測請求報文的次數達到預設次數,且沒有收到合法性檢查通過的Dro探測響應報文,則確定所述被探測方設備不存在。還包括刪除模塊,用于在確定所述被探測方設備不存在時,刪除本設備存在的所述多個IKE SA,并刪除本設備存在的多個IKE SA對應的IPsec SA。本發明實施例提供一種被探測方設備,應用于包括探測方設備和所述被探測方設備的IPsec網絡中,所述被探測方設備包括
接收模塊,用于接收來自所述探測方設備的經過IKE SA加密處理的DH)探測請求報文,且所述IKE SA為所述探測方設備從自身存在的多個IKE SA中選擇的最后協商的IKESA ;
處理模塊,用于利用本設備存在的IKE SA對所述DH)探測請求報文進行解密處理;并在解密不成功時,丟棄所述Dro探測請求報文;在解密成功時,利用本設備存在的IKE SA對DPD探測響應報文進行加密處理;
發送模塊,用于將加密處理后的Dro探測響應報文發送給探測方設備。所述處理模塊,進一步用于在解密成功時,檢查Dro探測請求報文的合法性;如果合法性檢查通過,則利用本設備存在的IKE SA對Dro探測響應報文進行加密處理;如果合法性檢查不通過,則丟棄所述Dro探測請求報文。與現有技術相比,本發明實施例至少具有以下優點
本發明實施例中,通過使用最后協商的IKE SA對Dro探測請求報文進行加密處理,并利用Dro探測請求報文來檢測IPsec對端是否存在,從而及時獲知IPsec對端是否存在,并在IPsec對端不存在時,停止向不可達的IPsec對端發送進行加密操作的數據流,以節省CPU資源。
圖I是現有技術中IPsec與IKE的關系示意圖2是本發明實施例的應用場景意圖3是本發明實施例提供的一種基于IPsec的DH)探測方法流程示意圖4是本發明實施例中IKE頭的格式示意圖5是本發明實施例中DH)類型的通知載荷的格式示意圖6是本發明實施例提出的一種探測方設備的結構示意圖7是本發明實施例提出的一種被探測方設備的結構示意圖。
具體實施例方式
6
本發明實施例提出一種基于IPsec的DTO探測方法,該方法應用于包括探測方設備和被探測方設備的IPsec網絡中,探測方設備可以為IPsec對等體中的IPsec發起方或IPsec響應方,相應的被探測方設備為IPsec對等體中的IPsec響應方或IPsec發起方;以圖2為本發明實施例的應用場景示意圖,Device A至IP network的出口地址為I. I. I. 1,在該接口上部署IPsec,Device B至IP network的出口地址為2· 2· 2· 2,在該接口上部署IPsec,因此Device A和Device B為IPsec對等體,并假設Device A為探測方設備,DeviceB為被探測方設備。在圖2所示應用場景下,Device A保護的私網中有主機H0ST1,Device B保護的私網中有主機H0ST2,當HOSTl有流量需要發送給H0ST2時,會觸發Device A和Device B之間建立IPsec SA (如IPsec SAl)和IKE SA (如IKE SAl);之后如果Device B重啟,則會觸發 Device A 和 Device B 之間再次建立 IPsec SA (如 IPsec SA2)和 IKE SA (如 IKESA2);此時,Device A上有IPsec SAl(該IPsec SAl—直存在到被老化刪除)和IPsec SA2,以及IKE SAl (該IKE SAl 一直存在到被老化刪除)和IKE SA2 ;由于Device B重啟之前的 IPsec SA 和 IKE SA 會被清除,因此 Device B 上只有 IPsec SA2 和 IKE SA2。基于上述應用場景,如圖3所示,該方法包括以下步驟
步驟301,在需要發送Dro探測請求報文時,如果Device A上存在有多個IKE SA (即多個與Device B相對應的IKE SAjIKE SAl和IKE SA2),則該Device A選擇多個IKESA中最后協商的IKE SA (即Device A上最新的一個IKE SAjniKE SA2),并通過該選擇的IKE SA對DH)探測請求報文進行加密處理。本發明實施例中,確定需要發送Dro探測請求報文的方式包括但不限于周期性發送Dro探測請求報文或者按需發送Dro探測請求報文。在周期性發送Dro探測請求報文時,Device A將根據預設周期(可以根據實際經驗進行設置)確定是否需要發送Dro探測請求報文。在按需發送Dro探測請求報文時,Device A需要在IPsec有出方向流量時,查看當前時間與最近一次收到Device B流量的時間之間的時間差值,如果該時間差值超過了設定門限值(該門限值可以根據實際經驗進行設置,需要手動配置),則Device A確定需要發送DH)探測請求報文。具體的,為了實現按需發送Dro探測請求報文,Device A上需要維護上次從Device B收到正確IPsec SA加密流量時的時間戳,記為LastRcvTime ;在HOSTl發送的流量到達Device A后,Device A會使用IPsec SA對該流量進行加密,檢查當前時間與LastRcvTime之間的時間差值,如果該時間差值達到了 DH)探測間隔(即設定門限值),則確定需要發送DH)探測請求報文。步驟302, Device A將加密處理后的DF1D探測請求報文發送給Device B。步驟303,Device B在收到經過IKE SA加密處理的DB)探測請求報文后,利用自身存在的IKE SA對Dro探測請求報文進行解密處理。步驟304,如果解密成功,則Device B利用自身存在的IKE SA(如IKE SA2)對DPD探測響應報文進行加密處理,并將加密處理后的DB)探測響應報文發送給Device A ;如果解密不成功,則Device B丟棄DTO探測請求報文。本發明實施例中,Device A只能通過最后協商的IKE SA (如IKE SA2)對DB)探測請求報文進行加密處理,而不能通過其它的IKE SA (如IKE SAl)對DH)探測請求報文進行加密處理。Device A在通過IKE SAl對DH)探測請求報文進行加密處理時,由于Device B上只存在有IKE SA2,因此Device B利用自身存在的IKE SA對DTO探測請求報文進行解密處理時,解密不成功,不會返回DPD探測響應報文給Device A,從而導致Device A認為DeviceB不存在,導致錯誤的探測結果。Device A在通過IKE SA2對DH)探測請求報文進行加密處理時,由于Device B上只存在有IKE SA2,因此Device B利用自身存在的IKE SA對DTO探測請求報文進行解密處理時,能夠解密成功,且會返回DH)探測響應報文給Device A,不會導致出現錯誤的探測結
果O進一步的,Device B在解密成功時,還可以檢查DF1D探測請求報文的合法性;如果合法性檢查通過,則Device B需要利用自身存在的IKE SA對DTO探測響應報文進行加密處理,并執行后續的過程;如果合法性檢查不通過,則Device B需要直接丟棄DTO探測請求報文。在一種優選的實施方式中,Device B通過檢查DI3D探測請求報文中的序列號是否為遞增的來進行合法性檢查;如果當前Dro探測請求報文中的序列號與上一次收到的Dro探測請求報文中的序列號相比是遞增的,則Device B認為合法性檢查通過;否則,Device B認為合法性檢查不通過。步驟305,如果Device A收到Device B返回的經過IKE SA (如IKE SA2)加密處理的Dro探測響應報文,則利用自身存在的IKE SA對Dro探測響應報文進行解密處理;如果解密成功,則確定Device B存在;如果解密不成功或沒有收到Device B返回的DTO探測響應報文,則確定Device B不存在。本發明實施例中,由于Device B通過IKE SA2對DPD探測響應報文進行加密處理,且Device A上存在有IKE SAl和IKE SA2,因此Device A利用自身存在的IKE SA對DPD探測響應報文進行解密處理時,能夠解密成功。進一步的,Device A在解密成功時,還可以檢查DI3D探測響應報文的合法性;如果合法性檢查通過,則Device A確定Device B存在;如果合法性檢查不通過,則Device B需要忽略該DH)探測響應報文,即不能利用該DH)探測響應報文確定Device B存在。在一種優選的實施方式中,Device A通過檢查DI3D探測響應報文中的序列號是否為之前本地發送的序列號(即Dro探測請求報文中的序列號)來進行合法性檢查;如果Dro探測響應報文中的序列號與之前本地發送的序列號相同,則Device A認為合法性檢查通過;否則,認為合法性檢查不通過。在本發明實施例的一種優選實施方式中,Device A在將加密處理后的DI3D探測請求報文發送給Device B之后,需要為DTO探測請求報文啟動重傳定時器;DeViCe A在收到Device B返回的DH)探測響應報文,且對DH)探測響應報文解密成功,且DH)探測響應報文的合法性檢查通過時,則停止該DH)探測請求報文對應的重傳定時器,并確定Device B存在。如果Device A沒有收到Device B返回的DI3D探測響應報文,或收到Device B返回的DH)探測響應報文、但對DH)探測響應報文解密不成功,或收到Device B返回的DB)探測響應報文、對DPD探測響應報文解密不成功、但DPD探測響應報文的合法性檢查不通過;則當重傳定時器超時后,向Device B重新發送DTO探測請求報文(即步驟302),并啟動重傳定時器。
以此類推,如果Device A向Device B發送DPD探測請求報文的次數達到預設次數(如3次,預設次數可以根據實際經驗值進行設置)后,均沒有在重傳定時器超時之前,收到Device B返回的解密成功且合法性檢查通過的DPD探測響應報文,則Device A確定DeviceB不存在。本發明實施例中,如果Device A確定Device B不存在,則Device A還需要刪除自身存在的多個IKE SA (如IKE SAl和IKE SA2),并刪除自身存在的多個IKE SA對應的IPsec SA(如IPsec SAl和IPsec SA2),從而停止向不可達的Device B發送進行加密操作的數據流,以節省CPU資源。在上述的實現過程中,DPD探測請求報文以及DH)探測響應報文中均包括IKE頭和Dro類型的通知載荷;其中,IKE頭的格式可以如圖4所示,Dro類型的通知載荷的格式可以如圖5所示。在圖4中,各個字段的含義如下(I)Initiator Cookie :發起方的Cookie,8個字節;(2) Responder Cookie :響應方的 Cookie,8 個字節;(3) NextPayload :下一個載荷類型,值為13么腸 _肥乂1'_撤5!1,標識下一個載荷是加密的;(4)11^虹主版本號,值為1,表明是IKEvl協議;(5) MnVer :次版本號,值為O ; (6) ExchangeType :協商類型,此時值為4,表明是通告載荷;(7) Flags :標記;(8) MessageID :消息ID,此時值為O ; (9) Length :消息長度,包括該頭部長度以及下面的載荷長度。在圖5中,各個字段的含義如下=(I)NextPayload :下一個載荷字段,由于該載荷是最后一個載荷,因此值為O ; (2) Reserverd :保留字段,值為O ; (3) Payload Length 載荷長度;(4) Domain of Interpretation (DOI):解釋域,取值為 I,標識 ISAKMP ; (5)Protocol-ID :協議ID,取值為1,標識ISAKMP ; (6) SPI Size SPI大小,取值為16,兩個Cookie的長度;(7)Notify Message Type :對于發送的DPD探測請求報文,該取值為36136,對于回應的DB)探測響應報文,該取值為36137 ; (8) Security Parameter Index (SPI)兩個Cookie,共16字節;(9)Notification Data (序列號XDF1D探測報文的序列號,DF1D探測響應報文中攜帶的值需要與DI3D探測請求報文中攜帶的值相同。基于與上述方法同樣的發明構思,本發明實施例中還提供了一種探測方設備,應用于包括所述探測方設備和被探測方設備的IPsec網絡中,如圖6所示,所述探測方設備包括
選擇模塊11,用于在本設備上存在多個IKE SA時,選擇所述多個IKE SA中最后協商的IKE SA ;
處理模塊12,用于通過選擇IKE SA對DH)探測請求報文進行加密處理;
發送模塊13,用于將加密處理后DH)探測請求報文發送給被探測方設備;
確定模塊14,用于當收到被探測方設備返回的經過IKE SA加密處理的DH)探測響應報文時,利用本設備存在的IKE SA對DH)探測響應報文進行解密處理;當解密成功時,確定被探測方設備存在;當解密不成功或沒有收到被探測方設備返回的Dro探測響應報文時,確定被探測方設備不存在。
所述處理模塊12,還用于在將加密處理后的DH)探測請求報文發送給所述被探測方設備之后,為所述Dro探測請求報文啟動重傳定時器;
所述確定模塊14,進一步用于在解密成功時,檢查所述Dro探測響應報文的合法性;如果合法性檢查通過,則停止所述重傳定時器,確定所述被探測方設備存在;在合法性檢查不通過、或解密不成功、或沒有收到Dro探測響應報文時,如果所述重傳定時器超時,則向所述被探測方設備重新發送加密處理后的Dro探測請求報文,并啟動所述重傳定時器;如果向所述被探測方設備發送Dro探測請求報文的次數達到預設次數,且沒有收到合法性檢查通過的Dro探測響應報文,則確定所述被探測方設備不存在。本發明實施例中,該探測方設備設備還包括刪除模塊15,用于在確定所述被探測方設備不存在時,刪除本設備存在的所述多個IKE SA,并刪除本設備存在的所述多個IKESA 對應的 IPsec SA。其中,本發明裝置的各個模塊可以集成于一體,也可以分離部署。上述模塊可以合并為一個模塊,也可以進一步拆分成多個子模塊。基于與上述方法同樣的發明構思,本發明實施例中還提供了一種被探測方設備,應用于包括探測方設備和所述被探測方設備的IPsec網絡中,如圖7所示,所述被探測方設備包括
接收模塊21,用于接收來自所述探測方設備的經過IKE SA加密處理的DH)探測請求報文,且所述IKE SA為所述探測方設備從自身存在的多個IKE SA中選擇的最后協商的IKESA ;
處理模塊22,用于利用本設備存在的IKE SA對所述DH)探測請求報文進行解密處理;并在解密不成功時,丟棄所述DH)探測請求報文;在解密成功時,利用本設備存在的IKE SA對Dro探測響應報文進行加密處理;
發送模塊23,用于將加密處理后的Dro探測響應報文發送給探測方設備。所述處理模塊22,進一步用于在解密成功時,檢查DH)探測請求報文的合法性;如果合法性檢查通過,則利用本設備存在的IKE SA對Dro探測響應報文進行加密處理;如果合法性檢查不通過,則丟棄Dro探測請求報文。其中,本發明裝置的各個模塊可以集成于一體,也可以分離部署。上述模塊可以合并為一個模塊,也可以進一步拆分成多個子模塊。通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到本發明可借助軟件加必需的通用硬件平臺的方式來實現,當然也可以通過硬件,但很多情況下前者是更佳的實施方式。基于這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執行本發明各個實施例所述的方法。本領域技術人員可以理解附圖只是一個優選實施例的示意圖,附圖中的模塊或流程并不一定是實施本發明所必須的。本領域技術人員可以理解實施例中的裝置中的模塊可以按照實施例描述進行分布于實施例的裝置中,也可以進行相應變化位于不同于本實施例的一個或多個裝置中。上述實施例的模塊可以合并為一個模塊,也可以進一步拆分成多個子模塊。
上述本發明實施例序號僅僅為了描述,不代表實施例的優劣。
以上公開的僅為本發明的幾個具體實施例,但是,本發明并非局限于此,任何本領域的技術人員能思之的變化都應落入本發明的保護范圍。
權利要求
1.一種基于IPsec的DH)探測方法,應用于包括探測方設備和被探測方設備的IPsec網絡中,其特征在于,該方法包括以下步驟在所述探測方設備上存在多個IKE SA時,所述探測方設備選擇所述多個IKE SA中最后協商的IKE SA,通過選擇的IKE SA對DH)探測請求報文進行加密處理,并將加密處理后的Dro探測請求報文發送給所述被探測方設備;如果所述探測方設備接收到所述被探測方設備返回的經過IKE SA加密處理的Dro探測響應報文,則利用自身存在的IKE SA對所述Dro探測響應報文進行解密處理;如果解密成功,則確定所述被探測方設備存在;如果解密不成功或者所述探測方設備沒有接收到所述被探測方設備返回的Dro探測響應報文,則確定所述被探測方設備不存在。
2.如權利要求I所述的方法,其特征在于,所述方法進一步包括所述探測方設備在將加密處理后的Dro探測請求報文發送給所述被探測方設備之后,為所述Dro探測請求報文啟動重傳定時器;所述探測方設備在解密成功時,檢查所述Dro探測響應報文的合法性;如果合法性檢查通過,則停止所述重傳定時器,確定所述被探測方設備存在;所述探測方設備在合法性檢查不通過、或解密不成功、或沒有接收到Dro探測響應報文時,如果所述重傳定時器超時,則向所述被探測方設備重新發送加密處理后的Dro探測請求報文,并啟動所述重傳定時器;如果所述探測方設備向所述被探測方設備發送Dro探測請求報文的次數達到預設次數,且沒有收到合法性檢查通過的Dro探測響應報文,則所述探測方設備確定所述被探測方設備不存在。
3.如權利要求I或2所述的方法,其特征在于,所述探測方設備確定所述被探測方設備不存在,之后還包括所述探測方設備刪除自身存在的所述多個IKE SA,并刪除自身存在的所述多個IKE SA對應的IPsec SA。
4.一種基于IPsec的DH)探測方法,應用于包括探測方設備和被探測方設備的IPsec網絡中,其特征在于,該方法包括以下步驟所述被探測方設備接收來自所述探測方設備的經過IKE SA加密處理的DH)探測請求報文,且所述IKE SA為所述探測方設備從自身存在的多個IKE SA中選擇的最后協商的IKESA ;所述被探測方設備利用自身存在的IKE SA對所述DH)探測請求報文進行解密處理;如果解密成功,則利用自身存在的IKE SA對DH)探測響應報文進行加密處理,并將加密處理后的Dro探測響應報文發送給所述探測方設備;如果解密不成功,則丟棄所述Dro探測請求報文。
5.如權利要求4所述的方法,其特征在于,所述方法進一步包括所述被探測方設備在解密成功時,檢查所述Dro探測請求報文的合法性;如果合法性檢查通過,則利用自身存在的IKE SA對Dro探測響應報文進行加密處理;如果合法性檢查不通過,則丟棄所述Dro探測請求報文。
6.一種探測方設備,應用于包括所述探測方設備和被探測方設備的IPsec網絡中,其特征在于,所述探測方設備包括選擇模塊,用于在本設備上存在多個IKE SA時,選擇所述多個IKE SA中最后協商的IKE SA ; 處理模塊,用于通過選擇的IKE SA對DH)探測請求報文進行加密處理; 發送模塊,用于將加密處理后的Dro探測請求報文發送給被探測方設備; 確定模塊,用于當收到被探測方設備返回的經過IKE SA加密處理的Dro探測響應報文時,利用本設備存在的IKE SA對Dro探測響應報文進行解密處理;當解密成功時,確定所述被探測方設備存在;當解密不成功或沒有收到被探測方設備返回的Dro探測響應報文時,確定所述被探測方設備不存在。
7.如權利要求6所述的設備,其特征在于, 所述處理模塊,還用于在將加密處理后的Dro探測請求報文發送給所述被探測方設備之后,為所述Dro探測請求報文啟動重傳定時器; 所述確定模塊,進一步用于在解密成功時,檢查所述Dro探測響應報文的合法性;如果合法性檢查通過,則停止所述重傳定時器,確定所述被探測方設備存在;在合法性檢查不通過、或解密不成功、或沒有收到Dro探測響應報文時,如果所述重傳定時器超時,則向所述被探測方設備重新發送加密處理后的Dro探測請求報文,并啟動所述重傳定時器;如果向所述被探測方設備發送Dro探測請求報文的次數達到預設次數,且沒有收到合法性檢查通過的Dro探測響應報文,則確定所述被探測方設備不存在。
8.如權利要求6或7所述的設備,其特征在于,還包括 刪除模塊,用于在確定所述被探測方設備不存在時,刪除本設備存在的所述多個IKESA,并刪除本設備存在的所述多個IKE SA對應的IPsec SA。
9.一種被探測方設備,應用于包括探測方設備和所述被探測方設備的IPsec網絡中,其特征在于,所述被探測方設備包括 接收模塊,用于接收來自所述探測方設備的經過IKE SA加密處理的Dro探測請求報文,且所述IKE SA為所述探測方設備從自身存在的多個IKE SA中選擇的最后協商的IKESA ; 處理模塊,用于利用本設備存在的IKE SA對所述DH)探測請求報文進行解密處理;并在解密不成功時,丟棄所述Dro探測請求報文;在解密成功時,利用本設備存在的IKE SA對DPD探測響應報文進行加密處理; 發送模塊,用于將加密處理后的Dro探測響應報文發送給探測方設備。
10.如權利要求9所述的設備,其特征在于, 所述處理模塊,進一步用于在解密成功時,檢查Dro探測請求報文的合法性;如果合法性檢查通過,則利用本設備存在的IKE SA對Dro探測響應報文進行加密處理;如果合法性檢查不通過,則丟棄所述Dro探測請求報文。
全文摘要
本發明公開了一種基于IPsec的DPD探測方法和設備,該方法包括在探測方設備上存在多個與被探測方設備相對應的IKESA時,探測方設備選擇多個IKESA中最后協商的IKESA,通過選擇的IKESA對DPD探測請求報文進行加密處理,并將DPD探測請求報文發送給被探測方設備;如果探測方設備收到DPD探測響應報文,則對DPD探測響應報文進行解密處理;如果解密成功,則確定被探測方設備存在;如果解密不成功或沒有接收到DPD探測響應報文,則確定被探測方設備不存在。本發明實施例中可節省CPU資源。
文檔編號H04L29/06GK102946333SQ20121042651
公開日2013年2月27日 申請日期2012年10月31日 優先權日2012年10月31日
發明者楊超 申請人:杭州華三通信技術有限公司