Tools

Ayesh Karunaratne edited this page Dec 21, 2016 · 17 revisions

This is a listing of tools for analysing, debugging and visualising HTTP/2. See also the Implementations listing.

  • Curl supports HTTP/21 as of 7.43.0. See its documentation for details (including prerequisites).
  • h2i is a command-line interactive client that lets you send H2 frames, translate H1 to H2, and generally figure out how the protocol works.
  • h2load is a benchmarking / load generation tool for HTTP/2 and SPDY.
  • nghttp is a non-interactive command line HTTP/2 client that has plenty of debugging options, such as changing flow control window, dumping frames, HTTP Upgrade etc.
  • nghttpd is a simple static file HTTP/2 server that is very handy to debug client side implementations.
  • is-http2 lets you quickly find out if a host supports H2 from the command line.
  • jmeter Jmeter HTTP/2 sampler via - Netty 5 and netty-tcnative & hpack
  • HTTP/2 Test is an online tool to check if a website supports HTTP/2.
  • HTTP2.Pro is an online tool to check HTTP/2, ALPN, and Push support of web sites.
  • Wireshark has a HTTP/2 decoder2.
  • h2c - A Simple HTTP/2 Command-Line Client
  • h2spec - Conformance testing tool for HTTP/2 implementations
  • http2fuzz is a semi-intelligent fuzzer for HTTP/2.
  • WProf extracts dependencies of activities during a page load, to identify bottlenecks.
  • LoadRunner emulates HTTP/2 browsers (but not server push) to generate artificial load on servers as an enterprise-grade framework with GUI analytics.
  • Vegeta OS load tool that supports h2 through Go's (>= 1.6) net/http API
  • HTTP/1 vs HTTP/2 speed test an online tool to test and compare speed of HTTP/2-ready websites, via HTTP/2 versus via HTTP/1 (disabling h2 support in Chrome)

1 Curl is strictly an implementation, but it's listed here because many people use it as a tool.

2 Note that to use it on TLS-protected connections, you'll need to do NSS Keylogging. See also the Wireshark SSL/TLS docs.