I'm helping a team prepare for a low-latency trading rollout, and we're hitting a wall on firewall validation. The vendor datasheet promises "sub-10 microsecond" latency, but we all know those numbers come from lab conditions that rarely match a real, messy production network.
We need to measure the actual, end-to-end latency impact of our next-gen firewall in the data path. I'm not interested in synthetic throughput tests; this is purely about the consistent delay added per packet for market data and order flows.
Could you share the real tools and methodologies you've used for this? I'm thinking along the lines of:
* **Packet generators/analyzers:** Specific hardware or software tools that can timestamp at the nanosecond level.
* **Test topology:** How you physically connected everything (e.g., tap, span, in-line) to avoid skewing the results.
* **Key metrics:** What did you actually measure (e.g., mean latency, 99.9th percentile, jitter) and over what packet size range?
* **Process:** Any scripts or automation to run sustained tests and collect stats.
Our stack is mostly Linux, and we're evaluating a couple of major NGFW vendors. Any lessons on isolating the firewall's contribution from switch or NIC latency would be especially valuable.
gh2
ship early, test often
Vendor datasheets are a special kind of fiction, aren't they? You'll need hardware timestamping or you're just measuring your own noise.
Forget software gens on your servers. You need a dedicated test tool like a Xena or a Spirent box that can do line-rate, sub-microsecond timestamps. Bypass the kernel entirely. Connect it directly inline with the firewall, mirror ports to your analyzer. Run a sustained stream of your actual market data packet sizes, mixed with some background noise to simulate the "messy" part.
Measure latency distribution, not just average. That 99.99th percentile tail is where your blown-up trades live. Script it with their API and run it for hours. The firewall's "fast path" might handle the first packet beautifully, then fall off a cliff when the state table fills up.
Also, don't just test cold. Let it run with rules enabled for a week and see what garbage collection does to your p9999. Good luck. Hope your latency budget isn't firewall-proof.
Deploy with love
Absolutely agree on the hardware timestamping requirement. Xena and Spirent are the industry standards, but I've found the cost of entry prohibitive for some teams. A pragmatic alternative is to rent time on a hosted testing platform like PacketFlow; you get the same calibrated hardware without the capital expenditure for a one-off validation.
Your point about the state table is critical, but it's only one dimension of stateful degradation. You must also test rule table expansion. Script the addition of hundreds of shadow rules during a sustained load to simulate a typical, bloated production policy. The latency impact when the ACL search hits a deeper tree is often more severe than session table exhaustion.
Finally, don't just measure garbage collection's effect, measure failover. The p9999 latency during a stateful HA failover event is the real determinant of whether you'll survive a link or node failure without missing a window. Most vendors won't publish that number because it's usually catastrophic for sub-microsecond requirements.
show me the SLA
Everyone's rushing for the six-figure hardware testers, but have you actually tried throwing the problem at a cheap, dumb layer 1 tap and a pair of Solarflare NICs? The vendor's "sub-10 microsecond" dreamworld shatters pretty fast when you're timestamping in hardware on a server you already own.
All these elaborate setups with rented platforms are just paying to confirm the brochure is fiction. The real lesson isn't in the 99.99th percentile, it's in the baseline noise floor you get *before* the firewall even enters the rack. If your own test harness can't agree with itself down to a microsecond on a loopback cable, adding a fancy NGFW is just performance art.
Besides, isolating the firewall's impact means you need to know what your switch fabric is doing to latency first. Spoiler: it's usually more than the firewall.
FOSS advocate
That's a good practical point about the baseline. How do you account for the timestamping variance in the Solarflare NICs themselves when calculating the firewall's true added delay? I've read there's jitter just in the hardware timestamping process.
I hadn't considered the baseline variance of the NICs themselves. That seems like a calibration step you'd need to lock down first, using a loopback test like user1111 mentioned, before any firewall data is meaningful.
Is there a standard correction factor or calibration routine for Solarflare timestamp jitter, or is it more about running enough samples to establish a stable noise floor?
You're right about the rental platforms being a cost-effective path to calibrated hardware. The problem is they often rent you time on shared infrastructure in a remote data center. The network hop to that facility introduces its own variable latency that corrupts sub-microsecond measurements.
If you go that route, you need the platform to provide a zero-hop topology diagram proving your test traffic never leaves their test chassis. Otherwise you're just benchmarking their backbone.
cost per transaction is the only metric