Packet Test Bundle

April 18, 2026 · View on GitHub

A free, open-source Windows GUI for network bandwidth and latency testing. Bundles iperf2, iperf3, tshark, and ping into a single portable application — no command line required. Measure TCP/UDP throughput between two machines, capture packets with BPF filters, and watch live latency charts, all from one dark-themed native interface.

Tests Platform Language License Version

Screenshot

Packet Test Bundle — Windows GUI for iperf3 bandwidth testing, ping latency monitoring, and tshark packet capture

Use Cases

  • LAN / WAN speed test — measure real TCP or UDP throughput between two Windows machines
  • Network troubleshooting — capture live packets with tshark and BPF filters without opening a terminal
  • Latency monitoring — run a continuous ping and watch the latency graph spike in real time
  • iperf3 GUI — a graphical front-end for iperf3 on Windows with client and server modes

Features

  • iperf2 / iperf3 — TCP/UDP throughput testing, client and server modes, configurable duration and parallel streams
  • Ping — continuous latency monitoring with a live scrolling chart
  • Packet capture — tshark-based network capture with BPF filter support, no Wireshark install needed
  • Live charts — ImPlot-based throughput and latency graphs that update in real time
  • Dark theme — native Win32 + ImGui/DirectX 11 rendering
  • DPI-aware — scales correctly on all display resolutions including HiDPI / 4K monitors
  • Portable — single .exe, no installation required (packet capture needs Npcap)

Installation

Download the latest release from the Releases page:

  • PacketTestBundle_vX.X.X_Setup.exe — Windows installer (includes Npcap for packet capture)
  • PacketTestBundle.exe — Portable executable

Note: Packet capture (tshark) requires Npcap. The installer handles this automatically.

How It Works

Packet Test Bundle launches bundled copies of iperf2, iperf3, tshark, and ping as child processes, parses their output in real time, and renders the results as interactive ImPlot charts inside a DirectX 11 window. Each tool runs on its own worker thread so the GUI stays responsive during long tests. No network traffic is sent to any external server — all tests run point-to-point between machines you control.

FAQ

Is Packet Test Bundle free?

Yes. Packet Test Bundle is free and open source under the MIT license. You can use it for personal, educational, and commercial purposes.

How do I test network speed between two computers?

  1. Download Packet Test Bundle on both machines.
  2. On one machine, start an iperf3 server.
  3. On the other machine, enter the server's IP address and click Start in client mode.
  4. The live chart will show your TCP or UDP throughput in real time.

Do I need to install Wireshark for packet capture?

No. Packet Test Bundle ships with tshark (the Wireshark command-line engine) already bundled. You only need to install Npcap for the capture driver — the Windows installer does this automatically.

What is the difference between iperf2 and iperf3?

iperf2 supports multi-threaded parallel streams and bidirectional tests natively. iperf3 is a rewrite with JSON output, single-threaded by design, and more detailed per-stream statistics. Packet Test Bundle includes both so you can pick the right tool for each test.

Does it work on Windows 10 and Windows 11?

Yes. Packet Test Bundle is tested on Windows 10 and Windows 11. It is DPI-aware and scales correctly on standard and HiDPI / 4K displays.

Alternatives

ToolGUIiperfPacket CaptureOpen Source
Packet Test BundleYes (native)iperf2 + iperf3Yes (tshark)MIT
jperf / JPerfJava Swingiperf2 onlyNoGPL
iPerf3 CLINoiperf3 onlyNoBSD
WiresharkYesNoYesGPL
LAN Speed TestYesNoNoNo (paid)

Packet Test Bundle combines iperf throughput testing and tshark packet capture in a single lightweight native app — no Java runtime, no browser, no separate Wireshark install.

Build

Requires Visual Studio 2022 Build Tools and CMake.

cmake -S packettestbundle -B packettestbundle\build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build packettestbundle\build

ImGui and ImPlot are fetched automatically via CMake FetchContent.

Run tests

cmake -S packettestbundle -B packettestbundle\build_test -DBUILD_TESTING=ON
cmake --build packettestbundle\build_test --target run_tests

Build installer

Requires Inno Setup 6.

ISCC /DMyAppVersion=0.1.0 packettestbundle\installer.iss

Project Structure

FileDescription
src/app.cpp/.hMain application, ImGui/DX11 render loop
src/app_meta.hApp name and version string
src/version.hSingle-source version definition
src/worker_iperf.cpp/.hiperf2/iperf3 worker thread
src/worker_ping.cpp/.hPing worker thread
src/worker_pcap.cpp/.htshark/dumpcap capture worker
src/command_builder.cpp/.hiperf command line builder
src/parser_iperf.cpp/.hiperf output parser
src/process_util.cpp/.hChild process launch and I/O
installer.issInno Setup installer script

Versioning

Version is defined in src/version.h. To release a new version, update the defines and tag:

#define VERSION_MAJOR 0
#define VERSION_MINOR 1
#define VERSION_PATCH 1
git tag v0.1.1 && git push origin v0.1.1

CI will automatically build the installer and portable .exe and attach both to the GitHub Release.

Dependencies

ToolBundledLicense
iperf2YesBSD
iperf3YesBSD
tsharkYesGPLv2
NpcapInstaller onlyNpcap License
Dear ImGuiFetchContentMIT
ImPlotFetchContentMIT