CN105591972B - 一种基于本体的网络流量分类方法 - Google Patents

一种基于本体的网络流量分类方法 Download PDF

Info

Publication number
CN105591972B
CN105591972B CN201510975902.1A CN201510975902A CN105591972B CN 105591972 B CN105591972 B CN 105591972B CN 201510975902 A CN201510975902 A CN 201510975902A CN 105591972 B CN105591972 B CN 105591972B
Authority
CN
China
Prior art keywords
flow
network
network flow
ontology
decision
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
CN201510975902.1A
Other languages
English (en)
Other versions
CN105591972A (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.)
Guilin University of Electronic Technology
Original Assignee
Guilin University of Electronic Technology
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 Guilin University of Electronic Technology filed Critical Guilin University of Electronic Technology
Priority to CN201510975902.1A priority Critical patent/CN105591972B/zh
Publication of CN105591972A publication Critical patent/CN105591972A/zh
Application granted granted Critical
Publication of CN105591972B publication Critical patent/CN105591972B/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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明为一种基于本体的网络流量分类方法,主要步骤为:Ⅰ、构建网络流量本体对网络流量信息资源进行分层描述;Ⅱ、利用决策树算法训练已标记应用类型的网络流量训练样本集,建立网络流量的决策树分类模型,并生成推理规则集;Ⅲ、采用Jena工具包将推理规则集构造成推理机,用其对网络流量本体进行知识推理,对网络流量本体中网络流量实例进行应用类型标记,完成网络流量分类。本发明利用本体描述和管理网络流量信息资源,借助知识推理实现流量分类,有针对性地解决网络流量信息资源一致性描述,克服传统网络流量分类的低复用、低共享、语义表达能力差等问题,有助提高领域知识管理和分类性能,为大规模复杂网络环境下实时网络流量分类提供新方法。

Description

