概要

  • 在sdn下,控制平面基于网络测量的的数据控制网络,而细粒度的管理得益于细粒度的测量数据。针对sdn环境下的细粒度测量(识别具体应用程序),可以实现对细粒度的流量管控。
  • 设计了识别系统SBAR,对数据流进行测量,识别出具体应用程序并得到它们的网络数据。针对流分类,SBAR以应用程序协议为参照,使用了机器学习的算法。 针对web和加密流量,使用深度包检测检测包的负载以识别应用程序。同时SBAR利用了OpenFlow提供的测量数据识别应用,交换机利用南向接口向控制器传输数据。最后使用GUI对得到的数据进行整合处理得到全网测量数据。经过验证,SBAR检测的准确率可以达到90%以上(由于使用DPI和ML可能有较大的资源开销和时延)。

Background

  • In the Software-Defined Networking (SDN) paradigm, it is essential to perform comprehensive traffic monitoring in order to provide the control plane with an accurate view of the network state.
  • This enables to perform such an effective fine-grained network management
    with different purposes (e.g., traffic engineering, security).

Related Work

  • NetFlow/IPFIX:There are a plenty of tools based on Netflow that harness the flow-level measurement.
  • Flows are often labeled (e.g., by protocol)
    using port-based classification techniques which is gradually obsoleted beacause it is quite common to find very diverse applications operating over
    the same application protocols(无法从端口号分辨出具体的应用程序)
  • QoE:the QoE perceived by end-users significantly depends on the type of application and the QoS level provided by the network (e.g., bandwidth, delay).(QoE感知取决于应用程序类型以及QoS级别)
  • Deep Packet Inspection (DPI)
    typically achieves very accurate traffic classification by inspecting the packet payloads. However, applying DPI over all the packets traversing a network is often too resource consuming (根据负载分类,资源开销过大)
  • Machine Learning (ML) classifiers were proposed with the aim of alleviating the
    processing burden.Use **features* up to the transport layer to classify the traffic, useless when applied to distinguish among different applications generating traffic over the same protocol(根据特征分类,无法从相同协议分辨出不同程序)

Solution

  • We present SBAR, a monitoring system compliant with OpenFlow that provides flow-level measurement
  • Classify the traffic at two different levels:In the Software-Defined Networking (SDN) paradigm, it is essential to perform comprehensive traffic monitoring in order to provide the control plane with an accurate view of the network state. This
    enables to perform such an effective fine-grained network management with different purposes (e.g., traffic engineering, security).
  • (i) every monitored flow is classified by application protocol,
  • (ii) for web and encrypted traffic, we apply specific DPI techniques to identify the applications (端口号相同要通过负载分辨出具体的应用程序)
    generating each flow

  • Reduce the processing overhead in the controller(s) and the memory consumption in switches to maintain the measurements

Implement

Openflow

  • Leverage the particularities of OpenFlow networks to efficiently implement a combination of techniques based on ML and DPI to accurately classify the traffic in the controller.
  • Leverage the support of OpenFlow to maintain the flow measurements (# of
    packets and bytes, and duration) in the flow tables of the switches
  • OpenFlow provides an interface that permits to report the measurements to the controller(s) when some predefined timeouts (idle and hard) expire
  • Make use of ultiple tables of OpenFlow
    to decouple the operation of this module from other modules executing
    different network tasks (e.g., forwarding) in the controller.

Others

  • Flow sampling using only native features of OpenFlow, which enables to address
    common scalability issues in OpenFlow-based networks.
  1. Per-flow classification by application protocols (e.g., SMTP, SSH) using a ML model
  2. For web and encrypted flows, it applies specific DPI techniques [1, 2] to identify the applications (e.g., Netflix, Facebook) generating traffic.
  • 通过给控制器指定规则,只提取前几个HTTP等协议的包头信息,然后根据某种算法推断出对应的应用程序,节省了开销
  • GUI用于处理SBAR得到的flow-level reports infer high-level traffic
    statistics

Advantages

the classification accuracy acheives 90% or higher.

Disadvantages

Because of the DPI and ML, the resource overhead and latency probably are high(I guess)

