CN107241359A - 一种面向软件定义网络的轻量级网络流量异常检测方法 - Google Patents
一种面向软件定义网络的轻量级网络流量异常检测方法 Download PDFInfo
- Publication number
- CN107241359A CN107241359A CN201710654538.8A CN201710654538A CN107241359A CN 107241359 A CN107241359 A CN 107241359A CN 201710654538 A CN201710654538 A CN 201710654538A CN 107241359 A CN107241359 A CN 107241359A
- Authority
- CN
- China
- Prior art keywords
- message
- packet
- network
- software
- exception
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种面向软件定义网络的轻量级网络流量异常检测方法,通过分析控制器接收到的packet‑in消息以检测软件定义网络中出现的网络流量异常现象,其包括以下步骤:首先解析packet‑in消息,计算packet‑in消息到达速率、各交换机发送的packet‑in消息比例、packet‑in消息封装的报文协议类型比例、packet‑in消息封装的不同协议的报文到达速率;然后使用基于聚类的离群点技术检测上述packet‑in消息特征以判断网络流量是否出现异常。本发明方法为面向软件定义网络的轻量级网络流量异常检测方法,能够快速地检测出软件定义网络中的流量异常。
Description
技术领域
本发明涉及网络通信技术领域,特别涉及一种面向软件定义网络的轻量级网络流量异常检测方法。
背景技术
随着计算机网络技术的不断进步,网络安全问题也随之受到用户及网络服务提供商的日益重视。网络流量异常检测技术作为网络安全中的重要技术,在防范网络攻击中起着不可忽视的作用。目前的网络流量异常检测技术通常使用镜像流量或者周期采样的方法抓取网络中的通信报文,随后对抓取的通信报文进行分析,以检测网络流量是否出现了异常。
上述两种方法均需要获取网络中所有的网络报文以供网络流量异常检测算法检测。这种方法一方面需要获取大量的网络报文,容易导致网络出现网络拥塞、时延增高、丢包率加大等问题;另一方面该方法需要耗费大量的计算资源,导致计算资源开销急剧上升。因此上述网络流量异常检测方法存在着不可避免的缺陷。研究如何既能快速地检测出网络中的异常行为,又能以轻量级的形式进行检测的技术,具有实际的意义。
软件定义网络(Software Defined Network,SDN)是一种新型的网络体系结构,其实现了数据转发平面与控制平面解耦合。OpenFlow协议作为SDN中控制层与基础设施层间通信的标准协议(南向接口协议),目前已被工业界及学术界广泛认定为SDN中的事实标准。
作为OpenFlow协议中一种特殊的报文,packet-in消息(packet-in消息为OpenFlow协议中的一种特殊消息,在OpenFlow协议中,底层交换机使用packet-in消息将其上发生的事件上报至控制器)能够反映SDN底层网络的流量情况,一方面由于交换机上一般在无相应报文达到时不存在处理该类型报文的流表,另一方面由于交换机上的流表存在生存时间,因此,交换机发送至控制器的packet-in消息一般呈现出规律性。而在网络中有异常事件发生时,交换机发送至控制器的packet-in消息将出现异常变化,因此,可以利用OpenFlow协议中所特有的packet-in消息特征,设计一种轻量级的面向软件定义网络的网络流量异常检测方法。
发明内容
本发明所要解决的技术问题是提供一种面向软件定义网络的轻量级网络流量异常检测方法,通过分析SDN中所特有的packet-in消息,以达到快速地检测SDN中的流量异常事件,进而对SDN中的流量异常事件进行响应的目的。
为解决上述技术问题,本发明采用的技术方案是:
一种面向软件定义网络的轻量级网络流量异常检测方法,包括以下步骤:
步骤1:网络初始化完成后,在控制器上建立用于统计控制器收到的packet-in消息的计数器、统计packet-in消息中封装的不同协议报文数目的字典、统计packet-in消息源交换机的字典,同时初始化计数器和两个字典的参数值为0,并记录当前时刻t0;
步骤2:所述控制器解析收到的packet-in消息,提取该packet-in消息封装的报文类型及该packet-in消息的来源交换机;
步骤3:更新所述统计packet-in消息中封装的不同协议报文数目的字典及统计packet-in消息源交换机的字典;
步骤4:所述控制器收到底层交换机发送的packet-in消息时,所述packet-in消息计数器数值加1;
步骤5:所述packet-in消息计数器值加1后,该消息计数器值将模以指定阈值,若上述模操作的余数不为0,则不做处理,检测停止,若模操作的余数为0,则记录当前时刻t1;
步骤6:根据packet-in消息计数器值、统计packet-in消息中封装的不同协议报文数目的字典、统计packet-in消息源交换机的字典以及时刻记录值t0、t1计算packet-in消息特征;
步骤7:使用基于聚类的离群点检测技术分析所述packet-in消息特征,判断packet-in消息是否出现了异常,进而得出网络流量是否出现了异常。
进一步的,所述packet-in消息特征包括:packet-in消息到达速率、各交换机发送的packet-in消息比例、packet-in消息封装的报文协议类型比例、packet-in消息封装的不同协议的报文到达速率。
进一步的,当packet-in消息出现异常,即网络流量异常时,进行网络流量异常报警。
与现有技术相比,本发明的有益效果是:
1、与现有的网络流量异常检测方法需要通过镜像流量或周期采样获取网络中的报文不同,本发明方法基于SDN中所特有的packet-in消息能够反映底层网络状况的特性,仅需在控制器收到packet-in消息时对该消息进行进一步的简单分析,因此,本发明能够避免增加对网络进行采集的报文,大量减少网络的流量负载,是一种轻量级的网络异常检测方法。
2、本发明方法无需分析大量网络报文,能够极大地减轻网络流量异常检测过程中的计算资源开销,进而降低检测出网络流量异常的响应时间。
3、本发明方法仅需部署在控制器上,无需对底层网络设备进行修改,是一种操作简便、成本优化的网络流量异常检测方法。
附图说明
图1为本发明实施例中一种面向软件定义网络的轻量级网络流量异常检测方法流程图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。图1示出了本发明实施例中一种面向软件定义网络的轻量级网络流量异常检测方法流程图,其具体步骤为:
步骤1:网络初始化完成后,在控制器上建立用于统计网络中所有交换机发送的packet-in消息数目的计数器c1、统计packet-in消息中封装的不同协议(TCP、UDP、ICMP、ARP)报文数目的字典d1、统计packet-in消息来自哪个交换机的字典d2,同时初始化c1、d1和d2的参数值为0,并记录当前时刻t0;
步骤2:控制器解析该packet-in消息,提取该packet-in消息封装的报文类型msg_type及该packet-in消息的来源交换机src_sw;
步骤3:字典d1的d1(msg_type)值加1;
步骤4:字典d2的d2(src_sw)值加1;
步骤5:当控制器接收到交换机发送的packet-in消息后,c1计数值加1;
步骤6:计数器c1当前值模以阈值N并计算余数b;
步骤7:若b≠0,则程序结束;若b=0,则转入步骤8;
步骤8:记录当前时刻t1;
步骤9:计算packet-in消息到达速率V:V=N/(t1-t0);
步骤10:对于packet-in消息中封装的TCP、UDP、ICMP、ARP协议,分别计算packet-in消息封装的上述报文类型到达速率:Vt=d1(tcp)/(t1-t0)、Vu=d1(udp)/(t1-t0)、Vi=d1(icmp)/(t1-t0)以及Va=d1(arp)/(t1-t0);
步骤11:计算packet-in消息封装的TCP、UDP、ICMP、ARP协议报文各自占比:RTt=d1(tcp)/t_d1、RTu=d1(udp)/t_d1、RTi=d1(icmp)/t_d1、RTa=d1(arp)/t_d1;
步骤12:计算各交换机发送的packet-in消息占比:RSi=d2(sw_id)/t_d2;
步骤13:将计算得到的packet-in消息到达速率V、packet-in消息封装的不同类型报文到达速率:Vt、Vu、Vi及Va、packet-in消息封装的不同类型报文比例:RTt、RTu、RTi及RTa、各交换机发送的packet-in消息比例:RSi送入到经训练的iForest模型中进行检测,判断packet-in消息是否出现异常;
步骤14:若iForest判断packet-in消息无异常,程序结束;
步骤15:若iForest判断packet-in消息有异常,则程序发出网络流量异常告警,程序结束。
本实施例中采用孤立森林算法(Isolation Forest,iForest)进行packet-in消息异常检测,但此算法仅用来对本发明中的检测算法进行说明,本发明中的检测算法不限于此算法。
Claims (3)
1.一种面向软件定义网络的轻量级网络流量异常检测方法,其特征在于,包括以下步骤:
步骤1:网络初始化完成后,在控制器上建立用于统计控制器收到的packet-in消息的计数器、统计packet-in消息中封装的不同协议报文数目的字典、统计packet-in消息源交换机的字典,同时初始化计数器和两个字典的参数值为0,并记录当前时刻t0;
步骤2:所述控制器解析收到的packet-in消息,提取该packet-in消息封装的报文类型及该packet-in消息的来源交换机;
步骤3:更新所述统计packet-in消息中封装的不同协议报文数目的字典及统计packet-in消息源交换机的字典;
步骤4:所述控制器收到底层交换机发送的packet-in消息时,所述packet-in消息计数器数值加1;
步骤5:所述packet-in消息计数器值加1后,该消息计数器值将模以指定阈值,若上述模操作的余数不为0,则不做处理,检测停止,若模操作的余数为0,则记录当前时刻t1;
步骤6:根据packet-in消息计数器值、统计packet-in消息中封装的不同协议报文数目的字典、统计packet-in消息源交换机的字典以及时刻记录值t0、t1计算packet-in消息特征;
步骤7:使用基于聚类的离群点检测技术分析所述packet-in消息特征,判断packet-in消息是否出现了异常,进而得出网络流量是否出现了异常。
2.如权利要求1所述的一种面向软件定义网络的轻量级网络流量异常检测方法,其特征在于,所述packet-in消息特征包括:packet-in消息到达速率、各交换机发送的packet-in消息比例、packet-in消息封装的报文协议类型比例、packet-in消息封装的不同协议的报文到达速率。
3.如权利要求1或2所述的一种面向软件定义网络的轻量级网络流量异常检测方法,其特征在于,当packet-in消息出现异常,即网络流量异常时,进行网络流量异常报警。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710654538.8A CN107241359B (zh) | 2017-08-03 | 2017-08-03 | 一种面向软件定义网络的轻量级网络流量异常检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710654538.8A CN107241359B (zh) | 2017-08-03 | 2017-08-03 | 一种面向软件定义网络的轻量级网络流量异常检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107241359A true CN107241359A (zh) | 2017-10-10 |
CN107241359B CN107241359B (zh) | 2020-03-17 |
Family
ID=59989514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710654538.8A Active CN107241359B (zh) | 2017-08-03 | 2017-08-03 | 一种面向软件定义网络的轻量级网络流量异常检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107241359B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111711545A (zh) * | 2020-05-29 | 2020-09-25 | 福州大学 | 一种软件定义网络中基于深度包检测技术的加密流量智能识别方法 |
CN112134862A (zh) * | 2020-09-11 | 2020-12-25 | 国网电力科学研究院有限公司 | 基于机器学习的粗细粒度混合网络异常检测方法及装置 |
CN114745170A (zh) * | 2022-04-07 | 2022-07-12 | 鹏城实验室 | 物联网异常实时检测方法、装置、终端及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104378380A (zh) * | 2014-11-26 | 2015-02-25 | 南京晓庄学院 | 一种基于SDN架构的识别与防护DDoS攻击的系统及方法 |
CN105337957A (zh) * | 2015-09-24 | 2016-02-17 | 中山大学 | 一种SDN网络DDoS和DLDoS分布式时空检测系统 |
US20160269432A1 (en) * | 2013-11-22 | 2016-09-15 | Huawei Technologies Co.,Ltd. | Malicious attack detection method and apparatus |
CN106101163A (zh) * | 2016-08-29 | 2016-11-09 | 北京工业大学 | 基于OpenFlow的网络架构安全监控系统 |
CN106302021A (zh) * | 2016-08-18 | 2017-01-04 | 清华大学深圳研究生院 | 一种网络流转发异常检测方法 |
-
2017
- 2017-08-03 CN CN201710654538.8A patent/CN107241359B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160269432A1 (en) * | 2013-11-22 | 2016-09-15 | Huawei Technologies Co.,Ltd. | Malicious attack detection method and apparatus |
CN104378380A (zh) * | 2014-11-26 | 2015-02-25 | 南京晓庄学院 | 一种基于SDN架构的识别与防护DDoS攻击的系统及方法 |
CN105337957A (zh) * | 2015-09-24 | 2016-02-17 | 中山大学 | 一种SDN网络DDoS和DLDoS分布式时空检测系统 |
CN106302021A (zh) * | 2016-08-18 | 2017-01-04 | 清华大学深圳研究生院 | 一种网络流转发异常检测方法 |
CN106101163A (zh) * | 2016-08-29 | 2016-11-09 | 北京工业大学 | 基于OpenFlow的网络架构安全监控系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111711545A (zh) * | 2020-05-29 | 2020-09-25 | 福州大学 | 一种软件定义网络中基于深度包检测技术的加密流量智能识别方法 |
CN112134862A (zh) * | 2020-09-11 | 2020-12-25 | 国网电力科学研究院有限公司 | 基于机器学习的粗细粒度混合网络异常检测方法及装置 |
CN112134862B (zh) * | 2020-09-11 | 2023-09-08 | 国网电力科学研究院有限公司 | 基于机器学习的粗细粒度混合网络异常检测方法及装置 |
CN114745170A (zh) * | 2022-04-07 | 2022-07-12 | 鹏城实验室 | 物联网异常实时检测方法、装置、终端及可读存储介质 |
CN114745170B (zh) * | 2022-04-07 | 2023-08-18 | 鹏城实验室 | 物联网异常实时检测方法、装置、终端及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107241359B (zh) | 2020-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Tan et al. | In-band network telemetry: A survey | |
US10652078B2 (en) | Triggered in-band operations, administration, and maintenance in a network environment | |
US10021007B2 (en) | Measuring latency within a networking device | |
CN105429977B (zh) | 基于信息熵度量的深度包检测设备异常流量监控方法 | |
US7313141B2 (en) | Packet sequence number network monitoring system | |
US20150195154A1 (en) | Creating a Knowledge Base for Alarm Management in a Communications Network | |
US10826813B2 (en) | Threshold crossing events for network element instrumentation and telemetric streaming | |
WO2016017208A1 (ja) | 監視システム、監視装置、および検査装置 | |
US10742672B2 (en) | Comparing metrics from different data flows to detect flaws in network data collection for anomaly detection | |
CN107241359A (zh) | 一种面向软件定义网络的轻量级网络流量异常检测方法 | |
WO2012000540A1 (en) | Method and apparatus for analysis of the operation of a communication system using events | |
EP2342703A1 (en) | System and method for measuring interface utilization using policers | |
CN112262554B (zh) | 包可编程流遥测剖析和分析 | |
CN109379255B (zh) | 一种基于智能交换机过程层网络流量监测预警方法 | |
CN110806921A (zh) | 一种ovs异常告警监控系统及方法 | |
CN105763387A (zh) | 网络流量监控方法和装置 | |
CN107070888A (zh) | 网关安全管理方法和设备 | |
US20100031273A1 (en) | method of supervising a plurality of units in a communications network | |
Pekár et al. | Issues in the passive approach of network traffic monitoring | |
CN105991623B (zh) | 一种业务互联关系审计方法和系统 | |
CN103580959B (zh) | 一种分布式统计上报的实现方法 | |
US20150227126A1 (en) | Communication configuration analysis in process control systems | |
AT&T | loss_interference.eps | |
Fei et al. | Accurate and effective inference of network link loss from unicast end-to-end measurements | |
CN112312228B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |