I am managing a network with a Linux server (CentOS 5.4) and Windows XP Clients. Recently I have become concerned about network performance and would like to begin monitoring it. Is it possible to monitor network traffic in order to find ways to optimize traffic? For example, there are some users who stream internet radio to their machines. I would like to find out if it's eating up enough bandwidth to require that they stop. Another possibility would be for me to see if performance is slowed by large file transfers between a cleint and the server. It would also be helpful to have some sort of reporting that would allow me to see peak load times in order to better schedule network maintenance tasks. Are there any utilities available that would help me accomplish this?
You can use a variety of approaches. Cacti gives you an easy way of finding bandwidth used on a per-switchport basis. This translates directly into "how much traffic to/from a given workstation", but doesn't necessarily translate into "uses a lot of WAN traffic".
If you have a router that can export netflow data, you can use that to specifically tie traffic to workstations (may need to cross-correlate with DHCP logs).