Network usage monitoring crate

Is there any kind of network monitoring crate out there? With "network monitoring" I mean a crate which can tell me which app on which device sent and received which amount of data over the home network. Usually, there are three Android smartphones and two Windows 7 laptops connected. Are there any crates which can do that? I couldn't find any, but I don't know which keywords I should use to search.

If there isn't a crate already and somebody feels that it would be a useful crate, I would like to team up to develop it. Only snag: my programming skills are limited to small academic toy programs and contributing small and/or obvious bugfixes to a C++/Qt project.

If you want to build something like this, you should look into how Wireshark does it. However it doesn't sound easy.

2 Likes

A crate isn't going to do this by itself, it's going to need to work with a source of data, of which there are many possibilities. For example, your crate would be about counting and keeping statistics of data parsed from:

  • network packet capture of raw frames (like wireshark)
  • netflow data exported by a router or switch
  • firewall logs (of many different kinds and formats)
  • host or network-device interface counters (perhaps polled via SNMP or another transport)

And then there are questions about the level of detail of statistics you want/need, that will affect both the implementation and also the selection of data sources that are viable.

If I make a few assumptions, for example that you're interested in Internet bandwidth consumption (ignoring any internal traffic) in total by each device (user), perhaps in time-series buckets, you should look at what your internet firewall/router can give you - either with its own reporting functionality, or via a feed of data like logs or traffic counters that you can parse and collect.

2 Likes