CN108737290A - 基于负载映射与随机森林的非加密流量识别方法 - Google Patents

基于负载映射与随机森林的非加密流量识别方法 Download PDF

Info

Publication number
CN108737290A
CN108737290A CN201810449191.8A CN201810449191A CN108737290A CN 108737290 A CN108737290 A CN 108737290A CN 201810449191 A CN201810449191 A CN 201810449191A CN 108737290 A CN108737290 A CN 108737290A
Authority
CN
China
Prior art keywords
random forest
word
flow
load
sample
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.)
Pending
Application number
CN201810449191.8A
Other languages
English (en)
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.)
Nankai University
National Computer Network and Information Security Management Center
Original Assignee
Nankai University
National Computer Network and Information Security Management Center
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 Nankai University, National Computer Network and Information Security Management Center filed Critical Nankai University
Priority to CN201810449191.8A priority Critical patent/CN108737290A/zh
Publication of CN108737290A publication Critical patent/CN108737290A/zh
Pending legal-status Critical Current

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]
    • 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/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明针对于非加密流量提出了一种移动应用流量识别方法。方法结合向量空间映射与随机森林分类器,包括预处理阶段,用于将流量负载进行预处理;随机森林分类器建模阶段,将流量负载映射到向量空间,利用流量训练集合建立随机森林模型;分类阶段,待识别流量通过随机森林模型分类。常见的非加密流量识别方法,局限于寻找固定长度或可变长度的特征字符串,为此花费了巨大的精力。本发明引入自然语言处理领域的方法。将非加密负载转化为向量,克服了寻找特征字符时间复杂度大的特点。本发明可以用于非加密流量的应用类型识别,具有较高的识别准确度。

Description

