论文阅读摘记(一)

目录

  • 论文阅读摘记1 论文题目:A Survey of Machine Learning Techniques Applied to Software Defined Networking (SDN):Research Issues and Challenges
  • 摘要
  • 机器学习算法整理与回顾
    • 监督学习
      • k-Nearest Neighbor (k-NN)
      • Decision Tree (DT)
      • Random Forest(RF)
      • Neural Network (NN)
        • 下面将介绍有监督的NN和无监督的NN
      • 无监督学习
        • K-Means
        • Self-Organizing Map (SOM)
      • 半监督学习
      • 强化学习(RL)
        • 深度强化学习
        • RL-Based Game Theory
    • 机器学习在SDN中的运用
      • 流量分类
        • 基于端口的方法
        • 深度包检测(DPI)
        • 基于机器学习(ML)的流量分类
          • Elephant Flow-Aware Traffic Classification
          • Application-Aware Traffic Classification
          • QoS-Aware Traffic Classification
        • 路由优化
          • Supervised Learning-Based Routing Optimization
          • RL-Based Routing Optimization
          • Traffic Prediction

论文阅读摘记1 论文题目:A Survey of Machine Learning Techniques Applied to Software Defined Networking (SDN):Research Issues and Challenges

摘要

  • SDN的功能(例如,逻辑集中控制、网络全局视图、基于软件的流量分析和转发规则的动态更新)使机器学习技术更容易应用。
    • 原因: 主要原因之一是传统网络系统固有的分布式特性,其中每个节点(如路由器或交换机)只能查看和操作系统的一小部分。从仅对整个系统有一个小的局部视图的节点学习执行超出本地域的控制是非常复杂的。 SDN控制器有可以搜集很多网络数据的全局网络视图 ,使得机器学习在应用软件上执行。
  • 文章从流量分类、路由优化、服务质量/经验预测质量、资源管理和安全等方面综述了机器学习算法在SDN领域的应用。

机器学习算法整理与回顾

异构网络基础设施增加了网络的复杂性,对网络资源的有效组织、管理和优化提出了诸多挑战。( 异构网络(Heterogeneous Network)是一种类型的网络,其是由不同制造商生产的计算机,网络设备和系统组成的,大部分情况下运行在不同的协议上支持不同的功能或应用。 ) 机器学习技术以实时和历史网络数据为基础,通过执行数据分析、网络优化和自动提供网络服务,为SDN控制器带来智能。 另外,SDN的可编程性使得机器学习算法做出的最优网络解决方案(如配置和资源分配)并且,可以在网络上实时执行 。
机器学习算法基本上分为四类:监督学习、无监督学习、半监督学习和强化学习

监督学习

  • 监督学习是一种带标签的学习技术。

k-Nearest Neighbor (k-NN)

  • 数据样本的分类是根据未分类样本的k个近邻样本的类别来确定的。 如果k个最近邻中的大多数都属于某一类,则未分类样本将被归为该类。

Decision Tree (DT)

  • 在树中,每个节点代表一个数据的一个特性(属性),所有分支代表导致分类的特性的连接,每个叶节点代表一个类标签。
  • DT具有知识表达直观、实现简单、分类精度高等优点。
  • 种类:ID3, C4.5 and CART

Random Forest(RF)

  • RF由很多决策树组成。 随机森林只选择特征空间的一个子集来构造决策树,用以缓解决策树的过拟合问题,提高决策的准确性。
  • 可用于分类和回归
  • 基本步骤: 1. 将数据样本放在随机森林中的每一决策棵树上 。2. 每棵决策树都给出一个分类结果,这就是树的“投票”。 3. 数据样本将被划分为得票最多的类别。

Neural Network (NN)

  • NN简图如下所示:
    论文阅读摘记(一)_第1张图片
  • 节点使用激活函数实现非线性计算(sigmoid函数和 双曲正切函数 )。 同时节点通过可变的链路权值相互连接。

下面将介绍有监督的NN和无监督的NN

  • Random NN
    随机神经网络可以表示为一个相互连接的神经元网络,神经元之间可以交换尖峰信号。
  • Deep NN
    在输入层和输出层之间具有多个隐藏层的神经网络称为深度神经网络
  • Convolutional NN
    是一种前馈神经网络。
    基本思想: 连续层之间的局部稀疏连接、权值共享和池化。 权值共享是指同一个卷积核中所有神经元的权值参数相同。局部稀疏连接和权值共享可以减少训练参数的数量。池可以在保持特征不变性的同时减少特征的大小。这三个基本思想大大降低了卷积神经网络的训练难度。
  • Recurrent NN
    论文阅读摘记(一)_第2张图片是有状态的网络。在前馈神经网络中,信息从输入层定向传输到输出层。但循环神经网络可以使用内部状态(内存)来处理顺序数据。
  • Support Vector Machine (SVM)
    支持向量机的基本思想是将输入向量映射到高维特征空间。 这种映射是通过应用不同的核函数实现的,如线性、多项式和径向基函数(RBF)。核函数选择是支持向量机的一项重要工作,它直接影响到支持向量机的分类精度。
  • Hidden Markov Models (HMM)
    马尔可夫模型的无记忆性意味着未来状态的条件概率分布只与当前状态的值有关,与之前所有状态无关 。

