Xena Knowledge Base

Xena2544 Configuration File Syntax

This page describes the syntax of the configuration files used by the Xena2544 test program.

The files are saved in a JSON text format. They can in principle be edited by a normal text editor.

Main File Structure

The configuration file contains the following main parts:

Name Explanation
FormatVersion Specifies the version of the file format.
CommonConfig Common configuration options and bookkeeping for the test configuration.
ChassisList Contains a list of all the Xena chassis (testers) and ports used in the test.
TestTypeMap Contains configuration parameters for the 4 test-types supported (Throughput, Loss, Latency/Jitter and Back-to-Back).
TrafficConfig Contains the common traffic configuration parameters.
ReportConfig Contains the reporting configuration parameters.

General Configuration

FormatVersion

This parameter is an integer value indicating the format version of the configuration file. This is intended for handling potential future non-backward compatible changes.


CommonConfig

This section contains the following parameters:

Name Type Explanation
CreationDate String A timestamp indicating the file creation date and time.
Topology Enum Indicates the topology used by the test. Can be one of the following:

  • PAIRS
  • BLOCKS
  • MESH
Direction Enum Indicates the direction of the traffic flows used by the test. Can be one of the following:

  • EAST_WEST
  • WEST_EAST
  • BIDIR

Traffic Configuration

This section provides the overall traffic configuration used by all test types.

General Traffic Options

Name Type Explanation
TrafficType Enum Specifies the traffic type used. Can be one of the following:

  • L2_ETHERNET
  • L2_ETHERNET_VLAN
  • L2_ETHERNET_VLAN_VLAN
  • L3_ETHERNET_IP
  • L3_ETHERNET_IP_UDP
  • L3_ETHERNET_VLAN_IP
  • L3_ETHERNET_VLAN_VLAN_IP
  • L3_ETHERNET_VLAN_IP_UDP
  • L3_ETHERNET_VLAN_VLAN_IP_UDP
UseUDPChecksum Bool Specifies if a UDP checksum should be generated. Only valid if the traffic type includes UDP.

Frame Sizes

Name Type Explanation
TrafficSizeSel Enum Specifies how the packet sizes are specified. The following values are supported:

  • IEEEDefault (use the standard IEEE-defined sizes)
  • MixedSizes (use a mix specified by the Xena tester)
  • CustomSizes (specify your own size list)
  • Specified (specify using start, end and step values)
CustomTrafficSizes Number list A list of size values.Only used when TrafficSizeSel = CustomSizes.
StartSize Number The start value to use when TrafficSizeSel = Specified.
EndSize Number The end value to use when TrafficSizeSel = Specified.
StepSize Number The step value to use when TrafficSizeSel = Specified.

MAC Address and Learning

Name Type Explanation
MacBaseAddress Byte list A comma-separated list of byte value to use as the first 3 bytes on a MAC address when constructing port addresses. Only used when set to a L2 traffic type and UseNativeMacForL2 = False.
UseNativeMacForL2 Bool If set to True use the native (factory-assigned) MAC addresses for the ports, otherwise construct MAC addresses for ports.
MacLearningMode Enum Specifies the MAC learning frequency. Can be one of the following values:

  • Never (never perform MAC learning)
  • Once (perform MAC learning once for every test)
  • EveryTrial (perform MAC learning at the start of every trial)
MacLearningRetries Number Specifies the number of MAC learning retries.

Payload

Name Type Explanation
PayloadType Enum The payload generation policy:

  • Pattern (specify a pattern)
  • Incrementing (use an automatic incrementing pattern)
  • PRBS (use a PRBS pattern)
PayloadPattern Byte list A comma-separated list of byte values to use when PayloadType = Pattern.

Port Speed

Name Type Explanation
UsePhysPortSpeed Bool Specifies whether to use the full physical port speed or if a lower speed should be used.
MaxConfigPortSpeed Number Specifies the max. port speed to use when UsePhysPortSpeed = False.

Packet Fields

Name Type Explanation
EtherType1 Byte list A comma-separated list of bytes to use for the EtherType field in the base Ethernet frame.
PCP1 Number The PCP value for the first (inner) VLAN tag
VlanTag1 Number The VLAN tag value for the first (inner) VLAN tag.
EtherType2 Byte list The EtherType value for the first (inner) VLAN tag.
PCP2 Number The PCP value for the second (outer) VLAN tag
VlanTag2 Number The VLAN tag value for the second (outer) VLAN tag.
EtherType3 Byte list The EtherType value for the second (outer) VLAN tag.
DiffServCodePoint Number The IP DSCP field value.
IpIdentification Number The IP ID field value,
IpProtocolType Number The IP Protocol field value
UdpSrcPort Number The UDP Source port field value.
UdpDestPort Number The UDP Destination port field value.