基于负载映射与随机森林的非加密流量识别方法
技术领域
本发明涉及流量分类与识别技术领域,尤其涉及一种非加密移动应用流量识别方法。
背景技术
网络流量识别在网络管理中处于十分重要的位置,是网络监管、带宽计费、QoS等多方面的基础。近几年,移动设备的数量呈现爆炸式增长,越来越深入到人们的生活中。在这些设备上,人们下载安装应用程序,这些应用程序产生的流量称之为移动应用流量。这些流量增长得十分迅速,并且包含了网络环境中的重要信息,因此对这些流量进行分析变得十分有意义,而流量识别作为流量分析的基础,吸引了学术界的许多目光。
移动应用程序大多使用HTTP/HTTPS等协议,目前流量识别的方式主要有3种:基于端口的识别方法、基于机器学习的识别方法、基于数据包负载的识别方法(DPI)。
基于端口的识别方法是将一些熟知端口作为识别规则,如80端口对应HTTP协议,53号端口对应DNS协议。但由于大多数移动应用都采用HTTP/HTTPS协议,流量端口基本固定为80或443,基于端口识别的方案不能很好地识别移动应用流量。
基于机器学习的识别方法通常是先按照五元组的方式提取出数据流,所谓数据流就是指在一定时间间隔内报文的集合,这些报文有着相同的源IP、目的IP、源端口、目的端口和协议。而后可以通过提取流特征,如数据包到达间隔、数据包大小等,完成数据包到特征空间的映射,进而可以建立如贝叶斯、SVM、决策树等分类器以进行分类。或是采用K-Means、DBSCAN等无监督方法进行聚类,预测类别。但同样是由于移动应用大都采用HTTP/HTTPS协议,流特征会较为相近,常用的流特征将近250个,如何选择有效的特征成为一个复杂的问题。
基于DPI的识别方法依赖于报文负载内容,将位置固定或不固定的关键字符串作为应用签名。通过字符串匹配进行流量识别。如何找到具有代表性的匹配模式,在很大程度上决定了这种分类方法的识别准确度。不同学者提出了不同的方法来对寻找特征模式,但过程相对较为复杂。
本发明基于DPI的识别方法,仅针对使用HTTP协议的应用流量进行识别。依赖于HTTP负载报文,但不采用提取特征字符串的方式,而是使用自然语言处理领域中的方法,将负载映射为向量,建立随机森林分类器进行应用类别预测。
发明内容
本发明提供一种非加密移动应用流量识别方法,不必提取特征字符串,而是将负载映射为向量,具有较为准确的识别率。
本发明提供一种基于随机森林的非加密移动应用流量识别方法。HTTP流量负载为明文,可以将其视为文本进行处理,引入自然语言处理中的向量空间模型,实现负载到向量的映射。
图1展示了本方法的框架图,在预处理阶段,截取HTTP报文负载中“\r\n\r\n”之前的内容,该内容包含了HTTP的请求行与请求报文,拥有足够的信息量可以用于分类器的建立。
对每条负载进行分词处理,可以简单地使用空格、斜杠等分隔符进行分割,将长度过短的单词删除。将单词存入单词集合W={w1,w2,...,wn},W也可称之为词袋(bagofwords)。
本文所提到的流量分类为二分类问题,即预测的结果为属于某个应用或不属于某个应用,故在随机森林分类器建模阶段,建立二分类模型。计算词袋中每个单词的TFIDF值,所谓TFIDF值,是自然语言处理领域用来衡量单词重要度的指标之一。计算公式为:tfi,j表示单词wi,j在负载j中的出现次数,df表示包含单词wi,j的报文负载数量,|D|是报文负载集合的总数。由TFIDF计算公式可以看出,同一单词在不同负载中TFIDF的值并不相同,即一个单词对应多个TFIDF值。
但若使用全部单词,计算量较大且包含噪声。因此,将每个单词对应的所有TFIDF值进行求和,对和值进行排序,并设定比率Ratio,使用排名在前Ratio*|W|的单词构建词袋W′。顺序扫描一条报文中的单词,若单词存在于词袋W′,可使用单词对应的TFIDF值代替该单词;若不存在于W′中,则忽略该单词。至此,将报文负载转化为TFIDF向量,建立了向量空间模型。
使用训练样本向量与对应标签建立随机森林分类器。方法包括:对训练向量集合,随机抽样生成数据子集D1、D2、......、DN,对于某数据子集Di,采用的是TFIDF特征,相当于连续特征,利用二分法对连续特征进行处理,假设单词wi,j的TFIDF取值有k个,将这k个取值从小到大排列,记为{a1,a2,...,ak},基于划分点at可将Di分为两个子集其中表示单词wi,j的TFIDF取值不大于at的样本,表示单词wi,j的TFIDF取值大于at的样本。
在构建随机森林的第i棵树Ti时,若输入的所有训练样本都属于同一类Ck,则Ti为单节点树,并将类Ck作为该节点的类标记;否则,对于每一个特征A,对其可能取的每一个值a,计算基尼指数,计算公式定义为其中,Di1和Di2表示按照分割点a将数据集合划分成的两部分,Dim基尼指数计算公式为Ck表示Dim中属于第k类的样本子集,由于基尼指数刻画了集合的不确定性,故选择基尼指数最小的特征Ag及其对应的切分点作为最优特征和最优切分点,将训练数据集分配到两个子节点中,递归进行以上步骤,直到满足迭代停止的条件。
在分类阶段,对待识别的数据包负载进行预处理,即截取”\r\n\r\n”之前的部分,利用分隔符进行分词,并删除长度较短的单词,计算每个单词的TFIDF值。顺序扫描待分类报文中的单词,若单词存在于词袋W',可使用单词对应的TFIDF值代替该单词;若不存在于W′中,则忽略该单词。建立好向量空间模型,将TFIDF向量输入到随机森林分类器进行预测。对于每条待识别的报文x,都会输出该样本属于目标应用的概率P(Y=1|x),以及样本不属于目标应用的概率P(Y=0|x),选择概率值大的作为最终的标签。
附图说明
图1是非加密移动应用流量识别方法框架图
图2是选择不同关键字比率Ratio与准确率的关系
图3是选择不同树的棵数与准确率的关系
图4是不同移动应用识别的准确率、召回率、F1值
具体实施方式
为了更清晰直观的表达本发明的方法思路,下面对算法的细节进行详细说明:
1.确定参数
算法需要确定的参数包括:
1)关键字的比率Ratio
2)树的棵数Estimators
2.预处理阶段
读取数据包负载,截取“\r\n\r\n”之前的部分。使用空格、斜杠等分隔符对等分隔符进行分割,将长度小于2的单词删除,将其余单词存入单词集合W={w1,w2,...,wn}。
3.建立随机森林分类器模型
计算每个单词的TFIDF值,将对应单词的TFIDF值进行求和累加,并对和值进行排序,设定Ratio的数值,选取排名在前Ratio*|W|的单词构建词袋W′。顺序扫描一条报文中的单词,若单词存在于词袋W′,可使用单词对应的TFIDF值代替该单词;若不存在于W′中,则忽略该单词。多次设定Ratio的数值,并比较训练时移动应用的分类准确率,最终选定一个Ratio值用于最终的分类。同样,多次设定树的棵数Estimators,并比较训练时移动应用的分类准确率,最终选定一个Estimators值用于最终的分类。
4.随机森林分类器预测
待识别的数据包负载截取”\r\n\r\n”之前的部分,使用空格、斜杠等分隔符对等分隔符进行分割,将长度小于2的单词删除,利用词袋将负载映射到向量空间。输入到训练好的随机森林分类器模型中,进行预测。
实施例
本发明采用现实数据的方式实施。
本发明选择10组真实的网络环境下采集的网络流量数据集作为实施例中的数据源。这10组数据集分别对应了当前中国最为流行的10种应用,分别是:大众点评、爱奇艺、今日头条、美团、优酷视频、优酷视频、手机淘宝、腾讯新闻、新浪微博、微信、酷我音乐。
定义分类准确率为正确分类的样本数与所有样本数的比值。
图2显示了在不同Ratio值下,在训练随机森林分类器时分类准确率的变化。Ratio<0.5时,准确率大致呈现向上增长的趋势,优酷视频的准确率在Ratio<0.5时,变化幅度不大;腾讯新闻与手机淘宝的曲线在Ratio<0.5时,呈现出先下降后上升的趋势,大致在Ratio=0.5时准确率最高,然后准确率又开始下降。选择Ratio=0.5用于最后的应用识别的准确率测试。
图3显示了在不同Estimators值下准确率的变化,Estimators<40时,腾讯新闻与手机淘宝的准确率大致呈现向上增长的趋势,优酷视频的准确率在Estimators<40时,变化幅度不大;大致在Estimators<40时准确率最高,然后准确率又开始下降。选择Estimators=40用于最后的应用识别的准确率测试。
准确率、召回率、F1值常见于衡量分类器性能,计算公式为:
其中TP表示正样本预测为正类的数量,FP表示正样本预测为负类的数量,FN表示负样本预测为正类的数量。
图4显示了在Ratio=0.5,Estimators=40时,对不同移动应用识别的准确率(Precision)、召回率(Recall)、F1值(F1-Score)。分类准确率最高可达99%以上,平均准确率为98.2%,平均召回率为98.27%,准确率与召回率相差不大。验证了本发明对于非加密的移动应用识别有良好的识别准确率。

