一种确定协商中的重传策略的设备和方法

文档序号:7619283阅读:203来源:国知局
专利名称:一种确定协商中的重传策略的设备和方法
技术领域
本发明涉及网络通信领域,具体来讲,本发明是一种确定协商中的重传策略的方法和设备。
背景技术
随着IP协议的广泛应用,IP协议网络的安全逐渐成为人们关注的问题。IP协议本身是一个开放的协议,不包含安全特性。明文的IP包在传输过程中,可能被篡改、窃听、伪造,其安全性受到严重威胁。
IPsec(IP Secunty)是IP层上的安全机制,对IP数据包提供了机密性、完整性、抗重放等保护。安全关联SA(Security Association)是IPsec对数据包进行保护所使用的策略集合,包括所使用的机密性和完整性算法、密钥等。
IPsec的SA可以由手工配置,也可以通过自动协商来建立。通常,IPsec SA的自动协商是使用IKE(Internet Key Exchange)完成的。IKE进行双向的身份认证,交换密钥信息,协商出IPsec SA。
IKE的协商分为两个阶段第一阶段和第二阶段。第一阶段用于在通信的双方之间建立一个安全的通道,保护后续的协商。第二阶段第一阶段协商成功之后进行,用于协商IPsec SA。
为了提高IKE协商的可靠性,报文的发送具有重传机制。在IKE的三个RFC文档(RFC2408 ISAKMP,RFC2409 IKE,RFC2412 OAKLEY)中,OAKLEY规定了“重传、超时与错误消息”。其中提到了,如果发送者没有在允许的时间内得到接收者的回应,则消息将会被发送者重发,直到收到协议中对应的下一条消息。另外,在“错误消息”中,规定有TIMEOUT,含义为交换时间过长,状态崩溃;还规定了AUTHENTICATION_FAILURE,含义为签名或散列函数失败。对这两种错误消息的规定说明重传的次数是有限的,另外对消息的认证和完整性校验的失败可以导致协商的失败。
根据上述的内容,现有的重传机制如下所述
如果一条报文发出之后,在一定的时间之内没有收到回应的报文,将会重传这一条报文。如果重传达到了最大次数(一个预先设定的固定值),则协商将会失败,要结束协商状态。在达到最大重传次数之前,如果能够收到对方相应的回应报文,则结束重传,协商继续进行。但是,如果在达到最大重传次数之前,收到了一条报文,而这条报文不是一条合法的报文(报文头部或正文存在某些错误),则协商会终止。
不合法的报文产生的原因有多种,可能是对端的处理有错误,可能是报文传输过程中由于网络环境问题造成报文被破坏,也可能是有第三方故意篡改或实施干扰。对上述各种情况一律采用终止协商的方法,固然不会影响安全性,但是一些本可以完成的协商也就此结束了。此外,最后一条报文不可能主动地重传,只发送一次,并认为对方可以收到这条报文。如果对方由于某种原因,不能够收到这条报文,接收最后一条报文的这一方将无法完成协商流程,在达到最大重传次数后协商失败。
根据以上的分析,现有的重传机制存在一些问题,使得协商的双方在一些本可以继续协商的情况下不能协商成功。

