Right now the Linux PC gets a full pull from you DSL modem, which is probably bringing in 160Kilobytes per second. Don't get fooled by ISP math, to make things bigger they call it 1.5 Megabit / sec, divide that by 8 and you've got reality. The Linux PC is connected to other machines, probably by 100BaseT ethernet, 10 Megabytes a second, and the wireless clients can pull at 5.9 Megabytes per second (on a good day, but g never really gets 54, so probably more like 3.3megs)... no matter what, the bottleneck is the DSL line.
Did you want to do quality of service queing so that if machineB wants to download something, and MachineA is using all of the pipe, then MachineA's bandwidth gets throttled?
That's quality of Service queing, or QOS, its built into IPtables... google for QOS and you'll choke, warning though a lot of those pages will tell you "compile in blah blah blah to your kernel", and its Debian's default build right? You've got that.