Spirent Avalanche 5.46 February 29, 2024

Server Network Tab

Use the Server Network tab to configure the server network characteristics that you want to emulate. For example, you can specify various TCP, UDP, and IP parameters.

The Server Network tab contains the following panes:

Field Description
TCP Parameters:
IPv4/IPv6 Maximum Segment Size (MSS) bytes

The maximum TCP segment size (in bytes) that the TCP stack receives (data only, excluding headers). The send segment size is determined by the communicating peer. The default maximum segment size (MSS) is 1460 for IPv4 and 1440 for IPv6. The valid range is 6 to 9176 for IPv4, and 6 to 9156 for IPv6. You can also set this value at the protocol level in the Server Profiles tab, which will override the server network MSS setting.

NOTES:

  • For guidance on configuring MSS and Jumbo Frames, log in to the Spirent CSC (https://support.spirent.com) with your user name and password, and then see

    see the following Knowledge Base article:

  • You must enable jumbo frames, if you want to use frames with over 1460 or 1440 bytes for IPv4 or IPv6, respectively. If you disable jumbo frames, and you exceed these values, then the default MSS settings are used (1460 for IPv4 and 1440 for IPv6), regardless of the MSS that you specify in this field. Also, this field will not update to reflect the default settings being used.
  • When configuring tests with IPSec enabled subnets, you should set the MSS to a value less than 1400 bytes to allow for additional headers.
  • When configuring tests with DS-Lite enabled, an IPv4 MSS value greater than 1420 may cause fragmentation, affecting performance.
  • When configuring tests with GTP enabled, you should set the IPv4 MSS to allow for additional headers (IP, UDP, and GTP) of 40 bytes. An IPv4 MSS value greater than 1420 may cause fragmentation, affecting performance.
Override Remote Device MSS

Select to specify the maximum TCP segment size (in bytes) to be used for sending TCP data. This overrides the MSS value announced by the remote device. (If deselected, the send segment size is determined by the remote device.) The specified value must be between 6 and 9176, and the default value is 1460.

NOTE: If you specify a value that is greater than the MSS value announced by the remote device, your new value will not take effect. That is, the MSS value announced by the remote device will be used.

Receive Window bytes The receive window in which you want the TCP stack to send TCP segments. The receive window informs the peer how many bytes of data the stack is currently able to receive. The supplied value is used in all segments sent by the stack.  The valid range is 0 to 1073741823.
Delayed ACKs Select to cause the TCP stack to implement the Delayed ACK strategy, which attempts to minimize the transmission of zero-payload ACK packets. Acknowledgements will be deferred in the hopes of piggybacking them on top of valid data packets. If successfully deferred, these acknowledgements are free, in the sense that they consume no additional bandwidth.
Delayed ACK Timeout ms If you select Delayed ACKs, use this timeout value to specify the maximum time the TCP stack waits to defer ACK transmission. If this timer expires, the stack transmits a zero-payload acknowledgement.
Delayed ACK Bytes If you select Delayed ACKs, use this value to specify the maximum amount of TCP payload (in bytes) that the stack accepts before ACK transmission. Once this value is met, the stack transmits a zero-payload ACK packet acknowledging the received data.
Timestamps Option Select to add a TCP timestamp to each TCP segment and calculate RTT (Round Trip Time) for each TCP segment. If selected, Avalanche sends TCP segments with the Timestamps option (TSopt), checks the TSopt received, calculates RTTs, and generates statistics. If deselected, Avalanche sends TCP segments without the TSopt, and discards the TSopt received.

NOTES:

  • See RFC 1323, TCP Extensions for High Performance, for more information.
  • When configuring tests with the Timestamps Option enabled, the size of the net payload in each TCP segment that Avalanche sends is the MSS value minus 12 bytes (assuming no other TCP options are enabled), in conformance with RFC 6691, TCP Options and Maximum Segment Size (MSS). (The MSS value is also configurable in the server profile.)
Enable Push Flag Select to set the TCP PSH (push) flag in all TCP packets. This flag causes buffered data to be pushed to the receiving application. If deselected, the PSH flag is not set in any TCP packet.

NOTE: This flag does not apply to TCP handshake messages (SYN and SYN/ACK).

Enable Congestion Control Select to invoke the TCP stack's congestion control mechanism. If selected, the TCP stack implements Slow Start and Congestion Avoidance and Fast Retransmit/Fast Recovery, according to RFC 2581.   Select to invoke the TCP stack's congestion control mechanism, and select one of the following algorithms:
  • TCP Reno (default)

    The TCP stack implements Slow Start and Congestion Avoidance and Fast Retransmit/Fast Recovery, according to RFC 2581.

  • TCP SACK (Selective Acknowledgement)

    This strategy is used to handle multiple dropped segments during data transmission. With selective acknowledgment, the data receiver informs the sender of all segments that have arrived successfully, so that the sender need retransmit only the segments that have been lost.

    Select this option to enable the TCP data receiver to accept TCP connections with the SACK option; also enables the TCP data sender to use the SACK loss recovery algorithm instead of non-SACK TCP implementations, such as Reno.

    NOTES:

    • See the following RFCs for more information:
      • RFC 2018 - TCP Selective Acknowledgment Options
      • RFC 2883 - An Extension to the Selective Acknowledgement (SACK) Option for TCP
      • RFC 6675 - A Conservative Loss Recovery Algorithm Based on Selective Acknowledgment (SACK) for TCP
    • When configuring tests with the SACK Option enabled, the size of the net payload in each TCP segment that Avalanche sends is the MSS value minus 40 bytes (assuming no other TCP options are enabled). This Avalanche implementation is not fully in conformance with RFC 6691, TCP Options and Maximum Segment Size (MSS). (The MSS value is also configurable in the server profile.)
  • TCP Vegas

    This strategy emphasizes packet delay, rather than packet loss, as a signal to help determine the rate at which to send packets.

    NOTES:

    • See the following IEEE/SIGCOMM papers for more information:
      • TCP Vegas: End to End Congestion Avoidance on a Global Internet
      • TCP Vegas: New Techniques for Congestion Detection and Avoidance
    • Enabling TCP Vegas on a test with open connections as a load specification causes a 10% degradation in performance.
Initial Congestion Window The TCP Initial Congestion Window (ICW) specifies the amount of TCP payload to send initially in the TCP slow-start process. This process is part of the TCP congestion control strategy to avoid causing network congestion.   Specify a value between 1 and 64. This value gets multiplied by the MSS value to derive the ICW in bytes.

NOTES:

  • This ICW value does not apply if Delayed Ack Bytes is lower than the ICW value x MSS value.
  • This ICW value does not apply if Delayed Acks is disabled. The first ACK is not delayed according to the ICW value.
Override Internal Timeout Calculation ms Select to override the TCP stack calculation of the retransmission timeout value and replace it with the value that you enter (in milliseconds). Avalanche uses this value for the first transmission of a particular data or control packet and doubles it for each subsequent retransmission.
Retries The number of times a timed-out packet is retransmitted before aborting further retransmission. If the client does not receive a response after the configured number of retries have been attempted, the error is logged in the results CSV file as a TCP timeout when a SYN or FIN is sent, and no SYN/ACK or FIN/ACK from the server is received.
Inactivity Timer ms The amount of time that passes before Avalanche resets (the stack sends an RST segment) and abandons inactive connections. A value of 0 disables the timer. You must disable this timer before each streaming test.

NOTES:

  • If you use the Inactivity Timer, then it will override the Do Not Close option in the Connection Termination pane on the Server Profiles tab for an HTTP profile.
  • If you use the Inactivity Timer, and enter a value less than the Close Timeout value in the Connection Termination pane on the Server Profiles tab for an HTTP profile, the connection will be closed based on the Inactivity Timer value.
  • The TCP inactivity timer value is also used for ThreatEx UDP (stateless) traffic, for determining when to reset/abandon the connection.
Fin Ack Timer ms

If you do not want TCP connections to be immediately closed after a FIN request, set this field to any non-zero value. A value of 0 disables this feature.

NOTE: Using this feature can adversely affect TCP performance.

UDP Parameters:
Enable IPv4 UDP Checksum Select to enable the checksum calculation in the UDP header of IPv4 packets sent by the server.

NOTE: This option affects only the sent packets. It does not provide error checking against the received packets.

IP Parameters:
Fragment Reassembly Timer The maximum time in milliseconds that the IP stack waits for subsequent fragments after receiving the first fragment of an IP datagram. If the entire datagram has not been received by this time, the entire datagram is discarded.
Zero Fill Settings:
Zero Fill Select to fill inconsequential data in TCP packets with zeros to speed up checksum processing, and thus improve performance.

NOTES:

  • This setting applies only to the SPT-C100-S3-MP-6 platform (2x100G configuration).
  • This is an advanced setting, which should be left unchecked when in doubt. It does not apply to all protocols, or in all cases for a particular protocol.

Configuring Server Network Profiles

Configuring a Server Profile

© 2024 Spirent Communications, Inc. All Rights Reserved.