无监督学习

与监督学习相反,无监督学习算法被给予一组没有标签的输入。无监督学习算法旨在通过根据样本数据之间的相似性将样本数据聚类到不同的组中来找到未标记数据中的模式,结构或知识。无监督学习技术广泛用于聚类和数据聚合。广泛使用的无监督学习算法有:k-means和自组织映射等。

K-Means

Self-Organizing Map (SOM)

  • SOM常被用来进行降维和数据聚类。
  • SOM有两个层,一个输入层和一个映射层。 当使用SOM进行聚类时,映射层中的神经元数目等于期望的簇数目。 每个神经元都有一个权向量。
  • 具体步骤: 1. 初始化映射层中每个神经元的权向量; 2. 从训练数据集中选择一个数据样本 ;3. 使用距离函数计算输入数据样本与所有权向量之间的相似度。权向量相似度最高的神经元称为最佳匹配单元(BMU)。SOM算法基于竞争学习,即每次只有一个BMU。4. 计算BMU的邻域 。5. 在BMU附近的神经元的权重向量(包括BMU本身)被调整到输入数据样本中。 6. 如果算法收敛则停止,否则返回到2。

半监督学习

  • 一种使用标记和未标记数据的学习方法。需要用到半监督学习的原因:a.在现实世界的许多应用中,获取标记数据是昂贵/困难的,而获取大量未标记数据相对容易且便宜。b.在训练过程中有效使用未标记的数据实际上倾向于改善训练模型的性能。为了充分利用未标记的数据,必须在半监督学习中保持假设,例如平滑假设,聚类假设,低密度分离假设和多种假设。
  • 伪标签:是一种简单而有效的半监督学习技术。伪标签的主要思想很简单。首先,使用标记数据来训练模型。然后,使用训练的模型来预测未标记数据的伪标签。最后,将标记数据和新伪标记数据组合以再次训练模型。

强化学习(RL)

RL涉及一个智能体(Agent)、一个状态空间S和一个动作空间S。
论文阅读摘记(一)_第3张图片智能体是一个学习实体,它与环境相互作用,学习最佳行动,以最大化其长期回报。长期奖励是一种累计折现的奖励,既与当前奖励有关,也与未来奖励有关。当应用从RL到SDN,控制器一般作为智能体,网络是环境。 控制器监控网络状态,学习如何做出控制数据转发的决策。
论文阅读摘记(一)_第4张图片具体地说,在每一步t时,智能体监视一个状态st并从操作空间a中选择一个操作at,立即接收一个rt奖励,rt指示状态的好坏 , 并过渡到下一个状态st+1 。在RL中,价值函数用于计算给定状态下的行为的长期回报。最有名的值函数是Q-function, Q-learning使用它来学习存储所有状态-动作对及其长期回报。

深度强化学习

DRL的核心思想是利用深度神经网络强大的函数逼近特性来逼近值函数。

RL-Based Game Theory

可使用自适应学习方法(如RL)与博弈论相结合,实行决策。
综上所述,监督学习算法一般用于分类和回归任务,而非监督学习算法和强化学习算法分别用于聚类和决策任务。

机器学习在SDN中的运用

流量分类

广泛使用的流量分类技术包括基于端口的方法、深度包检测(DPI)和机器学习。

基于端口的方法

基于端口的方法使用TCP和UDP端口号来确定应用程序 。过去,许多应用程序使用著名的端口,如TCP端口HTTP协议。目前,大多数应用程序运行在动态端口上,这使得基于端口的方法不再有效。

深度包检测(DPI)

DPI将流量流的有效负载与预定义的模式进行匹配,以识别流量流所属的应用程序。模式由正则表达式定义。基于DPI的方法通常具有较高的分类精度。然而,它有一些缺点。首先,DPI只能识别模式可用的应用程序。应用程序的指数增长使模式更新变得困难和不切实际。其次,由于需要检查所有的流量流,DPI的计算成本很高。第三,DPI不能对互联网上的加密流量进行分类。

基于机器学习(ML)的流量分类

能够正确识别加密的通信流,并且计算成本较低 。 在SDN网络中,控制器具有全局网络视图,便于流量的收集和分析。因此,基于ML的方法通常在控制器中实现。许多研究从不同的角度对流量进行了分类,如elephant flow-aware, application-aware and QoS-aware traffic classification。

Elephant Flow-Aware Traffic Classification

大象感知流量分类的目的是识别大象流量和老鼠流量。大象的流量是长期的、带宽不足的流量,而老鼠的流量是短命的、延迟不容忍的流量。在数据中心,80%的流量都是鼠标流量。然而,大部分字节是在象流中传送的。为了有效地控制数据中心的流量,需要识别大象流量。 首先,利用机器学习技术对网络边缘的流量进行大象感知分类。然后,集中式SDN控制器可以利用分类结果实现高效的交通流优化算法。 有一种方法是: 在第一阶段,采用头包测量的方法来区分可疑的大象流和小鼠流。第二阶段采用决策树作为检测方法,分析这些可疑的大象流是否为大象流。

