I would like to know what application is best for measuring bandwidth usage in large datacenters.

Our company is in the process of setting up a DC which will have around 1000 physical servers. We want to measure the outgoing and incoming traffic from the DC. We don't need to keep track of internal network activity. Something that tells us how much bandwidth each host has used per minute/hour/day/month.

I have used vnstat in the past, but it doesn't show you per-host usage.

Is it possible to use any Nagios plugin to monitor firewalls/routers using SNMP and generate reports?

I haven't worked on such large networks so am a bit lost here.


You can use Cacti to graph switch port traffic with SNMP.

  • Can Cacti be configured to display how much bandwidth each host is using?
    – Debianuser
    Dec 14 '11 at 14:01
  • 1
    It can monitor individual switch ports. Or anything you can get with SNMP.
    – Stone
    Dec 14 '11 at 14:17
  • 1
    So to directly answer his question: No, this will only give you aggregate interface metrics and will reach no further than that. If you want details past layer 3 packets in packets out you need a more advanced tool. Dec 14 '11 at 18:35

You can use Netflow on your switches or routers to mirror or sample traffic to a collector which can give you detailed information on what hosts and protocols are being utilized. SNMP based collections will only give you per interface performance statistics, not detailed information. Some firewalls can also give you detailed information, but that would only be at the edge. I recommend NetFlow.

  • +1. Netflow is probably the best solution.
    – joeqwerty
    Dec 14 '11 at 14:13
  • Is there an open source tool that I can use to parse data collected by NetFlow? Or someway to feed the data to a MySQL database?
    – Debianuser
    Dec 14 '11 at 15:03
  • @debianuser JKFlow (users.telenet.be/jurgen.kobierczynski/jkflow/JKFlow.html) is the canonical netflow parser-grapher-thingy. You will need a flow collector daemon (cflowd / flow-tools) and a metric buttload of perl modules. Storing this data in a database is a Bad Idea (netflow data for even a medium sized site can be on the order of gigabytes per hour - rrd files are the usual way of handling it.)
    – voretaq7
    Dec 14 '11 at 18:01
  • Two downvotes 3 years later? Really? :D May 11 '14 at 23:56

Answering my own question after all these years:

Nagios Network Analyzer does this well(using netflow).



I agree with Stone and SpacemanSpiff. Cacti is very nice for an overview of what is going on, on a per interface basis. If you want a more detailed output you can use Netflow on the switches and then send the data to Ntop. Ntop is also free and it does a very good job of showing you a breakdown per IP and also shows you specific information about the type of traffic that is going on.


OpenMMS (https://www.opennms.org/en) is a great solution for monitoring everything as well as digging down into the source of your devices.

It uses simple SNMP and other services and provides a great graphical interface.

Also check out this link for it's installation layout as there are many platforms you can run on it as well: https://www.opennms.org/en/install

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.