httping
Ping HTTP/HTTPS servers to check availability
TLDR
Ping the specified URL
Ping the web server on host and port
Ping the web server on host using a TLS connection
Ping the web server on host using HTTP basic authentication
SYNOPSIS
httping [options...] <URL>
PARAMETERS
-c
Stop after sending
-d
Daemon mode: no output to stdout/stderr.
-f
Flood mode: send requests as fast as possible.
-g
Use HTTP GET method (default: HEAD).
-G
Use HTTP POST method.
-H
Use HTTP HEAD method (default).
-i
Seconds between requests (default 1.0).
-l
Bind to local address/IP
-p
Target port (default 80/443).
-q
Quiet mode: suppress normal output.
-r
Enable HTTP/1.1 request pipelining.
-s
Request body size in bytes.
-S
Request body content as
-t
Per-request timeout in seconds (default 10).
-u
Use HTTPS (or specify https:// URL).
-v
Verbose output.
-x
Maximum simultaneous connections.
-z
TCP LINGER value in seconds.
-h
Show help.
-V
Show version.
DESCRIPTION
httping is a command-line utility designed to measure the latency of HTTP servers in a manner similar to the ping command for ICMP. It sends repeated HTTP requests (default HEAD) to a specified URL and displays real-time statistics such as minimum, average, maximum response times, standard deviation, packet loss (timeouts), and throughput.
Unlike one-off tools like curl, httping provides continuous monitoring until interrupted (Ctrl+C), at which point it shows a summary. It's particularly useful for:
• Diagnosing web server performance bottlenecks.
• Monitoring latency in load-balanced environments.
• Verifying service availability without full page loads.
Key capabilities include multiple concurrent connections for higher load simulation, custom HTTP methods (GET, POST, etc.), request body sizes, HTTP/1.1 pipelining, SSL/TLS support via -u or HTTPS URLs, and connection reuse. Output mimics ping with bars for latency distribution.
Installation: Available in most distro repos (apt install httping, yum install httping) or compile from source at vanheusden.com/httping. Requires libssl for HTTPS. Ideal for sysadmins and DevOps for quick HTTP health checks.
CAVEATS
Measures HTTP response time only, not application logic or full content delivery. Servers may throttle HEAD requests or block aggressive pinging. Timeouts count as loss; high load can skew results. No HTTP/2 support in standard versions.
USAGE EXAMPLES
Basic ping: httping www.example.com
10 requests every 0.5s: httping -c 10 -i 0.5 www.example.com
GET with 1KB body, 5 connections: httping -g -s 1024 -x 5 example.com
HTTPS flood: httping -f -u www.example.com
OUTPUT SAMPLE
PING www.example.com: -- 18.4/23.1/34.2/25.6 0.0% 43/s
--- www.example.com ping statistics ---
10 requests, 0 timeouts, 100.0% success
min/avg/max/std = 18.4/23.1/34.2/5.2 ms
HISTORY
Developed by Ronald van Kuijk starting in 2003-2004 as an open-source tool to fill the gap for HTTP-specific pinging. Initially released under GPL; maintained sporadically with updates for modern SSL and features. Source at http://www.vanheusden.com/httping/; packaged in major distros since mid-2000s.


