概要

  • 硬件实现
  • 基于sketch
  • 功能:采集包数、流长数据,恢复五元组
  • 重点:高速条件下性能较好,节省硬件资源
  • 摘要: 提出一种基于sketch 数据结构的软件定义测量数据平面硬件模型,并在以现场可编程逻辑门阵列(FPGA)为核心的可编程网络设备NetMagic 上进行了实现。利用部署在硬件FPGA 高速SRAM 中的通用sketch 数据结构高效地采集数据平面流量数据,控制平面收集并缓存统计数据,提供给上层的测量应用使用。使用count-min sketch和2-universal散列函数实现了在高速流量下实时的分组处理和流量统计;使用Bloom filter 在控制平面恢复流量的原始5元组信息,解决了sketch数据结构的不可逆问题。使用CERNET 骨干网流量数据对原型系统进行的评估结果表明,该原型系统使用极其有限的硬件资源实现了对较大规模网络流量的实时测量,同时具备较好的测量精度。

背景

抽样技术

  • 通过选择具有代表性的网络流量数据分组子集,以该子集推断总体流量的特征信息,可以直接降低流量数据的处理时间和设备内存的占用空间。

sketch

  • 较小的内存空间
  • 合适的sketch数据结构提高数据流算法的执行效率和估计精度
  • 更新效率极高

sketch缺点

  • IO性能要求要,sketch的数据结构一般需要在硬件的SRAM中实现
  • 需要不同sketch组合实现,不同sketch数据结构、流字段、内存空间不同,这样导致在硬件上实现的sketch数据结构的灵活程度非常有限,很难被不同的流量测量应用所复用。
  • 即算法只对网络流执行一次计算,且散列过程不可逆,因此,sketch无法保留原始流量的分组信息。

sdn测量

  • 将控制平面从网络设备的数据平面中剥离,大大增强了网络管理的简单性和灵活性
  • 数据平面和控制平面相分离同时,意味着网络流量测量的数据平面也和控制平面相分离,这大大增加了网络流量测量的灵活程度
  • 基于流的转发规则也使对网络流量进行更细粒度的测量成为可能
  • 转发至专门的测量服务器,可以将测量应用直接部署在控制器

本文工作

  • 提出了一种软件定义测量数据平面硬件模型,并基于SDN化的FPGA设备NetMagic进行了原型实现和评估。
  • 该数据平面模型部署在FPGA的板载SRAM 中,
  • 实现了在线速下实时地统计流量的分组计数流长计数。控制平面负责收集缓存统计信息,提供给上层测量应用使用,并且能够恢复被测流量的原始5元组信息
  • 本文使用真实的骨干网CERNET流量数据和异常检测算法对该数据平面模型的测量效率和精度进行了评估,结果表明,该原型系统在对较大规模网络流量进行异常检测的测量任务中,使用非常有限的硬件资源达到了较好的测量精度。
  • 使用count-min sketch和2-universal散列函数实现了在高速流量下实时的分组处理和流量统计
  • 使用Bloom filter 在控制平面恢复流量的原始5元组信息,解决了sketch数据结构的不可逆问题。
  • 使用CERNET骨干网流量数据对原型系统进行的评估结果表明,该原型系统使用极其有限的硬件资源实现了对较大规模网络流量的实时测量,同时具备较好的测量精度。

实现

相关工作

