X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=conf%2F03_traffic.conf;h=67318893f947d5044c4ac8f6a4788fb11cf2b8b6;hb=b8ef508a78181e017071d9189bb0030305fd1080;hp=db704d02e0b03ae8eecad513d4ae56e9c956ee4f;hpb=881bf91ed8014ba48c55d3a8fc5b4980913f9b95;p=vswitchperf.git diff --git a/conf/03_traffic.conf b/conf/03_traffic.conf index db704d02..67318893 100644 --- a/conf/03_traffic.conf +++ b/conf/03_traffic.conf @@ -71,6 +71,18 @@ LOG_FILE_TRAFFIC_GEN = 'traffic-gen.log' # "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. @@ -135,6 +147,30 @@ LOG_FILE_TRAFFIC_GEN = 'traffic-gen.log' # 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, @@ -143,7 +179,8 @@ TRAFFIC = { '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', @@ -166,6 +203,13 @@ TRAFFIC = { 'priority': 0, 'cfi': 0, }, + 'capture': { + 'enabled': False, + 'tx_ports' : [0], + 'rx_ports' : [1], + 'count': 1, + 'filter': '', + }, } #path to traffic generators directory. @@ -178,6 +222,7 @@ TRAFFICGEN = 'Dummy' #TRAFFICGEN = 'Ixia' #TRAFFICGEN = 'Xena' #TRAFFICGEN = 'Moongen' +#TRAFFICGEN = 'Trex' # List of packet sizes to send. # Expand like this: (64, 128, 256, 512, 1024) @@ -386,6 +431,14 @@ TRAFFICGEN_XENA_2544_TPUT_VALUE_RESOLUTION = '0.5' 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 @@ -407,4 +460,44 @@ TRAFFICGEN_MOONGEN_PORTS = '' 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 +##############################################