Quick answer: Unreal Iris fast-forwarded projectiles consuming 10x bandwidth? Each tick sends a full state update during catch-up - throttle with NetUpdateFrequency or skip ticks.
Server is 200ms behind on its tick. Iris catches up by sending 8 ticks worth of projectile state per packet.
Cap update frequency
Projectile NetUpdateFrequency = 20. Limits catch-up to 20Hz regardless of server lag.
Skip intermediate frames
Server-side, skip every other tick for fast-moving actors. Client interpolates; bandwidth halves.
Use prediction
Client-side prediction makes the catch-up unnecessary. Server sends authoritative corrections; client renders predictions.
“Catch-up bandwidth is invisible until it's a 4MB spike.”
Profile bandwidth during a deliberate server stall. If catch-up bandwidth is 5x normal, you have unbounded send rates somewhere.