Go package to simulate bandwidth, latency and packet loss for net.PacketConn and net.Conn interfaces.
bandwidth := 1024 * 1024 // 8 Mbit/s
headerOverhead := lossy.UDPv4MinHeaderOverhead
minLatency := 10 * time.Millisecond
maxLatency := 100 * time.Millisecond
packetLossRate := 0.1
lossyConn := lossy.Conn(conn, bandwidth, minLatency, maxLatency, packetLossRate, headerOverhead)