You will want to learn more about Linux routing. It has the depth that you need
but you will need to learn more about filtering classification and queues.
The Linux Advanced Routing and traffic control (lartc) is a little dated but
get you all the detail to start seeing what you want and also bandwidth control.
http://lartc.org/lartc.html
If you want to do this without switching distro then here is a link for tools that should
be able to be installed via apt-get.
http://www.ubuntugeek.com/bandwidth-...for-linux.html
Here is a link for a tutorial on installing and using ntop which is very close.
http://www.cyberciti.biz/faq/debian-...ring-software/
Also if you want to switch distros then I would recommend custom distros that are specific for routers
One of those is
http://www.untangle.com/