trickle_nfq
Hold UDP packets, drip them out, then release the backlog in order.
What it is
A Linux port of the Trickle module from a fork of clumsy, the Windows network-degradation tool. trickle_nfq diverts matching UDP packets to userspace with an NFQUEUE rule, holds them in a FIFO queue, and releases a set number per interval, oldest first.
It reproduces the original module's behavior and defaults. Run it on a hotspot or router to slow a client's outbound traffic to one host while replies arrive untouched. Turn trickling off to flush the backlog in order or drop it.
What it does
Per-interval pacing
Releases up to N packets per interval window, oldest first, on a 40 ms clock like clumsy.
Speed multipliers
Inst, Orig, 2x, 5x, 10x, 50x, 0.5x and 0.25x scale the interval live.
Bounded queue
A Max Q cap with Drop Newest or Drop Oldest overflow handling.
Flush or drop on shutoff
Turning it off releases the whole queue in order, or discards it, per the Flush setting.
Live controls
Keyboard toggles and edits in the terminal, plus signal control when run headless.
Clean, safe plumbing
Uses a mangle-table rule so existing firewall and NAT rules still apply. Bypasses the queue if the program dies, and removes its rule on exit.
Where it's going
Port of the Trickle module
ShippedPacing, speeds, overflow, flush and status line matching the decompiled clumsy fork.
Live controls & headless mode
ShippedInteractive key bindings, plus SIGUSR1/SIGUSR2 toggles and a once-a-second status log.
Real-hardware validation
In progressTesting on a live Linux hotspot with real client traffic.
Presets & multiple filters
PlannedSaved setting presets and several target filters at once.