概要

  • 在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. 并发模型之Master-Worker设计模式

    一.Master-Worker设计模式 Master-Worker模式是常用的并行设计模式.它的核心思想是,系统有两个进程协议工作:Master进程和Worker进程.Master进程负责接收和分配任 ...

  2. BZOJ P1188 HNOI2007 分裂游戏——solution

    题目描述: (<--这个) 组合游戏,——把每个石头看做一个游戏, Multi_game——消去i上的石子后,,k上的游戏又多了一个: 于是就套用multi_game的模型即可 求解SG函数时, ...

  3. CSS选择器:#id和.class中间有空格和无空格的区别

    相信大家都知道 .class1 .class2 和 .class1.class2 是两种不同的选择规则,但具体怎样不同呢? 首先中间有空格的情况:是选择到.class1类下的.class2类子节点,即 ...

  4. Angular进阶教程一

    6 AngularJS进阶 6.1数据绑定原理研究 Angular用户都想知道数据绑定是怎么实现的.你可能会看到各种各样的词汇:$watch.$apply.$digest.dirty-checking ...

  5. 远景GIS云产品规划

    远景GIS云平台在初期有过产品设计,随着研发工作的进行以及对GIS云的认知更进行一步,最近重新梳理了平台的产品规划,使以后的开发不至于走偏方向. GIS云平台的研发也是摸着石头过河,免不了有考虑不到的 ...

  6. Java学习笔记(1)----规则集和线性表性能比较

    为了比较 HashSet,LinkedHashSet,TreeSet,ArrayList,LinkedList 的性能,使用如下代码来测试它们加入并删除500000个数据的时间: package sr ...

  7. 安装使用jupyter

    介绍 jupyter是IPython剥离出来成为一个语言无关的独立软件包. jupyter已经支持50多种语言的内核,包括Lisp.R.F#.Perl.Ruby.Scala等.事实上即使IPython ...

  8. numpy数组的创建

    创建数组 创建ndarray 创建数组最简单的方法就是使用array函数.它接收一切序列型的对象(包括其他数组),然后产生一个新的含有传入数据的Numpy数组. array函数创建数组 import ...

  9. Cloudera Manager5安装总结遇到问题及解决办法 CDH 5.8 on CentOS 7

    问题导读:1.Cloudera Manager在线安装你认为有什么优点和缺点?2.Cloudera Manager安装过程中遇到,你认为该如何解决?3.在线安装addr.arpa domain nam ...

  10. 平台支持的从经典部署模型到 Azure Resource Manager 的 IaaS 资源迁移

    本文介绍如何才能将基础结构即服务 (IaaS) 资源从经典部署模型迁移到 Resource Manager 部署模型. 用户可以阅读有关 Azure Resource Manager 功能和优点的更多 ...