nDPI 的论文阅读和机制解析

Posted vancasola

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nDPI 的论文阅读和机制解析相关的知识,希望对你有一定的参考价值。

nDPI: Open-Source High-Speed Deep Packet Inspection

Wireless Communications & Mobile Computing Confer 2014

背景

  • 根据端口号来识别协议类型,但大于某个值以后,端口号动态变化
  • http协议会携带一系列其他页面内容,防火墙若根据端口号判断,则其他页面可以通过http的80端口通过防火墙
  • 不仅是为了创造一份报告,而是为了解决安全问题
  • ML的可以测量的任务更少
  • ML只能用于一些被动测量分析,不能用于一些关键的测量任务(流量拥塞)
  • 开源好处:不开源贵,协议拓展受运营商支配,
  • dpi处理包必须比流量监测速率要快,否则会引起丢包(DPI processing must be faster than the
    traffic rate to be monitored as otherwise it would result
    in packet drops)

nDPI需要满足

  • 高可靠性内联应用协议策略控制
  • 子协议的定义
  • 和开源的应用结合。
  • 提取基础的网络流量和关键信息

原有框架

nDPI基于opendpi,opendpi已停止维护

  • 包处理,解析ip和基础端口信息
  • 解析器插件,负责检测协议

不足

  • 数据类型为静态,可辨认协议数存在限制
  • 匹配协议时,若第一个匹配不会返回,而是进行更多的协议匹配,造成额外检测开销
  • 不支持加密协议的检测
  • 多线程、共享全局变量导致不安全性。
  • 很多部分都有问题检测设计,造成额外开销。
  • 协议并未分层,所有类型的流都按照同样的协议顺序检测
  • 没有运行时配置能力
  • 不支对流量的 metadata 解析

nDPI改进机制

  • 支持的协议越多,解析的参数越多,检测的时间越久
  • 在检测开始时一次性将所有协议初始化,无需运行过程的penalty
  • 流只解析一次,若第一次匹配不成功,则保留流的解析信息
  • 针对未解析的流,nDPI先根据传输层协议类型和端口号,来猜测匹配的协议,提升匹配速度
  • 如果存在一个登记好的针对包的端口和协议的解析器,那就优先使用这个。
  • 如果没有协议匹配这个包,那么后面的包也不会被检测。
  • 一旦有协议匹配,那么就停止检测,
  • 每个流需要检测包的数目根据协议来确定,大多数是 2~3 个包,最多8个包。
  • 使用 Aho-Corasick 算法处理字符匹配。
  • 内存使用:内存主要用于 ndpi 的配置和和字符串的自动匹配。无自定义配置的情况下,使用210KB的内存,使用自定义配置时,会上升25KB。
  • 记录每个流的信息,每个流大约占用1KB


以上是关于nDPI 的论文阅读和机制解析的主要内容,如果未能解决你的问题,请参考以下文章

论文阅读|《基于拍卖的运输能力约束的单元零件调度协作机制》

论文阅读Attention Bottlenecks for Multimodal Fusion---多模态融合,音视频分类,注意力机制

CTPN_论文阅读总结

一篇解析论文MapReduce

论文泛读166深度神经网络在阅读理解过程中进化出类人的注意力分布

论文泛读166深度神经网络在阅读理解过程中进化出类人的注意力分布