To setup bandwidth throttling on linux, you can use advanced linux routing techniques. Install a package called iproute2, and it should include the "tc" binary command.
Traffic control on linux is done using the tc command. It can setup kernel packet queuing management disciplies, and you have incredible control over how the packets are released to the network. You can also have limited control over incoming packets using an ingress queue.
TBF is causing rsync and scp to report back very low transfer rates. Something with this is not right because Fugu, an SCP client reports accurate transfer rates.
External tc - related links