I use a Debian Linux based PC as a router. Now, I want to implement bandwidth management using quotas. By that I mean when a user has reached their quota limit, their bandwidth will be reduced.
I've searched for it online, but I haven't found any information on how to implement this.

You may be able to do this with tc. I'd imagine its not the best solution though. Essentially you'd classify the traffic into groups then check how much ends up in each bucket, altering the bandwidth of the group when the limit is reached.

Another method might involve iptables, making a table for each user and then counting how much goes through each table.