介绍
Ntopng与nProbe结合使用可用于收集NetFlow。这里详细描述了它们在NetFlow收集的使用。
在这篇文章中,我们测量了nProbe和ntpng一起用来收集、分析和转储NetFlow数据时的性能。其目的是提供有用的性能数据,以了解在不损失数据的情况下可以处理NetFlow的最大速率。
在给出实际数字之前,值得简单讨论一下将要使用的最相关的测量单位,即每秒的流量数–简称fps。NetFlow本身是一个旨在输出通信流的协议。它在UDP数据报中携带流,并且每个UDP数据报携带多个流。出于这个原因,当涉及到分析ntpng和nProbe在处理NetFlow时的性能时,自然要选择每单位时间的流数量。事实上,在给出性能数据时,我们将使用fps来量化分析和写入磁盘的流的数量。
了解您的NetFlow实际占多少fps,对于理解我们给出的数字以及了解ntopng和nProbe在您的网络中是否表现得足够好也是非常重要的。通常,几Mbps的NetFlow能够每秒传输数千个流。如果您不知道您的NetFlow所占的每秒流量是多少,您可以认为10 Mbps的NetFlow v9大约可以传输12,000 fps。请注意,这只是一个大概的数字,因为流大小取决于v9和IPFIX的流模板。
性能数据
举例
为了举一个真实的例子来帮助你理解上面的数字,让我们考虑一个案例,你想以85Mbps的速度收集NetFlow,也就是说,大约100Kfps。根据上表,要以100Kfps的速度收集,我们至少需要3个接口。为了安全起见,让我们建立一个有四个接口的ntpng实例–使用-i view:all
的视图将流量聚合在一起。
./ntopng -i tcp://*:5556c -i tcp://*:5557c -i tcp://*:5558c -i tcp://*:5559c -iview:all -F"nindex"
假设NetFlow从2056
端口到达,并且ntpng在192.168.2.225
主机上运行,我们可以配置nProbe在上述四个接口上收集NetFlow和负载平衡流量,如下所示:
./nprobe -i none -n none --collector-port 2056 -b 1 -T "@NTOPNG@" --zmq tcp://192.168.2.225:5556 --zmq tcp://192.168.2.225:5557 --zmq tcp://192.168.2.225:5558 --zmq tcp://192.168.2.225:5559 --zmq-probe-mode --collector-passthrough