网络流量监控:数据包与Flow,选择哪个最好?

2020-11-03 17:53:45 浏览数 (3)

在监控部署方案上,最困难的一步是选择哪里是必须监控的最佳点,以及观察这些流量的最佳策略是什么。主要的选择基本上是:

  • 端口镜像/网络分路器
  • NetFlow/sFlow流量采集器

端口镜像/网络分路器

 端口镜像(通常称为SPAN端口)和网络分路器已经在之前的文章介绍过了。它们是用于提供数据包访问的两种技术,往往是排除网络问题的最佳方法,因为通常将数据包认为是事情的真相(“数据包永不说谎”)。这意味着我们能够具有“完整的数据包可见性”,因为我们具有L2(镜像)或L1(TAP)的可见性。有多种类型的硬件分路器,其中最复杂的称为网络数据包代理。关于TAP vs. SPAN,这篇文章有详细的介绍。请注意,如果你是在一台你可以访问的计算机上监控流量,你可以通过简单地在这台主机上运行你的监控工具来避免这种技术:只是要注意,你会在服务器上引入一些额外的负载,因此你的网络通信可能会受到你的监控活动的轻微影响。

NetFlow/sFlow采集器

在Flow采集中,我们无法直接访问数据包,有一些小区别。在NetFlow / IPFIX中,是运行在路由器内部的探针根据5元组密钥(协议,IP /port src / dst)将相似的数据包聚集在一起,并计算字节,数据包等指标;从某种程度上来说,NetFlow / IPFIX对流量进行“压缩”(不是字面意思),以产生网络通信的“摘要”。而在sFlow中,运行在网络交换机内部的探针发出的样本包括“数据包样本”,这些样本实质上是在交换机端口上捕获的数据包被剪切为snaplen(通常为128个字节),然后发送到以sFlow数据包格式封装的sFlow收集器。将sFlow与数据包捕获进行比较时,您没有完整的数据包可见性(就数据包长度和查看所有数据包的能力而言,仅是一个样本),但是另一方面,您可以访问其他元数据,例如进行此类流量已验证用户的名称(例如,通过Radius或802.1X)。这是非常重要的信息,在故障排除或安全分析时非常有用。

在Flow收集中,ntopng将向您展示由nProbe收集并通过ZMQ发送到ntopng的流量。这样做的好处是可以监控多个NetFlow / sFlow / IPFIX导出器,并将它们全部合并到一个ntopng实例中。假如可以做的话,对数据包做同样的事情将变得更加复杂。在这种情况下,您需要记住,您只能看到来自发送流量的设备的经过预先过滤和预先汇总的流量:这意味着您不能具有“完整的数据包可见性”,而只能具有其汇总版本。

哪一个选项是最好的?

现在是时候根据您的监控期望来决定要遵循的流量可见性策略了。对于以数据包为导向的人来说,TAP绝对是一个很好的选择。但是也有可能出现混合的情况,即一些网络使用数据包进行监控,而另一些则使用Flow。

物理或虚拟监控工具?

您可能会有疑问?监控流量物理机是否比VM更具优势。IT趋势趋向于虚拟化,但物理上可能会有所帮助,可以在概念证明方案上为您提供帮助。但没有可以遵循的“最佳方案”。虚拟环境使您可以避免可能的硬件问题,但是对于TAP模式方案需要专用的物理NIC,这并非总是可能的。硬件可能会更容易,但是每次都可能有所不同。

技术要求取决于您需要查看和收集的内容,但最低要求应为:

  • 双核Intel CPU
  • 4 Gb的RAM
  • 120 Gb磁盘空间。SATA或SSD取决于您需要验证的流量,但首选SSD。
  • 1个网卡。1个NIC仅用于Flow Collector模式。2个NIC,对于TAP可见性而言。
  • Linux操作系统。ntop为Debian,Ubuntu LTS和CentOS构建预打包软件包。您可以选择自己喜欢的nitro,但是如果您要求,我们建议您使用Ubuntu LTS。

许可(license)

大多数ntop软件都是开源的,对于大多数人而言,它不收取许可费用。但是,即使在ntopng的情况下,我们也提供高级版本,使我们能够继续开发产品。因此,所有组件都是免费的,因此您需要根据预算或所需功能选择正确的部署。ntopng可以在社区模式下运行:这意味着您可以通过TAP接口从电线上捕获呈现给ntopng的所有流量,但是您将只能使用有限的功能。如果选择启用所有功能,则需要简单的ntopng Pro或Enterprise许可证。

否则,如果您打算添加或使用Flow收集器模式,您需要购买nprobe许可证,以允许您获取设备中的所有流并将其呈现给ntopng,最好是授权,以便你可以与其他协议(如SNMP)完全集成。如果您同时尝试了两种方案,则可能会采用ntopng nprobe方案。

0 人点赞