> > I have a client and server running in two different machine, and
> > wanted to reduce the available bandwidth between these two machines
> > based on applications running in this machine.
> >
> > Is there any free tool available on Linux and windows platforms.
>
> dummynet looks interesting. I haven't tried it tho
> http://info.iet.unipi.it/~luigi/dummynet/
Have you looked into ns-3? http://en.wikipedia.org/wiki/Ns_%28simulator%29
You might also try netem:
http://www.linuxfoundation.org/collaborate/workgroups/networking/netem.
In the past, I've had good luck with NIST Net
(http://snad.ncsl.nist.gov/nistnet/), although I've heard some people have had
their difficulties with it.
Unfortunately, neither netem nor nistnet run on Windows.