Claims (7)

1.一种非加密移动应用流量识别方法,具体包括:
方法基于随机森林分类器,包括预处理阶段、随机森林分类器建模阶段和预测阶段;
预处理阶段,负责提取数据包负载中的有用信息,以降低训练和预测时的复杂度,且能降低噪声;
随机森林分类器建模阶段,将负载映射为向量空间中的TFIDF向量,以此进行随机森林分类器的训练;
预测阶段,对未知标签的流量,提取出数据包负载,经过预处理阶段,提取出有用信息,同样经过负载映射到向量空间,将该向量输入到分类器模型中,得到预测标签。
2.根据权利要求说明1所述方法,其特征在于,用于训练与测试的HTTP流量负载,仅截取”\r\n\r\n”之前的内容,删去无用的数据部分。
3.根据权利要求说明1所述方法,其特征在于,对流量负载依照空格、斜杠等分隔符进行分词,引入自然语言处理领域中的方法,计算单词的逆文档频率(TFIDF)以映射到向量空间,以TFIDF值衡量单词的重要程度,即建立的分类特征是重要单词的TFIDF值,训练流量样本集可被视为向量集合。
4.根据权利要求说明1所述方法,其特征在于,对所有单词的TFIDF值进行从高到低的排序,选择重要度高的单词建立词袋模型,将重要度低的单词从词袋中删去。
5.根据权利要求说明1所述方法,其特征在于,对训练向量集合,随机抽样生成数据子集D1、D2、......、DN,对于某数据子集Di,当建立随机森林分类器时,树的节点属性分裂方法采用二分法,假设某单词的TFIDF取值有k个,将这k个取值从小到大排列,记为{a1,a2,...,ak},基于划分点at可将Di分为两个子集其中表示该单词的TFIDF取值不大于at的样本,表示该单词的TFIDF取值大于at的样本。
6.根据权利要求说明1所述方法,其特征在于,所述方法还包括:
在构建随机森林的第i棵树Ti时,若输入的所有训练样本都属于同一类Ck,则Ti为单节点树,并将类Ck作为该节点的类标记;否则,对于每一个特征A,对其可能取的每一个值a,计算基尼指数,计算公式定义为其中,Di1和Di2表示按照分割点a将数据集合划分成的两部分,Dim基尼指数计算公式为Ck表示Dim中属于第k类的样本子集,由于基尼指数刻画了集合的不确定性,故选择基尼指数最小的特征Ag及其对应的切分点作为最优特征和最优切分点,将训练数据集分配到两个子节点中,递归进行以上步骤,直到满足迭代停止的条件。
7.根据权利要求说明1所述方法,其特征在于,随机森林分类器对于每条样本x,都会输出该样本属于目标应用的概率P(Y=1|x),以及样本不属于目标应用的概率P(Y=0|x),选择概率值大的作为最终的标签。
CN201810449191.8A 2018-05-11 2018-05-11 基于负载映射与随机森林的非加密流量识别方法 Pending CN108737290A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810449191.8A CN108737290A (zh) 2018-05-11 2018-05-11 基于负载映射与随机森林的非加密流量识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810449191.8A CN108737290A (zh) 2018-05-11 2018-05-11 基于负载映射与随机森林的非加密流量识别方法

