Hi,
I advice that u use caching using squid. And also share the less load on a different box ( NAT,DNS and DHCP), this will make ur service to be balanced and also with squid u can manage the bandwidth that any client can have access to, using ACL statements, but i advice u go for more effective bandwidth management solutions on linux platform.