HTTP
The HTTP plugin generates various types of web traffic.
The plugin includes the following settings:
- Sources — a combination of the selected agent, interfaces, and MAC addresses from which the agent sends and receives traffic. Table 13 describes these settings.
Table 13 — Sources settings
| Name | Description | Value |
|---|---|---|
| Agent | Agent that sends and receives traffic. | Select an agent from the agent list |
| Network interface | Agent network interface that sends and receives traffic. | Select an interface from the interface list |
| Network | A selected Network object (see Networks) whose settings are used to send traffic. If you select more than one object, you can adjust the weight that balances packet distribution among them. | Select a Network object. Set its weight; by default, packets are distributed evenly among the selected objects |
- Targets — select the object to which traffic is sent; see Networks. Table 14 describes these settings.
Table 14 — Targets settings
| Name | Description | Value |
|---|---|---|
| Target | Selected Network object whose settings are used when sending traffic to the target. | Select a Network object |
- IP header (L3) — IP header settings at L3 in the TCP/IP stack. Table 15 describes these settings.
Table 15 — IP header (L3) settings
| Name | Description | Value |
|---|---|---|
| TTL (Time to Live) | Maximum number of routers (hops) that a packet can traverse before it is discarded. | Enter a number (default: 128) |
| ToS (Type of Service) | DSCP is an IP header field used to determine traffic priority and handling. | Enter a number (default DSCP: 7) |
| ToS (Type of Service) | ECN allows routers to notify endpoints about network congestion without dropping packets. | Select 00 (Non-ECT), 01 (ECT(1)), 10 (ECT(0)), or 11 (CE (Congestion Experienced)) |
- TCP header (L4) — TCP header settings at L4 in the TCP/IP stack. Table 16 describes these settings.
Table 16 — TCP header (L4) settings
| Name | Description | Value |
|---|---|---|
| Max. Segment Size | Maximum amount of data that can be carried in one TCP segment. | Enter a number (default: 1460) |
| WS (IP Options) | TCP Window Scale increases the window available for flow control. | Enter a number (default: 64) |
| Window Size | Amount of TCP data that can be sent before an acknowledgment is required. | Enter a number (default: 256) |
- HTTP settings — HTTP header settings at L6–L7 in the TCP/IP stack. Table 17 describes these settings.
Table 17 — HTTP settings
| Name | Description | Value |
|---|---|---|
| HTTPS | Determines whether HTTPS is used for secure data transfer. | Yes / No; use the toggle |
| TLS version | TLS (Transport Layer Security) protocol version used to secure data transfer between client and server. Available when HTTPS is enabled. | Select TLS v1.2 or TLS v1.3 |
| HTTP version | HTTP protocol version used for data transfer. | Select HTTP 1.1 or HTTP 2.0 |
| User-Agent | Header that identifies the client application, such as a browser, and its operating system. | Enter a value. Default: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36. ${userAgent} rotates the User-Agent by selecting a random valid value from the list in the web interface for every request |
| Path | Path to the requested server resource: the part of the URL after the domain name. | Enter a path (default: /) |
| HTTP method | Method used to request the server resource. | Select GET, POST, PUT, PATCH, or DELETE |
| HTTP status | Follows session redirects to a target. When enabled, responses with a 3xx status are processed and the session, including its subsequent traffic, is redirected to the target in the Location header. | On/off |
| HTML Meta Refresh | Follows session redirects to a target. When enabled, responses containing an HTML refresh meta tag are processed and the session, including subsequent traffic, is redirected after the specified delay to the target in the content attribute. | On/off |
| Depth | Maximum number of redirects allowed within one TCP session. | Enter a value (default: 20) |
| Query parameters | Parameters passed in the URL after the question mark (?). | Click Add parameters, then enter a value. ${str(length)} generates a random character sequence of the specified length, for example ${str(16)}. ${strMinMax(min\_length,max\_length)} generates a random character sequence within the specified length range, for example ${strMinMax(16,24)}. ${hex(length)} generates a random hexadecimal sequence of the specified length, for example ${hex(16)}. ${hexMinMax(min\_length,max\_length)} generates a random hexadecimal sequence within the specified length range, for example ${hexMinMax(16,24)}. ${email} generates a valid email address with a random username and domain. ${login} generates a valid username. ${password} generates a valid password. |
| Request body | HTTP request data sent by the client to the server, such as form data or JSON. Available for POST, PUT, and PATCH. | Enter a request body. ${str(length)} generates a random character sequence of the specified length, for example ${str(16)}. ${strMinMax(min\_length,max\_length)} generates a random character sequence within the specified length range, for example ${strMinMax(16,24)}. ${hex(length)} generates a random hexadecimal sequence of the specified length, for example ${hex(16)}. ${hexMinMax(min\_length,max\_length)} generates a random hexadecimal sequence within the specified length range, for example ${hexMinMax(16,24)}. ${email} generates a valid email address with a random username and domain. ${login} generates a valid username. ${password} generates a valid password. |
| Headers | Additional metadata sent with the HTTP request. | Click Add parameters, then enter a value. ${str(length)} generates a random character sequence of the specified length, for example ${str(16)}. ${strMinMax(min\_length,max\_length)} generates a random character sequence within the specified length range, for example ${strMinMax(16,24)}. ${hex(length)} generates a random hexadecimal sequence of the specified length, for example ${hex(16)}. ${hexMinMax(min\_length,max\_length)} generates a random hexadecimal sequence within the specified length range, for example ${hexMinMax(16,24)}. ${email} generates a valid email address with a random username and domain. ${login} generates a valid username. ${password} generates a valid password. |
- Session settings — settings that control sessions for the current plugin. Table 18 describes these settings.
Table 18 — Session settings
| Name | Description | Value |
|---|---|---|
| Total sessions | Maximum number of concurrent active sessions established by the plugin. | Enter a number |
| Reconnect timeout | Number of seconds for which Peresvet ST attempts to restore a connection after it is interrupted. If the connection is not restored within this period, the session closes. | Enter a number |
| Connections per second | Maximum number of new sessions established per second. | Enter a number |
| Max. streams (per session) | Maximum number of data streams active within one session. Available only when H2 is enabled under HTTP settings. | Enter a number |
| Unlimited toggle | Enables maximum performance without limiting requests per second. | On/off |
| Requests per second (per session) | Maximum number of requests processed per second for one session or stream. | Enter a number |
| Request interval | Delay between batches of the configured number of requests per second. | Enter a number |
- Duration — the plugin runtime. Table 19 describes this setting.
Table 19 — Duration setting
| Name | Description | Value |
|---|---|---|
| Generation duration | Traffic generation time. | Enter a number and select seconds, minutes, or hours |