Publications (1)

Publication Number Publication Date
CN108737290A true CN108737290A (zh) 2018-11-02

Family

ID=63937326

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810449191.8A Pending CN108737290A (zh) 2018-05-11 2018-05-11 基于负载映射与随机森林的非加密流量识别方法

Country Status (1)

Country Link
CN (1) CN108737290A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109151880A (zh) * 2018-11-08 2019-01-04 中国人民解放军国防科技大学 基于多层分类器的移动应用流量识别方法
CN110674010A (zh) * 2019-09-10 2020-01-10 西安电子科技大学 基于会话长度概率分布的智能设备应用程序识别方法
CN111222547A (zh) * 2019-12-30 2020-06-02 中国人民解放军国防科技大学 一种面向移动应用的流量特征提取方法及系统
CN111641599A (zh) * 2020-05-11 2020-09-08 国家计算机网络与信息安全管理中心 一种VoIP网络流量所属平台的识别方法
CN113329023A (zh) * 2021-05-31 2021-08-31 西北大学 一种加密流量恶意性检测模型建立、检测方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120321174A1 (en) * 2011-06-15 2012-12-20 Siemens Aktiengesellschaft Image Processing Using Random Forest Classifiers
CN106991374A (zh) * 2017-03-07 2017-07-28 中国矿业大学 基于卷积神经网络和随机森林的手写数字识别方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120321174A1 (en) * 2011-06-15 2012-12-20 Siemens Aktiengesellschaft Image Processing Using Random Forest Classifiers
CN106991374A (zh) * 2017-03-07 2017-07-28 中国矿业大学 基于卷积神经网络和随机森林的手写数字识别方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
张颖超: "基于互信息与随机森林的P2P流量识别", 《淮海工学院学报(自然科学版)》 *
罗元帅: "基于随机森林和Spark的并行文本分类算法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109151880A (zh) * 2018-11-08 2019-01-04 中国人民解放军国防科技大学 基于多层分类器的移动应用流量识别方法
CN109151880B (zh) * 2018-11-08 2021-06-22 中国人民解放军国防科技大学 基于多层分类器的移动应用流量识别方法
CN110674010A (zh) * 2019-09-10 2020-01-10 西安电子科技大学 基于会话长度概率分布的智能设备应用程序识别方法
CN111222547A (zh) * 2019-12-30 2020-06-02 中国人民解放军国防科技大学 一种面向移动应用的流量特征提取方法及系统
CN111222547B (zh) * 2019-12-30 2021-08-17 中国人民解放军国防科技大学 一种面向移动应用的流量特征提取方法及系统
CN111641599A (zh) * 2020-05-11 2020-09-08 国家计算机网络与信息安全管理中心 一种VoIP网络流量所属平台的识别方法
CN111641599B (zh) * 2020-05-11 2022-04-15 国家计算机网络与信息安全管理中心 一种VoIP网络流量所属平台的识别方法
CN113329023A (zh) * 2021-05-31 2021-08-31 西北大学 一种加密流量恶意性检测模型建立、检测方法及系统

