一种快速处理错误包的方法

文档序号:9690887阅读:201来源:国知局
一种快速处理错误包的方法
【技术领域】
[0001]本发明涉及报文数据处理技术领域,特别涉及一种快速处理错误包的方法。
【背景技术】
[0002]在基于FPGA(Field — Programmable Gate Array,即现场可编程门阵列)的以太网数据加密设计中,报文数据是以包为单位进行处理的,从网络上传送过来的数据包,经过接口逻辑,打上包头包尾标签后,传送给数据转发逻辑,查找策略表之后,根据查找的策略做加密/明通/丢弃处理,加密报文的包尾存放认证码,方便解密方进行认证。
[0003]基于上述机制,数据转发逻辑收到来自接口逻辑的错误报文,如果无包头,则转发逻辑将无法取出关键字信息,如果无包尾,则转发逻辑可能会将下一报文包尾的认证码取出,导致解密认证失败。因此需要在转发逻辑之前,加入容错模块,将无包头、无包尾的报文识别出来并丢弃。
[0004]在容错模块中,接收的报文都存放在FIF0(First Input First Output的缩写,先入先出队列)中,收到包尾数据后,判读此包是正常包还是错误包,如果是正常包,则从FIFO中取出,送往下一模块;如果是无包头的错误包,则从FIFO中取出并丢弃;如果是无包尾的错误包,只有收到下一包头数据,才能判断上一包是无包尾的错误包,此时才能将错误包从FIFO中取出丢弃。在容错模块中,使用“接收报文,缓存报文,检查报文,发送报文”的方式。这样的方法,每次只能处理一个报文,必将导致数据转发效率降低。

【发明内容】

[0005]为了解决现有技术的问题,本发明提供了一种快速处理错误包的方法,其额外增加一个错误包指示寄存器,根据FIFO中已存放的包数,错误包指示寄存器在动态的改变,当从FIFO中取出报文时,可以从错误包指示器中取出相应的操作,使用本方法,可以在取错误包的同时接收新的报文,从而大大提高数据转发效率。
[0006]本发明所采用的技术方案如下:
一种快速处理错误包的方法,是在数据转发逻辑之前设置的容错模块中,增加一个错误包指示寄存器,所述的错误包指示寄存器用以实现错误包的FIFO的同步存放和取出。
[0007]方法具体包括:
A、FIF0的输入端连续接收前级模块传过来的数据,每接收完一个报文,将相应包的处理操作代码写入错误包指示寄存器;
B、FIF0的输出端,每发送一个报文之前,都在错误包指示寄存器中读取当前包状态及处理操作代码;
C、根据读出来的处理操作代码,对待发送报文进行相应的操作。
[0008]本发明提供的技术方案带来的有益效果是:
本发明的一种快速处理错误包的方法,其额外增加一个错误包指示寄存器,根据FIFO中已存放的包数,错误包指示寄存器在动态的改变,当从FIFO中取出报文时,可以从错误包指示器中取出相应的操作,使用本方法,可以在取错误包的同时接收新的报文,从而大大提高数据转发效率。
【附图说明】
[0009]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0010]图1为本发明的一种快速处理错误包的方法的工作原理图。
【具体实施方式】
[0011]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0012]实施例一
如附图1所示,一种快速处理错误包的方法,是在数据转发逻辑之前设置的容错模块中,增加一个错误包指示寄存器,所述的错误包指示寄存器用以实现错误包的FIFO的同步存放和取出。
[0013]本方法具体包括:
A、FIF0的输入端连续接收前级模块传过来的数据,每接收完一个报文,将相应包的处理操作代码写入错误包指示寄存器;
B、FIF0的输出端,每发送一个报文之前,都在错误包指示寄存器中读取当前包状态及处理操作代码;
C、根据读出来的处理操作代码,对待发送报文进行相应的操作。
[0014]以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【主权项】
1.一种快速处理错误包的方法,是在数据转发逻辑之前设置的容错模块中,增加一个错误包指示寄存器,所述的错误包指示寄存器用以实现错误包的FIFO的同步存放和取出。2.根据权利要求1所述的一种快速处理错误包的方法,其特征在于,所述的方法具体包括: A、FIF0的输入端连续接收前级模块传过来的数据,每接收完一个报文,将相应包的处 理操作代码写入错误包指示寄存器; B、FIF0的输出端,每发送一个报文之前,都在错误包指示寄存器中读取当前包状态及 处理操作代码; C、根据读出来的处理操作代码,对待发送报文进行相应的操作。
【专利摘要】本发明涉及报文数据处理技术领域,特别涉及一种快速处理错误包的方法。本发明的一种快速处理错误包的方法,其额外增加一个错误包指示寄存器,根据FIFO中已存放的包数,错误包指示寄存器在动态的改变,当从FIFO中取出报文时,可以从错误包指示器中取出相应的操作,使用本方法,可以在取错误包的同时接收新的报文,从而大大提高数据转发效率。
【IPC分类】H04L12/863
【公开号】CN105450544
【申请号】CN201510743644
【发明人】毕研山, 于治楼, 姜凯
【申请人】浪潮集团有限公司
【公开日】2016年3月30日
【申请日】2015年11月5日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1