Actually, if you are on Linux, this is not true. You can set the speed; it's just very painful, and you can't do it in perl (except via
system calls). You can use
tc to create a rate-shaping class on the interface you are writing to, along with a filter to force the packets of your socket into that class (if your destination has a fixed addr/port it is not that hard). Look
here for an overview of how
tc works. That said, I agree with
Eliya that more definition of why this constraint is necessary to decide if this pain is worth it.
fnord