阅读基于sketch的软件定义网络测量数据平面硬件模型的更多相关文章

  1. 网络测量中基于Sketch方法的调查

    目录 LD Sketch SeqHash What's New reversible sketch Count-Sketch和Count-min sketch Diamond Sketch: Accu ...

  2. 软件定义网络基础---SDN数据平面

    主要介绍SDN架构和转发模型 一:传统网络设备 (一)传统设备控制平面和数据平面 (二)数据平面的任务 数据平面对数据包的处理,主要通过查询由控制平面所生成的转发信息表来完成 (三)传统网络数据平面数 ...

  3. 《软件定义网络:SDN与OpenFlow解析》

    <软件定义网络:SDN与OpenFlow解析> 基本信息 原书名:SDN: Software Defined Networks 原出版社: O'Reilly Media 作者: (美)Th ...

  4. SDN:软件定义网络

    近期高级网络课的小组任务是在老师给定的范围内自选方向主题研究并做展示报告.我们组选了sdn.原以为这东西会是工业界无人问津的概念化产品,Google了一下却发现事实上sdn挺火的,因为它可能带来的可扩 ...

  5. openflow 和 sdn (软件定义网络) 原理和教程

    OpenFlow概述 OpenFlow简介 通俗的讲,OpenFlow是使用类似于API进程配置网络交换机的协议.OpenFlow的思路很简单,网络设备维护一个FlowTable并且只按照FlowTa ...

  6. SDN前瞻 该来的来了!SDN 软件定义网络

    SDDC:Software Defined Data Center 软件定义数据中心,全数据中心软件化. 在我们接触SDN概念之前,服务器虚拟化,软件虚拟化技术已经是非常成熟了.如果网络能够被虚拟化, ...

  7. SDN前瞻 软件定义网络的一些概念

    SDN的核心:可编程性 SDN的思想:SOA面向服务 面向服务的体系结构(service-oriented architecture SOA) 使网络连接的大量计算机易于合作,以 服务 而不是人工交互 ...

  8. 软工之词频统计器及基于sketch在大数据下的词频统计设计

    目录 摘要 算法关键 红黑树 稳定排序 代码框架 .h文件: .cpp文件 频率统计器的实现 接口设计与实现 接口设计 核心功能词频统计器流程 效果 单元测试 性能分析 性能分析图 问题发现 解决方案 ...

  9. 什么是SDN(软件定义网络)(转载)

    软件定义网络(Software Defined Network, SDN)在InfoWorld于2011年11月公布的将影响未来10年的十项新技术中排名第二.2012年7月,SDN代表厂商Nicira ...

随机推荐

  1. Date()函数的用法

  2. laravel开发之-php artisan命令

    php artisan :所有的命令列表 php artisan make:controller 文件夹名称/控制器名称 :创建控制器的命令以及控制器放置的文件夹 php artisan make:m ...

  3. line-height属性的深入了解

    line-height属性的细节与大多数CSS属性不同,line-height支持属性值设置为无单位的数字.有无单位在子元素继承属性时有微妙的不同. 语法line-height: normal | & ...

  4. 代码整洁之道读书笔记(Ch4-Ch7)

    这几章从注释.程序格式.对象与数据结构的规范以及错误处理四个方面介绍了如何使代码变得简洁易懂.不同于上次摘抄的方法,这一次我会结合第一次个人作业的代码进行分析. 第四章  注释 这一章告诉我们,好的注 ...

  5. mac下安装elasticsearch报错Exception BindTransportException[Failed to bind to [9300-9400]]

    解决办法:进入 config目录下 修改 vim elasticsearch.xml network.host设置为 0.0.0.0 即可外网访问.

  6. linux-软件下载安装

    RPM 安装 rpm -ivh 包全名 :-i(install):安装:-v(verbose):显示详细信息:-h(hash):显示进度: rpm -Uvh 包全名:-U(upgrate):升级 rp ...

  7. python面向对象编程(2)—— 实例属性,类属性,类方法,静态方法

    1  实例属性和类属性 类和实例都是名字空间,类是类属性的名字空间,实例则是实例属性的名字空间. 类属性可通过类或实例来访问.只有通过类名访问时,才能修改类属性的值. 例外的一种情况是,当类属性是一个 ...

  8. 第二课,DOS常用命令及进制转换

    课后的一点小总结还望各位大神点评. 注意事项:1.不要在c盘进行操作. 2.要注意路径. 3.要熟练掌握DOS命令 操作指令(.在本文代表空格,本次以文档为例) 打开DOS:窗口键+r  输入cmd ...

  9. Python学习---ORM查询之基于对象的正向/反向/聚合/分组/Q/F查询

    ORM查询之基于对象的正向查询与反向查询 对象形式的查询 # 正向查询 ret1=models.Book.objects.first() print(ret1.title) print(ret1.pr ...

  10. 对于over-posting的防御

    over-posting简单的说就是指用户通过猜测等手段得知了后端数据Model的属性名称,在数据更新或添加的时候提交了本不应该允许用户更改的数据库字段,并且在服务器端因为没有进行防御而将恶意提交的数 ...