Reading SBAR SDN flow-Based monitoring and Application Recognition的更多相关文章

  1. 精读 SBAR SDN flow-Based monitoring and Application Recognition

    目录 架构 测量模块 分类模块 具体实现 实验:最后接入巴塞罗那的校园网流量测试: SBAR: SDN flow-Based monitoring and Application Recognitio ...

  2. Risk Adaptive Information Flow Based Access Control

    Systems and methods are provided to manage risk associated with access to information within a given ...

  3. Paper-[acmi 2015]Image based Static Facial Expression Recognition with Multiple Deep Network Learning

    [acmi 2015]Image based Static Facial Expression Recognition with Multiple Deep Network Learning ABST ...

  4. [Flow] Declare types for application

    In Flow, you can make global declarion about types. Run: flow init It will generate .flowconfig file ...

  5. Paper reading: High-Fidelity Pose and Expression Normalization for Face Recognition in the Wild(HPEN)

    1. Introduction 人脸识别受到各种因素影响,其中最重要的两个影响是 pose 和 expression, 这两个因素会对 intra-person 变化产生极大的影响, 有时候甚至会超过 ...

  6. 3.3 Execution Flow of a DDD Based Application 基于DDD的应用程序执行流程

    3.3 Execution Flow of a DDD Based Application 基于DDD的应用程序执行流程 The figure below shows a typical reques ...

  7. Monitoring and Tuning the Linux Networking Stack: Receiving Data

    http://blog.packagecloud.io/eng/2016/06/22/monitoring-tuning-linux-networking-stack-receiving-data/ ...

  8. Intel® Threading Building Blocks (Intel® TBB) Developer Guide 中文 Parallelizing Data Flow and Dependence Graphs并行化data flow和依赖图

    https://www.threadingbuildingblocks.org/docs/help/index.htm Parallelizing Data Flow and Dependency G ...

  9. [Windows Azure] Adding Sign-On to Your Web Application Using Windows Azure AD

    Adding Sign-On to Your Web Application Using Windows Azure AD 14 out of 19 rated this helpful - Rate ...

随机推荐

  1. C++ STL:vector实现

    练习一发,主要是使用placement new在原始内存上创建对象.半路md面试电话来了,赶紧存档,看Java大法 #include <iostream> #include <cst ...

  2. Typescript中一些不理解的概念解释(泛型、断言、解构、枚举)

    新的项目想使用typescript,因此又对其概念及使用过一遍,本文主要记录下对之前一些概念不太理解的地方. 1.泛型 定义: 在定义函数.接口或者类的时候,不预先指定具体的类型,而是在使用的时候再指 ...

  3. iView定制主题报错问题的解决方法

    按照iView官网来是这样的: 1. 在main.js当前目录下新建themes文件夹,里面新建一个叫blue.less的文件 2. 在mian.js里面引入blue.less文件 3. blue.l ...

  4. SPARK - Execute Framework

    Spark函数详解系列之RDD基本转换 https://www.cnblogs.com/MOBIN/p/5373256.html The  RDD provides low level API for ...

  5. os 模块 模块与包的初始

    os模块是与操作系统交互的模块之前我们也用过os模块就是更改文件的名字的时候 我们如果用os求求文件夹是不行的  可以求文件  因为文件夹在python中最大就是4090个字节 所以你必须求出文件夹内 ...

  6. TMG 2010 为HTTPS协议添加非标准端口(443)

    1.添加加密端口时,编辑脚本addsslports.vbs  addsslports.vbs 脚本内容如下: Dim root Dim tpRanges Dim newRange Set root = ...

  7. 沉淀再出发:dubbo的基本原理和应用实例

    沉淀再出发:dubbo的基本原理和应用实例 一.前言 阿里开发的dubbo作为服务治理的工具,在分布式开发中有着重要的意义,这里我们主要专注于dubbo的架构,基本原理以及在Windows下面开发出来 ...

  8. 月报 提取/保存 到OneDrive. 并发送反馈邮件

  9. Genymotion安卓模拟器和VirtualBox虚拟机安装、配置、测试(win7_64bit)

    1.概述 VirtualBox是一个优秀的虚拟机软件,它可以在电脑上提供另一个操作系统的运行环境,使多个系统同时运行.VirtualBox支持的操作系统包括Windows.Mac OS X.Linux ...

  10. Java集合框架中的快速失败(fail—fast)机制

      fail-fast机制,即快速失败机制,是java集合框架中的一种错误检测机制.多线程下用迭代器遍历一个集合对象时,如果遍历过程中对集合对象的内容进行了修改(增加.删除),则会抛出Concurre ...