一种基于本体的网络流量分类方法
技术领域
本发明涉及网络管理技术领域,具体为一种基于本体的网络流量分类方法。
背景技术
随着Web技术的迅猛发展和企业信息化需求的不断提高,许多新型网络应用模式和应用需求应运而生,随之而来的网络流量数据也呈现出爆炸性增长,给网络监管带来前所未有的挑战,也使得用户对网络流量进行精细化管理的需求越来越强烈。作为管理和优化各类网络资源的关键技术,网络流量分类广泛应用于网络监控、QoS(Quality ofService,服务质量)管理、网络安全、态势分析等领域,是高效实现网络管理、流量控制以及安全检测的重要环节。
网络流量分类是指在基于TCP/IP协议的互联网中,按照网络的应用类型(例如WWW、FTP、MAIL、P2P等),将网络通信产生的双向TCP流量或UDP流量进行分类。
近年来许多研究人员将注意力转向了基于网络流量统计特征的机器学习分类方法,根据流量的某些属性(如平均包长、平均包间隔时间等)的统计信息,采用机器学习方法对流量进行分类,该方法不受动态端口、载荷加密及网络地址转换的影响。目前较为广泛使用的机器学习的网络流量分类方法主要有:贝叶斯,神经网络,支持向量机、决策树等。
剑桥大学Moore的网络流量分类方法研究主要是及其改进方法的研究。Charalampos Rotsos和Moore等引入半监督流量分类方法训练分类器,采用NB和核估计NB两种算法对分类器进行建模,实验结果表明该方法能比传统方法取得更高分类性能。但是此类算法是基于概率统计的学习方法,过于依赖样本空间的分布,具有潜在的不稳定性。
使用前馈神经网络的网络流量分类方法有效地消除了基于端口或者基于负载的分类方法的弊端,测试验证该方法较NB具有更好的稳定性和健壮性,在网络流量分类中的应用具有良好的性能和前景。但是,即使是神经网络应用广泛的BP算法,在应用中也暴露了不少的缺陷,如易形成局部极小而得不到全局最优,训练次数多使得学习效率低,收敛速度慢等。
从网络数据包头部获得网络流量参数,再进行有规律的偏差训练和无偏差训练对比SVM分类算法,在处理大样本数据集时,计算复杂度高,训练速度慢。用SVM决策树进行网络流量分类,解决SVM流量分类存在无法识别区域和训练时间较长的问题。然而研究还是不能彻底解决计算性能瓶颈问题,而且该方法是一种有监督的学习方法,不能很好地发现网络流量中的新应用。
WeiLi和Moore为了避免检测包的载荷,从网络流量开始的网络数据包中提取12个统计特征,同时考虑了延迟和吞吐量,在C4.5决策树流量分类方法下分类准确性达99.8%。Tomasz Bujlow等人提出了一种C5.0机器学习算法,通过实验验证该算法平均分类准确率达到99.3-99.9%。但是决策树缺乏伸缩性,并在处理大数据集时容易增加分类算法的额外开销,降低了分类的准确性。
在高速大规模复杂网络环境下,各个网络节点传感器使用不同的网络流量采集系统收集网络数据包,网络流量数据格式不一,语义、语法异构。故目前网络流量数据的特点是多源、异构、海量,现有的网络流量分类技术大多只能对网络流量数据进行简单的格式化,缺少对数据异构(格式异构、语法异构、语义异构)的有效解决方法,也缺乏对流量信息(如获取环境等)的描述及知识管理,获得的流量数据存在不一致性、不能共享和缺乏网络流量分类知识等问题,因而现有的流量分类方法难以提供网络管理决策分析所需的资源信息。
在人工智能领域,本体逐渐被应用于知识工程、智能信息集成、数据挖掘、海量信息的组织和处理等领域中。本体为解决资源规范、无二义性和可扩展性描述问题提供了有效的途径,在描述资源方面具有通用性、开放性、智能性、准确性和综合性等诸多优点。本体也被用于决策支持系统作为一种知识表达的工具,知识推理是本体在决策支持系统中的重要功能,其也被应用于分类(诸如图像分类等)问题。
近年来研究者尝试引入本体到网络流量分类领域。Pietrzyk,Marcin首次尝试形式化定义流的类别,使用经典的开发本体准则,迭代构建一个基于本体范例的类别分类树,旨在消除流类别定义的模糊性。Chengjie Gu等人提出一种基于流轮廓和本体的在线自学习网络流量分类框架,通过流轮廓与流量类别之间的映射关系实现流量分类。但是目前基于本体的网络流量分类方法还不能应用于大规模复杂网络,本体在网络流量分类领域的应用尚属起步阶段。
发明内容
本发明的目的是设计一种基于本体的网络流量分类方法,针对互联网的大规模复杂网络环境下网络流量数据的多源、异构特点,通过构建网络流量本体对网络流量信息资源一致性描述及领域知识管理,并借助机器学习方法和本体的知识推理实现网络流量分类。
本发明设计的一种基于本体的网络流量分类方法,主要包括如下步骤:
Ⅰ、构建网络流量本体
针对互联网大规模复杂网络流量信息资源的特点,构建网络流量本体对网络流量信息资源进行分层描述,以消除由不同网络设备所采集的网络流量信息资源间的不一致性,减小异构信息资源对网络流量分类结果的影响;
Ⅱ、建立决策树分类模型并生成推理规则集
利用决策树算法训练已标记应用类型的网络流量训练样本集,建立网络流量的决策树分类模型,并将决策树分类模型转化成推理规则集;
Ⅲ、通过知识推理得到分类结果
采用Jena工具包将步骤Ⅱ生成的推理规则集构造成相应的推理机,并用该推理机对步骤Ⅰ构建的网络流量本体进行知识推理,即挖掘出网络流量本体中的网络流量实例和网络应用类型之间的对应关系,并对网络流量实例进行网络应用类型标记,完成网络流量分类。所述Jena工具包为用于本体构建及其推理的工具包,其为2004年HP公司开发的基于Java的开放源代码语义网工具包。
以下对各步骤详细说明。
所述步骤Ⅰ具体包括如下子步骤:
I-1、设计网络流量本体结构
本方法根据互联网网络流量采集环境和网络流量信息资源设计网络流量本体结构,本方法构建的网络流量本体结构为多层结构,首层包括互联网中流量采集节点(Nodes)信息和流量(Traffics)信息。所述流量采集节点的下一层记录流量采集节点的相关信息,包括流量采集节点的网络软硬件设备信息(DeviceInfo)、流量采集节点的流量采集工具(Tools)及流量采集节点的配置参数(Configuration);所述流量采集工具的下一层记录各流量采集节点的各种流量采集工具名称以及流量采集信息格式。所述流量信息的下一层记录互联网上网络流量的相关信息,包括网络流量实例集合(Flows)、流量统计特征集合(Attributes)、流量所属应用类型(AppType)及协议(Protocol);所述流量所属应用类型的下一层描述各种应用类型,如万维网(www)、游戏(Games)、服务(Service)、邮件(Mail)、攻击(Attack)、数据库(Database)、交互(Interactive)、文件传输协议数据(FTP-Data)、多媒体(Multimedia)和点对点(P2P)。
I-2、构建网络流量本体
根据步骤I-1设计的网络流量本体结构,针对互联网上各种流量信息资源,以基于Java语言开发的本体编辑软件Protégé的应用程序编程接口(API)自动化构建网络流量本体模型,用网络本体语言OWL将网络流量本体模型描述成文件形式的网络流量本体,并保存至本地磁盘。
步骤I-2具体包括如下次子步骤:
I-2-1、采用本体编辑软件Protégé新建网络流量本体模型;
I-2-2、解析待分类的网络流量信息,根据子步骤I-1设计的网络流量本体结构,利用本体编辑软件Protégé建立网络流量本体基本概念,包括各流量采集节点(Nodes)信息、流量(Traffics)信息、流量采集节点的网络软硬件设备信息(DeviceInfo)、流量采集节点流量采集工具(Tools)及流量采集节点的配置参数(Configuration)、网络流量实例集合(Flows)、流量统计特征集合(Attributes)、流量所属应用类型(AppType)及协议(Protocol);
I-2-3、根据子步骤I-1设计的网络流量本体结构,建立网络流量本体基本概念与网络流量实例之间的关系、网络流量实例与网络流量统计特征值之间的关系,包括“拥有”和“属于”,二者是互逆关系;网络流量本体基本概念“拥有”网络流量实例,网络流量实例“属于”网络流量本体基本概念;网络流量实例“拥有”网络流量统计特征值,网络流量统计特征值“属于”网络流量实例;
I-2-4、根据待分类的网络流量信息创建网络流量实例,每个网络流量实例对应于一条具体的网络流量;
I-2-5、为次子步骤I-2-1建立的网络流量本体模型添加网络流量实例、网络流量实例与网络流量本体基本概念之间的关系,并为网络流量实例添加网络流量的统计特征值、网络流量实例与网络流量统计特征值之间的关系;
I-2-6、将经过次子步骤I-2-5添加各元素后的网络流量本体模型用网络本体语言OWL描述成文件形式的网络流量本体,并保存到本地磁盘中。
所述步骤Ⅱ具体包括如下子步骤:
Ⅱ-1、先手工采集若干条网络流量并标记网络应用类型、组成网络流量训练样本集。借助决策树算法对网络流量训练样本集进行训练,建立网络流量的决策树分类模型,所述集合A={a1,a2,……,ai}表示由网络流量训练样本集中i个网络流量的统计特征值组成的集合;集合T={t1,t2,……,tj}表示由网络流量训练样本集中j种网络流量所属的应用类型组成的集合;集合V={v1,v2,……,vk}表示由k个决策判定基准值组成的集合,它由集合A中的各个元素经过决策树算法统计计算得出,作为决策树中选取决策路径的判定依据;
Ⅱ-2、网络流量的决策树分类模型中从根节点到每个子叶的路径均视为分类路径,以决策判定基准值为依据,将网络流量的决策树分类模型中的每条路径均转化成“如果-则”,即“IF-THEN”结构,建立IF-THEN结构的网络流量决策树分类模型;
Ⅱ-3、采用Jena工具包的推理规则语法描述步骤Ⅱ-2建立的IF-THEN结构的网络流量决策树分类模型,并生成推理规则集。
所述步骤Ⅲ具体包括如下子步骤:
Ⅲ-1、采用Jena工具包加载步骤I构建好的网络流量本体,获取Jena可操作的网络流量本体模型;
Ⅲ-2、采用Jena工具包加载步骤Ⅱ生成的推理规则集,构造相应的推理机;
Ⅲ-3、用步骤Ⅲ-2构造的推理机对步骤Ⅲ-1获取的网络流量本体模型进行知识推理,并对网络流量本体中每个网络流量实例的网络应用类型进行标记;
Ⅲ-4、将属于同一类网络应用类型的网络流量实例汇聚成集合,完成网络流量分类。
与现有技术相比,本发明一种基于本体的网络流量分类方法的优点为:
利用本体描述和管理网络流量信息资源,而且借助其知识推理功能实现流量分类,有针对性地解决网络流量信息资源一致性描述以及克服传统网络流量分类建模理论所存在的低复用、低共享、语义表达能力差等问题,有助于领域知识管理和分类性能的提高,可以为目前大规模复杂网络环境下实时网络流量分类提供新方法。
附图说明
图1为本基于本体的网络流量分类方法实施例总体框图;
图2为本基于本体的网络流量分类方法实施例步骤I-1中的网络流量本体结构图;
图3为本基于本体的网络流量分类方法实施例步骤I的网络流量本体构建流程图;
图4为本基于本体的网络流量分类方法实施例步骤Ⅱ-1的网络流量的决策树分类模型图;
图5为本基于本体的网络流量分类方法实施例步骤Ⅲ的知识推理流程图;
图6为本基于本体的网络流量分类方法实施例、支持向量机(SVM)、贝叶斯网络(BayesNet)和BP神经网络4种分类方法所得结果的准确率比较图;
图7为本基于本体的网络流量分类方法实施例、支持向量机(SVM)、贝叶斯网络(BayesNet)和BP神经网络4种分类方法所得结果的召回率比较图;
图8为本基于本体的网络流量分类方法实施例、支持向量机(SVM)、贝叶斯网络(BayesNet)和BP神经网络4种分类方法所得结果的F1-Measure值比较图。
具体实施方式
本基于本体的网络流量分类方法实施例采用剑桥大学摩尔(Moore)教授团队采集并公开的数据集为网络流量信息资源,本例称之为摩尔数据集,本例所用摩尔数据集包含377526个网络流量样本,其中的每个流量样本都是完备的传输控制协议(TCP)双向流量,有248个网络流量统计特征,由网络流量的源端口号、目的端口号等基本属性和包的平均间隔时间等统计特征组成,最后一项标记为网络流量所属的应用类型。
本例选取摩尔数据集中的12种网络应用类型作为分类目标,12种网络应用类型为:万维网(www)、游戏(Games)、服务(Service)、邮件(Mail)、攻击(Attack)、数据库(Database)、交互(Interactive)、文件传输协议控制(FTP-Control)、文件传输协议被动连接(FTP-Pasv)、文件传输协议数据(FTP-Data)、多媒体(Multimedia)和点对点(P2P)。共选取10个网络流量统计特征作为知识推理的依据,所选10个网络流量统计特征为服务器端口号、客户端端口号、被转发的同向包中所含数据的总字节数、被转发的反向包中所含数据的总字节数、所有同向包中传输控制协议包头所含推送(PUSH)标志位的总个数、所有反向包中传输控制协议包头所含推送(PUSH)标志位的总个数、所有同向包中传输控制协议包头所含结束(FIN)标志位的总个数、所有反向包中传输控制协议包头所含结束(FIN)标志位的总个数、所有同向包初始化窗口的总字节数、所有反向包初始化窗口的总字节数。
为了更具客观性,本例将摩尔数据集随机拆分成两部分,分别作为本例的训练样本集和测试样本集,从训练样本集中的每种应用类型中随机抽取500个网络流量样本、即共6000个网络流量样本构成训练样本,从测试样本集的每种应用类型中随机抽取1000个网络流量样本、即共12000条网络流量样本构成测试样本,保证训练样本和测试样本不重叠,且训练样本和测试样本中不同应用类型的网络流量样本的权重相等。
本基于本体的网络流量分类方法实施例的总体框图如图1所示,构建网络流量本体对网络流量信息资源进行分层描述,利用决策树算法对已标记应用类型的网络流量训练样本集进行训练,建立网络流量的决策树分类模型,并生成推理规则集;采用Jena工具包将推理规则集构造成相应的推理机;用推理机对网络流量本体模型进行知识推理,即挖掘出网络流量本体中网络流量实例和网络应用类型的对应关系,对网络流量实例进行网络应用类型标记,完成网络流量分类。
本基于本体的网络流量分类方法实施例主要包括如下步骤:
Ⅰ、构建网络流量本体
本步骤流程如图3所示。
I-1、设计网络流量本体结构
本例根据上述摩尔数据集建立网络流量本体结构,所构建的网络流量本体结构如图2所示,为多层结构,首层包括互联网中各流量采集节点(Nodes)信息和流量(Traffics)信息,所述流量采集节点的下一层记录流量采集节点的相关信息,包括流量采集节点的网络软硬件设备信息(DeviceInfo)、流量采集节点的流量采集工具(Tools)及流量采集节点的配置参数(Configuration);所述流量采集工具下一层记录各流量采集节点的各种流量采集工具名称以及流量采集信息格式。所述流量信息的下一层记录互联网上网络流量的相关信息,包括网络流量实例集合(Flows)、流量统计特征集合(Attributes)、流量所属应用类型(AppType)及协议(Protocol)。所述流量所属应用类型的下一层描述各种应用类型(类型1,…,类型n)。
I-2、构建网络流量本体
根据步骤I-1设计的网络流量本体结构,针对互联网上各种流量信息资源,以基于Java语言开发的本体编辑软件Protégé的应用程序编程接口(API)自动化构建网络流量本体模型,用网络本体语言OWL将网络流量本体模型描述成文件形式的网络流量本体,并保存至本地磁盘。
I-2-1、采用本体编辑软件Protégé新建网络流量本体模型;
I-2-2、解析本例摩尔数据集中测试样本集的网络流量信息,根据步骤I-1设计的网络流量本体结构,利用本体编辑软件Protégé建立网络流量本体基本概念,包括各流量采集节点(Nodes)信息、流量(Traffics)信息、流量采集节点的网络软硬件设备信息(DeviceInfo)、流量采集节点流量采集工具(Tools)及流量采集节点配置参数(Configuration)、网络流量实例集合(Flows)、流量统计特征集合(Attributes)、流量所属应用类型(AppType)及协议(Protocol);
I-2-3、根据步骤I-1设计的网络流量本体结构,建立网络流量本体基本概念与网络流量实例之间的关系、网络流量实例与网络流量统计特征值之间的关系,包括“拥有”和“属于”,二者是互逆关系;网络流量本体基本概念“拥有”网络流量实例,网络流量实例“属于”网络流量本体基本概念;网络流量实例“拥有”网络流量统计特征值,网络流量统计特征值“属于”网络流量实例;
I-2-4、根据本例测试样本集的网络流量样本创建网络流量实例,每个网络流量实例对应于一条具体的网络流量样本;
I-2-5、为次子步骤I-2-1建立的网络流量本体模型添加网络流量实例、网络流量实例与网络流量本体基本概念之间的关系,并为网络流量实例添加网络流量的统计特征值、网络流量实例与网络流量统计特征值之间的关系;
I-2-6、将经过次子步骤I-2-5添加各元素后的网络流量本体模型用网络本体语言OWL描述成文件形式的网络流量本体,并保存到本地磁盘中。
Ⅱ、建立决策树分类模型并生成推理规则集
Ⅱ-1、本例借助机器学习以及数据挖掘软件weka3.7.10自带的决策树算法对本例的训练样本集进行训练,建立网络流量的决策树分类模型。本例集合A={服务器端口号、客户端端口号、被转发的同向包中所含数据的总字节数、被转发的反向包中所含数据的总字节数、所有同向包中传输控制协议包头所含推送(PUSH)标志位的总个数、所有反向包中传输控制协议包头所含推送(PUSH)标志位的总个数、所有同向包中传输控制协议包头所含结束(FIN)标志位的总个数、所有反向包中传输控制协议包头所含结束(FIN)标志位的总个数、所有同向包初始化窗口的总字节数、所有反向包初始化窗口的总字节数},表示由本例的训练样本集中10个网络流量的统计特征值组成的集合;集合T={万维网,游戏,服务,邮件,攻击,数据库,交互,文件传输协议控制,文件传输协议被动连接,文件传输协议数据,多媒体,点对点}表示由本例的训练样本集中12种网络流量所属的应用类型组成的集合;集合V={v1,v2,……,vk}表示由k个决策判定基准值组成的集合,它由本例集合A中的各个元素经过决策树算法统计计算得出,作为决策树中选取决策路径的判定依据;以图4的某决策树分类模型为例,以服务器端口号为根节点,如果服务器端口号≤v1,根节点的下层子叶则为万维网,如果服务器端口号>v1,根节点的下层子叶则为客户端端口号;对于第二层节点,如果客户端端口号≤v2,第二层节点的下层子叶则为被转发的包中所含数据的总字节数(同向),如果客户端端口号>v2,第二层节点的下层子叶则为所有反向包初始化窗口的总字节数;对于第三层节点,如果被转发的同向包中所含数据的总字节数≤v3,第三层节点的下层子叶则为攻击,如果被转发的同向包中所含数据的总字节数>v3,第三层节点的下层子叶则为点对点;对于第三层节点,如果所有反向包初始化窗口的总字节数≤v4,第三层节点的下层子叶则为万维网,如果所有反向包初始化窗口的总字节数>v4,第三层节点的下层子叶则为邮件;
Ⅱ-2、网络流量的决策树分类模型中从根节点到每个子叶的路径均视为分类路径,以决策判定基准值为依据,将网络流量的决策树分类模型中的每条路径均转化成如果-则,即IF-THEN结构,建立IF-THEN结构的网络流量决策树分类模型。
Ⅱ-3、采用Jena工具包的推理规则语法描述步骤Ⅱ-2建立的IF-THEN结构的网络流量决策树分类模型,并生成推理规则集。
Ⅲ、通过知识推理得到分类结果
本步骤流程如图5所示。
Ⅲ-1、采用Jena工具包加载步骤I构建好的网络流量本体,获取Jena可操作的网络流量本体模型;
Ⅲ-2、采用Jena工具包加载步骤Ⅱ生成的推理规则集,构造相应的推理机;
Ⅲ-3、用步骤Ⅲ-2构造的推理机对步骤Ⅲ-1获取的网络流量本体模型进行知识推理,并对网络流量本体中每个网络流量实例的网络应用类型进行标记;
Ⅲ-4、将属于同一类网络应用类型的网络流量实例汇聚成集合,完成网络流量分类。
一次网络流量分类结果中会有真阳性(TP)、假阳性(FP)、假阴性(FN)、真阴性(TN)。为了评估网络流量分类方法的有效性,一般是采用准确率(Precision)、召回率(Recall)、F1-Measure作为分类方法性能评价指标,其定义和计算公式分别如下:
(1)准确率
准确率反映一种分类方法对于应用类型的区分能力,其定义为分类结果中真阳性样本数与真、假阳性样本数之和的比值。准确率较高,表明该分类方法正确识别的样本数与总的样本数相差较小,即识别的错误率较低。准确率Precision的计算公式为:
式中变量TP表示真阳性样本数,变量FP表示假阳性样本数。
(2)召回率
召回率反映一种分类方法的泛化能力,其定义为分类结果中真阴性样本数与真、假阴性样本数之和的比值。召回率较高,说明该分类方法正确识别相关类别的比率较高。召回率Recall的计算公式为:
式中变量TP表示真阳性样本数,变量FN表示假阴性样本数。
(3)F1-Measure
在某些情况下,准确率和召回率的值会相互矛盾,所以需要给出一个综合考虑准确率和召回率的综合评价指标,本例采用F1-Measure,其计算公式为:
为验证本例的有效性,用步骤I的方法将本例的测试样本构建成网络流量本体;然后,将本例的训练样本通过步骤Ⅱ的方法生成推理规则集;最后,采用步骤Ⅲ的方法得出本例测试样本的分类结果,与测试样本的实际应用类型比较,计算出本例分类方法的准确率、召回率和F1-Measure。
同时选择另外三种常用的机器学习分类方法、即支持向量机、贝叶斯网络和BP神经网络用本例的训练样本集和测试样本集进行分类对比实验。从训练时间和性能评价指标方面对本例分类方法和其它3种方法进行比较,表1给出了4种方法建立分类模型所需的训练时间,图6至图8分别表示四种方法在准确率、召回率、F1-Measure 3个性能评价指标的对比结果。
表1 四种方法建立分类模型所需的训练时间
从表1中可以看出,BP神经网络的训练时间最长,因为该方法需要进行多次迭代,在计算方面开销较大。而本例方法的模型训练时间远远小于其他3种分类方法,耗时仅为BP神经网络的1/66,或支持向量机的1/10,或贝叶斯网络的1/4,结果显示本发明方法在训练时间上具有明显的优势。
从图6至图8可以看出,本例分类方法的各项性能评价指标均为最高,准确率、召回率、F1-Measure值分别达到了96%以上,表明本发明分类方法在识别准确率、泛化能力及稳定性方面表现最优。贝叶斯网络方法的性能略差于本例分类方法,准确率、召回率、F1-Measure值达91%~92%。支持向量机方法由于测试样本中的网络流量统计特征维数较少,分类性能不高,准确率、召回率、F1-Measure值均较低,仅有85%~86%。BP神经网络方法的分类性能相比最差,准确率、召回率、F1-Measure值均在84%左右,主要是因为该方法存在局部极值问题。
本例结果表明,采用本体对网络流量信息资源做分层的语义化描述,为信息资源概念及概念之间关系做出明确定义,消除异构信息资源间的不一致性;通过本发明分类方法构建的推理规则直接针对网络流量本体中的流量实例进行有效分类,采用决策树算法独特的IF-THEN结构更适合生成推理规则,从而获得更佳的网络流量分类性能。
上述实施例,仅为对本发明的目的、技术方案和有益效果进一步详细说明的具体个例,本发明并非限定于此。凡在本发明的公开的范围之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围之内。