Similar Documents

Publication Publication Date Title
CN108737290A (zh) 基于负载映射与随机森林的非加密流量识别方法
Wu et al. Twitter spam detection based on deep learning
CN107609121B (zh) 基于LDA和word2vec算法的新闻文本分类方法
Liu et al. Effective and real-time in-app activity analysis in encrypted internet traffic streams
CN106096727B (zh) 一种基于机器学习的网络模型构造方法及装置
CN103117903B (zh) 上网流量异常检测方法及装置
CN109492026B (zh) 一种基于改进的主动学习技术的电信欺诈分类检测方法
CN109726744A (zh) 一种网络流量分类方法
CN109471938A (zh) 一种文本分类方法及终端
CN109739986A (zh) 一种基于深度集成学习的投诉短文本分类方法
CN103927302A (zh) 一种文本分类方法和系统
US20190340507A1 (en) Classifying data
CN111881290A (zh) 一种基于加权语义相似度的配网多源网架实体融合方法
CN107832456B (zh) 一种基于临界值数据划分的并行knn文本分类方法
CN101605126A (zh) 一种多协议数据分类识别的方法和系统
CN104462301A (zh) 一种网络数据的处理方法和装置
CN108304479B (zh) 一种基于图结构过滤的快速密度聚类双层网络推荐方法
CN104866558A (zh) 一种社交网络账号映射模型训练方法及映射方法和系统
CN109522544A (zh) 基于卡方检验的句向量计算方法、文本分类方法及系统
CN109376797A (zh) 一种基于二进制编码器和多哈希表的网络流量分类方法
CN108280236A (zh) 一种基于LargeVis的随机森林可视化数据分析方法
CN106649338B (zh) 信息过滤策略生成方法及装置
Shafiq et al. Effective packet number for 5G IM WeChat application at early stage traffic classification
CN106959967B (zh) 一种链路预测模型的训练及链路预测方法
CN115309906A (zh) 一种基于知识图谱技术的数据智能分类技术

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20181102

RJ01 Rejection of invention patent application after publication