一种报文加/解密方法

文档序号:7859748阅读:506来源:国知局
专利名称:一种报文加/解密方法
技术领域
本发明涉及数据加解密技术领域,特别是涉及ー种报文加/解密方法。
背景技术
当前网络设备大多采用多核架构,例如多个通用CPU加一个专用加 /解密CPU(例如cavium芯片)的处理器架构,其中,通用CPU用于进行报文转发,而专用加/解密CPU专门用于对需要加密或解密的报文进行加密或解密。而由于对ー个报文进行转发处理的速度要远远大于对ー个报文进行加密或解密处理的速度,因此,当多个普通CPU同时向ー个专用加/解密CPU发送需要加解密处理的报文吋,经常会出现专用加/解密CPU的处理速度跟不上通用CPU处理速度的问题,这就会导致报文的丢失,而如果增加专用加/解密CPU的话则会大大提高成本,因此,如何克服这个技术瓶颈成为了当前亟待解决的技术问题。

发明内容
(一)要解决的技术问题本发明要解决的技术问题是如何在不提高硬件成本的前提下解决由于报文加/解密速度跟不上报文转发速度而出现的报文丢失问题。(ニ)技术方案为了解决上述技术问题,本发明提供ー种报文加密方法,包括以下步骤SI、接收待加密报文,将所述待加密报文加上序号后放入待加密报文队列,每接收到ー个待加密报文,序号加I ;S2、判断待加密报文队列中的报文数是否超过预设阈值,若是,则对所述待加密报文进行软加密,否则对所述待加密报文进行硬加密;S3、将加密后的报文按照步骤SI中接收的顺序进行转发。优选地,在步骤SI中接收待加密报文的同时,将报文的序号与一个链表的节点按照从小到大的顺序一一对应,在步骤S3中对加密后的报文进行转发时,按照链表中节点逐ー递增的顺序转发报文。优选地,所述软加密的操作由主处理器执行,所述硬加密的操作由协处理器执行。优选地,所述主处理器为通用CPU,所述协处理器为cavium芯片。对应地,本发明还提供了ー种报文解密方法,包括以下步骤SI’、接收待解密报文,将所述待解密报文加上序号后放入待解密报文队列,每接收到ー个待解密报文,序号加I ;S2’、判断待解密报文队列中的报文数是否超过预设阈值,若是,则对所述待解密报文进行软解密,否则对所述待解密报文进行硬解密;S3’、将解密后的报文按照接收的顺序进行转发。优选地,步骤S3’具体为将解密后的报文放入保序队列,若保序队列中出现解密后的报文的序号不连续的情况,则等待下一个解密后的报文到来,直到保序队列中所有解密后的报文的序号都连续,然后按照序号由小到大的顺序对解密后的报文进行转发。优选地,所述软解密的操作由主处理器执行,所述硬解密的操作由协处理器执行。优选地,所述主处理器为通用CPU,所述协处理器为cavium芯片。优选地,所述报文为ESP报文或AH报文。(三)有益效果上述技术方案具有如下优点本发明按照协处理器处理加解密报文的能力设定ー个上限阈值,只有在不超过阈值的情况下才使用协处理器进行硬加解密,而在超过该阈值的情况下,使用主处理器进行软加解密,从而可以缓解协处理器的处理压力,提高整机处理报文加解密的速度,这样就通过主处理器与协处理器的协同工作避免报文丢失的情况,从·而实现了在不提高硬件成本(不增加协处理器)的前提下解决由于报文加/解密速度跟不上报文转发速度而出现的报文丢失问题。进一歩,由于增加了保序处理,使得报文能够按照先入先出的顺序被转发,保证了处理之后报文的顺序正确。


