CN105100091B - 一种协议识别方法及系统 - Google Patents

一种协议识别方法及系统 Download PDF

Info

Publication number
CN105100091B
CN105100091B CN201510409321.1A CN201510409321A CN105100091B CN 105100091 B CN105100091 B CN 105100091B CN 201510409321 A CN201510409321 A CN 201510409321A CN 105100091 B CN105100091 B CN 105100091B
Authority
CN
China
Prior art keywords
data
byte
agreement
data packet
data stream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510409321.1A
Other languages
English (en)
Other versions
CN105100091A (zh
Inventor
王占
王占一
刘博�
张卓
黄传明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qax Technology Group Inc
Secworld Information Technology Beijing Co Ltd
Original Assignee
Beijing Qianxin Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qianxin Technology Co Ltd filed Critical Beijing Qianxin Technology Co Ltd
Priority to CN201510409321.1A priority Critical patent/CN105100091B/zh
Publication of CN105100091A publication Critical patent/CN105100091A/zh
Application granted granted Critical
Publication of CN105100091B publication Critical patent/CN105100091B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

本发明公开了一种协议识别方法及系统,其中,所述方法包括:接收待识别协议的数据流,所述数据流包括上行数据包和下行数据包;将所述上行数据包和下行数据包进行拼接,以及进行格式转换,获得格式转换后的载荷数据流;采用深度学习模型对所述载荷数据流进行协议识别,获取用于输出的所述数据流的协议识别结果;其中,所述深度学习模型为预先采用训练数据流获取的用于识别网络数据流的模型。上述方法无需人工筛选特征,能够较好的提高网络数据流的协议识别率,同时降低成本。

Description

一种协议识别方法及系统
技术领域
本发明涉及通信技术领域,具体涉及一种协议识别方法及系统。
背景技术
协议识别是指根据网络流和流中的数据信息,推测出网络流量所属的协议类型。现有的协议识别方法包括:基于端口、基于静态特征和基于统计特征的协议识别方法。
基于端口的协议识别方法主要是根据一些知名端口来识别当前数据流的协议标签。如HTTP(HyperText Transfer Protocol,超文本传输协议)使用80端口,21端口是FTP(File Transfer Protocol,文件传输协议)服务器专用的等等。实际使用中,这种方法的识别能力非常有限,对于注册和动态端口就无能为力了。
基于静态特征的协议识别方法主要是通过对TCP(Transmission ControlProtocol,传输控制协议)的有效载荷精确匹配特征码来识别当前数据流的协议标签。然而,该方法的缺陷是:特征规则覆盖不全,难以匹配新出现的特征。
最近应用的基于统计特征的协议识别方法主要是结合机器学习算法来识别协议的方法,该方法相对比端口协议识别和静态特征协议识别均有较好的提高,但是基于统计特征的协议识别中对特征的选取主要依靠人为筛选,成本较高,且效率非常低。
为此,如何提供一种成本低,且识别准确率高的协议识别方法成为当前需要解决的问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决或者减缓上述问题的协议识别方法及系统。
根据本发明的一个方面,提供了一种协议识别系统,包括:
接收单元,用于接收待识别协议的数据流,所述数据流包括上行数据包和下行数据包;
格式转换单元,用于对所述上行数据包和下行数据包进行拼接,并进行格式转换,获得格式转换后的载荷数据流;
协议识别单元,用于采用深度学习模型对所述载荷数据流进行协议识别,获取用于输出的所述数据流的协议识别结果;
其中,所述深度学习模型为预先采用训练数据流通过深度学习获取的用于识别网络数据流的模型。
可选地,所述格式转换单元,具体用于:
将所述上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获取字节数在第一预设范围内的第一载荷数据流;
若所述第一载荷数据流的数据格式为16进制,则将该第一载荷数据流的数据格式转换为10进制,以及对格式转换后的第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流;
或者,
若所述第一载荷数据流的数据格式为10进制,则将该第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流。
可选地,所述第一载荷数据流中的字节拼接方式为:
依次排列的上行数据包的第一字节、下行数据包的第一字节、上行数据包的第N字节和下行数据包第N字节;
N为大于1的自然数,且所述第一载荷数据流的字节数小于等于1000,大于等于200。
可选地,所述系统还包括:模型建立单元;
所述模型建立单元,用于采用已知的训练数据流及该训练数据流对应的协议,获取用于识别网络数据的深度学习模型及与深度学习模型对应的模型参数;
所述已知的训练数据流包括已知多种协议标签的训练数据。
可选地,所述模型建立单元,具体用于:
对每一协议对应的训练数据中上行数据包和下行数据包进行拼接,并进行格式转换,获得第一数据;
将所有协议对应的格式转换后的第一数据和该第一数据对应的协议组成向量矩阵;
采用深度神经网络算法处理所述向量矩阵,获得深度学习模型及模型参数;或者,
采用栈式自编码算法处理所述向量矩阵,获得深度学习模型及模型参数。
可选地,所述模型建立单元,还用于:
针对每一协议的训练数据,将该训练数据的上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获得字节数在第二预设范围内的第二数据;
若所有协议的第二数据的格式为16进制,则将该第二数据的格式转换为10进制,以及对格式转换后的第二数据中每一字节除以255,获得所述第一数据;
或者,
若所有协议的第二数据的格式为10进制,则将该第二数据中每一字节除以255,获得所述第一数据。
可选地,所述模型建立单元,还用于:
判断当前协议对应的第二数据的字节数是否符合预设字节数范围;
若当前协议的第二数据的字节数大于预设字节数范围,则对该第二数据进行欠抽样,获得符合预设字节数范围的第二数据;
若当前协议的第二数据的字节数小于预设的字节数范围,则重复复制多次该协议的第二数据,获得符合预设字节数范围的第二数据。
可选地,协议识别单元,具体用于:
采用深度学习模型对格式转换后的载荷数据流进行协议识别,获得所述数据流中每一条待识别的数据属于每一种协议的概率;
针对每一条待识别的数据,选取概率最大的协议作为该待识别的数据的协议,获得所述数据的协议识别结果。
根据本发明的另一个方面,提供了一种协议识别方法,包括:
接收待识别协议的数据流,所述数据流包括上行数据包和下行数据包;
对所述上行数据包和下行数据包进行拼接,并进行格式转换,获得格式转换后的载荷数据流;
采用深度学习模型对所述载荷数据流进行协议识别,获取用于输出的所述数据流的协议识别结果;
其中,所述深度学习模型为预先采用训练数据流通过深度学习获取的用于识别网络数据流的模型。
可选地,所述对所述上行数据包和下行数据包进行拼接,并进行格式转换,获得格式转换后的载荷数据流,包括:
将所述上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获取字节数在第一预设范围内的第一载荷数据流;
若所述第一载荷数据流的数据格式为16进制,则将该第一载荷数据流的数据格式转换为10进制,以及对格式转换后的第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流;
或者,
若所述第一载荷数据流的数据格式为10进制,则将该第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流。
可选地,所述第一载荷数据流中的字节拼接方式为:
依次排列的上行数据包的第一字节、下行数据包的第一字节、上行数据包的第N字节和下行数据包第N字节;
N为大于1的自然数,且所述第一载荷数据流的字节数小于1000大于200。
可选地,采用深度学习模型对所述载荷数据流进行协议识别之前,所述方法还包括:
采用已知的训练数据流及该训练数据流对应的协议,获取用于识别网络数据的深度学习模型及与深度学习模型对应的模型参数;
所述已知的训练数据流包括已知多种协议标签的训练数据。
可选地,采用已知的训练数据流及该训练数据流对应的协议,获取用于识别网络数据的深度学习模型,包括:
对每一协议对应的训练数据中上行数据包和下行数据包进行拼接,并进行格式转换,获得第一数据;
将所有协议对应的格式转换后的第一数据和该第一数据对应的协议组成向量矩阵;
采用深度神经网络算法处理所述向量矩阵,获得深度学习模型及模型参数;或者,
采用栈式自编码算法处理所述向量矩阵,获得深度学习模型及模型参数。
可选地,所述对每一协议对应的训练数据中上行数据包和下行数据包进行拼接,并进行格式转换,获得第一数据,包括:
针对每一协议的训练数据,将该训练数据的上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获得字节数在第二预设范围内的第二数据;
若所有协议的第二数据的格式为16进制,则将该第二数据的格式转换为10进制,以及对格式转换后的第二数据中每一字节除以255,获得所述第一数据;
或者,
若所有协议的第二数据的格式为10进制,则将该第二数据中每一字节除以255,获得所述第一数据。
可选地,针对每一协议的训练数据,将该训练数据的上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获得字节数在第二预设范围内的第二数据之后,所述方法还包括:
判断当前协议对应的第二数据的字节数是否符合预设字节数范围;
若当前协议的第二数据的字节数大于预设字节数范围,则对该第二数据进行欠抽样,获得符合预设字节数范围的第二数据;
若当前协议的第二数据的字节数小于预设的字节数范围,则重复复制多次该协议的第二数据,获得符合预设字节数范围的第二数据。
可选地,采用深度学习模型对所述载荷数据流进行协议识别,获取用于输出的所述数据流的协议识别结果,包括:
采用深度学习模型对格式转换后的载荷数据流进行协议识别,获得所述数据流中每一条待识别的数据属于每一种协议的概率;
针对每一条待识别的数据,选取概率最大的协议作为该待识别的数据的协议,获得所述数据的协议识别结果。
由上述技术方案可知,本发明实施例的协议识别方法及系统,通过预先获取的深度学习模型对格式转换后的数据流进行协议识别,获得协议识别结果,本发明实施例中的深度学习模型是预先通过深度学习获取的深度学习模型,由此,可解决现有技术中的识别准确率低,且成本高的问题。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
图1为本发明一实施例提供的协议识别方法的流程示意图;
图2为本发明另一实施例提供的协议识别方法的流程示意图;
图3为本发明另一实施例提供的协议识别方法的流程示意图;
图4为本发明一实施例提供的协议识别系统的结构示意图;
图5为本发明另一实施例提供的协议识别系统的结构示意图;
图6为本发明一实施例中使用的网络结构的示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
图1示出了本发明一实施例提供的协议识别方法的流程示意图,如图1所示,本实施例的协议识别方法包括下述步骤。
101、接收待识别协议的数据流,所述数据流包括上行数据包和下行数据包;
102、对所述上行数据包和下行数据包进行拼接,并进行格式转换,获得格式转换后的载荷数据流。
应说明的是,上述步骤101中待识别协议的数据流通常可为采用统一会话的待识别协议的数据流。
当然,如果待识别协议的数据流不是同一会话的数据流,则需要预先识别出同一会话的待识别协议的数据流,进而针对同一会话的待识别协议的数据流执行本发明实施例中的协议识别方法。
103、采用深度学习模型对所述载荷数据流进行协议识别,获取用于输出的所述数据流的协议识别结果。
在本实施例中,深度学习模型为可预先采用训练数据流通过深度学习获取的用于识别网络数据流的模型。
在具体应用中,例如,可采用已知的训练数据流及该训练数据流对应的协议,以及结合深度学习算法可获取用于识别网络数据的深度学习模型及与深度学习模型对应的模型参数;
该些已知的训练数据流可包括已知多种协议标签的训练数据。
在本实施例中,基于深度学习技术的深度学习算法可自动识别网络数据流的协议,同时可以实现自动学习有用的特征进行后续的数据流的协议识别,无需人为筛选特征,进而减少了人力成本,同时深度学习算法还可以保证数据流的协议识别的准确率。
由此,上述实施例的协议识别方法,通过预先获取的深度学习模型对格式转换后的数据流进行协议识别,获得协议识别结果,本发明实施例中的深度学习模型是预先通过深度学习获取的深度学习模型,由此,可解决现有技术中的识别准确率低,且成本高的问题。
图2示出了本发明一实施例提供的协议识别方法的流程示意图,如图2所示,本实施例的协议识别方法包括下述步骤。
201、接收待识别协议的数据流,所述数据流包括上行数据包和下行数据包;
202、将所述上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获取字节数在第一预设范围内的第一载荷数据流。
举例来说,所述第一载荷数据流中的字节拼接方式可为:依次排列的上行数据包的第一字节、下行数据包的第一字节、上行数据包的第N字节和下行数据包第N字节;
其中,N为大于1的自然数,且所述第一载荷数据流的字节数小于等于1000大于等于200。
应说明的是,本步骤中是将步骤201中属于同一会话的上行数据包的字节和下行数据包的字节按照预设策略进行拼接,进而获得第一载荷数据流。
203、若所述第一载荷数据流的数据格式为16进制,则将该第一载荷数据流的数据格式转换为10进制,以及对格式转换后的第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流;
当然,在其他实施例中,若所述第一载荷数据流的数据格式为10进制,则直接将该第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流。
204、采用深度学习模型对所述载荷数据流进行协议识别,获取用于输出的所述数据流的协议识别结果。
在本实施例中,深度学习模型为可预先采用训练数据流通过深度学习获取的用于识别网络数据流的模型。
举例来说,步骤204可具体为:采用深度学习模型对格式转换后的载荷数据流进行协议识别,获得所述数据流中每一条待识别的数据属于每一种协议的概率;
针对每一条待识别的数据,选取概率最大的协议作为该待识别的数据的协议,获得所述数据的协议识别结果。
本实施例中使用深度学习技术获取深度学习模型,进而实现自动识别协议。同时深度学习模型还能够实现自动学习有用的特征,深度网络中每一层神经元的激活值都是自动学习得到的特征;
由此,本实施例的协议识别方法识别数据流的协议准确率高,同时可降低人工工作量,节省了人力和时间。
图3示出了本发明一实施例提供的协议识别方法的流程示意图,图3所示出的协议识别方法与图2所示的方法的区别在于,在步骤201之前,协议识别方法还包括下述的步骤200,如图3所示。
200、采用已知的训练数据流及该训练数据流对应的协议,获取用于识别网络数据的深度学习模型及与深度学习模型对应的模型参数;
所述已知的训练数据流包括已知多种协议标签的训练数据。
在本实施例中,步骤200可位于步骤201之前,在其他实施例中,步骤200只要在步骤204之前实现即可,不一定限定在步骤201之前,可根据实际需要调整。
另外,需要说明的是,上述图3中所示的步骤200还可包括下述的图中未示出的子步骤2001至2004:
2001、对每一协议对应的训练数据中上行数据包和下行数据包进行拼接,并进行格式转换,获得第一数据。
举例来说,在步骤2001中,针对每一协议的训练数据,可将该训练数据的上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获得字节数在第二预设范围内的第二数据;
例如,按照上行1+下行1+上行2+下行2的方式对训练数据进行拼接。
另外,若所有协议的第二数据的格式为16进制,则将该第二数据的格式转换为10进制,以及对格式转换后的第二数据中每一字节除以255,获得所述第一数据;
或者,若所有协议的第二数据的格式为10进制,则将该第二数据中每一字节除以255,获得所述第一数据。
也就是说,对于10进制的第二数据中的每一字节对应的数值除以255,例如:F1E3->241227->0.94510.8902。
需要说明的是,对第二数据进行格式转换之前,为保证每一协议对应的第二数据的样本数符合要求,还需要对未进行格式转换的第二数据进行下述操作:
第一、判断当前协议对应的第二数据的字节数是否符合预设字节数范围;
第二、若当前协议的第二数据的字节数大于预设字节数范围,则对该第二数据进行欠抽样,获得符合预设字节数范围的第二数据;
第三、若当前协议的第二数据的字节数小于预设的字节数范围,则重复复制多次该协议的第二数据,获得符合预设字节数范围的第二数据。
由此,可实现每一协议对应的第二数据的字节数在预设字节数范围内,可较好保证训练数据的准确,以及最后获取的深度学习模型对协议识别的准确率。
2002、将所有协议对应的格式转换后的第一数据和该第一数据对应的协议组成向量矩阵;
2003、采用深度神经网络算法/栈式自编码算法处理所述向量矩阵,获得深度学习模型及模型参数。
为此,本实施例中,使用深度学习获得的深度学习模型可实现自动识别网络数据流的协议;同时能够实现自动学习有用的特征,进而提高了协议识别的准确率高和识别效率。
图4为本发明一实施例提供的协议识别系统的结构示意图,如图4所示,本实施例的协议识别系统包括:接收单元41、格式转换单元42和协议识别单元43;
其中,接收单元41用于接收待识别协议的数据流,所述数据流包括上行数据包和下行数据包;
格式转换单元42用于对所述上行数据包和下行数据包进行拼接,并进行格式转换,获得格式转换后的载荷数据流;
协议识别单元43用于采用深度学习模型对所述载荷数据流进行协议识别,获取用于输出的所述数据流的协议识别结果;
其中,所述深度学习模型为预先采用训练数据流通过深度学习获取的用于识别网络数据流的模型。
举例来说,协议识别单元43可具体用于,采用深度学习模型对格式转换后的载荷数据流进行协议识别,获得所述数据流中每一条待识别的数据属于每一种协议的概率;
针对每一条待识别的数据,选取概率最大的协议作为该待识别的数据的协议,获得所述数据的协议识别结果。
在一种可能的实现方式中,上述的格式转换单元42可具体用于:
将所述上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获取字节数在第一预设范围内的第一载荷数据流;
若所述第一载荷数据流的数据格式为16进制,则将该第一载荷数据流的数据格式转换为10进制,以及对格式转换后的第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流;
或者,若所述第一载荷数据流的数据格式为10进制,则将该第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流。
举例来说,本实施例中的第一载荷数据流中的字节拼接方式为:
依次排列的上行数据包的第一字节、下行数据包的第一字节、上行数据包的第N字节和下行数据包第N字节;
N为大于1的自然数,且所述第一载荷数据流的字节数小于等于1000大于等于200。
在另一可选的实现方式中,上述图4所示的协议识别系统还可包括下述的图中未示出的模型建立单元40;该模型识别单元可位于协议识别单元43之前,并与协议识别单元43连接;
本实施例的模型建立单元40可用于采用已知的训练数据流及该训练数据流对应的协议,获取用于识别网络数据的深度学习模型及与深度学习模型对应的模型参数;
所述已知的训练数据流包括已知多种协议标签的训练数据。
在具体应用中,上述模型建立单元40可具体用于:
对每一协议对应的训练数据中上行数据包和下行数据包进行拼接,并进行格式转换,获得第一数据;
将所有协议对应的格式转换后的第一数据和该第一数据对应的协议组成向量矩阵;
采用深度神经网络算法处理所述向量矩阵,获得深度学习模型及模型参数;或者,
采用栈式自编码算法处理所述向量矩阵,获得深度学习模型及模型参数。
在可选的实现方式中,前述的模型建立单元43还用于:
针对每一协议的训练数据,将该训练数据的上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获得字节数在第二预设范围内的第二数据;
进一步地,判断当前协议对应的第二数据的字节数是否符合预设字节数范围;若当前协议的第二数据的字节数大于预设字节数范围,则对该第二数据进行欠抽样,获得符合预设字节数范围的第二数据;若当前协议的第二数据的字节数小于预设的字节数范围,则重复复制多次该协议的第二数据,获得符合预设字节数范围的第二数据;
若所有协议的第二数据的格式为16进制,则将该第二数据的格式转换为10进制,以及对格式转换后的第二数据中每一字节除以255,获得所述第一数据;
或者,
若所有协议的第二数据的格式为10进制,则将该第二数据中每一字节除以255,获得所述第一数据。
上述实施例的协议识别系统,通过协议识别单元根据预先获取的深度学习模型对格式转换后的数据流进行协议识别,获得协议识别结果,本发明实施例中可通过模型建立单元预先通过深度学习获取的深度学习模型,由此,可解决现有技术中的识别准确率低,且成本高的问题。
图5为本发明另一实施例提供的协议识别系统的结构示意图,如图5所示,本实施例的协议识别系统包括:训练数据关联模块51、训练数据抽样模块52、训练数据变换模块53、深度学习模块54、识别数据关联模块55、识别数据变换模块56、协议识别模块57;
其中,训练数据关联模块51用于接收用于进行训练深度学习模型的TCP网络数据流和该TCP网络数据流的协议标签,该TCP网络数据流包括多种协议标签的上行数据包和下行数据包;
应说明的是,本实施例中的训练数据流为TCP网络数据流,相应地,前述实施例中的训练数据流均可为TCP网络数据流。
该处训练数据关联模块51对接收的TCP网络数据流中同一协议的上行数据包和下行数据包拼接在一起,获得所有协议拼接后的TCP载荷数据流;例如,拼接方式:上行1+下行1+上行2+下行2+上行n+下行n,直至载荷满足长度限制L个字节,n取大于2的自然数;并输出拼接后的TCP载荷数据流和对应的协议标签。
可理解的是,该处训练数据关联模块51在针对TCP网络数据流中同一协议的上行数据包和下行数据包进行拼接之前,判断上行数据包和下行数据包是不是属于同一会话的TCP网络数据流,如果不是,则可先识别出同一会话的上行数据包和下行数据包,进而针对同一会话的且属于同一协议的上行数据包和下行数据包进行拼接。如果是同一会话的TCP网络数据流,则直接拼接同一协议的上行数据包和下行数据包。
举例来说,可根据数据包携带的IP/PORT4元组以及TCP包头中的sequence和ack值,可以确定数据包是否属于同一个会话的TCP网络数据流。
需要说明的是,上述L可以根据实际需要设定,通常取200~1000之内(包括200或1000)的正数。由于在200~1000内,L取值越大,最终协议识别系统识别的数据流的协议的准确率越高。
由于当前拼接后的TCP载荷数据流的长度小于L个字节,且TCP载荷数据流的数据格式为16进制。
为了解决TCP网络数据流中对每种协议对应的数据样本量不平衡的问题,采用训练数据抽样模块52对TCP网络数据流进行重抽样,具体如下。
本实施例中的训练数据抽样模块52连接训练数据关联模块51,接收训练数据关联模块51输出的TCP载荷数据流以及TCP载荷数据流对应的协议标签;
该训练数据抽样模块52用于判断预先设定要训练的数据样本总量M(即所有协议的TCP载荷数据流的总字节数)和每一协议对应的样本量mi(Σmi=M,)
该处的样本量即为每一协议的TCP载荷数据流的字节数。
接着,对大于mi的每一协议的TCP载荷数据流进行欠抽样,对小于mi的每一协议的TCP载荷数据流进行过抽样,进而重新获得满足样本总量M的所有协议的TCP载荷数据流。由此,该训练数据抽样模块52输出抽样后满足样本总量M的TCP载荷数据流以及对应的协议标签。
对于欠抽样,举例来说,先剔除与样本平均值的偏差超过三倍标准差的样本,再进行随机抽样;
对于过抽样,可复制多次该类的样本,再在复制后的样本中随机选取5%*L个字节,将其重新置为一个00-FF的16进制的该协议的TCP载荷数据流。举例来说,假如L=1000,5%*L=50。样本1复制得到样本2,样本3……。样本1不动,样本2随机选取50个字节,每个字节置为一个随机数(这50个数不是同一个数)。样本3处理方法与样本2相同,以此类推。
进一步地,本实施例中的训练数据变换模块53连接训练数据抽样模块52,接收该训练数据抽样模块52输出的TCP载荷数据流以及对应的协议标签;
首先,针对每一协议的16进制的TCP载荷数据流,将该16进制的TCP载荷数据流转化为对应的0-255的十进制数,再对每一十进制数除以255,得到该协议的样本即[0,1]的浮点数;
所有协议的16进制的TCP载荷数据流格式转换后,获得M个[0,1]的浮点数;
其次,将M个[0,1]的浮点数以矩阵形式呈现,其中一行表示一个训练样本,列表示训练样本的字节变换后的数据。
以及将训练样本对应的协议标签以向量形式呈现,且与矩阵形式呈现的行对应,组成向量矩阵。其中向量形成呈现的元素从0开始递增的正数,元素的个数等于协议数。应说明的是,该训练样本的一行对应一个标签,本实施例中标签是从0开始编号的整数,如0表示http(HyperText Transfer Protocol,超文本传输协议),1表示ssl(Secure SocketsLayer,安全套接层)协议等等。可预先做一个映射列表,把协议名称转换为整数形式的标签。这里的元素是指这些整数形式的标签。
接着,输出向量矩阵。
该处的向量矩阵中,每一行表示一个样本(代表一个TCP载荷数据流),如第一行是[0.1,0.5,0.3……],第二行是[0.7,0.2,0.4……],多个行向量组合在一起就形成了一个矩阵。矩阵列数等于前面提到的L(训练数据关联模块51中提及的L)。
进一步地,本实施例中的深度学习模块54连接训练数据变换模块53,接收训练数据变换模块53输出的向量矩阵,采用DNN(Deep Neural Network,深度神经网络)算法和/或SAE(Stacked Auto-Encoder,栈式自编码)算法获取深度学习模型及模型参数。
本实施例中,深度神经网络算法对应的网络结构至少大于等于4层。本实施例中模型参数可包括:网络结构、初始学习率、迭代次数,每批训练样本数等。
举例来说,现有的DNN和SAE模型都可以表示成类似图6的结构,只是训练算法不同。图6为4层网络,图6竖着为一层,网络结构表示为[6,4,3,1](当然实际中数值比这大的多)。如果是5层,就在隐藏层(hidden layer)多加一层。
网络结构[6,4,3,1]、初始学习率(浮点数)、迭代次数(自然数),每批训练样本数(自然数),这些叫做预定义参数或者输入参数。模型参数或输出参数是若干个浮点型的矩阵W1……Wn和向量b1……bn,矩阵和向量的个数n等于网络的层数,如4层就有3个W,3个b。W和b维数跟每层结点(圆圈)数有关,这个例子里,W1维数是4*6,W2维数是3*4,W3维数是1*3。b1是4维,b2是3维,b3是1维。
本实施例的深度学习模块54输出深度学习模型至协议识别模块57。
本实施例中的识别数据关联模块55用于接收网络中待识别的网络数据流,将该网络数据流中的上行数据包和下行数据包进行拼接,例如,按照上行1+下行1+上行2+下行2+上行n+下行n,直至载荷满足长度限制L个字节,n取大于2的自然数;并输出拼接后的第一载荷数据流。
识别数据变换模块56连接识别数据关联模块55,用于接收识别数据关联模块55输出的第一载荷数据流,并将该16进制的第一载荷数据流转化为对应的0-255的十进制数,再对每一十进制数除以255,得到待识别的网络数据流的浮点数;
进而,将M个[0,1]的浮点数以矩阵形式呈现,形成待识别协议的矩阵并输出。识别数据变换模块56中一行表示一个待识别协议的样本。
另外,本实施例的协议识别模块57连接识别数据变换模块56和深度学习模块54;接收深度学习模块54输出的协议识别模块,以及接收识别数据变换模块56输出的待识别协议的矩阵,采用协议识别模块对待识别协议的矩阵进行识别,确定属于哪一种协议的概率,最后输出每一条待识别的数据属于每一中协议的概率。
在本实施例中,协议识别模块57用于预测未知的TCP有效载荷数据属于哪一种协议,并给出属于各协议的概率。
其中,上述预测的过程是用待识别的数据(如果一次识别一条数据,就是向量;如果同时识别多条就是矩阵的形式)与深度学习模块54输出的模型参数进行神经网络的正向运算。
进而,给出对于待识别的网络数据流中每一条待识别数据的预测结果。即取概率最大的协议类型作为该待识别数据的协议。
上述提及的正向运算可理解为用待识别的数据与模型参数进行的矩阵乘法、加法、sigmoid等运算。具体地,设待识别的数据为A,神经网络模型结构是4层,模型参数是W1,W2,W3,b1,b2,b3。则正向运算第一步:a1=sigmoid(W1*A+b1),第二步对前一步结果a1做相同运算:a2=sigmoid(W2*a1+b2),第三步类似:a3=sigmoid(W3*a2+b3)。一般取a3里的最大值(最大概率)对应的标签作为预测结果。每多一层就多做一步运算。
由此,上述协议识别系统能够较好的识别网络数据流,以及提高了识别准确率,同时提高识别效率,降低成本。
本发明的实施例公开了:
A1、一种协议识别系统,包括:
接收单元,用于接收待识别协议的数据流,所述数据流包括上行数据包和下行数据包;
格式转换单元,用于对所述上行数据包和下行数据包进行拼接,并进行格式转换,获得格式转换后的载荷数据流;
协议识别单元,用于采用深度学习模型对所述载荷数据流进行协议识别,获取用于输出的所述数据流的协议识别结果;
其中,所述深度学习模型为预先采用训练数据流通过深度学习获取的用于识别网络数据流的模型。
A2、根据A1所述的系统,所述格式转换单元,具体用于:
将所述上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获取字节数在第一预设范围内的第一载荷数据流;
若所述第一载荷数据流的数据格式为16进制,则将该第一载荷数据流的数据格式转换为10进制,以及对格式转换后的第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流;
或者,
若所述第一载荷数据流的数据格式为10进制,则将该第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流。
A3、根据A2所述的系统,所述第一载荷数据流中的字节拼接方式为:
依次排列的上行数据包的第一字节、下行数据包的第一字节、上行数据包的第N字节和下行数据包第N字节;
N为大于1的自然数,且所述第一载荷数据流的字节数小于等于1000,大于等于200。
A4、根据A1至A3任一所述的系统,所述系统还包括:模型建立单元;
所述模型建立单元,用于采用已知的训练数据流及该训练数据流对应的协议,获取用于识别网络数据的深度学习模型及与深度学习模型对应的模型参数;
所述已知的训练数据流包括已知多种协议标签的训练数据。
A5、根据A4所述的系统,所述模型建立单元,具体用于:
对每一协议对应的训练数据中上行数据包和下行数据包进行拼接,并进行格式转换,获得第一数据;
将所有协议对应的格式转换后的第一数据和该第一数据对应的协议组成向量矩阵;
采用深度神经网络算法处理所述向量矩阵,获得深度学习模型及模型参数;或者,
采用栈式自编码算法处理所述向量矩阵,获得深度学习模型及模型参数。
A6、根据A5所述的系统,所述模型建立单元,还用于:
针对每一协议的训练数据,将该训练数据的上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获得字节数在第二预设范围内的第二数据;
若所有协议的第二数据的格式为16进制,则将该第二数据的格式转换为10进制,以及对格式转换后的第二数据中每一字节除以255,获得所述第一数据;
或者,
若所有协议的第二数据的格式为10进制,则将该第二数据中每一字节除以255,获得所述第一数据。
A7、根据A6所述的系统,所述模型建立单元,还用于:
判断当前协议对应的第二数据的字节数是否符合预设字节数范围;
若当前协议的第二数据的字节数大于预设字节数范围,则对该第二数据进行欠抽样,获得符合预设字节数范围的第二数据;
若当前协议的第二数据的字节数小于预设的字节数范围,则重复复制多次该协议的第二数据,获得符合预设字节数范围的第二数据。
A8、根据A1至A7任一所述的系统,协议识别单元,具体用于:
采用深度学习模型对格式转换后的载荷数据流进行协议识别,获得所述数据流中每一条待识别的数据属于每一种协议的概率;
针对每一条待识别的数据,选取概率最大的协议作为该待识别的数据的协议,获得所述数据的协议识别结果。
B9、一种协议识别方法,包括:
接收待识别协议的数据流,所述数据流包括上行数据包和下行数据包;
对所述上行数据包和下行数据包进行拼接,并进行格式转换,获得格式转换后的载荷数据流;
采用深度学习模型对所述载荷数据流进行协议识别,获取用于输出的所述数据流的协议识别结果;
其中,所述深度学习模型为预先采用训练数据流通过深度学习获取的用于识别网络数据流的模型。
B10、根据B9所述的方法,所述对所述上行数据包和下行数据包进行拼接,并进行格式转换,获得格式转换后的载荷数据流,包括:
将所述上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获取字节数在第一预设范围内的第一载荷数据流;
若所述第一载荷数据流的数据格式为16进制,则将该第一载荷数据流的数据格式转换为10进制,以及对格式转换后的第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流;
或者,
若所述第一载荷数据流的数据格式为10进制,则将该第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流。
B11、根据B10所述的方法,所述第一载荷数据流中的字节拼接方式为:
依次排列的上行数据包的第一字节、下行数据包的第一字节、上行数据包的第N字节和下行数据包第N字节;
N为大于1的自然数,且所述第一载荷数据流的字节数小于等于1000,大于等于200。
B12、根据B8至B11任一所述的方法,采用深度学习模型对所述载荷数据流进行协议识别之前,所述方法还包括:
采用已知的训练数据流及该训练数据流对应的协议,获取用于识别网络数据的深度学习模型及与深度学习模型对应的模型参数;
所述已知的训练数据流包括已知多种协议标签的训练数据。
B13、根据B12所述的方法,采用已知的训练数据流及该训练数据流对应的协议,获取用于识别网络数据的深度学习模型,包括:
对每一协议对应的训练数据中上行数据包和下行数据包进行拼接,并进行格式转换,获得第一数据;
将所有协议对应的格式转换后的第一数据和该第一数据对应的协议组成向量矩阵;
采用深度神经网络算法处理所述向量矩阵,获得深度学习模型及模型参数;或者,
采用栈式自编码算法处理所述向量矩阵,获得深度学习模型及模型参数。
B14、根据B13所述的方法,所述对每一协议对应的训练数据中上行数据包和下行数据包进行拼接,并进行格式转换,获得第一数据,包括:
针对每一协议的训练数据,将该训练数据的上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获得字节数在第二预设范围内的第二数据;
若所有协议的第二数据的格式为16进制,则将该第二数据的格式转换为10进制,以及对格式转换后的第二数据中每一字节除以255,获得所述第一数据;
或者,
若所有协议的第二数据的格式为10进制,则将该第二数据中每一字节除以255,获得所述第一数据。
B15、根据B14所述的方法,针对每一协议的训练数据,将该训练数据的上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获得字节数在第二预设范围内的第二数据之后,所述方法还包括:
判断当前协议对应的第二数据的字节数是否符合预设字节数范围;
若当前协议的第二数据的字节数大于预设字节数范围,则对该第二数据进行欠抽样,获得符合预设字节数范围的第二数据;
若当前协议的第二数据的字节数小于预设的字节数范围,则重复复制多次该协议的第二数据,获得符合预设字节数范围的第二数据。
B16、根据B9至B15任一所述的方法,采用深度学习模型对所述载荷数据流进行协议识别,获取用于输出的所述数据流的协议识别结果,包括:
采用深度学习模型对格式转换后的载荷数据流进行协议识别,获得所述数据流中每一条待识别的数据属于每一种协议的概率;
针对每一条待识别的数据,选取概率最大的协议作为该待识别的数据的协议,获得所述数据的协议识别结果。
应当注意,在此提供的算法和公式不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解本发明各个方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法和装置解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的网站安全检测设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (12)

1.一种协议识别系统,其特征在于,包括:
接收单元,用于接收待识别协议的数据流,所述数据流包括上行数据包和下行数据包;
格式转换单元,用于对所述上行数据包和下行数据包进行拼接,并进行格式转换,获得格式转换后的载荷数据流;
协议识别单元,用于采用深度学习模型对所述载荷数据流进行协议识别,获取用于输出的所述数据流的协议识别结果;
其中,所述深度学习模型为预先采用训练数据流通过深度学习获取的用于识别网络数据流的模型;
模型建立单元,用于采用已知的训练数据流及该训练数据流对应的协议,获取用于识别网络数据的深度学习模型及与深度学习模型对应的模型参数;
所述已知的训练数据流包括已知多种协议标签的训练数据;
所述模型建立单元,具体用于:
对每一协议对应的训练数据中上行数据包和下行数据包进行拼接,并进行格式转换,获得第一数据;
将所有协议对应的格式转换后的第一数据和该第一数据对应的协议组成向量矩阵;
采用深度神经网络算法处理所述向量矩阵,获得深度学习模型及模型参数;或者,
采用栈式自编码算法处理所述向量矩阵,获得深度学习模型及模型参数。
2.根据权利要求1所述的系统,其特征在于,所述格式转换单元,具体用于:
将所述上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获取字节数在第一预设范围内的第一载荷数据流;
若所述第一载荷数据流的数据格式为16进制,则将该第一载荷数据流的数据格式转换为10进制,以及对格式转换后的第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流;
或者,
若所述第一载荷数据流的数据格式为10进制,则将该第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流。
3.根据权利要求2所述的系统,其特征在于,所述第一载荷数据流中的字节拼接方式为:
依次排列的上行数据包的第一字节、下行数据包的第一字节、上行数据包的第N字节和下行数据包第N字节;
N为大于1的自然数,且所述第一载荷数据流的字节数小于等于1000,大于等于200。
4.根据权利要求1所述的系统,其特征在于,所述模型建立单元,还用于:
针对每一协议的训练数据,将该训练数据的上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获得字节数在第二预设范围内的第二数据;
若所有协议的第二数据的格式为16进制,则将该第二数据的格式转换为10进制,以及对格式转换后的第二数据中每一字节除以255,获得所述第一数据;
或者,
若所有协议的第二数据的格式为10进制,则将该第二数据中每一字节除以255,获得所述第一数据。
5.根据权利要求4所述的系统,其特征在于,所述模型建立单元,还用于:
判断当前协议对应的第二数据的字节数是否符合预设字节数范围;
若当前协议的第二数据的字节数大于预设字节数范围,则对该第二数据进行欠抽样,获得符合预设字节数范围的第二数据;
若当前协议的第二数据的字节数小于预设的字节数范围,则重复复制多次该协议的第二数据,获得符合预设字节数范围的第二数据。
6.根据权利要求1至5任一所述的系统,其特征在于,协议识别单元,具体用于:
采用深度学习模型对格式转换后的载荷数据流进行协议识别,获得所述数据流中每一条待识别的数据属于每一种协议的概率;
针对每一条待识别的数据,选取概率最大的协议作为该待识别的数据的协议,获得所述数据的协议识别结果。
7.一种协议识别方法,其特征在于,包括:
接收待识别协议的数据流,所述数据流包括上行数据包和下行数据包;
对所述上行数据包和下行数据包进行拼接,并进行格式转换,获得格式转换后的载荷数据流;
采用已知的训练数据流及该训练数据流对应的协议,获取用于识别网络数据的深度学习模型及与深度学习模型对应的模型参数;所述已知的训练数据流包括已知多种协议标签的训练数据;
采用深度学习模型对所述载荷数据流进行协议识别,获取用于输出的所述数据流的协议识别结果;
其中,所述深度学习模型为预先采用训练数据流通过深度学习获取的用于识别网络数据流的模型;
采用已知的训练数据流及该训练数据流对应的协议,获取用于识别网络数据的深度学习模型,包括:
对每一协议对应的训练数据中上行数据包和下行数据包进行拼接,并进行格式转换,获得第一数据;
将所有协议对应的格式转换后的第一数据和该第一数据对应的协议组成向量矩阵;
采用深度神经网络算法处理所述向量矩阵,获得深度学习模型及模型参数;或者,
采用栈式自编码算法处理所述向量矩阵,获得深度学习模型及模型参数。
8.根据权利要求7所述的方法,其特征在于,所述对所述上行数据包和下行数据包进行拼接,并进行格式转换,获得格式转换后的载荷数据流,包括:
将所述上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获取字节数在第一预设范围内的第一载荷数据流;
若所述第一载荷数据流的数据格式为16进制,则将该第一载荷数据流的数据格式转换为10进制,以及对格式转换后的第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流;
或者,
若所述第一载荷数据流的数据格式为10进制,则将该第一载荷数据流中每一字节除以255,获得格式转换后的载荷数据流。
9.根据权利要求8所述的方法,其特征在于,所述第一载荷数据流中的字节拼接方式为:
依次排列的上行数据包的第一字节、下行数据包的第一字节、上行数据包的第N字节和下行数据包第N字节;
N为大于1的自然数,且所述第一载荷数据流的字节数小于等于1000,大于等于200。
10.根据权利要求9所述的方法,其特征在于,所述对每一协议对应的训练数据中上行数据包和下行数据包进行拼接,并进行格式转换,获得第一数据,包括:
针对每一协议的训练数据,将该训练数据的上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获得字节数在第二预设范围内的第二数据;
若所有协议的第二数据的格式为16进制,则将该第二数据的格式转换为10进制,以及对格式转换后的第二数据中每一字节除以255,获得所述第一数据;
或者,
若所有协议的第二数据的格式为10进制,则将该第二数据中每一字节除以255,获得所述第一数据。
11.根据权利要求10所述的方法,其特征在于,针对每一协议的训练数据,将该训练数据的上行数据包的字节和下行数据包的字节按照预设策略进行拼接,获得字节数在第二预设范围内的第二数据之后,所述方法还包括:
判断当前协议对应的第二数据的字节数是否符合预设字节数范围;
若当前协议的第二数据的字节数大于预设字节数范围,则对该第二数据进行欠抽样,获得符合预设字节数范围的第二数据;
若当前协议的第二数据的字节数小于预设的字节数范围,则重复复制多次该协议的第二数据,获得符合预设字节数范围的第二数据。
12.根据权利要求7至11任一所述的方法,其特征在于,采用深度学习模型对所述载荷数据流进行协议识别,获取用于输出的所述数据流的协议识别结果,包括:
采用深度学习模型对格式转换后的载荷数据流进行协议识别,获得所述数据流中每一条待识别的数据属于每一种协议的概率;
针对每一条待识别的数据,选取概率最大的协议作为该待识别的数据的协议,获得所述数据的协议识别结果。
CN201510409321.1A 2015-07-13 2015-07-13 一种协议识别方法及系统 Active CN105100091B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510409321.1A CN105100091B (zh) 2015-07-13 2015-07-13 一种协议识别方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510409321.1A CN105100091B (zh) 2015-07-13 2015-07-13 一种协议识别方法及系统

Publications (2)

Publication Number Publication Date
CN105100091A CN105100091A (zh) 2015-11-25
CN105100091B true CN105100091B (zh) 2018-12-14

Family

ID=54579637

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510409321.1A Active CN105100091B (zh) 2015-07-13 2015-07-13 一种协议识别方法及系统

Country Status (1)

Country Link
CN (1) CN105100091B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106911527A (zh) * 2015-12-23 2017-06-30 北京奇虎科技有限公司 一种流量监测装置及方法
CN106912077A (zh) * 2015-12-23 2017-06-30 北京奇虎科技有限公司 一种数据终端中进行流量控制的装置及方法
CN106911579A (zh) * 2015-12-23 2017-06-30 北京奇虎科技有限公司 一种网络转发设备中进行流量控制的装置及方法
CN105516027B (zh) * 2016-01-12 2019-03-12 北京奇虎科技有限公司 应用识别模型建立方法、流量数据的识别方法及装置
CN107146623B (zh) * 2017-04-07 2021-03-16 百度在线网络技术(北京)有限公司 基于人工智能的语音识别方法、装置和系统
CN108234452B (zh) * 2017-12-12 2020-11-24 上海天旦网络科技发展有限公司 一种网络数据包多层协议识别的系统和方法
CN109995602B (zh) * 2017-12-29 2021-03-16 中国移动通信集团设计院有限公司 一种协议识别的方法、系统和装置
CN109379375B (zh) * 2018-11-28 2021-04-27 杭州迪普科技股份有限公司 访问控制规则的获取方法、装置及网络设备
CN109818822A (zh) * 2018-12-29 2019-05-28 冲石通信技术(北京)有限公司 一种采用深度学习机制的数据回放的测试方法及系统
CN112751812A (zh) * 2019-10-31 2021-05-04 北京京东振世信息技术有限公司 应用协议自适配的方法和装置
CN111404941B (zh) * 2020-03-17 2022-08-09 广东九联科技股份有限公司 网络安全防护方法及网络安全防护装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101257417A (zh) * 2008-03-25 2008-09-03 浙江大学 基于模糊神经网络的tcp/ip协议隐蔽通道检测方法
CN101695035A (zh) * 2009-10-21 2010-04-14 成都市华为赛门铁克科技有限公司 流量识别方法及装置
CN104052639A (zh) * 2014-07-02 2014-09-17 山东大学 基于支持向量机的实时多应用网络流量识别方法
CN104144089A (zh) * 2014-08-06 2014-11-12 山东大学 一种基于bp神经网络进行流量识别的方法
CN104468262A (zh) * 2014-11-17 2015-03-25 中国科学院信息工程研究所 一种基于语义敏感的网络协议识别方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101741744B (zh) * 2009-12-17 2011-12-14 东南大学 一种网络流量识别方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101257417A (zh) * 2008-03-25 2008-09-03 浙江大学 基于模糊神经网络的tcp/ip协议隐蔽通道检测方法
CN101695035A (zh) * 2009-10-21 2010-04-14 成都市华为赛门铁克科技有限公司 流量识别方法及装置
CN104052639A (zh) * 2014-07-02 2014-09-17 山东大学 基于支持向量机的实时多应用网络流量识别方法
CN104144089A (zh) * 2014-08-06 2014-11-12 山东大学 一种基于bp神经网络进行流量识别的方法
CN104468262A (zh) * 2014-11-17 2015-03-25 中国科学院信息工程研究所 一种基于语义敏感的网络协议识别方法及系统

Also Published As

Publication number Publication date
CN105100091A (zh) 2015-11-25

Similar Documents

Publication Publication Date Title
CN105100091B (zh) 一种协议识别方法及系统
CN107682216B (zh) 一种基于深度学习的网络流量协议识别方法
US11379723B2 (en) Method and apparatus for compressing neural network
CN110110843B (zh) 用于处理图像的方法和系统
CN105516027B (zh) 应用识别模型建立方法、流量数据的识别方法及装置
CN108364023A (zh) 基于注意力模型的图像识别方法和系统
EP3276540A3 (en) Neural network method and apparatus
US11392796B2 (en) Feature dictionary for bandwidth enhancement
CN107743235B (zh) 图像处理方法、装置及电子设备
CN111914213B (zh) 一种稀疏矩阵向量乘运算时间预测方法及系统
CN104852823B (zh) 进程的监测方法、装置和系统
CN108683704A (zh) 一种Socket网络通信测试方法及其系统、存储介质
CN107844829A (zh) 用于加速神经网络处理器的方法和系统及神经网络处理器
CN110046091A (zh) 一种自动测试方法和装置
CN109814482A (zh) 机器人的控制器及其控制方法和工业机器人
CN109102076A (zh) 模型训练方法、装置、设备及存储介质
CN108924090A (zh) 一种基于卷积神经网络的shadowsocks流量检测方法
CN115065732A (zh) 数据传输方法、装置、电子设置及存储介质
CN107273338A (zh) 一种基于差分进化算法的非线性独立成分分析方法
CN106682729A (zh) 基于局部收敛权阵进化的BP神经网络MapReduce训练方法
CN114529794B (zh) 一种红外与可见光图像融合方法、系统及介质
CN112580598B (zh) 一种基于多通道Diffpool的无线电信号分类方法
CN109657546A (zh) 基于神经网络的视频行为识别方法及终端设备
CN106911527A (zh) 一种流量监测装置及方法
CN115113855A (zh) 音频数据处理方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20161123

Address after: 100015 Chaoyang District Road, Jiuxianqiao, No. 10, building No. 3, floor 15, floor 17, 1701-26,

Applicant after: BEIJING QIANXIN TECHNOLOGY Co.,Ltd.

Address before: 100088 Beijing city Xicheng District xinjiekouwai Street 28, block D room 112 (Desheng Park)

Applicant before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Applicant before: BEIJING QIANXIN TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Room 332, 3 / F, Building 102, 28 xinjiekouwei street, Xicheng District, Beijing 100088

Patentee after: QAX Technology Group Inc.

Address before: 100015 15, 17 floor 1701-26, 3 building, 10 Jiuxianqiao Road, Chaoyang District, Beijing.

Patentee before: BEIJING QIANXIN TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201230

Address after: 100044 2nd floor, building 1, yard 26, Xizhimenwai South Road, Xicheng District, Beijing

Patentee after: LEGENDSEC INFORMATION TECHNOLOGY (BEIJING) Inc.

Patentee after: QAX Technology Group Inc.

Address before: Room 332, 3 / F, Building 102, 28 xinjiekouwei street, Xicheng District, Beijing 100088

Patentee before: QAX Technology Group Inc.

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100044 2nd floor, building 1, yard 26, Xizhimenwai South Road, Xicheng District, Beijing

Patentee after: Qianxin Wangshen information technology (Beijing) Co.,Ltd.

Patentee after: QAX Technology Group Inc.

Address before: 100044 2nd floor, building 1, yard 26, Xizhimenwai South Road, Xicheng District, Beijing

Patentee before: LEGENDSEC INFORMATION TECHNOLOGY (BEIJING) Inc.

Patentee before: QAX Technology Group Inc.