Deep Packet Inspection based Application-Aware Traffic Control for Software Defined Networks

Globlecomm2016

  • 核心:细化测量粒度,弥补Openflow不足,提升处理性能、丰富服务的提供;

  • 问题:SDN中存在测量粒度不够细的问题:只测得网络状态而不能获得流量行为,OpenFlow中只能提供少量的信息,不能提供更丰富的测量信息,流分类不够细导致服务质量不够高。

  • 所做工作:为此将DPI引入控制平面,感知应用层信息。将流分类和行为匹配机制引入数据平面(交换机):加速信息交换,建立SDN控制器的交互和互操作。建立数学模型评估框架性能,使用仿真实验验证:实现了应用层的感知,细化了流分类提升处理性能

  • 意义:细化测量粒度,提供更丰富的服务、提升处理性能。。


背景

  • Openflow中缺少应用层的流量感知,在网络拥塞资源有限的场景下、无法满足Qos的要求。引入DPI,提出了一个流量控制方案,包括流分类和流量行为匹配,结合到控制器当中。在中间设备引入流分类和匹配机制,利用一些数学模型评估框架性能,使用仿真时实验验证,可以提升吞吐量并减少端到端的延迟。
  • sdn把网络看成设备的集合,而不是整体资源。流量测量和控制不仅依赖于网络状态,还包括流量行为。在网络拥塞、资源有限的场景下,无法满足Qos的要求。提出一个流量控制方案,网络状态和流量行为都能互助利用。引入了DPI,包分类和行为匹配。基于中间设备的pub/sub被设计出来,分析网络吞吐量和延迟。仿真结果显示,这套设计方案可以提升吞吐量并且减少端到端的延迟。
  • SDN打破了传统OSI的架构,南向API,Openflow定义了安全信道连接数据平面和控制平面,流水线加速包转发。感知特定特定设备、自动探测控制,识别了越多的流量,就能创建更细粒度的流量控制规则。

DPI

  • IDS入侵检测系统、 IPS入侵防御系统
  • 捕获包分析、针对不同应用流量实时分类
  • 如今用于流量分类、部署内部网络的IDS和IPS
  • SDN通过降低DCN的TCP senders的发送速率,帮助拥塞控制
  • SDN的流水线和中心控制促使流量控制更加有效,提升延迟、流量抖动、吞吐量、稳定性、可扩展性、自动化。

存在问题:

  • 现有的OpenFLow只能匹配1~4层的OSI的信息OpenFlow数据平面只包括极少的历史信息,比如流表生成时只考虑源于TCAM中的三元信息、记录包数等等,不包括源目的IP或是端口号等信息,粒度不够细,无法满足需求。如果粒度足够细,创造更细的流量转发规则,提供更多服务。
  • 资源限制下,多路转发在一些通信连接下不可用。

实现困难

  • 难以把应用层特征映射到流表。
  • 在数据平面实现应用层感知、降低性能

研究趋势

SDN的应用感知能力、差异化服务提供。但存在:

  • 难以映射应用层信息特征到流表
  • 当拥塞时,由于每个包的匹配特征,实现数据平面应用感知无法达到Qos的要求

解决方法:

  • 用思维导图的方法分析应用层的包的内容,获取流量特征,从相关特征上识别他们的行为,最后从不同的行为上开发差异化的服务。
  • 应用感知流量控制方案,包括流量行为和网络状态。
  • 将DPI引入控制平面、拓展流表结构。
  • 通过流量行为实现流量分类和匹配部署到交换机、
  • 将DPI处理结果独立于控制器存放在另一个地方。