发明内容
本发明提出了一种确定协商中的重传策略的设备和方法,确定了进行重传的新原则,并根据新原则扩大重传的场景。
进行重传的新原则为没有收到需要收到的报文,而又未能确定对方已经不具备继续协商的能力,这时进行重传。
所谓“需要收到的报文”,是指根据协议,本端发出一条报文后,对方应该回应的报文。所谓“没有收到需要收到的报文”,是指在一定的时间内没有收到报文,或收到了对方的重传报文,或收到了不合法的报文。所谓“未能确定”,是指在一定的时间之内不知道对方的协商状态是否已经结束,这种情况下认为对方仍然可以进行协商。如果经过了一定的时间仍然不能完成协商,或者收到的来自对方的合法报文中存在错误,则认为对方已经不具备继续协商的能力。
根据重传的新原则,扩大的重传场景包括●当收到一条报文时,如果判断出这是一条非法的报文,可以不终止协商,而是当作没有收到任何报文来处理,继续每隔一定的时间就重传。
●发送最后一条报文的一方可以不立刻终止协商,而是等待一段时间,这段时间内可以响应对方的报文,这段等待时间结束后,可以认为对方已经收到了最后一条报文。
本发明所述确定协商中的重传策略的设备包括输入装置、重传计数装置、定时决定装置、报文分析装置和输出装置;所述输入装置用于接收本端收到的报文;所述重传计数装置用于存放对某一条报文发送的次数;所述定时决定装置用于经过一个指定的时间间隔决定执行一个重传任务;所述报文分析装置用于分析本端收到的报文是否符合重传的条件;所述输出装置用于输出是否需要重传的判断结果;所述定时决定装置和所述报文分析装置都需要与所述重传计数装置共同作用,以决定判断的结果。
所述定时决定装置与所述重传计数装置共同作用决定判断结果具体是定时决定装置在经过一个重传时间间隔之后,根据重传计数装置的状态决定是否需要继续进行重传。
所述数报文分析装置与所述重传计数装置共同作用决定判断结果具体是报文分析装置在判断一条报文符合本端进行回应的条件时,再根据重传计数装置的状态决定是否需要继续进行重传。
本发明所述确定协商中的重传策略的方法,包括以下步骤第一步,确定本端最大重传次数和重传时间间隔,本端向对端发出一条报文;第二步,如果没有收到对端发来的任何报文,则按照确定的重传时间间隔进行重传,若达到最大重传次数仍未收到报文或合法报文,则认为对方不具备继续协商的能力,按照协商失败处理,结束协商状态;第三步,如果收到对端发来的报文,判断这条报文是否是对端的重传报文,如果是对端的重传报文,就重传相应的前一条报文,重传要受最大重传次数的限制;否则转第四步;第五步,判断所述对端发来的报文是否合法,如果不合法,则按照确定的重传时间间隔进行重传,若达到最大重传次数仍未收到报文或合法报文,则认为对方不具备继续协商的能力,按照协商失败处理,结束协商状态;第六步,当发送最后一条报文的一方在发出最后一条报文之后结束协商。
所述第六步当发送最后一条报文的一方在发出最后一条报文之后还包括以下处理过程等待一段时间,如果发送最后一条报文的一方在发出最后一条报文之后,在等待的时间内重传次数达到最大的限制,认为对方无法收到最后一条报文,按照协商不成功的处理来结束协商状态;如果发送最后一条报文的一方在发出最后一条报文之后,等待的时间内重传次数没有达到最大的限制,则认为对方处理了最后一条报文,可以按协商已成功的处理来结束协商状态。
所述的等待时间可以设置为不少于对端第一次重传时间间隔。
所述第五步中判断所述对端发来的报文是否合法具体包括报头内容是否合法,解密之后的报文的总长度与各个载荷头部长度域中指定的长度的总和是否一致,HASH载荷中的散列值是否正确。
本发明提出了一种在协商中进行重传的新的原则,按照该原则,在不影响安全性的前提下,可以进行重传的场景增加了,因此增大了协商成功的概率,提高了系统的健壮性。


