一种网络应用层协议识别方法和系统的制作方法

文档序号:7694007阅读:170来源:国知局
专利名称:一种网络应用层协议识别方法和系统的制作方法
技术领域
本发明涉及一种网络应用层协议识别方式的描迷方法及基于该方 法的协议识别系统。
背景技术
随着网络应用的普及与网络技术的发展,新的网络应用业务层出不 穷,随之而来的是应用层流量特征的多样化以及对应识别方式的复杂 化。传统的网络应用服务使用固定的服务端口 ,能够很容易的通过应
用端口进行应用层协议识别。随着P2P, V0D以及VoIP技术的使用, 如今的网络应用协议主要适用动态端口的方式进行通信,因此传统的 通过端口实现应用协议识别的方法不再适用。
为解决这样的情况,现在主要有两大类识别方式第一类方式深度 包解析,通过对单个或多个数据包内容的某些特征进行匹配来达到识 别的目的,能够很准确的进行识别,但是识别周期相对长且对某些特 征需要通过多包特征综合识别;第二类方式流量统计特征匹配,通过 对目标应用流量的平均包大小,平均流速率等统计量的特征进行分析 来实现识别功能,识别速度快但准确率低。时下网络应用服务的另一 大特点则是协议更新频繁,随之而来的问题则是协议识别系统需要经 常对识别特征乃至识别方式进行更新,这就对协议识别系统中对识别 方式的组织结构提出了新的要求。
目前对协议识别方式的实现主要有两种结构其一,通过代码实 现针对每一种协议识别的程序,效率高但难于更新特征。对于这样的 识别系统,每次对识别特征的更新或识别方式的改变都需要重编译识 别程序。其二,通过正则表达式来存储特征。能够实现不需重编译的 特征更新,但是正则表达式匹配速度相对匹配函数较慢,且对于某些 特征无法匹配,例如数据包内容与数据包长度的相关特征。而且正则 表达式的特征描述方式较为抽象,增加了管理人员自行增加识别方式 的难度。现有的方式中对于多个数据包中的组合特征是通过将多个数 据包存储下来再组合在一起做综合特征匹配来实现的,这种方式效率低,存储空间需求大,在高速链路中使用的时候存在较大性能缺陷。
针对现在网络应用服务特征多样协议更新频繁的特点,应用层流 量识别需要一种能够实现多类型和多状态的识别方式同时高效并易于 更新的结构。

发明内容
本发明的目的在于提出了 一种对应用层的协议识别方式的描述方
法AIMDL,以及利用此描述方法构建的协议识别系统。主要内容包括设 计AIMDL的主要元素以实现对于多类型和多状态的协议识别方式的有 效描述同时满足方便更新的需求。设计并实现能够利用AIMDL所描述 的识别方式高效地进行应用协议识别工作的识别架构。
根据本发明的第 一方面,提供了 一种网络应用层协议识别方法, 其特征在于,所述识别方法包括如下步骤
1) 对网络应用层的协议识别方式进行描述,并生成相应的识别方 式描述文件;
2) 对识别方式的描述文件进行解析,生成相应的Method List数 据结构;以及
3) 依据Method List数据结构,对网络应用层协议完成识别。 优选地,所述步骤l)中,还包括在识别方式描述文件中对为协
议识别提供操作支持的操作方式和识别方式的结构进行描述。 优选地,所述步骤2)中的解析是基于XML语言平台。 优选地,所述步骤3)中的Method List数据结构采用动态链表和 无类型指针结合的方式。
根据本发明的第二方面,提供了 一种网络应用层协议识别系统, 其特征在于,所述识别系统包括对协议识别方式描述文件进行解析 的描述方法解释器,其中所述识别方式描述文件用于对网络应用层的 协议识别方式进行描述;存储解析后的数据结构Method List的Method List数据结构模块;依据Method List对协议进行识别的协议识别操 作执行模块。
优选地,所述描述方法解释器是基于XML语言平台。
优选地,所述的Method List数据结构模块采用动态链表和无类型
指针结合的结构。
本发明能够用来实现多类型的协议识别,同时又能方便对特征与识
别方式进行更新;并能够利用基于状态机的识别方法实现多状态协议识别。


下面将参照附图对本发明的具体实施方案进行更详细的说明,其

