TCP

The pictures show hub-and spoke (left) and full-mesh (right) TCP traffic generation, used for performance and throughput measurements.

TCP is a very commonly used protocol, employed for everything from Internet web browsing to client–server applications. By running a TCP test, you will learn about the achievable performance of your network link. Netrounds uses a standard Cubic TCP implementation.

Client Test Agents can be placed behind NAT, since traffic will be initiated from the clients to the server.

When you start a TCP test, the Test Agents will start sending a TCP stream between them. This TCP stream will compete for the bandwidth with all other traffic on the network link, thus giving a view of the available performance on that link.

The size of the TCP packet actually sent is determined by the OS/TCP algorithm, just as for a regular user. This is done to faithfully emulate the end-user experience running TCP-based applications.

Prerequisites

To run TCP measurements you need to have at least two Netrounds Test Agents installed. If you haven't already done the installation, consult our quick start guides for various types of Test Agents in the section Netrounds Test Agents.

Then create a new TCP test or monitoring and fill in the mandatory parameters below:

Parameters

Tests only

  • Duration (seconds): The duration of this test step in seconds. Min: 30 s. Max: 604800 s. Default: 60 s.
  • Fail threshold (seconds): The maximum number of errored seconds (ES) that may occur without triggering a fail for this test step. Default: 0.
  • Wait for ready: Time to wait before starting the test. The purpose of inserting a wait is to allow all Test Agents time to come online and acquire good time sync. Min: 1 min. Max: 24 hours. Default: "Don't wait", i.e. zero wait time.

General

  • Setup type: Select how to set up the measurement: "Client-Server" or "Full-Mesh". The default is Client-Server.
  • Server: A Test Agent that is going to act as the server side. If a NAT or firewall is present, the server must be located on the outer (public) side.
  • Clients: Test Agents that should participate in the TCP measurement and exchange traffic with the server Test Agent. The clients can be placed behind a NAT, since traffic will be initiated from the clients to the server.
  • Direction: One of: Up (from clients to server), Down (from server to clients), or Bidirectional (both directions at the same time).
  • Up rate (Mbit/s): The upstream (client-to-server) target rate for TCP. If omitted, TCP will not use any rate limitation and use TCP congestion control.
  • Down rate (Mbit/s): The downstream (server-to-client) target rate for TCP. If omitted, TCP will not use any rate limitation and use TCP congestion control.
  • Port: TCP server port to which clients will send traffic. Range: 1 ... 65535. Default: 5000.

Thresholds for errored seconds (ES)

  • Up/Down Rate (Mbit/s): Threshold data rates for TCP. If the bit rate during one second is lower than this rate, an errored second is triggered. If a threshold is left undefined, no errored seconds will be generated for that direction. Min: 0 Mbit/s. Default: 0 Mbit/s.

TCP retransmissions cannot cause errored seconds directly, since Netrounds does not measure TCP retransmissions. However, as retransmissions will lower the achieved throughput (goodput), you can obtain an indirect measure of them by setting a suitable threshold for the up and down rates.

Advanced

  • Up/Down DSCP/IPP: The Differentiated Services Code Point (DSCP) or IP Precedence to be used in IP packet headers. The available choices are listed in the drop-down box. Default: "0/ IPP 0". Note: Test Agents Lite currently do not support DSCP settings in outgoing IP packets.
  • Up/Down VLAN priority (PCP): The Priority Code Point to be used in the VLAN header. Range: 0 ... 7. Default: 0. Note: Test Agents Lite currently do not support PCP settings in outgoing IP packets.
  • Socket send buffer (bytes): (Optional) The socket send buffer size in bytes. Min: 1 byte. Max: 10,000,000 bytes. Default: Linux uses a dynamic buffer that is adjusted according to usage and available memory. 
  • Socket receive buffer (bytes): (Optional) The socket receive buffer size in bytes. Min: 1 byte. Max: 10,000,000 bytes. Default: Linux uses a dynamic buffer that is adjusted according to usage and available memory.
  • Delayed start (s): (Tests only) Time by which to delay the start of the test within a test step. Default: 0 s.

SLA thresholds (monitorings only)

  • SLA Good: Threshold for good fulfillment of service level agreement. Default: 99.95%.
  • SLA Acceptable: Threshold for acceptable fulfillment of service level agreement. Default: 99.5%.

Result metrics

  • Rate (Mbit/s): Actual TCP rate measured. 
  • ES (%): Aggregated errored second (ES) percentage, taking into account all types of error.
  • SLA: Service level agreement fulfillment for the test or monitoring: equal to (100 – ES) %.
Have more questions? Submit a request

Comments

Powered by Zendesk