图I是本发明的加密方法流程图;图2是本发明的解密方法流程图。
具体实施例方式下面结合附图和实施例,对本发明的具体实施方式
作进ー步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。实施例一如图I所示,本发明实施例一提供ー种报文加密方法,包括以下步骤SI、接收待加密ESP报文或AH报文,将所述待加密ESP报文或AH报文加上序号(为整数)后放入待加密ESP报文或AH报文队列,每接收到ー个待加密ESP报文或AH报文,序号加I ;S2、判断待加密ESP报文或AH报文队列中的报文数是否超过预设阈值(例如10个报文),若是,则对所述待加密ESP报文或AH报文进行软加密,否则对所述待加密ESP报文或AH报文进行硬加密;软加密的速度比硬加密的速度慢;S3、将加密后的ESP报文或AH报文按照接收的顺序进行转发。在步骤SI中接收
待加密报文的同时,将报文的序号与一个链表的节点按照从小到大的顺序--对应(例如,
序号为I的报文对应链表的节点1,序号为2的报文对应链表的节点2,依次类推),在步骤S3中对加密后的报文进行转发吋,按照链表中节点逐一递增的顺序转发报文,也就是说,首先转发与节点I对应的序号为I的报文,若序号为3的报文比序号为2的报文先加密完成,则等待序号为2的报文加密完成并被转发之后,再转发序号为3的报文。其中,所述软加密的操作由主处理器执行,所述硬加密的操作由协处理器执行。所述主处理器为通用CPU (专门用于转发报文),所述协处理器为cavium芯片(也可以称为专用加/解密CPU,专门用于报文加/解密)。实施例ニ如图2所示,本发明实施例ニ还提供了ー种报文解密方法,包括以下步骤
SI’、接收待解密ESP报文或AH报文,将所述待解密ESP报文或AH报文加上序号(为整数)后放入待解密ESP报文或AH报文队列,每接收到ー个待解密ESP报文或AH报文,序号加I ;S2’、判断待解密ESP报文或AH报文队列中的报文数是否超过预设阈值(例如10个报文),若是,则对所述待解密ESP报文或AH报文进行软解密,否则对所述待解密ESP报文或AH报文进行硬解密;软解密的速度比硬解密的速度慢;S3’、将解密后的ESP报文或AH报文按照接收的顺序进行转发。在步骤SI’中接收
待加密报文的同时,将报文的序号与一个链表的节点按照从小到大的顺序--对应(例如,
序号为I的报文对应链表的节点1,序号为2的报文对应链表的节点2,依次类推),在步骤 S3’中对加密后的报文进行转发时,按照链表中节点逐一递增的顺序转发报文,也就是说,首先转发与节点I对应的序号为I的报文,若序号为3的报文比序号为2的报文先加密完成,则等待序号为2的报文加密完成并被转发之后,再转发序号为3的报文。其中,所述软解密的操作由主处理器执行,所述硬解密的操作由协处理器执行。其中,所述软加密的操作由主处理器执行,所述硬加密的操作由协处理器执行。所述主处理器为通用CPU (专门用于转发报文),所述协处理器为cavium芯片(也可以称为专用加/解密CPU,专门用于报文加/解密)。由以上实施例可以看出,本发明按照协处理器处理加解密报文的能力设定ー个上限阈值,只有在不超过阈值的情况下才使用协处理器进行硬加解密,而在超过该阈值的情况下,使用主处理器进行软加解密,从而可以缓解协处理器的处理压力,提高整机处理报文加解密的速度,这样就通过主处理器与协处理器的协同工作避免了报文丢失的情况下,从而实现了在不提高硬件成本(不增加协处理器)的前提下解决由于报文加/解密速度跟不上报文转发速度而出现的报文丢失问题。进一歩,由于增加了保序处理,使得报文能够按照先入先出的顺序被转发,保证了处理之后报文的顺序正确。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和替换,这些改进和替换也应视为本发明的保护范围。
权利要求
1.ー种报文加密方法,其特征在于,包括以下步骤 51、接收待加密报文,将所述待加密报文加上序号后放入待加密报文队列,每接收到一个待加密报文,序号加I ; 52、判断待加密报文队列中的报文数是否超过预设阈值,若是,则对所述待加密报文进行软加密,否则对所述待加密报文进行硬加密; 53、将加密后的报文按照步骤SI中接收的顺序进行转发。
2.如权利要求I所述的方法,其特征在于,在步骤SI中接收待加密报文的同时,将报文的序号与一个链表的节点按照从小到大的顺序一一对应,在步骤S3中对加密后的报文进行转发时,按照链表中节点逐一递增的顺序转发报文。
3.如权利要求I所述的方法,其特征在于,所述软加密的操作由主处理器执行,所述硬加密的操作由协处理器执行。
4.如权利要求3所述的方法,其特征在于,所述主处理器为通用CPU,所述协处理器为cavium 心乃。
5.如权利要求广4中任一项所述的方法,其特征在于,所述报文为ESP报文或AH报文。
6.ー种报文解密方法,其特征在于,包括以下步骤 SI’、接收待解密报文,将所述待解密报文加上序号后放入待解密报文队列,每接收到ー个待解密报文,序号加I ; S2’、判断待解密报文队列中的报文数是否超过预设阈值,若是,则对所述待解密报文进行软解密,否则对所述待解密报文进行硬解密; S3’、将解密后的报文按照接收的顺序进行转发。
7.如权利要求6所述的方法,其特征在于,步骤S3’具体为将解密后的报文放入保序队列,若保序队列中出现解密后的报文的序号不连续的情况,则等待下一个解密后的报文到来,直到保序队列中所有解密后的报文的序号都连续,然后按照序号由小到大的顺序对解密后的报文进行转发。
8.如权利要求6所述的方法,其特征在于,所述软解密的操作由主处理器执行,所述硬 解密的操作由协处理器执行。
9.如权利要求8所述的方法,其特征在于,所述主处理器为通用CPU,所述协处理器为cavium 心乃。
10.如权利要求6、中任一项所述的方法,其特征在于,所述报文为ESP报文或AH报文。
全文摘要
本发明公开了一种报文加/解密方法。本发明按照协处理器处理加解密报文的能力设定一个上限阈值,只有在不超过阈值的情况下才使用协处理器进行硬加解密,而在超过该阈值的情况下,使用主处理器进行软加解密,从而可以缓解协处理器的处理压力,提高整机处理报文加解密的速度,这样就通过主处理器与协处理器的协同工作避免了报文丢失的情况,从而实现了在不提高硬件成本(不增加协处理器)的前提下解决由于报文加/解密速度跟不上报文转发速度而出现的报文丢失问题。进一步,由于增加了保序处理,使得报文能够按照先入先出的顺序被转发,保证了处理之后报文的顺序正确。
文档编号H04L9/32GK102843235SQ20121032743
公开日2012年12月26日 申请日期2012年9月6日 优先权日2012年9月6日
发明者陈海滨 申请人:汉柏科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1