Claims (5)

1.一种基于本体的网络流量分类方法,主要包括如下步骤:
Ⅰ、构建网络流量本体
构建网络流量本体对网络流量信息资源进行分层描述;
Ⅱ、建立决策树分类模型并生成推理规则集
利用决策树算法训练已标记应用类型的网络流量训练样本集,建立网络流量的决策树分类模型,并将决策树分类模型转化成推理规则集;
Ⅲ、通过知识推理得到分类结果
采用Jena工具包将步骤Ⅱ生成的推理规则集构造成相应的推理机,并用该推理机对步骤Ⅰ构建的网络流量本体进行知识推理,即挖掘出网络流量本体中网络流量实例和网络应用类型之间的对应关系,并对网络流量实例进行网络应用类型标记,完成网络流量分类。
2.根据权利要求1所述的基于本体的网络流量分类方法,其特征在于:
所述步骤Ⅰ具体包括如下子步骤:
I-1、设计网络流量本体结构
根据互联网网络流量采集环境和流量的信息资源建立网络流量本体结构,所述网络流量本体结构为多层结构,首层包括互联网中流量采集节点信息和流量信息;所述流量采集节点信息的下一层记录流量采集节点的相关信息,包括流量采集节点的网络软硬件设备信息、流量采集节点的流量采集工具及流量采集节点的配置参数;所述流量采集工具的下一层记录各流量采集节点的各种流量采集工具名称以及流量采集信息格式;所述流量信息的下一层记录互联网上网络流量的相关信息,包括网络流量实例集合、流量统计特征集合、流量所属应用类型及协议;所述流量所属应用类型的下一层描述各种应用类型;
I-2、构建网络流量本体
根据步骤I-1设计的网络流量本体结构,针对互联网上各种流量信息资源,以基于Java语言开发的本体编辑软件Protégé的应用程序编程接口自动化构建网络流量本体模型,用网络本体语言OWL将网络流量本体模型描述成文件形式的网络流量本体,并保存至本地磁盘。
3.根据权利要求2所述的基于本体的网络流量分类方法,其特征在于:
所述步骤Ⅰ-2具体包括如下次子步骤:
I-2-1、采用本体编辑软件Protégé新建网络流量本体模型;
I-2-2、解析待分类的网络流量信息,根据子步骤I-1设计的网络流量本体结构,利用本体编辑软件Protégé建立网络流量本体基本概念,包括各流量采集节点信息、流量信息、流量采集节点的网络软硬件设备信息、流量采集节点的流量采集工具及流量采集节点的配置参数、网络流量实例集合、流量统计特征集合、流量所属应用类型及协议;
I-2-3、根据步骤I-1设计的网络流量本体结构,建立网络流量本体基本概念与网络流量实例之间的关系、网络流量实例与网络流量统计特征值之间的关系,包括“拥有”和“属于”,二者是互逆关系;网络流量本体基本概念“拥有”网络流量实例,网络流量实例“属于”网络流量本体基本概念;网络流量实例“拥有”网络流量统计特征值,网络流量统计特征值“属于”网络流量实例;
I-2-4、根据待分类的网络流量信息创建网络流量实例,每个网络流量实例对应一条具体的网络流量;
I-2-5、为次子步骤I-2-1建立的网络流量本体模型添加网络流量实例、网络流量实例与网络流量本体基本概念之间的关系,并为网络流量实例添加网络流量的统计特征值、网络流量实例与网络流量统计特征值之间的关系;
I-2-6、将经过次子步骤I-2-5添加各元素后的网络流量本体模型用网络本体语言OWL描述成文件形式的网络流量本体,并保存到本地磁盘中。
4.根据权利要求1所述的基于本体的网络流量分类方法,其特征在于:
所述步骤Ⅱ具体包括如下子步骤:
Ⅱ-1、先手工采集若干条网络流量并标记网络应用类型、组成网络流量训练样本集;借助决策树算法对网络流量训练样本集进行训练,建立网络流量的决策树分类模型,集合A={a1,a2,……,ai}表示由网络流量训练样本集中i个网络流量的统计特征值组成的集合;集合T={t1,t2,……,tj}表示由网络流量训练样本集中j种网络流量所属的应用类型组成的集合;集合V={v1,v2,……,vk}表示由k个决策判定基准值组成的集合,由集合A中的各个元素经过决策树算法统计计算得出,作为决策树中选取决策路径的判定依据;
Ⅱ-2、网络流量的决策树分类模型中从根节点到每个子叶的路径均视为分类路径,以决策判定基准值为依据,将网络流量的决策树分类模型中的每条路径均转化成“如果-则”,即“IF-THEN”结构,建立IF-THEN结构的网络流量决策树分类模型;
Ⅱ-3、采用Jena工具包的推理规则语法描述步骤Ⅱ-2建立的IF-THEN结构的网络流量决策树分类模型,并生成推理规则集。
5.根据权利要求1所述的基于本体的网络流量分类方法,其特征在于:
所述步骤Ⅲ具体包括如下子步骤:
Ⅲ-1、采用Jena工具包加载步骤I构建好的网络流量本体,获取Jena可操作的网络流量本体模型;
Ⅲ-2、采用Jena工具包加载步骤Ⅱ生成的推理规则集,构造相应的推理机;
Ⅲ-3、用步骤Ⅲ-2构造的推理机对步骤Ⅲ-1获取的网络流量本体模型进行知识推理,并对网络流量本体中每个网络流量实例的网络应用类型进行标记;
Ⅲ-4、将属于同一类网络应用类型的网络流量实例汇聚成集合,完成网络流量分类。
CN201510975902.1A 2015-12-22 2015-12-22 一种基于本体的网络流量分类方法 Active CN105591972B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510975902.1A CN105591972B (zh) 2015-12-22 2015-12-22 一种基于本体的网络流量分类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510975902.1A CN105591972B (zh) 2015-12-22 2015-12-22 一种基于本体的网络流量分类方法

