一种防止dpd探测失败导致ipsec隧道震荡的方法

文档序号:7554095阅读:4191来源:国知局
专利名称:一种防止dpd探测失败导致ipsec隧道震荡的方法
技术领域
本发明涉及计算机网络领域,特别涉及一种防止dpd探测失败导致ipsec隧道震荡的方法。
背景技术
Ipsec隧道包括协议报文和数据报文两种,其中,协议报文是由主机报文处理的ike报文;sa是Ipsec对等体间对某些要素的约定,Ipsec可以通过ike协商建立sa。所述ike协商在建立sa时分为两个阶段:第一协商阶段和第二协商阶段;所述第一协商阶段用于生成对所述协议报文进行加密的密钥,即ike sa;所述第二协商阶段用于生成对所述数据报文加密的密钥,即ipsec sa,且在第二协商阶段协商成功后发送数据报文。但是,网络上由于报文重传等原因会导致ipsec对等体同时触发ike协商,如防火墙a和防火墙b在所述第一协商阶段同时发送请求协商报文,从而生成了原地址和目的地址完全相同的两对ike sa,举例说明场景:fwa---------------------------fwb Ike sa al--------------------------------1ke sa blIke sa a2--------------------------------1ke sa b2如上所述,这两条ike sa如果都是完整的状态,则没有任何问题,如果协商过程中只有一对儿ike sa协商成功,则协商成功的ike sa继续进行所述第二协商阶段,以生成ipsec sa ;而另一对儿ike sa协商失败,且协商失败的所述ike sa的一端已经协商完毕,具体场景如下:Ike sa al--------------------------------1ke sa blIke sa a2协商失败的ike sa 一端已经协商完毕(即ike sa a2存在),另一端由于协议报文丢包导致没有协商成功而没有此ike sa时(即相应的ike sa b2不存在),此时ike sa a2发送dpd报文,而对端没有对应的ike sa b2来回应所述dpd报文,则fw a就会删除本端dpd报文所对应的ike sa,同时删除原地址和目的地址与该ike sa相同的ipsec sa,从而出现ipsec隧道震荡。基于此,现有技术确实有待于改善。

发明内容
针对现有技术的不足,本发明提供一种防止dpd探测失败导致ipsec隧道震荡的方法,使得在ipsec对等体同时触发ike协商时,减少因ipsec隧道的错误删除而导致的ipsec隧道震荡的问题。为实现以上目的,本发明通过以下技术方案予以实现:本发明提供一种防止dpd探测失败导致ipsec隧道震荡的方法,包括以下步骤:S1、两端ipsec对等体同时触发ike协商,并完成ike sa的协商;
S2、所述ipsec对等体连续发送多个dpd探测报文,并在预设周期内,判断该ipsec对等体是否收到对端ipsec对等体的dpd响应探测报文,若是,则继续完成ipsec sa的协商;若不是,则执行步骤S3;S3、判断是否有与该ipsec对等体的ike sa原地址和目的地址相同的ike sa,若没有,则删除该ipsec对等体的ike sa,若有,则不删除与该ipsec对等体的ike sa原地址和目的地址相同的ike sa其对应的ipsec sa。优选的,所述步骤S2进一步包括:所述ipsec对等体连续发送多个带有cookie的dpd探测报文,并在预设周期内,判断该ipsec对等体是否收到对端ipsec对等体的dpd响应探测报文。优选的,所述步骤S2进一步包括:所述ipsec对等体连续发送5个带有cookie的dpd探测报文。优选的,所述步骤SI进一步包括:两端ipsec对等体同时触发ike协商,并通过野蛮模式完成ike sa的协商。本发明提供一种防止dpd探测失 败导致ipsec隧道震荡的方法,使得在ipsec对等体同时触发ike协商时,通过优化dpd的探测方式来减少因ipsec隧道的错误删除而导致的ipsec隧道震荡的问题。


