Contents

Hybrid Deep-Learning-Based Anomaly Detection Scheme for Suspicious Flow Detection in SDN: A Social Multimedia Perspective

Garg S , Kaur K , Kumar N , et al. Hybrid Deep-Learning-Based Anomaly Detection Scheme for Suspicious Flow Detection in SDN: A Social Multimedia Perspective[J]. IEEE Transactions on Multimedia, 2019, 21(3):566-578.

本文利用受限波尔兹曼机进行异常检测。

异常检测模型

controller请求流统计信息,流收集模型收集并抽取特征,基于抽取的物征,利用改进的Restricted Boltzmann Machines进行降维,将结果交给本文提出的SVM算法中进行特征和行为分类,异常检测架构进行报告并通过安全通道发送给controller,controller根据报告进行更改流表和配置。 下图是本框架的方法论:

https://s2.ax1x.com/2019/03/12/AiBh4A.md.png

A 降维:受限玻尔兹曼机(RBM)

设RBM有m个可见单元$v_i:[v_1,\dots,v_m]$和n个隐藏单元$h_j:h=[h_1,\dots,h_n]$。RBM的标准概率分布可表示为: $$P(h,v:\theta)=\frac{1}{Z(\theta)}exp(a^Th+b^Tv+v^TWh) \tag{1}$$ W表示权重,a,b表示偏置值,Z区分函数(也叫归一化因子)$\theta=(W,a,b)$为模型参数。 改进:随机进行Dropout,实现方法:向量$r \in {0,1}^n$p概率将其置1,将$r_j$关联到隐藏层的$h_j$,这时的联合概念分布为: $$P(r,h,v:p,\theta)=P(r;p)\mathcal{P}(h,v|r;\theta) \tag{2}$$ where. $$P(r;p)=\sum_{j=1}^{n}p^{rj}(1-p)^{1-r_j} \tag{3}$$ $$\mathcal{P}=\frac{1}{Z’(\theta,r)}exp(a^Th+b^Tv+v^TWh) \times \sum_{j=1}^{n}g(h_j,r_j) \tag{4}$$ 其中 $$f(x)=\left{ \begin{aligned} h_j=1;if\ r_j = 1\ h_j = 0;if\ r_j=0 \end{aligned} \right. \tag{5} $$

Z是归一化函数。经过Dropout后的RBM中h的激活概率: $$P(h|r,v)=\sum_{j=1}^{n}P(h_j|r,v) \tag{6}$$ $$P(h_j=1|r,v)=\sigma(b_j+\sum_{i=1}^{m}w_{i,j}v_i);if\ r_j = 1 \tag{7}$$ v的激活概率: $$P(v|h)=\sum_{i=1}^{m}P(v_i|h) \tag{8}$$ $$P(v_i=1|h)=\sigma(a_i+\sum_{j=1}^{n}w_{i,j}h_j) \tag{9}$$ 当RBM训练完成后,它将输入向量转换为结果向量并传给SVM来进行更进一步的分类。 使用RBM进行降维算法:

https://s2.ax1x.com/2019/03/13/AkpBh8.png

B. 分类:SVM

  • 本SVM算法采用的核函数: $$k(x_j,x_k’)=w_1exp[\frac{-||x_j-x’_k||^2}{2\sigma ^2}]+w_2(1+x_j^Tx_k’)^d \tag{10}$$ 该核函数结合了高斯核的局部性能和多项式核的合局性能。
  • 随机梯度下降算法:利用该算法最小化损失函数$C(\omega)$ $$\omega_{t+1} \leftarrow \eta_t\Delta_{\omega}C(\omega_t) \tag{11}$$ https://s2.ax1x.com/2019/03/13/AkiwrQ.png
  • 模型参数 使用Chaotic Differential Evolution处罚参数$C$,核函数中的$\sigma$,权重系数$w_1,w_2$进行优化。

数据传送模型

分四个步骤:

  • 数据提取
  • 分类
  • 报告
  • 中继 控制平面利用异常检测模型将流量分为良性和恶性,将结果报告到控制平面,对恶性流量进行丢弃,良性流量进行继续中继。

多对象流路由框架(MoFR)

MoFR提供了一个资源分布的最优化权衡

    1. 延迟最小化目标函数 $$\mathbb{L}(\delta_{k,v}(t))=\left{ \begin{aligned} &(\sum_j \frac{d_{vi,vl}\times \delta_{k,vi}(t)\times \delta_{k,vl}(t)\times a_{i,l}}{\mathbb{P}r(t)})\ &+(\sum_{i \in w}\sum_{j\in|P(i)|}\frac{\mathcal{P}{i,j}(t)}{B{i,j}\times O_{i,j}(t)})\ &+(\sum_{i \in w}\sum_{j \in |P(i)|}\frac{|\mathbb{Q}{ready}(t)|}{B{i,j} \times O_{i,j}(t)})\ &+(\sum_{i \in w}\mathbb{P}i(t)\times \sum_k(t_k^{end-t_k^{start}})\times \delta{k,vi(t)}) \end{aligned} \right.$$

$\delta_{k,v}(t)$是一个二元值,表示switch v是否在第$l$个流中被使用,是则值为1,否则为0。 式中第一部分为传输时延,$d_{vi,vl}$表示第i和第l个switch距离(这里没讲清楚距离怎么计算),$\mathbb{P}r(t)$表示传输时延中位数。 式中第二部分表示转换时延,$\mathcal{P}{i,j}(t)$表示包大小,$O{i,j}(t)$表示占有率 式中第三部分表示查询时延,$|\mathbb{Q}_{ready}(t)|$表示队列中的流数量 式中第四部分表示处理时延,$\mathbb{P}_i(t)$表示由第i个节点的处理时延,$t_k^{start}$表示开始时间

  • 2)带宽最大化函数 $$\mathbb{B}(\delta_{k,v}(t))=(\sum_{i \in w}\sum_{j \in |P(i)|}\sum_k B_{i,j} \times (t_k^{end} - t_k^{start})\times \delta_{k,vi}(t) \times \delta_{k,vl}(t)\times a_{i,l})$$

    1. 耗能最小化目标标函数 $$\mathbb{E}(\delta_{k,v}(t))=(F\times \sum_k(t_k^{end}-t_k^{start})\times \delta_{k,vi}(t))+(D\times \sum_k(t_k^{end}-t_k^{start})\times \delta_{k,vi}(t)\times\delta_{k,vl}(t)\times a_{i,l})$$ 能耗由固定部分(风扇等)和动态部分组成(活动的端口数)F和D表示固定部分和静态部分所占的比例。
    1. MoFR $$min\mathbb{F}(\delta_{k,v}(t))=f(-\mathbb{B}(\delta_{k,i}(t)),\mathbb{L}(\delta_{k,i}(t)),\mathbb{E}(\delta_{k,i}(t)))$$ https://s2.ax1x.com/2019/03/13/Aku41A.png

实现

(这里它并没有说是怎么实现的,只是说这么做,然后就给了个图)

  • 1)实时数据集 该数据集是从Thapar Insitute of Engineering & Technology处获得。 观察异常流量所占比例图4a,比较RBM在使用Dropout和不使用的错误率图4b。

https://s2.ax1x.com/2019/03/13/AkJ41O.png

比较本文提出的方法,DRBM+GDSVM,RBM+GDSVM,RBM+SVM的侦测率图4c,正确率图4d,AUC图4e

https://s2.ax1x.com/2019/03/13/AkJj9f.png

https://s2.ax1x.com/2019/03/13/AkJzjg.png

比较SDN和传统网中延迟图4f,带宽图4g,能耗图4h

https://s2.ax1x.com/2019/03/13/AkYiEn.png

  • 2)标准数据集KDD'99 比较我们的方法和其他人的方法的侦测率(DR),FPR,准确率,精确率,F值。

https://s2.ax1x.com/2019/03/13/AkY14x.md.png

本文中方法对各种攻击的侦测率图5a,误判率图5b,准确率图5c,精确率图5d,F值图5e

https://s2.ax1x.com/2019/03/13/AkN43V.png

https://s2.ax1x.com/2019/03/13/AkNj9x.png

    1. CMU insider threat dataset 对三个场景下与Deep Autoencoder进行性能比较 场景1:uncharacteristic behavior 场景2:steals confidential data 场景3:install keylogger to obtain the password

https://s2.ax1x.com/2019/03/13/AkaisU.png