买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种可扩展的网络协议解析系统及方法_中国科学院计算技术研究所;中国科学院国有资产经营有限责任公司_201611215269.7 

申请/专利权人:中国科学院计算技术研究所;中国科学院国有资产经营有限责任公司

申请日:2016-12-26

公开(公告)日:2021-07-16

公开(公告)号:CN106850559B

主分类号:H04L29/06(20060101)

分类号:H04L29/06(20060101)

优先权:

专利状态码:有效-授权

法律状态:2021.07.16#授权;2017.07.07#实质审查的生效;2017.06.13#公开

摘要:本发明提出一种可扩展的网络协议解析系统及方法,涉及网络协议解析技术领域,该方法包括获取待解析的网络协议报文,根据协议查找表对所述待解析的网络报文中的指令进行译码,将译码结果进行储存;控制逻辑将所述译码结果进行解析,将所述解析结果进行储存,解析结束后通过协议类型编码表获取下一层网络协议报文的指令。本发明利用FPGA,在保证骨干网数据处理能力的前提下,提供了一种易于添加新的网络协议解析功能的方法,避免了传统高速网络处理设备在遇到新网络协议时更新周期长的问题。

主权项:1.一种可扩展的网络协议解析方法,其特征在于,包括:步骤1,获取骨干网待解析的网络协议报文,根据协议类型编码表,得到该网络协议报文的编码指令,并使用协议查找表对该编码指令进行译码,再将译码得到的操作信息加载到报文解析寄存器组中;步骤2、控制逻辑利用报文解析寄存器组中的信息对该网络协议报文进行解析,得到该网络协议报文的解析结果,将该解析结果进行储存,解析结束后通过协议类型编码表获取下一层网络协议报文的指令;其中,使用CAM和RAM组成该协议类型编码表,并使用RAM组成该协议查找表,并通过用户配置接口将该协议类型编码表和该协议查找表下发到FPGA中。

全文数据:一种可扩展的网络协议解析系统及方法技术领域[0001]本发明涉及网络协议解析技术领域,特别涉及一种可扩展的网络协议解析系统及方法。背景技术[0002]随着互联网的发展,骨干网的流量采集和处理也越来越多的应用在政府网络管理、大数据分析等领域,骨干网的流量采集对网络数据的实时处理能力有很高的要求,而且骨干网流量的协议种类繁多,网络设备需要同时满足处理性能和可扩展性的要求。[0003]通用的网络协议处理流程,一般按照协议找的层次结构依次进行解析,但骨干网的网络环境复杂,常常出现设计中未考虑的网络协议和协议组合如隧道报文等),许多基于ASIC芯片的网络设备能够在设计时实现处理某种已知格式协议组合的功能,但设备上线运行后出现的新协议却难以得到及时支持。[0004]通用CPU和软件能够解决新协议解析的灵活性问题,出现新协议时只需要改写代码并重新编译,开发周期短,但其在万兆及以上的网络报文处理方面存在严重的性能问题。[000S]因此考虑一种基于FPGA的可扩展网络协议解析单元,以解决骨干网报文解析的性能和灵活性问题。发明内容[0006]针对现有技术的不足,本发明提出一种可扩展的网络协议解析系统及方法。[0007]本发明提出一种可扩展的网络协议解析方法,包括:[0008]步骤1,获取待解析的网络协议报文,根据协议查找表对所述待解析的网络报文中的指令进行译码,将译码结果进行储存;[0009]步骤2,控制逻辑将所述译码结果进行解析,将所述解析结果进行储存,解析结束后通过协议类型编码表获取下一层网络协议报文的指令。[0010]设置输入报文RAM,通过所述输入报文RAM储存所述待解析的网络协议报文。设置报文解析状态机,所述报文解析状态机控制可扩展的网络协议解析方法的解析流程。[0012]设置报文解析寄存器组,所述报文解析寄存器组储存所述译码结果以及网络协议报文解析所需的变量。[0013]设置输出信息RAM,所述输出信息RAM储存所述解析结果。[0014]本发明还提出一种可扩展的网络协议解析系统,包括:[0015]译码模块,用于获取待解析的网络协议报文,根据协议查找表对所述待解析的网络报文中的指令进行译码,将译码结果进行储存;[0016]解析模块,用于控制逻辑将所述译码结果进行解析,将所述解析结果进行储存,解析结束后通过协议类型编码表获取下一层网络协议报文的指令。[0017]输入报文RAM,通过所述输入报文RAM储存所述待解析的网络协议报文。LUU18J报又解析状态机,所述报文解析状态机控制可扩展的网络协议解析方法的解析流程。[0019]报文解析寄存器组,所述报文解析寄存器组储存所述译码结果以及网络协议报文解析所需的变量。[0020]输出信息麵,所述输出信息储存所述解析结果。[0021]由以上方案可知,本发明的优点在于:[0022]本发明利用FPGA,在保证骨干网数据处理能力的前提下,提供了一种易于添加新的网络协议解析功能的方法,避免了传统高速网络处理设备在遇到新网络协议时更新周期长的问题。附图说明[0023]图1为本发明具体应用环境图;[0024]图2为本发明系统的整体架构图;[0025]图3为本发明的协议解析流程图;[0026]图4为本发明的协议解析指令图;[0027]图5为本发明的可扩展的网络协议解析指令图;[0028]图6为本发明的另一种指令扩展方案图。具体实施方式[0029]本发明具体应用环境,如图丨所示:[0030]1前端需要有网络接口控制器,能够提供最外层为链路层或以上层次的报文。[0031]2需要有主机或用户接口传输控制信息和状态信息。[0032]3网络协议识别结果可送给后续模块做进一步处理,如规则过滤、报文转发等。[0033]本发明系统的整体架构,如图2所示:[0034]输入报文RAM:用于存放待解析的报文。[0035]报文解析状态机:用于控制整个报文的解析流程。[0036]协议类型编码表:每种协议报文对应一条编码指令,可通过协议类型编码表获取下一层协议的编码指令。[0037]协议查找表:解析协议编码指令,得到的结果用于解析报文。[0038]报文解析寄存器组:存放协议编码指令的译码结果以及其他报文解析所需的变量。[0039]控制逻辑:解析报文并提取信息。[0040]输出信息RAM:存放报文解析的结果。如IP地址、协议类型、应用层数据位置等。[0041]本发明的协议解析流程即控制逻辑),如图3所示:[0042]取得协议解析指令后,利用协议查找表对指令进行译码,再将译码后的操作信息加载到报文解析寄存器组中,之后控制逻辑利用报文解析寄存器组中的信息对报文进行解析,解析结果存放在输出信息RAM中,解析结束后通过协议类型编码表得到下一层协议报文的解析指令。[0043]本发明的协议解析指令,如图4所示:[0044]协议解析指令包括直接操作终止识别标记、未识别协议标记和查表操作(协议组号、协议分类号、协议号)[0045]对具有相同协议字段和协议头长度的协议进行分组,可以减少协议类型编码表和协议信息查找表的项数。[0046]本发明的可扩展的网络协议解析指令,如图5所示:[0047]使用可写的CAM和RAM组成协议类型编码表和协议信息查找表,则可通过用户配置接口对这些表进行修改和添加,以添加新的协议报文识别功能。[0048]同时此实施例还包括一个软件工具将每种协议格式编码为表中的内容,并通过用户配置接口下发到FPGA中。[0049]本发明的另一种指令扩展方案,如图6所示:[0050]包含一个协议解析数据库,存放处理已知协议的代码。[0051]代码描述了协议类型编码表和协议信息查找表的内容。[0052]代码需要按照给定的编程模版编写,以便工具能够自动将新协议的代码插入到原有的网络协议解析单元代码中。[0053]此实施例中,可将前一实施例中的部分CAM和RAM替换成寄存器或常量代码,以减少FPGA中的资源消耗,代价是代码需要重新编译并需要使用FPGA的在线升级功能。[0054]还包括实现数据库搜索和代码自动插入功能的软件工具。[0055]本发明还提出一种可扩展的网络协议解析系统,包括:[0056]译码模块,用于获取待解析的网络协议报文,根据协议查找表对所述待解析的网络报文中的指令进行译码,将译码结果进行储存;[0057]解析模块,用于控制逻辑将所述译码结果进行解析,将所述解析结果进行储存,解析结束后通过协议类型编码表获取下一层网络协议报文的指令。[0058]输入报文RAM,通过所述输入报文RAM储存所述待解析的网络协议报文。[0059]报文解析状态机,所述报文解析状态机控制可扩展的网络协议解析方法的解析流程。[0060]报文解析寄存器组,所述报文解析寄存器组储存所述译码结果以及网络协议报文解析所需的变量。[0061]输出信息RAM,所述输出信息RAM储存所述解析结果。

权利要求:1.一种可扩展的网络协议解析方法,其特征在于,包括:步骤1,获取待解析的网络协议报文,根据协议查找表对所述待解析的网络报文中的指令进行译码,将译码结果进行储存;步骤2,控制逻辑将所述译码结果进行解析,将所述解析结果进行储存,解析结束后通过协议类型编码表获取下一层网络协议报文的指令。2.如权利要求1所述的可扩展的网络协议解析方法,其特征在于,设置输入报文RAM,通过所述输入报文RAM储存所述待解析的网络协议报文。3.如权利要求1所述的可扩展的网络协议解析方法,其特征在于,设置报文解析状态机,所述报文解析状态机控制可扩展的网络协议解析方法的解析流程。4.如权利要求1所述的可扩展的网络协议解析方法,其特征在于,设置报文解析寄存器组,所述报文解析寄存器组储存所述译码结果以及网络协议报文解析所需的变量。5.如权利要求1所述的可扩展的网络协议解析方法,其特征在于,设置输出信息RAM,所述输出信息RAM储存所述解析结果。6.—种可扩展的网络协议解析系统,其特征在于,包括:译码模块,用于获取待解析的网络协议报文,根据协议查找表对所述待解析的网络报文中的指令进行译码,将译码结果进行储存;解析模块,用于控制逻辑将所述译码结果进行解析,将所述解析结果进行储存,解析结束后通过协议类型编码表获取下一层网络协议报文的指令。7.如权利要求6所述的可扩展的网络协议解析方法,其特征在于,输入报文RAM,通过所述输入报文RAM储存所述待解析的网络协议报文。8.如权利要求6所述的可扩展的网络协议解析方法,其特征在于,报文解析状态机,所述报文解析状态机控制可扩展的网络协议解析方法的解析流程。9.如权利要求6所述的可扩展的网络协议解析方法,其特征在于,报文解析寄存器组,所述报文解析寄存器组储存所述译码结果以及网络协议报文解析所需的变量。10.如权利要求6所述的可扩展的网络协议解析方法,其特征在于,输出信息RAM,所述输出信息RAM储存所述解析结果。

百度查询: 中国科学院计算技术研究所;中国科学院国有资产经营有限责任公司 一种可扩展的网络协议解析系统及方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。