Your profile says you're using windows, so here goes:

You should get a decent firewall (like what slick8790 says) with a good report-generating feature. Try to search here at antionline and you'll see some useful info about what might be of service to your needs.

Also try to to get TaskInfo at http://www.iarsn.com/taskinfo.html . I find it very useful and informative, a lot better than the usual task manager. It will tell you what's hogging the resources and where those files are located (correct me if im wrong, but win taskmanager wont tell you the path of the process file).

If you're on a network, and you're on the server which shares internet on LAN, try using LanScan Network Monitor at http://www.lanscan.com . It will tell you which computer on the network is hogging the bandwidth and on what site they are connected to. I find lanscan very useful in concern to administering correct bandwidth usage on a network.

hope this helped.