limit the bandwidth per client machine

OS: SLES 11 SP3
Server role / Services: HTTP Server(apache), SAMBA, IMAP

My customer is running SAMBA, Apache and imap servers on different SLES 11 SP 3. Customer wants that if any one connects the server(imap, http, or samba) that user wont get more then 1 Mbps.i.e customer wants to cap the bandwidth per client machine to 1 Mbps. is it possible, how ?

Please help me done the above.

Regards,

via iptables and tc, although I haven’t done it myself.