Publications (2)

Publication Number Publication Date
CN105591972A CN105591972A (zh) 2016-05-18
CN105591972B true CN105591972B (zh) 2018-09-11

Family

ID=55931204

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510975902.1A Active CN105591972B (zh) 2015-12-22 2015-12-22 一种基于本体的网络流量分类方法

Country Status (1)

Country Link
CN (1) CN105591972B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107896160B (zh) * 2017-10-27 2019-07-23 中国科学技术大学 一种基于分布式系统的数据中心网络流量建模方法
CN109522454B (zh) * 2018-11-20 2022-06-03 四川长虹电器股份有限公司 自动生成web样本数据的方法
CN109784370B (zh) * 2018-12-14 2024-05-10 中国平安财产保险股份有限公司 基于决策树的数据地图生成方法、装置和计算机设备
CN110046282A (zh) * 2019-02-26 2019-07-23 维正知识产权服务有限公司 数据相关性示图生成方法及存储介质、硬件设备
CN110197234B (zh) * 2019-06-13 2020-05-19 四川大学 一种基于双通道卷积神经网络的加密流量分类方法
CN110795638A (zh) * 2019-11-13 2020-02-14 北京百度网讯科技有限公司 用于输出信息的方法和装置
CN111416779B (zh) * 2020-03-27 2022-04-19 西安电子科技大学 基于时限的互联网业务队列调度方法
CN112933609A (zh) * 2021-05-17 2021-06-11 南京烽火星空通信发展有限公司 一种基于流量分类的游戏沉迷分析方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104702465A (zh) * 2015-02-09 2015-06-10 桂林电子科技大学 一种并行网络流量分类方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104702465A (zh) * 2015-02-09 2015-06-10 桂林电子科技大学 一种并行网络流量分类方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
A Framework for Ocean Satellite Image Classification Based on Ontologies;Jesus M.Almendros-Jimenez,et.al;《IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing》;20130430;第1048-1063页 *
Online Self-learning Internet Traffic Classification based on Profile and Ontology;Chengjie Gu,et al.;《Journal of Convergence Technology》;20110430;第6卷(第4期);第81-91页 *
Toward systematic methods comparison in traffic classification;M.Pietrzyk,et al.;《Wireless Communication and Mobile Computing Conference》;20110812;第1022-1027页 *
基于本体的决策树算法在应急决策系统中的研究;耿晓平;《机械管理开发》;20110831;第134-136页 *