图1为本发明一实施例的流程图。
具体实施例方式下面对于本发明所提出的一种防止dpd探测失败导致ipsec隧道震荡的方法,结合附图和实施例详细说明。在现有技术中,当所述ipsec对等体发送给所述对端ipsec对等体dpd报文时,所述对端ipsec对等体如果找不到dpd报文中相同cookie的ikesa,则说明此dpd报文不能处理,则直接丢弃,当所述ipsec对等体连续发送5个dpd报文仍然没有回应dpd报文时,说明此链路已经异常就会删除本端dpd对应的ike sa,同时也删除原地址和目的地址与此ike sa相同的ipsec sa,这将导致ipsec隧道震荡。如图1所示,本发明提供一种防止dpd探测失败导致ipsec隧道震荡的方法,包括以下步骤:S1、两端ipsec对等体同时触发ike协商,并完成ike sa的协商;S2、所述ipsec对等体连续发送多个dpd探测报文,并在预设周期内,判断该ipsec对等体是否收到对端ipsec对等体的dpd响应探测报文,若是,则继续完成ipsec sa的协商;若不是,则执行步骤S3;S3、判断是否有与该ipsec对等体的ike sa原地址和目的地址相同的ike sa,若没有,则删除该ipsec对等体的ike sa,若有,则说明有备用隧道,那么不删除与该ipsec对等体的ike sa原地址和目的地址相同的ike sa其对应的ipsec sa。优选的,所述步骤S2进一步包括:所述ipsec对等体连续发送多个带有cookie的dpd探测报文,并在预设周期内,判断该ipsec对等体是否收到对端ipsec对等体的dpd响应探测报文;即每个dpd报文带着对应于ike sa唯一的一对cookie,也就是每对儿ike sa的cookie都不一样。优选的,所述步骤S2进一步包括:所述ipsec对等体连续发送5个带有cookie的dpd探测报文。优选的,所述步骤SI进一步包括:两端ipsec对等体同时触发ike协商,并通过野蛮模式完成ike sa的协商。本发明提供一种防止dpd探测失败导致ipsec隧道震荡的方法,使得在ipsec对等体同时触发ike协商时,通过优化dpd的探测方式来减少因ipsec隧道的错误删除而导致的ipsec隧道震荡的问题。以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明 的范畴,本发明的专利保护范围应由权利要求限定。
权利要求
1.一种防止dpd探测失败导致ipsec隧道震荡的方法,其特征在于,包括以下步骤: 51、两端ipsec对等体同时触发ike协商,并完成ikesa的协商; 52、所述ipsec对等体连续发送多个dpd探测报文,并在预设周期内,判断该ipsec对等体是否收到对端ipsec对等体的dpd响应探测报文,若是,则继续完成ipsec sa的协商;若不是,则执行步骤S3; 53、判断是否有与该ipsec对等体的ikesa原地址和目的地址相同的ike sa,若没有,则删除该ipsec对等体的ike sa,若有,则不删除与该ipsec对等体的ike sa原地址和目的地址相同的ike sa其对应的ipsec sa。
2.如权利要求1所述的方法,其特征在于,所述步骤S2进一步包括: 所述ipsec对等体连续发送多个带有cookie的dpd探测报文,并在预设周期内,判断该ipsec对等体是否收到对端ipsec对等体的dpd响应探测报文。
3.如权利要求2所述的方法,其特征在于,所述步骤S2进一步包括:所述ipsec对等体连续发送5个带有cookie的dpd探测报文。
4.如权利要求1-3任一项所述的方法,其特征在于,所述步骤SI进一步包括: 两端ipsec对等体同时触发ike协商,并通过野蛮模式完成ike sa的协商。
全文摘要
本发明提供一种防止dpd探测失败导致ipsec隧道震荡的方法,当所述ipsec对等体连续发送多个dpd探测报文后仍没有收到对端ipsec对等体的dpd响应探测报文时,继续判断是否有与该ipsec对等体的ikesa原地址和目的地址相同的ike sa,若没有,则删除该ipsec对等体的ike sa,若有,则不删除与该ipsec对等体的ike sa原地址和目的地址相同的ike sa其对应的ipsec sa;本发明使得在ipsec对等体同时触发ike协商时,通过优化dpd的探测方式来减少因ipsec隧道的错误删除而导致的ipsec隧道震荡的问题。
文档编号H04L29/06GK103227777SQ201310099380
公开日2013年7月31日 申请日期2013年3月26日 优先权日2013年3月26日
发明者陈海滨 申请人:汉柏科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1