ip_relay can shape the TCP traffic forwarded through it to a specified bandwidth and allow this specified bandwidth to be changed on-the-fly. Multiple data streams to different hosts/ports may be shaped to the same total bandwidth, much like a traffic shaping router would; however, this application runs in user space, and works by acting as a TCP proxy.