Application-Aware Traffic Classification

一个简单的基于 openflow 的 SDN 系统被部署在企业网络中来收集流量数据。在此基础上,应用多种分类器算法对交通流进行分类。

  • 将基于ml的分类器和基于dpi的分类器相结合,提出了多分类器来识别应用。当一个新的流到达时,首先选择基于ml的分类器进行分类。如果基于mlb的分类器结果的可靠性大于阈值,则直接为多分类器的结果。否则,将进行基于dpi的分类。如果基于dpi的分类器不返回“UNKNOW”,则其结果将被选择为MultiClassifier的结果。
  • 侧重于运行UDP协议的应用程序的分类。提出了一种基于行为分类的流量分类引擎。具体来说,使用SVM算法根据Netflow记录(例如接收到的数据包和字节数)对UDP流量进行分类。仿真结果表明,所提出的基于svm的分类引擎分类准确率达90%以上。
  • 电视引擎(The TV Engine)的主要任务有三:(1)从终端设备和接入设备收集、存储和提取流量统计数据和地面真实训练数据。(2)使用决策树分类器识别应用名称,如YouTube、Facebook、Amazon等。(3)采用k-NN分类器识别视频内容、音频文件、视频聊天等流类型。
QoS-Aware Traffic Classification

QoS感知的流量分类旨在识别流量的QoS类别。随着Internet上应用程序的指数级增长,要识别所有的应用程序是困难和不切实际的。然而,应用程序可以根据其QoS要求(如延迟、抖动和丢失率)划分为不同的QoS类。许多不同的应用程序可能属于一个QoS类。

  • QoS感知的流量分类旨在识别流量的QoS类别。

  • 随着Internet上应用程序的指数级增长,要识别所有的应用程序是困难和不切实际的。

  • 然而,应用程序可以根据其QoS要求(如延迟、抖动和丢失率)划分为不同的QoS类。许多不同的应用程序可能属于一个QoS类。

路由优化

  • SPF和启发式算法(如:蚁群优化算法)。
  • 路由优化问题可以看作是一个决策任务。因此,强化学习是一种有效的方法。监督学习算法也被许多研究用来优化路由。
Supervised Learning-Based Routing Optimization
  • 有提出了一种基于监督的结构,如图所示,用于解决动态路由问题。基于ml的元层使用训练数据集,包括启发式算法的输入和相应的输出,以获得实时的启发式结果。
    论文阅读摘记(一)_第5张图片
  • 有文献提出了一种称为NeuRoute的动态路由框架。在NeuRoute中,LSTM用于估计未来的网络流量。然后,以网络状态和估计的网络流量为输入,用启发式算法计算出相应的路由解作为输出,训练神经网络模型。训练后的神经网络模型可以得到实时的启发式结果。
RL-Based Routing Optimization
  • RL算法通常用于解决决策问题。当应用RL算法优化路由时,控制器充当智能体,网络充当环境。状态空间由网络状态和流量状态组成。动作是路由解决方案。奖励是根据网络延迟等优化指标定义的。
  • Francois和Gelenbe研究了支持sdn的数据中心间覆盖网络中的路由优化方案。提出了一种逻辑集中的认知路由引擎(CRE),该引擎利用随机神经网络和RL来寻找地理上分散的数据中心之间的最优覆盖路径。具有CRE的支持sdn的覆盖网络如图所示。该算法基于随机神经网络和RL,即使在高度混沌的环境下也能很好地工作。

论文阅读摘记(一)_第6张图片

  • 有文献侧重于多层分层SDN网络中的路由优化。 一个QoS感知的自适应路由,是一种利用RL算法实现时效性自适应分组转发的方法。根据流量类型和用户应用程序选择具有最大QoS感知奖励的路由路径。
  • 在有些文献中,DRL模型被用来优化路由。DRL模型的目标是在给定流量矩阵的情况下,为所有的源-目标对选择最优的路由路径,以最小化网络延迟。
Traffic Prediction

基于流量预测结果,SDN控制器可以提前做出流量路由决策,并将主动路由策略分发给数据平面内的转发设备,以指导近期的流量路由。 通过这种方式,SDN控制器可以在交通拥堵发生之前采取适当的行动。此外,流量预测可以促进网络资源的主动提供,从而提高QoS(服务质量)。

  • 有文献重点研究了软件定义的移动城域网,研究了动态光路由问题。针对这一问题,提出了一种动态光路由数学算法,包括离线调度、离线规划和在线路由三个阶段。离线调度阶段采用神经网络对网络流量负荷进行预测。预测结果用于根据预测的流量负荷提前计算最优资源分配。然后利用最小代价路径算法进行在线路由决策。
  • 有文献提出了一种优化路径负载的负载均衡策略。四个流程特征(即,传输跳数、传输延迟、丢包率和带宽利用率)由SDN控制器选择,利用神经网络模型预测每条路径的负载。然后选择负载最小的路径作为新流量的传输路径。

你可能感兴趣的:(论文阅读摘记(一))