图1是本发明协商中的重传策略流程图;图2(a)-(f)是本发明IKE第二阶段(使用三条报文的)协商中主动方的重传策略示意图;图3(a)-(c)是本发明IKE第二阶段(使用三条报文的)协商中被动方的重传策略示意图;图4是本发明确定重传策略的设备原理图。
具体实施例方式
如图4所示,本发明确定协商中的重传策略的设备包括如下几个装置●输入装置,用于接收本端收到的报文。
●重传计数装置,用于存放对某一条报文发送的次数。
●定时决定装置,用于经过一个指定的时间间隔决定执行一个重传任务。
●报文分析装置,用于分析本端收到的报文是否符合重传的条件。报文分析装置是该设备中最重要的装置,它判断报文是否符合重传条件的方法符合根据重传的新原则扩大的重传场景。
●输出装置,用于输出是否需要重传的判断结果。
定时决定装置和报文分析装置都需要与重传计数装置共同作用,以决定判断的结果。定时决定装置在经过一个重传时间间隔之后,要根据重传计数装置的状态决定是否需要继续重传。报文分析装置在判断一条报文符合本端进行回应的条件时,也应该根据重传计数装置的状态决定是否需要继续进行重传。因此具体到一次重传策略的判断,或者是由定时决定装置和重传计数装置共同决定,或者是由报文分析装置和重传计数装置共同决定。
如图1所示,本发明具体包括以下步骤第一,确定一个最大重传次数和一个计算重传时间间隔的规则,在没有收到任何报文的情况下,按照规则确定的重传时间间隔进行重传,直到达到最大重传次数。达到最大重传次数,则认为对方不具备继续协商的能力,按照协商失败处理,结束协商状态。
第二,在收到报文的情况下,确定这条报文是否是对方的重传报文,如果是对方重传报文,就重传相应的前一条报文,重传要受最大重传次数的限制。
第三,在收到报文且确定这条报文不是对方的重传报文的情况下,判断报文的合法性,如果不合法,视同没有收到这条报文,类似于步骤二进行重传处理,重传要受到最大重传次数的限制。
第四,发送最后一条报文的一方在发出最后一条报文之后结束协商。
上述的第四个步骤可以加以改进,采取如下的一种被动的重传策略发送最后一条报文的一方在发出最后一条报文之后,不立即结束协商状态,而是等待一段时间,这段时间内如果对方发来了重传报文,则本端回应相应的重传报文,这种重传要受到最大重传次数的限制。这是因为对端可能没有收到最后一条报文,如果对端没有收到最后一条报文,则协商没有结束,对端有能力继续协商。如果发送最后一条报文的一方在发出最后一条报文之后,等待的时间内重传次数达到最大的限制,认为对方无法收到本端的最后一条报文,应该按照协商不成功的处理来结束协商状态;如果发送最后一条报文的一方在发出最后一条报文之后,等待的时间内重传次数没有达到最大的限制,则认为对方处理了最后一条报文,可以按协商已成功的处理来结束协商状态。当本端作为发送最后一条报文的一方时,发送完最后一条报文的等待时间属于本地策略,但是应该以不少于对端第一次重传时间间隔为宜,这样在对端没有收到本端最后一条报文的情况下,本端可以尽量接收对端的重传报文。由于对端可以采取不同的重传策略,我们只需要考虑已知的实现的重传特点,取一个适当的等待时间就可以了。
下面结合附图对本发明的技术方案的实施作进一步的详细描述,这里给出了一个实施例IKE协议为IPSEC协商IPSEC SA,其中第二阶段协商中有三或四条报文。下面按协商使用三条报文的情况说明采用的重传策略。
对发起方来说
●发起方发送第一条报文。如果在重传时间间隔内没有收到第二条报文,则会重传第一条报文,直到达到最大重传次数。如图2(a)所示。任何一条报文的重传达到最大次数,都将使协商失败,结束协商状态。
●如果发起方收到了一条报文,则检查它是否合法,包括报头内容是否合法,解密之后的报文的总长度与各个载荷头部长度域中指定的长度的总和是否一致,HASH载荷中的散列值是否正确等等。如果不合法,则视同没有收到第二条报文,继续重传第一条报文,直到达到最大重传次数。如图2(d)所示。如果报文合法,则执行相应的后续处理,对报文有错误和无错误的情况,分别如图2(b)和图2(c)所示。
●如果发起方能够发出第三条报文,则同时添加一个定时器任务,等待一段时间后使协商状态正常结束。在这段时间内,对方如果重传了第二条报文,则在最大重传次数的限制下重传第三条报文,当然在重传之前需要检查重传的第二条报文的合法性。如图2(e)、图2(f)所示。
对响应方来说●收到第一条报文。如果检查到第一条报文不合法,或虽合法但有错误,则协商失败,结束协商状态。如图3(a)所示。如果收到合法且无错误的第一条报文,则发送第二条报文。如图3(b)所示。
●如果在重传时间间隔内没有收到第三条报文,则重传第二条报文,直到达到最大重传次数。如图3(c)所示。
●如果在重传时间间隔内收到了合法且无错误的第三条报文,则协商成功,结束协商状态。
IKE野蛮模式有三条报文,其采用的重传策略与上述步骤相似。
如果是响应方发送协议的最后一条报文(比如IKE第二阶段使用四条报文的情况,或IKE第一阶段主模式),则发出随后一条报文之后的等待出现在响应方,其余的处理与上述步骤类似。
权利要求
1.一种确定协商中的重传策略的设备,其特征在于,所述设备包括输入装置、重传计数装置、定时决定装置、报文分析装置和输出装置;所述输入装置用于接收本端收到的报文;所述重传计数装置用于存放对某一条报文发送的次数;所述定时决定装置用于经过一个指定的时间间隔决定执行一个重传任务;所述报文分析装置用于分析本端收到的报文是否符合重传的条件;所述输出装置用于输出是否需要重传的判断结果;所述定时决定装置和所述报文分析装置都需要与所述重传计数装置共同作用,以决定判断的结果。
2.如权利要求1所述的设备,其特征在于,所述定时决定装置与所述重传计数装置共同作用决定判断结果具体是定时决定装置在经过一个重传时间间隔之后,根据重传计数装置的状态决定是否需要继续进行重传。
3.如权利要求1所述的设备,其特征在于所述数报文分析装置与所述重传计数装置共同作用决定判断结果具体是报文分析装置在判断一条报文符合本端进行回应的条件时,再根据重传计数装置的状态决定是否需要继续进行重传。
4.一种确定协商中的重传策略的方法,其特征在于,所述方法包括以下步骤第一步,确定本端最大重传次数和重传时间间隔,本端向对端发出一条报文;第二步,如果没有收到对端发来的任何报文,则按照确定的重传时间间隔进行重传,若达到最大重传次数仍未收到报文或合法报文,则认为对方不具备继续协商的能力,按照协商失败处理,结束协商状态;第三步,如果收到对端发来的报文,判断这条报文是否是对端的重传报文,如果是对端的重传报文,就重传相应的前一条报文,重传要受最大重传次数的限制;否则转第四步;第五步,判断所述对端发来的报文是否合法,如果不合法,则按照确定的重传时间间隔进行重传,若达到最大重传次数仍未收到报文或合法报文,则认为对方不具备继续协商的能力,按照协商失败处理,结束协商状态;第六步,当发送最后一条报文的一方在发出最后一条报文之后结束协商。
5.如权利要求4所述的方法,其特征在于,所述第六步当发送最后一条报文的一方在发出最后一条报文之后还包括以下处理过程等待一段时间,如果发送最后一条报文的一方在发出最后一条报文之后,在等待的时间内重传次数达到最大的限制,认为对方无法收到最后一条报文,按照协商不成功的处理来结束协商状态;如果发送最后一条报文的一方在发出最后一条报文之后,等待的时间内重传次数没有达到最大的限制,则认为对方处理了最后一条报文,可以按协商已成功的处理来结束协商状态。
6.如权利要求5所述的方法,其特征在于,所述的等待时间可以设置为不少于对端第一次重传时间间隔。
7.如权利要求4或5所述的方法,其特征在于,所述第五步中判断所述对端发来的报文是否合法具体包括报头内容是否合法,解密之后的报文的总长度与各个载荷头部长度域中指定的长度的总和是否一致,HASH载荷中的散列值是否正确。
全文摘要
本发明公开了一种确定协商中的重传策略的设备和方法,所述设备包括输入装置、重传计数装置、定时决定装置、报文分析装置和输出装置;所述输入装置用于接收本端收到的报文;所述重传计数装置用于存放对某一条报文发送的次数;所述定时决定装置用于经过一个指定的时间间隔决定执行一个重传任务;所述报文分析装置用于分析本端收到的报文是否符合重传的条件;所述输出装置用于输出是否需要重传的判断结果;所述定时决定装置和所述报文分析装置都需要与所述重传计数装置共同作用,以决定判断的结果。本发明在协商中进行重传的新原则,使得在不影响安全性的前提下,可以进行重传的场景增加了,因此增大了协商成功的概率,提高了系统的健壮性。
文档编号H04L9/12GK1881863SQ20051007666
公开日2006年12月20日 申请日期2005年6月13日 优先权日2005年6月13日
发明者孙鲁东, 彭志威, 胡予濮, 芦东昕, 李卓明, 陈海彬, 耿航 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1