图1是本发明应用层协议识别系统的工作示意图; 图2是本发明的协议识别方式描述方法解释器模块的流程图; 图3是本发明的Method List数据结构模块的结构图;以及 图4是本发明的协议识别操作执行模块的流程图。
具体实施例方式
为了实现多类型和多状态的网络应用层协议识别方式同时又能方 便对特征与识别方式进行更新,本发明提供了 一种对网络应用层协议 识别方式的描述方法及基于该方法的协议识别系统。
描述方法综述
应用层协议识别方式的描述方法(AIMDL)能够通过描述几种基本 识别操作的组合来构成一个完整的复杂操作。这些操作是通过对现有 的协议识别方式进行分析得到的。
一个应用层数据包主要包含payload内容,数据包长度,端口这 三个与所属协议相关的属性,因此基本的识别操作也主要是针对这三 个属性进行的。特征也可以由匹配对象分为两种 一种是基本属性中 的内容与静态特征之间的匹配,比如数据包中出现某一特征字段或是 通信端口为某特征值;另一种则是基本属性之间的关系,例如pay load 中某特定位置的数据值与数据包长度或是通信端口号存在某特定关系 的特征。
多包组合特征识别方式在AIMDL中是通过基于状态机的架构和构 建临时存储buffer来实现的。基于状态机实现的识别方式中,每一组 识别操作表征能够确认从状态机的 一 个状态进入最终状态,当达到最 终状态的时候说明识别成功。因此需要能够对一组操作所对应的匹配 状态,以及各状态之间的关系进行描述。AIMDL能够描述一组操作是否 属于一个状态机识别架构的一个识别状态,以及这一识别状态所要求 的前项状态是什么,这样就能够独立的表述整个状态机识别架构的每 一个部分。有些基于状态机的识别操作是需要存储一些数据的,例如 第一个数据包中的某个偏移与后续数据包中特定偏移的数据值有可以 作为识别特征的关系。在本发明的协议识别架构中是通过给每一个流记录中设置一个buffer来保存数据,通过在AIMDL中支持有关buffer 的操作实现对此类特征识别方式的支持。
一个应用层的识别系统中包含很多个应用的识别方式,每个应用 也包括很多种不同的特征流量,需要很多种不同的特征识别方式。因 此AIMDL包含了结构描述元素对这些不同的应用和不同的识别方式之 间的结构关系进行描述。
以基于XML为例的具体描述方法说明
网络应用层协议识别方式的描述方法AIMDL是一种基于XML的描 述。通过设置特定的element元素标签来达到对各种结构的描述。以 下是对上述几类描述对象的实例与详细说明
一.静态特征匹配方法描述 l.payload包含特征字段的检验操作描述
<payload〉
<content〉Bi tTorrent protocoK/content〉 <offset>l</offset〉 <length>19</length〉 </ payload>
该元素表示识别方式中包含一个payload特征字賴:才l^验。包含三 个子元素
"content":特征字段的内容,此处表示为字符串"BitTorrent protocol" 5
"offset":特征字段所处在payload中的位置。如果为负数表 示是从payload的尾部向前的偏移量。特征值"SEARCH"表示没有固 定偏移,特征字段在数据包中的位置不固定。例子中的偏移表示从 payload的第二个字节开始,第一个字节偏移为0;
"length":存储特征字段的长度,例子中长度19为"BitTorrent protocol"的长度。
2. payload length为特征值的检马全操作描述
<payload—length>68</payload—length>
payload length特征的校验一般使用在一组完整的识别操作的第一 个。很多特征只会出现在具有固定包长或者包长为某一特定范围的数据包 中。其内容表示特征数据包的值,若包含"〉,号则表示为范围限制。 3.端口号为特征值的检验操作描述 <port>
<group><start>6881</start〉
<end>6889</end> </group〉 <group>
<start〉10044</start>
<end〉10044</end〉 </group > </port>
port特征的校验并不具有确定协议的准确性,可能与动态端口的协 议发生误识别,因此port的识别方式是在其他识别方式无法正确识别的 情况下使用的。
"group":包含两个元素"start"和"end",表示从"start"开始 到"end"的端口都是协议的特征端口。 二.基本元素相关特征匹配描述方法
1. payload内容与包长相关的 <content—length>
<offset〉0</offset> <byte—width>l</byte-width> <multiple—number〉K/ multiple —number> <diff er—value>3</differ — value> </contenUength>
针对payload内容中包含payload长度信息的特征。 "offset": payload特征数据位置;
"byte一width":表示数据位大小,例子中的1表示数据宽度为一个字
节;
"multiple—number": 4咅凄丈。匹酉己方式为payload长度-payload内 容x倍数+差值;
"differ—value":表示上式中的差值。
例子中payload length-第一个字节的大小x l + 3;
2. payload内容自相关 <content—content>
<offset0>2</offset0> <offsetl>3</offsetl> <differ—value>3</differ—value> </content—content>content —content元素用以描述payload中两个固定偏移的数据具 有固定关系的特征。根据对数据包内容的分析,关系一般是相等或有 固定偏差,因此设计了对应的元素用以描述这样的识别操作。 "offsetX,,两个比较目标参数的位置。 "differ-value,,两个比專交目标之间有固定差^f直的描述。
三. ^犬态4笛述方法 <state>
<pre—state〉N0—STATUS</pre—state> <finalstate〉0</finalstate> <ident if ier — s ta te〉BT0</ident ifier — state〉 </state〉
state标签被用来实现基于状态的识别架构。其主要元素包括 "pre—state":在基于状态机的识别方式中,状态之间的关系是
实现正确的识别才喿作的保证。通过描述前项状态实现对多状态识别过
程中的识别流程的控制。
"finalstate":表示是否是一组多状态识别的最后一个状态。如
果在finalstate的匹配操作通过的情况下,即是完成了多状态的匹配流程。
"identifier —state":对通过该组匹配才喿作的流的状态标签进行 赋值,使得流中的后续数据包能够顺利的进入后续的状态进行特征匹 配。
四. buffer :操作描述方法 1. store buffer操作描述 <store_buffer>
<buffer_offset〉0</buffer_offset> <payload—offset>2</payload_off set〉 </ store_buffer> 将pay load中的数据存储在buffer中方便后续操作时使用。 "payload-offset": payload中待存储的数据的偏移位置。 "buffer-offset": buffer中欲存储数据的位置。 2. Modify buffer操作描述 <modify—buffer〉
<buffer_offset〉l</buffer—offset〉 <add_value>l</add—value> </modify-buff er〉在某些匹配过程中需要对buffer中数据进行操作然后再进行匹配。 此元素就是用以对此类操作进行描述。根据分析只有数值增加的特征出 现。所以_没置元素如下
"buffer—offset":被操作buffer元素的位置 "add—value":增加的量 3. judge buffer操作描述 <judge_buff er〉
<buffer_offset〉2</buffer_offset〉
<payload—off set>8</payload—off set〉
<width>4<Mdth〉 </judge—buffer>
在前项状态的操作过程中完成对数据的存储和特定修改操作后,通过 匹配buffer中的数据与新的被检测数据包中的特定位置数据实现应用协 议特征匹配的目的。
"buffer-offset": buffer中被匹配特征数据的偏移位置。 "payload-offset,, payload中被用来与buffer中内容进行匹配的 数据的偏移位置。
"width":匹配数据的位数。例子中的4表示4个字节的数据进行匹 配操作。
五.识别方式的结构描述方法
<protocol—name>
<tcp>
</tcp> <udp> <me、hod> <statu>
</statu>
<payload-length>X</ payload—length 〉
</ method 〉 < method >
</ method 〉</udp> </protocol_name>
上述是使用AIMDL描述一种应用的识别方式的文件结构 根元素"protocol—name":用以表示此元素是描述的何种应用的 识别方式。
次级标签 "tcp"和"udp":区分同种应用的tcp和udp流不同 的识别方式。在构建协议识别方式表的时候对不同的应用层协议分别 构建特征匹配方法表使得识别流程更快。
"method"标签method标签由 "state"标签、"payload"标 签和其他操作标签组成,表示一个独立的识别方式。这个识别方式包 含由此方法对应的状态信息、包长限制以及包含的微操作组合。这个 独立的方法能够根据其状态信息确定是否是多状态识别的一个状态或 是一个能够独立完成一种应用协议识别的 一组操作。包长限制能够帮 助快速审查此数据包是否符合基本的进行后续检查的要求。剩下所罗 列的一组操作时完成一个完整独立识别方式所需要的一组微元操作。
协议识别系统综述
本发明的应用层协议识别系统是利用AIMDL所描述的识别方式高 效地进行应用流量识别工作的识别架构。
通过对网络应用协议识别方式进行统计与分析,得到了若干基本的 特征匹配方法。这些方式以网络数据包所具有的内容,包长,端口信 息这几个属性为特征匹配对象,实现针对这些属性与静态的特征内容 匹配以及这些属性之间相关关系的特征校验操作。这些基本的识别操 作是针对网络数据所能够被用以匹配的属性以及匹配操作而构建的, 因此所有现存的协议识别方式都能够通过将这几个基本的操作进行組 合来实现。经过对实际的协议识别方式进行统计马全i正这一设计的正确 性。因此能够通过将这几个基本操作及其对应的参数描述方法设计在 AIMDL中实现利用AIMDL对任意协议识别方式进行描述的需求。随着网 络协议的多变,很多协议的识别特征都分布在多个数据包中,因此需 要将这些信息综合在一起才能有效的实现识别功能。本发明采用了基 于状态机与临时存储器的特征匹配架构实现对于此类特征的识别功 能,同时在AIMDL中设计了与此相关的操作与元素的描述功能。
通过设计基于AIMDL的内容解释器与协议识别模块,使得能够利用 AIMDL实现高效的协议识别系统。AIMDL内容解释器能够将基于AIMDL 的协议识别方式的描述文件中的基本识别操作的组织模式以及对应的参数信息存储,在特别设计的可扩展识别方式存储数据结构method list中, 一方面能够在更新操作时重新解析AIMDL描述文件内容实现 更新,另 一方面此结构为识别操作执行模块提供识别方式的实现方式。 协议识别操作执行模块根据method list的内容正确高效的实现协议 识别工作。
本发明的协议识别系统能够被应用来实现多种类型的协议识别方式, 同时又能方便对特征与识别方式进行更新。通过对多种识别方式的支持使 得能够在系统中使用不受限制的使用高效的识别方式,同时这些多样的方 式有能够利用AIMDL来方便的描述,使得能够通过简单的更新描述文件实 现识别方式的更新。利用XML的易于表述可扩展的特性,方便了操作人员 设计并更新识别方式的过程。实现了兼具识别效率和可扩展性的应用层协 议识别架构。另一方面,能够利用状态识别实现多状态协议识别方式。现 有技术中没有通用的多状态解决方式。只有将多个数据包内容整合成一个 整体进行匹配用以实现类似的功能或是为特定协议设计特定的多状态识 别方式。
图1是本发明的应用层协议识别系统的工作示意图。如图l所示, 该协议识别系统包括协议识别方式的描述方法解释器、Method List数 据结构模块、协议识别操作执行模块。整体系统流程分为下面几个阶 段
1) 根据识别方式结合NAIMDL语法规则设计对应的配置文件;
2) 程序在初始化数据过程中调用解释器模块解析配置文件的内容并 依据内容在程序中构建method list数据结构;
3) 程序的识别才莫块调用method list结构中的内容实现协议识别操作。
以基于XML平台的协议识别系统的具体结构说明
一.AIMDL协议识别方式的描述方法解释器
AIMDL解释器负责从识别方式描述文件中解析出识别方式组织与 对应参数并存储在对应的数据结构methodlist中。AIMDL基于XML进 行设计,因此AIMDL解释器利用现有的XML解释器实现对文件中各个 XML基本元素的遍历以及内容的获取,对内容语义的解析根据AIMDL的 设定在程序中完成相关逻辑即可。具体实现上利用由开放源代码的软 件库libxml2为基础实现遍历与解析文件中XML元素内容的目的,语 义解析代码为对应元素内容纟姿照语法以及method list的设计结构在 method list中构建相应的存储空间用以保存信息。
图2示出图1中的协议识别方式描述解释器模块的流程图;如图2所示,整个AIMDL解析器模块就由两部分组成。在阶段200获取描述 文件结构,接着在阶段202判断是否存在下一种协议,如果没有存在 下一种协议,则进入阶段210,解析程序结束;如果存在,进入阶段 204,获取状态信息、包长限制构建协议头并加载在method list中。 在阶段206中,接着判断是否存在下一种协议,如果否,跳转到阶段 202开始之前;如果是,则进入阶段208,获取基本操作参数等信息。 将结构加载到method list对应的位置。最后根据操作的具体情况, 要么返回阶段206开始之前,要么进入阶段210解析程序结束。
二. Method list数据结构模块
method list用以在协议识别程序中保存识别方式,其结构采用动 态链表和无类型指针构成,方便动态扩展协议识别方式。同时通过对 结构的设计高效的实现协议识另'j流程。
图3示出图1中的Method List数据结构模块的结构图。如图3 所示,其具体结构图忽略了链表元素之间连接的指针元素。
识别方式头引导 一 组基本识另U操作以实现 一 个独立的识别方式。 这个方式可以是能够直接识别数据包所属流为何种应用协议的方式也 可以是多状态识别方式中对某 一 状态的校验方法。该识别头中主要包 含的元素为此方式的状态信息、包长限制信息、应用名称以及指向 所属基本操作和下一识别头的指针。状态信息存储了这个识别方式是 否是多状态识别方式的一部分,如果是的话对前项状态的要求是什么, 识别后赋予的状态名是什么这些信息。包长限制信息表示此类识别方 式针对的是包长在某个限制条件下的数据包。包长限制信息以及前项 状态要求信息能够有效对数据包是否有资格进行后续的 一连串基本识 别操作哦进行判断。这一 结果能够有效的加快平均检测流程。
基本识别操作根据其类型和参数,识别操作执行模块能够完成 识别方式的各个基本操作。因为基本操作类型较多,链表各元素使用 无类型指针链接,下一操作类型用以正确解析下一个基本操作元素的 内容。
三. 协议识别操作执行模块
协议识别操作执行模块结合对象数据包的信息以及该数据包所属 流记录中的识别状态信息以及buffer内容信息^f吏用method list中存 储的识别方式完成协议识别操作。
图4示出图1中的协议识别操作执行模块的流程图。如图4所示, 每个数据包进入识别流程后按照method list的逐条匹配方法依次完 成匹配操作。在每个独立的匹配操作中按照1. 包长限制检测;
2. 状态信息;f企测;
3. 基本检测操作的顺序完成识别方式。
如果通过上述三个^r测,则识别状态成功或是识别所属应用成果 退出流程。未通过^r测的继续流程中的下 一组识别操作直到被识别或
是完成整个识别流程。
基于XML平台的协议识别系统的流程说明 下面通过一个实际的例子说明协议识別系统的整体工作流程 一. 一个实际的识别方式描述文件内容 < xml version-". 0" encoding-"UTF-8" 〉 <bi ttorrent> <tcp〉
<type value=T'> <byte>
<content〉Oxl3</content〉 <offset〉0</offset> </byte〉 <s tring〉
<content>BitTorrent protocol</content> <offset>K/offset〉 <string—length〉19</string—length> </string> </type> </tcp> <udp〉
<type value-"l">
<payload—length>21</pay load—length> <byte>
<content>OxOO</content> <offset〉0</offset> </byte> <byte>
<content>OxOO</content> <offset>l</offset> </byte><byte>
<content>0x04</content〉 <offset〉2</offset> </byte> <byte>
<content>0x01</content> <offset>3</offset〉 </byte> </type> </udp> </bi ttorrent>
以上是一个描述识别BT流量的以NAIMD实现的配置文件。这里具 体实现了针对tcp和udp的各一种特征识别方式。它们分别是
1. Payload首字节内容为0x13,从第二个字节开始的19个字节 为字符串"BitTorrent protocol",针对的是tcp流量。
2. Payload长度为21的数据包,第一到四个字节内容分别是0x00 0x00 0x04 0x01
二. 初始化解析过程
内容解析模块根据配置文件将导入(一)中所述文件中描述的识 别方式。
1. 首先根据主元素内容"bittorrent"确定了即将引入的识别方 式是针对BT协议的;
2. 分别提取tcp和udp标签下的识别方式内容,将其内部的识别 方式加入到对应的method list中(系统中包含两个method list,分别表示tcp和udp的协议识别方式);
3. 在解析过程中为每一个"type"标签下的内容在method list 中构建——个"^只另^方式头(identifier—header) , type中的每 一个基本识别元素为这个识别方式头链接的基本识别方式中 的一个。例如TCP标签下的type l构建一个识别方式头,链 接两个识别方式分别是判断首字节内容是否是0x13和判断第 二个字节开始的19个字节内容是否是"BitTorrent Protocol"。
三. 识别执行过程
在具体的识别执行过程中,识别执行模块按照method Hst中的 内容实现具体的识别工作。具体流程如下
1. 根据传输层协议决定参照TCP或UDP的method list来进行识 别工作;
2. 对it据包内容和其所属流信息用method list中的识别方式头 指定的一些基本信息和链接的一组基本识别操作进行识別工 作;如果未完成任何 一 个独立的识别操作就被认为是不能满足 这一识别方式对应的特征,于是继续进入method list中的下 一条识别方式头指定的识别方式进行判断。如果完成了 一个识 别方式头所指定的所有操作,则被认为满足了识别特征(或者 是满足了多状态识别中进入下一状态的特征),则该流就可以 被识别未对应的流量。
四.实例完整的工作流程
当 一个数据包以及其所属流的信息进入检测流程之后,识别执行 模块根据method 1 ist信息对其进行流量识别。首先根据其所属的传 输层协议选择对应的method list ( tcp和udp各自维护了 一个method list)。在依据method 1 is t中的识别方式头指定的识别方式进行识 别操作,假如一个数据包被上述识别方式描述文件中的tcp的第一个 type指定的方法所检测的时候,首先进行第一个操作检测首个字符是 否是0xl3 (这个操作存储在识别方式头指定的第一个操作结构中,识 别方式头中包含这个操作的类型和其指针使得识别执行模块能够正确 地找到这个存储这个操作的结构。这个结构中存储了其比较参数为 0x13,于是执行模块根据参数和操作类型对数据包和流信息进行特征 匹配)。如果不符合这个特征就直接结束这个识别方式头指定的识别 操作,进入下一识别方式头指定的识别过程中。如果符合这个特征就 继续后续的识别操作,比如比较第二个字节开始是否是字符串
"BitTorrent Protocol",如果不是就进入下一识别方式中。如果是 则告知识别执行模块,完成特征匹配,这个数据包所属于的流可以被 标识为属于BT应用。
以上对本发明的具体描述旨在说明具体实施方案的实现方式,不 能理解为是对本发明的限制。本领域普通技术人员在本发明的教导下, 可以在详述的实施方案的基础上做出各种变体,这些变体均应包含在 本发明的构思之内。本发明所要求保护的范围仅由所述的权利要求书 进行限制。
权利要求
1.一种网络应用层协议识别方法,其特征在于,所述识别方法包括如下步骤1)对网络应用层的协议识别方式进行描述,并生成相应的识别方式描述文件;2)对识别方式描述文件进行解析,生成相应的Method List数据结构;以及3)依据Method List数据结构,对网络应用层协议进行识别。
2. 根据权利要求1所述的识别方法,其特征在于,所述网络应用 层协议识别方式是多类型和/或多状态的协议识别方式。
3. 根据权利要求1所述的识别方法,其特征在于,所述步骤l) 中,还包括在识别方式描述文件中对为协议识别提供操作支持的操 作方式和识别方式的结构进行描述。
4. 根据权利要求1所述的识别方法,其特征在于所述步骤2) 中的解析是基于XML语言平台。
5. 根据权利要求1所述的识别方法,其特征在于所述步骤3) 中的Method List数据结构采用动态链表和无类型指针结合的方式。
6. 根据权利要求3所述的识别方法,其特征在于所述对协议识 别提供操作支持的操作方式包括buffer操作。
7. —种网络应用层协议识别系统,其特征在于,所述识别系统包括对协议识别方式描述文件进行解析的描述方法解释器,其中所述 识别方式描述文件用于对网络应用层的协议识别方式进行描述;存储解析后的数据结构Method List的Method List数据结构模 块;以及依据Method List对协议进行识别的协议识别纟喿作拭J于模块。
8. 根据权利要求7所述的识别系统,其特征在于所述描述方法 解释器是基于XML语言平台。
9. 根据权利要求8所述的识别系统,其特征在于所述描述方法 解释器调用LIBXML2开放代码库。
10. 根据权利要求7至9任一项所述的识别系统,其特征在于所述的Method List数据结构模块采用动态链表和无类型指针结合的方式o
全文摘要
本发明披露了一种网络应用层协议识别方法及其系统,能够对多类型和/或多状态的网络应用层协议进行识别。该系统主要包括对协议识别方式描述文件进行解析的描述方法解释器,其中所述识别方式描述文件用于对网络应用层的协议识别方式进行描述;存储解析后的数据结构Method List的Method List数据结构模块;依据Method List对协议进行识别的协议识别操作执行模块。本发明能够用来实现多类型的协议识别和利用状态识别实现多状态协议识别,同时又能方便对特征与识别方式进行更新。
文档编号H04L29/08GK101577704SQ20081010607
公开日2009年11月11日 申请日期2008年5月8日 优先权日2008年5月8日
发明者众 张, 杨建华 申请人:北京东华合创数码科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1