# "IP" - flow is defined by ingress ports
# and src and dst IP addresses
# Default value: "port"
+# 'flow_control' - Controls flow control support by traffic generator.
+# Supported values:
+# False - flow control is disabled
+# True - flow control is enabled
+# Default value: False
+# Note: Currently it is supported by IxNet only
+# 'learning_frames' - Controls learning frames support by traffic generator.
+# Supported values:
+# False - learning freames are disabled
+# True - learning freames are enabled
+# Default value: True
+# Note: Currently it is supported by IxNet only
# 'l2' - A dictionary with l2 network layer details. Supported
# values are:
# 'srcmac' - Specifies source MAC address filled by traffic generator.
# congestion (DEI header field).
# Data type: int (NOTE: must fit to 1 bit)
# Default value: 0
+# 'capture' - A dictionary with traffic capture configuration.
+# NOTE: It is supported only by T-Rex traffic generator.
+# 'enabled' - Specifies if traffic should be captured
+# Data type: bool
+# Default value: False
+# 'tx_ports' - A list of ports, where frames transmitted towards DUT will
+# be captured. Ports have numbers 0 and 1. TX packet capture
+# is disabled if list of ports is empty.
+# Data type: list
+# Default value: [0]
+# 'rx_ports' - A list of ports, where frames received from DUT will
+# be captured. Ports have numbers 0 and 1. RX packet capture
+# is disabled if list of ports is empty.
+# Data type: list
+# Default value: [1]
+# 'count' - A number of frames to be captured. The same count value
+# is applied to both TX and RX captures.
+# Data type: int
+# Default value: 1
+# 'filter' - An expression used to filter TX and RX packets. It uses the same
+# syntax as pcap library. See pcap-filter man page for additional
+# details.
+# Data type: str
+# Default value: ''
TRAFFIC = {
'traffic_type' : 'rfc2544_throughput',
'frame_rate' : 100,
'stream_type' : 'L4',
'pre_installed_flows' : 'No', # used by vswitch implementation
'flow_type' : 'port', # used by vswitch implementation
-
+ 'flow_control' : False, # supported only by IxNet
+ 'learning_frames' : True, # supported only by IxNet
'l2': {
'framesize': 64,
'srcmac': '00:00:00:00:00:00',
'priority': 0,
'cfi': 0,
},
+ 'capture': {
+ 'enabled': False,
+ 'tx_ports' : [0],
+ 'rx_ports' : [1],
+ 'count': 1,
+ 'filter': '',
+ },
}
#path to traffic generators directory.
#TRAFFICGEN = 'Ixia'
#TRAFFICGEN = 'Xena'
#TRAFFICGEN = 'Moongen'
+#TRAFFICGEN = 'Trex'
# List of packet sizes to send.
# Expand like this: (64, 128, 256, 512, 1024)
TRAFFICGEN_XENA_2544_TPUT_USEPASS_THRESHHOLD = 'false'
TRAFFICGEN_XENA_2544_TPUT_PASS_THRESHHOLD = '0.0'
+# Xena RFC 2544 final verification options
+TRAFFICGEN_XENA_RFC2544_VERIFY = False
+TRAFFICGEN_XENA_RFC2544_VERIFY_DURATION = 120 # in seconds
+# Number of verify attempts before giving up...
+TRAFFICGEN_XENA_RFC2544_MAXIMUM_VERIFY_ATTEMPTS = 10
+# Logic for restarting binary search, see documentation for details
+TRAFFICGEN_XENA_RFC2544_BINARY_RESTART_SMART_SEARCH = True
+
# Xena Continuous traffic options
# Please reference xena documentation before making changes to these settings
TRAFFICGEN_XENA_CONT_PORT_LEARNING_ENABLED = True
TRAFFICGEN_MOONGEN_LINE_SPEED_GBPS = ''
# MoonGen Configuration and Connection Info-- END
-###################################################
+#################################################
+
+################################################
+# Trex Configuration and Connection Info-- BEGIN
+
+# Example: TRAFFICGEN_TREX_HOST_IP_ADDR = "192.10.1.1"
+# Example: TRAFFICGEN_TREX_USER = 'root'
+# Example: TRAFFICGEN_TREX_BASE_DIR = '/traffic_gen/trex/'
+# Example: TRAFFICGEN_TREX_PORT1 = '00:00:00:00:00:00'
+TRAFFICGEN_TREX_HOST_IP_ADDR = ''
+TRAFFICGEN_TREX_USER = ''
+TRAFFICGEN_TREX_BASE_DIR = ''
+TRAFFICGEN_TREX_PORT1 = ''
+TRAFFICGEN_TREX_PORT2 = ''
+# RFC2544 Throughput execution will end after threshold below is reached.
+# It defines maximal difference between frame rate of successful (i.e. defined
+# frameloss reached) and unsuccessful (i.e. frameloss exceeded) iterations.
+TRAFFICGEN_TREX_RFC2544_TPUT_THRESHOLD = 0.05
+# Latency statistics are collected by separate stream created for each interface.
+# Parameter below defines frequency of packets used for latency measurement in PPS.
+# Value 0 will disable latency specific streams.
+TRAFFICGEN_TREX_LATENCY_PPS = 1000
+# Enablement of learning packets before sending test traffic
+TRAFFICGEN_TREX_LEARNING_MODE = True
+TRAFFICGEN_TREX_LEARNING_DURATION = 5
+# FOR SR-IOV or multistream layer 2 tests to work with T-Rex enable Promiscuous mode
+TRAFFICGEN_TREX_PROMISCUOUS = False
+PATHS['trafficgen'] = {
+ 'Trex': {
+ 'type' : 'src',
+ 'src': {
+ 'path': os.path.join(ROOT_DIR, 'src/trex/trex/scripts/automation/trex_control_plane/stl')
+ }
+ }
+}
+# TRex validation option for RFC2544
+TRAFFICGEN_TREX_VERIFICATION_MODE = False
+TRAFFICGEN_TREX_VERIFICATION_DURATION = 60
+TRAFFICGEN_TREX_MAXIMUM_VERIFICATION_TRIALS = 10
+# TREX Configuration and Connection Info-- END
+##############################################