我将为大学的最后一年项目开发一个网络监控系统。在开发之前,我已经对网络监控系统的工作方式进行了一些研究。据我了解,网络监控系统使用ICMP数据包(Ping)来确保设备在网络中“活着”。这是我遇到的问题:
如果网络监控系统需要ping网络中的每一台设备,那么网络流量会变得很重,这种方法是不是很好用?或者还有其他可能的选择吗?
网络监控系统提供网络流量的数据集,是否可以为网络监控系统获取所有连接的流量级别?假设有3台PC,PC X,PC Y和PC Z.PC X连接到PC Y,PC Y连接到两台PC,PC X用于监控网络,当PC Y发送数据包到PC Z时,可能PC X获取PC Y正在向PC Z发送数据包的信息吗?
由于
答案 0 :(得分:1)
与正常网络流量相比,监控的网络流量负载可忽略不计。通常情况下,您可以在每分钟或每5分钟轮询一次设备,只需一个数据包即可获得一个数据包。
网络流量监控通常使用SNMP来轮询每个接口的ifInOctets和ifOutOctets计数器。这将允许您基于每个接口计算总流量和传输速率(带宽利用率)。但是,它不允许您按流量类型或目的地分解。
我建议你看一下像MRTG这样的软件,它可以非常整齐地进行这种监控。
如果您想要监控整个网络的运行状况,而不仅仅是监控链路上的流量,您可能需要考虑从设备捕获SNMP陷阱以了解问题,并监控其他事项,例如可达性(通过ping数据包) ),路由(检测振荡路由),甚至检查主机上的服务(如DNS,HTTP,SMTP等)。为此,您可能希望调查Nagios软件及其执行各种测试的检查插件。
答案 1 :(得分:0)
不,网络流量不会变重。您似乎大大低估了网络容量,或者大大高估了ping(或两者)造成的流量。除非您的网络是某种缓慢的古老半双工网络,否则由网络监控服务器定期ping到网络中所有主机所导致的网络负载增加将是微不足道的。我会更担心网络监控服务器上所需的CPU使用率,以便能够处理所有ping并对它们执行有用的操作。
只有在PC上运行专用软件才能获取并将此数据发送到网络监控服务器。 sflow就是一个很好的例子。您是否可以控制PC上可配置的内容?如果是这样,天空是你的极限。如果我们将PC视为黑盒子,除了ping和可能的端口扫描之外,你真的没有那么多。
监控单个主机只是图片的一部分。网络监控系统监控组成网络的路由器和交换机也非常重要。您可以收集的信息量将在很大程度上取决于这些网络设备支持的内容以及您是否有权配置它们。如果启用了SNMP,那将是一个很好的开始。