HTTP¶
The HTTP task is used to test or monitor HTTP servers.
Running an HTTP task gives you a good overview of the performance of a website or web application, of the web server, and of the network between the web server and the Test Agent. You can request web pages and verify response codes from distributed locations inside or outside of your network.
When an HTTP task starts, the Test Agents will make an HTTP Get request towards the specified URL and fetch the response. No rendering is done of HTML pages, so no additional requests are made for linked resources, (images, CSS files, and so forth). Measured parameters include TCP connect time, time until first byte received, time until last byte received, and download speed.
Traffic is initiated by the Test Agents, and the HTTP server reciprocates by sending traffic to the Test Agents using the same ports. This setup makes it possible to run tests also when the Test Agents are located behind NAT.
HTTPS is supported, but no verification is done of the SSL certificate.
This task works with both IPv4 and IPv6.
Prerequisites¶
To run HTTP measurements you need to have at least one Test Agent installed. If you haven’t already done the installation, consult the installation guides found here.
In your test or monitor, add an HTTP task and fill in the mandatory parameters below:
Parameters¶
See the common parameters page for the following:
Parameters that are set on the test step level: Duration, Fail threshold, and Wait for ready.
SLA thresholds for monitors: SLA Good and SLA Acceptable.
Advanced settings common to all test tasks: Delayed start.
General¶
Clients: Test Agent interfaces to use as clients.
URL: URL that the Test Agents will request.
http://[2001:470::9c66]
.Time between requests (s): Time to wait between sending consecutive HTTP GET requests.
Note
Take care not to set this parameter too low. If HTTP requests are sent at a higher rate than the web server can process them, requests will accumulate at the server and may overload it.
Thresholds for errored seconds (ES)¶
HTTP response code: HTTP status code that must be matched in the HTTP response. If the HTTP response code does not match this one, an errored second is triggered.
Timeout (ms): If no response to the HTTP request is obtained within this time, an errored second is triggered.
Response content: The (case-insensitive) regular expression against which the HTTP response content will be validated.
Advanced¶
Request lifetime (ms): Maximum time the Test Agent will wait for an HTTP response before canceling the HTTP request.
Proxy server: If set, the specified IP address will be used as HTTP proxy server.
Proxy server port: Port to use as HTTP proxy port. Range: 1 … 65535. Default: 8080.
Proxy authentication: Authentication type used by proxy server.
Proxy username: User name used for HTTP proxy authentication.
Proxy password: Password used for HTTP proxy authentication.
Result metrics¶
Connect time (ms): Time taken to set up a TCP connection to the web server (time from sending TCP SYN until receiving TCP ACK).
First byte received (ms): Time from sending the HTTP Get request until the first byte of the response is received. For a dynamic website, the server side may take a while to generate the response.
Response time average (ms): Average response time for the selected time period, that is, the average time taken to download the content from the URL.
Response time min (ms): Minimum response time during the selected time period.
Response time max (ms): Maximum response time during the selected time period.
Size (KiB): Length of the HTTP response, including HTTP headers.
Rate (Mbit/s): Download rate of the response. Calculated as the size of the response divided by the total response time.
ES timeout: Number of errored seconds triggered because no HTTP response was obtained before the Timeout period expired.
ES response: Number of errored seconds triggered by an invalid HTTP response or by the HTTP response code or content not matching the specified ones.
ES total: Aggregated errored seconds, taking into account all types of error.
SLA: Service level agreement fulfillment: equal to (100 – ES total) %.