Hey,
You should've given your topic a more specific description since there are already a couple of threads where bandwidth monitoring tools are discussed. Here are a few of those topics:
http://mybroadband.co.za/vb/showthread.php?202445-Bandwidth-Monitoring-Tool
http://mybroadband.co.za/vb/showthread.php?234981-Bandwith-monitor
http://mybroadband.co.za/vb/showthread.php?223857-Broadband-Internet-Monitor
http://mybroadband.co.za/vb/showthread.php?220181-Monitorring-bytes-from-wan-only
Some of the "better" ADSL routers have SNMP support, but that won't give you traffic information per MAC address, instead it would only give you the bandwidth usage / bytes per second per network interface.
You could either install client side applications (like NetLimiter 2 Monitor) to check the usage per PC, OR get yourself a cheap MikroTik RB750 (R325 excl VAT) to do the monitoring with.
I haven't done any monitoring per MAC address with the MikroTik though, but its fairly easy to track per IP address. If you think its going to be too risky to just monitor per IP address, then you can use the MikroTik's Hotspot feature and provide each user in the house with login credentials. Then they can use ANY PC/network device either on the LAN or WiFi connection and then their traffic would be logged according to their username. The hotspot feature is awesome, since they don't have to configure their IP address settings at all, or they can leave it on automatically detect too. The hotspot would prompt them with a webpage if they haven't authenticated yet.
The MikroTik routers supports SNMP too, so you can draw usage graphs from them too. In my parents' home, I've installed a RB750 that connects an ADSL router, an SDSL router, a 5.8GHz WUG connection, the neighbours and a 24 port switch where the house's WiFi AP is connected too as well

The MikroTik makes connectivity of other network devices very simple, since you just set the device to automatically detect an IP address and then it has access to all of the MikroTik's WAN connections without any further adjustments...