I'm looking for ways to monitor bandwidth usage for some Linux servers (and a couple of Mac/Windows servers, but if I can only do the Linux servers that will be OK).
I do not control the router that the machines are behind, so I want to install software on each machine that can monitor how much network traffic there is between the machines and the Internet.
i.e. I am not interested in local traffic within the subnet.
I want to know how much traffic there has been per host, incoming and outgoing, per day. Also, I want to be able to see for a particular host how much traffic it has sent to/received from each host on the Internet that it has communicated with (or perhaps top N hosts). It would also be useful to have stats per TCP/UDP port or protocol.
I would like to have the stats available in one place, but if I have to collect them separately and aggregate it manually, I can do that.
I know of various bandwidth monitoring software, but there are so many that I don't know which will be able to provide the above information.