阅读Deep Packet Inspection based Application-Aware Traffic Control for Software Defined Networks的更多相关文章

  1. DPI (Deep Packet Inspection) 深度包检测技术

    详解DPI与网络回溯分析技术 随着网络通讯技术进步与发展,网络通讯已跨入大数据时代,如何监控各类业务系统的通讯数据在大数据流量中传输质量,以及针对海量的网络通讯数据的范畴中存在少量的恶意流量的检测,避 ...

  2. [转]Deep Reinforcement Learning Based Trading Application at JP Morgan Chase

    Deep Reinforcement Learning Based Trading Application at JP Morgan Chase https://medium.com/@ranko.m ...

  3. Paper Read: Robust Deep Multi-modal Learning Based on Gated Information Fusion Network

    Robust Deep Multi-modal Learning Based on Gated Information Fusion Network 2018-07-27 14:25:26 Paper ...

  4. 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 ...

  5. the Linux Kernel: Traffic Control, Shaping and QoS

    −Table of Contents Journey to the Center of the Linux Kernel: Traffic Control, Shaping and QoS 1 Int ...

  6. linux下使用tc(Traffic Control) 流量控制命令模拟网络延迟和丢包

    目录 TC案例 TC常用命令 TC安装 TC原理介绍 TC规则 TC操作原理 TC命名规则 TC单位 TC命令 TC案例 如何使用tc模拟网络延迟和丢包 修改网络延时:  sudo tc qdisc  ...

  7. Reading Software Defined Traffic Measurement with OpenSketch

    NSDI '13 概要 OpenSketch是一个通用的.抽象的测量框架, 与SDN 网络架构类似, OpenSketch 提出将测量控制层和数据层解耦. 数据层运行设为可动态配置的3阶段流水线, 首 ...

  8. Linux TC(Traffic Control)框架原理解析

    近日的工作多多少少和Linux的流控有点关系.自打几年前知道有TC这么一个玩意儿而且多多少少理解了它的原理之后,我就没有再动过它,由于我不喜欢TC命令行,实在是太繁琐了.iptables命令行也比較繁 ...

  9. A Node Influence Based Label Propagation Algorithm for Community detection in networks 文章算法实现的疑问

    这是我最近看到的一篇论文,思路还是很清晰的,就是改进的LPA算法.改进的地方在两个方面: (1)结合K-shell算法计算量了节点重重要度NI(node importance),标签更新顺序则按照NI ...

随机推荐

  1. C#学习笔记-继承基本知识

    namespace Inheritance { class Program { static void Main(string[] args) { Dog dog = new Dog(); dog.A ...

  2. C# Time Class using MySQL

    http://www.csharphelp.com/2007/09/c-time-class/ /* datatypes. Time class is writen in C# and .NET 2. ...

  3. 服务器学习笔记之servlet

    初衷 想学习下服务器这边的知识,制定了一条学习路线:java8--->servlet--->springMvc--->springBoot--->springCloud.在此当 ...

  4. Spring Boot 开发入门

    准备工作 我们将使用Java开发一个简单的"Hello World" web应用,项目采用Maven进行构建 在开始前,打开终端检查下安装的Java和Maven版本是否可用: C: ...

  5. win10 程序crash后弹出 XXX已停止工作

    需要attach调试器的时候弹出的"XXX已停止工作"很方便, 现在win10默认禁用掉了. 恢复的方法是: win+R 输入gpedit.msc回车 管理模板 -> Win ...

  6. SSM框架——实现分页和搜索分页

    登录|注册     在路上 在路上,要懂得积累:在路上,要学会放下:我在路上!Stay hungry,Stay foolish.       目录视图 摘要视图 订阅 [公告]博客系统优化升级     ...

  7. JS实现手机摇一摇功能

    //运动事件监听 if (window.DeviceMotionEvent) { window.addEventListener('devicemotion',deviceMotionHandler, ...

  8. 乘风破浪:LeetCode真题_020_Valid Parentheses

    乘风破浪:LeetCode真题_020_Valid Parentheses 一.前言 下面开始堆栈方面的问题了,堆栈的操作基本上有压栈,出栈,判断栈空等等,虽然很简单,但是非常有意义. 二.Valid ...

  9. ajax post data 获取不到数据

    ajax post  data  获取不到数据,注意 content-type的设置 .post/get关于 jQuery data 传递数据.网上各种获取不到数据,乱码之类的.好吧今天我也遇到了,网 ...

  10. docker 17.09.0-ce 启动更换网络地址

    一.环境准备 环境1 台虚拟机,系统为centos7 二.17.09.0-ce 安装 卸载安装的所有Docker组件 在 Docker17.03.0-ce 版本中,与在 Docker 1.12 中引入 ...