I'm no expert on the subject, but I've come across a couple of projects that might interest you:
Bandwidth Monitor NG is a small and simple console-based live bandwidth monitor; doesn't look like it graphs.
Linux Bandwidth Arbitrator; this looks like what you are looking for. It's GPL, with commercial support.