Also Published As

Publication number Publication date
CN105591972A (zh) 2016-05-18

Similar Documents

Publication Publication Date Title
CN105591972B (zh) 一种基于本体的网络流量分类方法
CN105516020B (zh) 一种基于本体知识推理的并行网络流量分类方法
Lin et al. Modeling and understanding ethereum transaction records via a complex network approach
Zhao et al. Network traffic classification for data fusion: A survey
Wang et al. Machine learning for networking: Workflow, advances and opportunities
CN108900432A (zh) 一种基于网络流行为的内容感知方法
Liu et al. Network traffic classification using k-means clustering
Wang et al. A novel semi-supervised approach for network traffic clustering
CN1992674B (zh) 一种基于多比特分割的多维分组分类方法
CN112311608B (zh) 一种多层异质网络空间节点表征方法
CN101510873A (zh) 基于支持向量机的混合式点对点流量检测方法
Zhai et al. Random forest based traffic classification method in SDN
Qu et al. Statistics-enhanced direct batch growth self-organizing mapping for efficient DoS attack detection
Ran et al. A self-adaptive network traffic classification system with unknown flow detection
Tan et al. An Internet Traffic Identification Approach Based on GA and PSO-SVM.
CN105577438B (zh) 一种基于MapReduce的网络流量本体构建方法
CN109960755A (zh) 一种基于动态迭代快速梯度的用户隐私保护方法
CN106060039A (zh) 一种面向网络异常数据流的分类检测方法
Dong et al. Flow cluster algorithm based on improved K-means method
Min et al. Online Internet traffic identification algorithm based on multistage classifier
Dong et al. Research on network traffic identification based on improved BP neural network
Tavallaee et al. Online classification of network flows
Ikhlef et al. Link state estimator for VANETs using neural networks
CN109885797A (zh) 一种基于多身份空间映射的关系网络构建方法
Liu et al. Topology sensing of non-collaborative wireless networks with conditional Granger causality

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20160518

Assignee: Guangxi Jun'an Network Security Technology Co.,Ltd.

Assignor: GUILIN University OF ELECTRONIC TECHNOLOGY

Contract record no.: X2022450000459

Denomination of invention: An ontology based network traffic classification method

Granted publication date: 20180911

License type: Common License

Record date: 20221228