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

LD Sketch

  • 应用:网络流中的
    • 异常检测
    • heavy hitters检测
    • heavy changers检测
  • 优点:准确度、可扩展性
  • 特点:
    • 利用基于计数和sketch的技术
    • 并行式架构(合并分布的流)
    • 分为本地检测和分布检测
    • 由两种启发式增强方法
  • [1]

SeqHash

  • 应用:
    • 入侵防御
    • 大流检测
    • heavy hitters/changers 恢复
  • 优点:快速精确,资源开销小(仅略大于理论值)
  • [2]

What’s New

在流量之间找到绝对的、相对的和可变的差异。

  • 利用sketch来记录流量
  • 优点:
    • 迅速
    • 空间开销小
  • [3]

reversible sketch

流量变化检测,异常检测 并不能保存流量的关键信息(IP etc.),难以恢复异常流量的关。推断流的关键信息

  • 特点:
    • 以很小的内存开销,记录包的信息,
    • 确定变化(异常)的流,以及流的关键信息
  • [6]

Count-Sketch和Count-min sketch

  • 有相似性能
  • 应用:高速流的统计
  • 优点;
    • 空间开销小
    • 速度较快
  • [7]

Diamond Sketch: Accurate Per-flow Measurement

for Real IP Streams

  • 针对skewed IP流,sketch的测量空间效率低,Diamond Sketch为每个流动态分配sketch数。
  • 优点:提升了测量的精确度并保持一定的速度。
  • [8]

Finding top-k elements in data streams

  • 应用:检测数据流中最常见元素
  • 优点:
    • 空间开销小
    • 速度快
  • [9]

附录

Bloom filter

  • Bloom Filter(BF)是一种空间效率很高的随机数据结构,它利用位数组很简洁地表示一个集合
  • 历史:Bloom-Filter,即布隆过滤器,1970年由Bloom中提出。
  • 应用:用于检索一个元素是否在一个集合中。
  • 特点:Bloom Filter有可能会出现错误判断,但不会漏掉判断。
  • 适用场景:Bloom Filter”不适合那些“零错误的应用场合。而在能容忍低错误率的应用场合下,Bloom Filter比其他常见的算法(如hash,折半查找)极大节省了空间。
  • 优点:是空间效率和查询时间都远远超过一般的算法,
  • 缺点:是有一定的误识别率和删除困难。
  • 更多详细信息,可见[10][11]

Quotient Filter and Cascade Filter

  • Quitient Filter 和Cascade Filter算法由Bender等人设计,是一个空间效率高的概率性数据结构
  • 应用:用于检索一个元素是否在一个集合中。
  • 优点:对插入、查询、删除操作由高吞吐量,比Bloom Filter高了两个数量级。
  • 更多详情见[12][13]

总结

  • 基于sketch的方法以计数/统计为主,常用于大流/异常流量检测,也可以根据测量结果恢复出包的关键信息。
  • 主要优点:
    • 节省空间资源
    • 速度较快
  • 主要缺点:
    • 不精确
    • 计算开销较大

参考文献:
[1] A hybrid local and distributed sketching design for accurate and scalable heavy key detection in network data streams
[2] Sequential hashing: A flexible approach for unveiling significant patterns in high speed networks
[3] What’s New: Finding Significant Differences in Network Data Streams
[6] Reversible Sketches: Enabling Monitoring and Analysis Over High-Speed Data Streams
[7] An improved data stream summary: the count-min sketch and its applications
[8] Diamond Sketch: Accurate Per-flow Measurement
[9] Finding top-k elements in data streams
[10] https://www.cnblogs.com/zhxshseu/p/5289871.html
[11] https://en.wikipedia.org/wiki/Bloom_filter
[12] https://en.wikipedia.org/wiki/Quotient_filter
[13] Don’t Thrash: How to Cache your Hash on Flash

posted @ 2018-10-01 22:38  范加索尔拉  阅读(1996)  评论(2编辑  收藏  举报