EVPN Functions

sth::emulation_evpn_config

Purpose

Spirent Extension (for Spirent HLTAPI only).

Configures Ethernet VPN (EVPN, IEEE 802.1ah) network topology, creates emulated and simulated CE, P, and PE routers, specifies routing and labeling protocols, configures customer and provider side VPNs, and creates the traffic that is sent between VPNs, mapping the operations of the EVPN wizard in the Spirent TestCenter GUI.

This function emulates Ethernet VPN topologies from two points-of-view: customer side and provider side. The customer side includes the CE routers and routes and IP or Ethernet traffic sent from those devices. This side of the network also includes the routing between CE and PE devices (the DUT). The provider side includes P and PE devices, IGP and BGP routing, EVI mapping, and labeled IP traffic sent from the provider side to the customer side of the network.

Both EVPN and Provider Backbone Bridging EVPN (PBB-EVPN) are supported.

Synopsis

Note

M indicates that the argument is Mandatory .

sth::emulation_evpn_config

    General Test Configurations
    [-enable_pbb {true|false}]
    [-enable_unicast {true|false}]
    [-traffic_encapsulation {no_ip|ipv4|ipv6}]

    Provider Port Configurations
    [-core_port_handle  <port_handle>]
    [-core_sub_if_count    <1-65535>]
    [-core_vlan_id_step    <1-4095>]
    [-core_sub_if_enable    {true|false}]
    [-core_vlan_id <1-4095>]
    [-dut_ipv4_addr   <a.b.c.d>]
    [-dut_ipv4_addr_step   <a.b.c.d>]
    [-use_core_ports_enable {true|false}]

    Provider Configurations Routers
    [-core_p_enable    {true|false}]
    [-core_p_per_sub_if <1-65535>]
    [-core_p_if_ip_addr <a.b.c.d>]
    [-core_p_if_prefix_length  <1-30>]
    [-core_p_loopback_ip_addr <a.b.c.d>]
    [-core_p_topology_type   {tree|grid}]
    [-core_p_loopback_ip_addr_step    <a.b.c.d>]
    [-core_pe_per_sub_if    <1-10000>]
    [-core_pe_loopback_ip_addr <a.b.c.d>]
    [-core_pe_loopback_ip_addr_step <a.b.c.d>]
    [-core_route_reflector_enable    {true|false}]
    [-core_route_reflector_mode {stc_as_rr|dut_as_rr}]
    [-core_route_reflector_ids  <a.b.c.d>]
    [-core_igp_protocol {isis|ospf|rip|none}]
    [-core_mpls_protocol  {none|ldp|rsvp|ospf|isis}]
    [-dut_loopback_ip_addr <a.b.c.d>]
    [-enable_4byte_dut_as {true|false}]
    [-dut_as_4byte  <string>]
    [-dut_as  <string>]
    [-area_id <a.b.c.d>]
    [-graceful_restart_type {none|rfcstandard|llsignalling}]
    [-ospfv2_network_type   {native|broadcast|p2p}]
    [-ospfv2_enable_graceful_restart {true|false}]
    [-ospfv2_enable_bfd {true|false}]
    [-ospfv2_router_priority <0-255>]
    [-options {tbit|ebit|mcbit|npbit|eabit|dcbit|obit|unused7}]
    [-ospfv2_password <string>]
    [-ospfv2_authentication  {none|simple|md5}]
    [-ospfv2_md5_key_id <integer>]
    [-sr_algorithm_tlv_algorithms <string>]
    [-sid_label_range_tlv_sid_range <0-65535>]
    [-sid_label_range_tlv_sid_base <0-4294967295>]
    [-prefix_sid_sub_tlv_index_step <0-4294967295>]
    [-prefix_sid_sub_tlv_index <0-4294967295>]
    [-area1 <string>]
    [-area3 <string>]
    [-area2 <string>]
    [-circuit_id <0-255>]
    [-hello_padding {true|false}]
    [-if_cost  <1-65535>]
    [-isis_enable_graceful_restart {true|false}]
    [-isis_enable_bfd  {true|false}]
    [-isis_network_type {broadcast|p2p}]
    [-isis_router_priority <0-127>]
    [-level {level1|level2|level1_and_2}]
    [-l1_metric  <1-63>]
    [-l2_metric <1-63>]
    [-l1_wide_metric <0-16777215>]
    [-l2_wide_metric <0-16777215>]
    [-metric_mode {narrow|wide|narrow_and_wide}]
    [-isis_password <string>]
    [-isis_authentication  {none|md5|simple}]
    [-isis_md5_key_id <integer>]
    [-sr_algorithms <string>]
    [-sr_node_sid_index_step <0-4294967295>]
    [-sr_node_sid_index <0-4294967295>]
    [-sr_cap_sid_base <0-4294967295>]
    [-sr_cap_sid_range <0-65535>]
    [-core_ldp_hello_type {directed|targeted}]
    [-hello_type {ldp_directed_hello|ldp_targeted_hello}]
    [-ldp_label_min <0-1048575>]
    [-ldp_hello_interval  <1-21845>]
    [-label_advertisement_mode {downstream_unsolicited|downstream_on_demand}]
    [-ldp_enable_bfd {true|false}]
    [-ldp_password <string>]
    [-ldp_authentication  {none|md5|simple}]
    [-ldp_md5_key_id  <integer>]
    [-reconnect_time <0-4294967>]
    [-ldp_enable_graceful_restart {true|false}]
    [-transport_tlv_mode  {transport_tlv_mode_none|transport_tlv_mode_tester_ip|
                          transport_tlv_mode_router_id}
    [-keep_alive_interval  <1-21845>]
    [-ldp_egress_label {transport_tlv_mode_router_id|transport_tlv_mode_tester_ip|
                         transport_tlv_mode_router_id}]
    [-ldp_recovery_time  <0-4294967>]

    [-core_p_rsvp_bandwidth_per_link <1-2147483647>]
    [-core_p_rsvp_bandwidth_per_tunnel <0-2147483647>]
    [-enable_resv_request_confirmation {true|false}]
    [-enable_hello {true|false}]
    [-enable_reliable_delivery {true|false}]
    [-inter_pkt_delay  <0-2147483647>]
    [-rsvp_label_max  <1-1048575>]
    [-rsvp_egress_label  {rsvp_egress_implicit_null|rsvp_egress_explicit_null|
                          rsvp_egress_nextavailable}]
    [-rsvp_enable_graceful_restart   {true|false}]
    [-restart_time <0-4294967295>]
    [-rsvp_recovery_time <0-4294967295>]
    [-rsvp_label_min <1-1048575>]
    [-rsvp_enable_bfd    {true|false}]
    [-rsvp_hello_interval <1-2147483647>]
    [-refresh_reduction_summary_refresh_interval  <1-2147483647>]
    [-retransmit_delta  <0-3>]
    [-refresh_interval  <1-2147483647>]
    [-retransmit_limit <0-10>]
    [-refresh_reduction_bundle_interval <1-2147483647>]
    [-retransmit_interval  <1-2147483647>]
    [-transit {rsvp_transit_accept_all|rsvp_transit_accept_configured}]

    Customer Port Configurations
    [-cust_port_handle <port_handle>]
    [-cust_sub_if_enable  {true|false}]
    [-customer_bmac_addr_step  <0-255>]
    [-customer_bmac_addr   <aa:bb:cc:dd:ee:ff>]
    [-cust_vlan_id <1-4095>]
    [-cust_vlan_id_step <1-4095>]
    [-cust_sub_if_count  <1-65535>]
    [-use_cust_ports_enable {true|false}]

    EVI Configurations
    [-core_ce_bgp_as_enable {true|false}]
    [-core_ce_bgp_as_step_per_vpn_enable  {true|false}]
    [-core_ce_bgp_4byte_as_enable    {true|false}]
    [-core_ce_bgp_4byte_as <AS-Number:value|IPv4:Number>]
    [-core_ce_bgp_4byte_as_step_per_vpn <0-65535>]
    [-core_ce_bgp_4byte_as_step_per_ce  <0-65535>]
    [-core_ce_bgp_4byte_as_step_per_ce_enable {true|false}]
    [-core_ce_bgp_4byte_as_step_per_vpn_enable {true|false}]
    [-core_ce_bgp_as_step_per_ce <0-65535>]
    [-core_ce_bgp_as_step_per_vpn <0-65535>]
    [-core_ce_bgp_as <1-65535>]
    [-core_ce_bgp_as_step_per_ce_enable {true|false}]
    [-cust_ce_vpn_assignment   {ROUND_ROBIN|SEQUENTIAL}]
    [-cust_route_distinguisher_step_per_ce <AS-Number:value>]
    [-cust_route_distinguisher_step_per_vpn <AS-Number:value>]
    [-cust_route_distinguisher_step_per_vpn_enable  {true|false}]
    [-cust_route_distinguisher_step_per_ce_enable  {true|false}]
    [-core_pe_evi_assignment {EVI_PER_PE|PES_PER_EVI}]
    [-core_pe_vpn_all {true|false}]
    [-cust_route_distinguisher  <AS-Number:value>]
    [-core_route_distinguisher_step_per_vpn <AS-Number:value>]
    [-core_route_distinguisher_step_per_ce_enable  {true|false}]
    [-core_route_distinguisher_step_per_ce  <AS-Number:value>]
    [-core_route_distinguisher_step_per_vpn_enable {true|false}]
    [-core_route_distinguisher <AS-Number:value>]
    [-vpn_count  <1-65535>]
    [-vpn_route_target  <AS-Number:value|IPv4:Number>]
    [-vpn_route_target_step <AS-Number:value|IPv4:Number>]

    EVPN Configurations
    [-customer_mac_addr <aa:bb:cc:dd:ee:ff>]
    [-customer_mac_addr_prefix <0-48>]
    [-cust_cmac_count <1-2147483647>]
    [-host_mac_start <aa:bb:cc:dd:ee:ff>]
    [-host_mac_prefix  <0-48>]
    [-host_mac_step  <0-255>]
    [-isid_step_value <1-2147483647>]
    [-isid_start_value <1-2147483647>]
    [-isid_count <1-2147483647>]
    [-provider_mac_addr <aa:bb:cc:dd:ee:ff>]
    [-provider_mac_addr_prefix <0-48>]
    [-provider_mac_addr_step <0-255>]
    [-prov_cmac_count  <1-2147483647>]
    [-route_mpls_label_start  <0-1048575>]
    [-ethernet_segment_route {true|false}]
    [-ethernet_segment_type {type0|type1|type2|type3|type4|type5}]
    [-ethernet_segment_id_step <10-byte hexadecimal>]
    [-ethernet_segment_id  <10-byte hexadecimal>]
    [-provider_ethernet_tags_per_evi  <1-2147483647>] w
    [-provider_ethernet_start_tag <1-2147483647>]
    [-provider_ethernet_tag_step <1-2147483647>]

    MAC Block Configurations
    [-cust_host_percent  <0-100.00>]
    [-core_host_percent  <0-100.00>]
    [-cust_hosts_per_ce  <1-2147483647>]
    [-core_hosts_per_ce  <1-2147483647>]
    [-host_overlap {true|false}]
    [-host_vlan_id  <0-4095>]
    [-host_vlan_id_step_per_host <0-4095>]
    [-host_vlan_id_step_per_vpn <0-4095>]
    [-host_num_core_vlans <0-9>]
    [-host_num_cust_vlans <0-9>]
    [-ipv4_route_start <a.b.c.d>]
    [-ipv4_route_prefix_length <1-128>]
    [-ipv4_route_step <1-4294967295>]
    [-total_hosts <1-2147483647>]
    [-hosts_per_vpn  <1-2147483647>]
    [-route_mpls_label_type {site|route}]
    [-vpn_route_mpls_label_start  <0-1048575>]
    [-vlan_enable  {true|false}]
    [-vpn_host_assignment {hosts_per_ce|hosts_per_vpn}]

    Traffic Configurations
    [-traffic_load_percent_from_customer_ports  <0-100>]
    [-traffic_flow <0-100>]
    [-traffic_pattern {ONE_TO_ONE|ONE_TO_MANY}]
    [-traffic_load_percent_from_core_ports <0-100>]
    [-stream_block_group_method  {aggregate|vpn}]
    [-stream_block_use_single_stream_number_per_endpoint_pair {true|false}]

Arguments

General Test Configurations
-traffic_encapsulation

Specifies the traffic encapsulation mode for the test. Possible values are:

NO_IP    Ethernet onlyNo IP
IPv4     IPv4
IPv6     IPv6

The default value is NO_IP.

-enable_pbb

Enables or disables provider PBB EVPN. Possible values are true (enable) and false (disable). The default value is false. A specific set of arguments will be available when this argument is enabled.

-enable_unicast

Enables or disables unicast. Possible values are true (enable) and false (disable). The default value is true.

Provider Port Configurations:

-core_port_handle

Specifies the handle of the provider port

-use_core_ports_enable

Enables or disables provider ports. Possible values are true (enable) and false (disable). The default value is true.

-dut_ipv4_addr

Specifies the starting IP address of the DUT. The default value is 192.85.1.1.

-dut_ipv4_addr_step

Specifies the increment value with which to create subsequent DUT addresses. The default value is 0.0.1.0.

-core_sub_if_count

Specifies the number of sub-interfaces to be created on the provider port. Possible values range from 1 to 65535. The default value is 1. You must set -core_sub_if_enable to true.

-core_vlan_id_step

Specifies the increment value with which to create subsequent VLANs on the provider port. The default value is 0.0.1.0.

-core_sub_if_enable

Enables or disables sub-interfaces on the provider side. Possible values are true (enable) and false (disable). The default value is false.

-core_vlan_id

Specifies the starting VLAN ID on the provider port. Possible values range from 1 to 4095. The default value is 1.

Provider Router Configurations:

-dut_loopback_ip_addr

Specifies the DUT loopback IP address. The default value is 10.0.0.1.

-enable_4byte_dut_as

Enables or disables 4-byte DUT AS numbers for the emulated BGP router. Possible values are true (enable) and false (disable). The default value is false.

-dut_as_4byte

Specifies the 4-byte AS number for the emulated BGP router. The values are in the format of 0:1-65535:65535. The default value is 1:1.

-dut_as

Specifies the DUT AS number for the emulated BGP router. Possible values range from 1 to 65535. The default value is 1.

-core_p_enable

Enables or disables emulation of provider routers in the test. If disabled, only provider edge routers will be emulated/simulated. Possible values are true (enable) and false (disable). The default value is true.

-core_p_per_sub_if

Specifies the number of provider routers per port or sub-interface. Possible values range from 1 to 65535. The default value is 1.

-core_p_if_ip_addr

Specifies the starting loopback IP address of the provider routers. The default value is 1.0.0.1.

-core_p_if_prefix_length

Specifies the prefix length on the provider interface. Possible values range from 1 to 30. The default value is 24.

-core_p_loopback_ip_addr

Specifies the starting loopback IP address for the P router. The default value is 192.0.1.1.

-core_p_topology_type

Specifies the topology of the provider network. Possible values are:

TREE                     Tree topology
GRID                     Grid topology

The default value is TREE.

-core_p_loopback_ip_addr_step

Specifies the increment value with which to create subsequent provider loopback addresses. The value must be in IPv4 format. The default value is 0.0.1.0.

-core_pe_per_sub_if

Specifies the number of PE routers per each sub-interface. Possible values range from 1 to 10000. The default value is 1.

-core_pe_loopback_ip_addr

Specifies the starting PE loopback IP address. The default value is 10.0.0.2.

-core_pe_loopback_ip_addr_step

Specifies the increment value with which to create subsequent PE loopback IP addresses. The default value is 0.0.0.1.

-core_route_reflector_enable

Enables or disables emulation of route reflectors. Possible values are true (enable) and false (disable). The default value is false.

-core_route_reflector_mode

Specifies the route reflector emulation mode. Possible values are:

STC_AS_RR    Specify Spirent TestCenter as the route reflector

DUT_AS_RR   Specify the DUT as the route reflector

The default value is STC_AS_RR.

-core_route_reflector_ids

Specifies the route reflector ID, in IPv4 format. The default value is 0.0.0.0.

-core_igp_protocol

Specifies the IGP protocol on the provider side. Possible values are:

OSPF         OSPF
ISIS         ISIS
RIP          RIP
NONE         No IGP protocol

The default value is OSPF.

-core_mpls_protocol

Specifies the MPLS protocol on the provider side. Possible values are:

NONE          No MPLS protocol
LDP           LDP
RSVP          RSVP-TE
OSPF          OSPF SR
ISIS          ISIS SR

The default value is LDP.

Provider router parameters when -core_igp_protocol is set to OSPF:

-ospfv2_network_type

Specifies the OSPFv2 network type. Possible values are native, broadcast, and p2p. The default value is native.

-ospfv2_enable_graceful_restart

Enables or disables graceful restart for OSPFv2. Possible values are true (enable) and false (disable). The default value is false.

-area_id

Specifies the ID of the area to which the emulated router belongs. It must match an area ID configured for the DUT to enable communication with the DUT. The value must be in IPv4 format. The default value is 0.0.0.0.

-ospfv2_enable_bfd

Enables or disables Bidirectional Forwarding Detection (BFD) for this router. Possible values are true (enable) and false (disable). The default value is false.

-ospfv2_router_priority

Specifies the router priority for this emulated OSPFv2 router. This is used in the designated router election procedure. A router priority of 0 makes the router ineligible to be the designated router. Possible values range from 0 to 255. The default value is 0.

-options

Specifies the value of the Options field in Hello packets sent to the DUT. Use hexadecimal for this value. Possible values are:

TBIT         Type of Service (TOS) (T,0)
EBIT         Specifies the way AS-external-LSAs are flooded (E,1)
MCBIT        Specifies whether IP multicast datagrams are
             forwarded (MC,2)
NPBIT        Specifies the handling of Type-7 LSAs (NSSA) (N/P,3)
EABIT        Specifies the router's willingness to receive
             and forward External-Attributes-LSAs (EA,4)
DCBIT        Specifies the router's handing of demand
             circuits (DC,5)
OBIT         Specifies the router's willingness to receive and
             forward Opaque LSAs as specified in RFC 2370
             (O,6)
UNUSED7      This bit is not used

The default value is EBIT.

-graceful_restart_type

Specifies the type of graceful restart. Possible values are:

NONE                        No graceful restart
RFCSTANDARD                Follows RFC 3623
LLSIGNALLING                Link Layer Signaling

The default value is NONE.

-ospfv2_authentication

Specifies the authentication method for OSPFv2. Possible values are:

NONE               No authentication
SIMPLE             Use simple authentication
MD5                Use MD5 authentication

The default value is NONE.

-ospfv2_password

Specifies the password string for the MD5 authentication. The default value is Spirent.

-ospfv2_md5_key_id

Specifies the MD5 key ID used for MD5 authentication. The default value is 1.

-sr_algorithm_tlv_algorithms

Specifies the SR algorithm, in string format. You must set -core_mpls_protocol to OSPF. The default value is 0.

-sid_label_range_tlv_sid_range

Specifies the size of the SID/Label range. You must set -core_mpls_protocol to OSPF. Possible values range from 0 to 65535. The default value is 100.

-sid_label_range_tlv_sid_base

Specifies the base value for the SID/Label range. You must set -core_mpls_protocol to OSPF. Possible values range from 0 to 4294967295. The default value is 100.

-prefix_sid_sub_tlv_index_step

Specifies the increment value with which to create subsequent SIDs/Labels. You must set -core_mpls_protocol to OSPF. Possible values range from 0 to 4294967295. The default value is 100.

-prefix_sid_sub_tlv_index

Specifies the index value for the SID sub-TLV. You must set -core_mpls_protocol to OSPF. Possible values range from 0 to 4294967295. The default value is 100.

Provider router parameters when core_igp_protocol is set to ISIS:

-if_cost

Specifies the interface cost. The cost of the interface connecting the emulated router to the neighbor SUT router. Possible values range from 1 to 65535. The default value is 1.

-isis_enable_graceful_restart

Enables or disables graceful restart for the emulated ISIS router. Possible values are true (enable) and false (disable). The default value is false.

-isis_enable_bfd

Enables or disables BFD for the emulated ISIS router. Possible values are true (enable) and false (disable). The default value is false.

-hello_padding

When enabled, Spirent HLTAPI will insert Hello Padding in Hello Packets. Possible values are true (enable) and false (disable). The default value is true.

-level

Specifies the circuit type of the emulated router. It defines the type of adjacency that Spirent TestCenter establishes with the SUT. Possible values are:

LEVEL1             Level 1
LEVEL2             Level 2
LEVEL1_AND_2       Both level 1 and level 2

The default value is LEVEL2.

-metric_mode

Specifies the length of the metric field in the LSP. Possible values are:

NARROW              Router advertises routes with a narrow
                     (6-bit) metric
WIDE                Router advertises routes with a wide
                    (24 or 32-bit) metric
NARROW_AND_WIDE      Router advertises the same route with
                      both metrics

The default value is NARROW_AND_WIDE.

-area1

Specifies area address 1 in string format. Spirent HLTAPI supports up to three addresses per emulated router. Area 1 address is Mandatory . The default value is 000001.

-area2

Specifies area address 2 in string format. Area 1 must be specified before area 2. The default value is 000001.

-area3

Specifies area address 3 in string format. Area 1 and area 2 must be specified before area 3. The default value is 000001.

-l1_wide_metric

Specifies the level 1 traffic engineering metric of a link from the emulated router to the SUT. Possible values range from 0 to 16777215. The default value is 1.

-l1_metric

Specifies the level 1 metric of the emulated router interface. Possible values range from 1 to 63. The default value is 1.

-l2_wide_metric

Specifies the level 2 traffic engineering metric of a link from the emulated router to the SUT. Possible values range from 0 to 16777215. The default value is 1.

-l2_metric

Specifies the level 2 metric of the emulated router interface. Possible values range from 1 to 63. The default value is 1.

-isis_network_type

Specifies the type of the ISIS interface. Possible values are:

BROADCAST               Broadcast
P2P                     Point to Point

The default value is BROADCAST.

-isis_router_priority

Specifies the ISIS router priority, which is used to determine which router should act as the designated router. Possible values range from 0 to 127. The default value is 0.

-circuit_id

Specifies the 1-octet Hex identifier of the emulated router interface. This argument is only applicable to non-Ethernet connections. Possible values range from 0 to 255. The default value is 1.

-isis_password

Specifies the password for ISIS messages. It is used as a password string for simple authentication, or as a key string for MD5. If the SUT is configured to authenticate messages, this password must match the SUT password. The default value is Spirent.

-isis_authentication

Specifies the method to use for authentication of ISIS messages. Possible values are:

NONE       No authentication
SIMPLE     Simple authentication
MD5        MD5 authentication

The default value is NONE.

-isis_md5_key_id

Specifies the MD5 key ID used for MD5 authentication. Possible values range from 1 to 255. The default value is 1.

-sr_algorithms

Specifies the ISIS SR algorithm, in string format. You must set -core_mpls_protocol to ISIS. The default value is 0.

-sr_node_sid_index_step

Specifies the increment value with which to create subsequent SID indexes of the ISIS SR. You must set -core_mpls_protocol to ISIS. Possible values range from 0 to 4294967295. The default value is 1.

-sr_node_sid_index

Specifies the index value for the SID sub-TLV of ISIS SR. You must set -core_mpls_protocol to ISIS. Possible values range from 0 to 4294967295. The default value is 0.

-sr_cap_sid_base

Specifies the base value for the SID/Label range of ISIS SR. You must set -core_mpls_protocol to ISIS. Possible values range from 0 to 4294967295. The default value is 100.

-sr_cap_sid_range

Specifies the size of the SID/Label range for ISIS SR. You must set -core_mpls_protocol to ISIS. Possible values range from 0 to 65535. The default value is 100.

Provider router parameters when core_mpls_protocol is set to LDP:

-ldp_label_min

Specifies the minimum label advertised by the emulated router. Possible values range from 0 to 1048575. The default value is 16.

-ldp_hello_interval

Specifies the Hello interval for LDP packets, in milliseconds (ms). Possible values range from 1 to 21845. The default value is 5.

-core_ldp_hello_type

Specifies the type of Hello messages for the LDP session. Possible values are:

directed        A basic discovery mechanism used to locate
                directly connected neighbors

targeted         An extended discovery mechanism used to locate
                neighbors not directly connected

The default value is DIRECTED.

-hello_type

Specifies the type of Hello packet transmitted by the emulated peer. Possible values are:

LDP_DIRECTED_HELLO               Directed Hello
LDP_TARGETED_HELLO               Targeted Hello

The default value is LDP_DIRECTED_HELLO.

-label_advertisement_mode

Specifies the label advertisement mode for LDP. Possible values are:

DOWNSTREAM_UNSOLICITED   Downstream unsolicited
DOWNSTREAM_ON_DEMAND     Downstream on demand

The default value is DOWNSTREAM_UNSOLICITED.

-ldp_enable_bfd

Enables or disables BFD for this emulated LDP router. Possible values are true (enable) and false (disable). The default value is true.

-ldp_password

Specifies the LDP authentication password. The default value is Spirent.

-ldp_authentication

Specifies the authentication type for LDP. Possible values are:

NONE             No authentication
MD5              MD5 authentication

The default value is NONE.

-ldp_md5_key_id

Specifies the MD5 Key ID used for MD5 authentication. The default value is 1.

-reconnect_time

Specifies the value of Fault Tolerant Reconnect timeout. This argument is available when -ldp_enable_graceful_restart is set to true. Possible values range from 0 to 4294967. The default value is 60.

-ldp_enable_graceful_restart

Enables or disables graceful start for this emulated LDP router. Possible values are true (enable) and false (disable). The default value is false.

-transport_tlv_mode

Specifies the transport TLV mode. Possible values are:

TRANSPORT_TLV_MODE_NONE         None
TRANSPORT_TLV_MODE_TESTER_IP    Emulated router interface address
TRANSPORT_TLV_MODE_ROUTER_ID    Emulated router ID

The default value is TRANSPORT_TLV_MODE_TESTER_IP.

-keep_alive_interval

Specifies the Keepalive time (in seconds) proposed in the initialization message sent by the peer. Possible values range from 1 to 21845. The default value is 60.

-ldp_egress_label

Specifies the egress label advertised by the emulated peer. Possible values are:

LDP_EGRESS_NEXTAVAILABLE    Next available

LDP_EGRESS_IMPLICIT_NULL    Implicit null

LDP_EGRESS_EXPLICIT_NULL    Explicit null

The default value is LDP_EGRESS_NEXTAVAILABLE.

-ldp_recovery_time

Specifies the LDP recovery time. This argument is available when -ldp_enable_graceful_restart is set to true. Possible values range from 0 to 4294967. The default value is 140.

Provider router parameters when core_mpls_protocol is set to RSVP:

Specifies the ISIS/OSPFv2 TE Link Maximum bandwidth for simulated P router topology links, in bytes/sec. Possible values range from 1 to 2147483647. The default value is 100000.

-core_p_rsvp_bandwidth_per_tunnel

Specifies the RSVP-TE T-Spec Bandwidth rate for provider tunnels, in bytes/sec. Possible values range from 0 to 2147483647. The default value is 0.

-rsvp_egress_label

Specifies the egress label advertised by the emulated peer. Possible values are:

RSVP_EGRESS_IMPLICIT_NULL   This label value is used in an LDP
                            or RSVP packet to enable
                            penultimate hop label popping.

RSVP_EGRESS_EXPLICIT_NULL  Explicit null instructions are
                           signaled to the penultimate
                           router by the egress router.

RSVP_EGRESS_NEXTAVAILABLE  For each FEC, the LSR advertises the
                           next available label from the
                           minimum label to maximum label pool.

The default value is RSVP_EGRESS_NEXTAVAILABLE.

-transit

Defines the RESV message sent if the emulated router is not the tail-end for PATH messages it receives. RESV messages are used to set up and maintain the “resources requested” as well as “refresh” reservations. Possible values are:

 RSVP_TRANSIT_ACCEPT_ALL           Router sends a RESV
                                   message with the next
                                   available label for every
                                   PATH message received.

RSVP_TRANSIT_ACCEPT_CONFIGURED
                                   Router sends a RESV
                                   message with the next
                                   available label in
                                   response to PATH messages
                                   that match one of its
                                   egress tunnels.

The default value is RSVP_TRANSIT_ACCEPT_CONFIGURED.

-rsvp_enable_graceful_restart

Enables or disables graceful start for this emulated RSVP router. Possible values are true (enable) and false (disable). The default value is false.

-restart_time

Specifies the sum of time (in milliseconds) that it takes the sender of the object to restart the RSVP-TE component and the RSVP communication channel. This argument is available when -rsvp_enable_graceful_restart is set to true. Possible values range from 0 to 4294967295. The default value is 3000.

-rsvp_recovery_time

Specifies the period of time (in milliseconds) that the sender needs for the recipient to re-synchronize RSVP and MPLS forwarding state with the sender, after the re-establishment of Hello synchronization. This argument is available when -rsvp_enable_graceful_restart is set to true. Possible values range from 0 to 4294967295. The default value is 0.

-rsvp_label_max

Specifies the maximum label advertised by the emulated RSVP router. Possible values range from 1 to 1048575. The default value is 65535.

-rsvp_label_min

Specifies the minimum label advertised by the emulated RSVP router. Possible values range from 1 to 1048575. The default value is 16.

-rsvp_enable_bfd

Enables or disables BFD for this emulated RSVP router. Possible values are true (enable) and false (disable). The default value is false.

-inter_pkt_delay

Time interval (in milliseconds) to gather refresh messages that have been sent out individually. Messages are sent out as a single refresh message upon interval expiration or when the message size exceeds the MTU. Possible values range from 0 to 2147483647. The default value is 30.

-rsvp_hello_interval

Specifies the interval between RSVP Hello packets. This argument is available when -enable_hello is set to true. Possible values range from 1 to 2147483647. The default value is 1000.

-enable_resv_request_confirmation

When enabled, Spirent HLTAPI signals the ingress to send out a RESV_CONFIRM message to confirm the successful installation of a reservation. Possible values are:

true              Enables RESV-Request confirmation
false             Disables RESV-Request confirmation

The default value is false.

-enable_hello

Enables or disables Hello messages for RSVP sessions. Possible values are true (enable) and false (disable). The default value is false.

-enable_reliable_delivery

Enables or disables reliable delivery (retransmission parameters). Possible values are true (enable) and false (disable). The default value is false.

-refresh_reduction_summary_refresh_interval

Specifies the time interval (in milliseconds) to gather refresh messages that have been sent out individually. Messages are sent out as a single refresh message upon interval expiration or when the message size exceeds the MTU. Possible values range from 1 to 2147483647.

-retransmit_delta

Specifies the multiplier by which the retransmission interval is increased each time an unacknowledged message is retransmitted. Possible values range from 0 to 3. The default value is 1.

-refresh_interval

Specifies the time interval for a PATH and RESV message to be sent out to the path receiver to refresh the PATH/RESV state along each hop of the path. Possible values range from 1 to 2147483647. The default value is 30000.

-retransmit_limit

Specifies the maximum number of times a message is transmitted without being acknowledged. Possible values range from 0 to 10. The default value is 3.

-refresh_reduction_bundle_interval

Specifies the time interval (in milliseconds) to wait before sending queued messages. Possible values range from 1 to 2147483647. The default value is 1000.

-retransmit_interval

Specifies the initial retransmission interval (in milliseconds) for unacknowledged messages. Possible values range from 1 to 2147483647. The default value is 500.

Customer Port Configurations:

-cust_port_handle

Specifies the customer port handle to be used

-use_cust_ports_enable

Enables or disables the use of customer ports. Possible values are true (enable) and false (disable). The default value is false.

-cust_sub_if_enable

Enables or disables sub-interfaces on the customer port. Possible values are true (enable) and false (disable). The default value is false.

-customer_bmac_addr_step

Specifies the increment value with which to create subsequent backbone MAC (B-MAC) addresses. Possible values range from 0 to 255. The default value is 1.

-customer_bmac_addr

Specifies the first B-MAC address. The default value is 0.0.1.0.0.1.

-cust_vlan_id

Specifies the starting VLAN ID on the customer port. Possible values range from 1 to 4095. The default value is 1.

-cust_vlan_id_step

Specifies the increment value with which to create subsequent VLAN IDs. Possible values range from 1 to 4095. The default value is 1.

-cust_sub_if_count

Specifies the number of sub-interfaces to create on the customer port. Possible values range from 1 to 65535. The default value is 1.

EVPN Instance (EVI) Configurations

-core_ce_bgp_as_enable

Enables or disables BGP AS numbers on the provider side. Possible values are true (enable) and false (disable). The default value is false.

-core_ce_bgp_as_step_per_vpn_enable

Enables or disables increment values to create subsequent BGP AS numbers for CE routers per each EVI on the provider side. Possible values are true (enable) and false (disable). The default value is true.

-core_ce_bgp_4byte_as_enable

Enables or disables 4-byte AS numbers for CE routers on the provider side. Possible values are true (enable) and false (disable). The default value is false.

-core_ce_bgp_4byte_as

Specifies the starting 4-byte AS number of the CE router on the provider side. This argument is available when -core_ce_bgp_4byte_as_enable is set to true. The value must be in AS-Number:value or IPv4:Number format. The default value is 1:1.

-core_ce_bgp_4byte_as_step_per_vpn

Enables or disables increment values to create subsequent 4-byte BGP AS numbers for CE routers per each EVI on the provider side. Possible values are true (enable) and false (disable). The default value is false.

-core_ce_bgp_4byte_as_step_per_ce

Specifies the increment value with which to create subsequent 4-byte AS numbers across CE routers on the provider side. This argument is available when -core_ce_bgp_4byte_as_step_per_ce_enable is set to true. Possible values range from 0 to 65535. The default value is 1.

-core_ce_bgp_4byte_as_step_per_ce_enable

Enables or disables increment values to create subsequent 4-byte AS numbers across CE routers on the provider side. Possible values are true (enable) and false (disable). The default value is false.

-core_ce_bgp_4byte_as_step_per_vpn_enable

Enables or disables increment values to create subsequent 4-byte AS numbers per EVI on the provider side. Possible values are true (enable) and false (disable). The default value is false.

-core_ce_bgp_as_step_per_ce

Specifies the increment value with which to create subsequent AS numbers across provider CE routers. Possible values range from 0 to 65535. The default value is 1.

-core_ce_bgp_as_step_per_vpn

Specifies the increment value with which to create subsequent BGP AS numbers per EVI on the provider side. Possible values range from 0 to 65535. The default value is 1.

-core_ce_bgp_as

Specifies the starting AS number for CE routers on the provider side. Possible values range from 1 to 65535. The default value is 1.

-core_ce_bgp_as_step_per_ce_enable

Enables or disables increment values to create subsequent AS numbers across CE routers. Possible values are true (enable) and false (disable). The default value is false.

-cust_ce_vpn_assignment

Determines how EVIs are assigned to CE routers on the customer side. Possible values are:

 ROUND_ROBIN           The first CE created is assigned to the
                       first EVI. The second CE that is created
                       is assigned to the second EVI, etc.

SEQUENTIAL             CEs that are created are assigned to the
                       first EVI until the calculated number of
                       CEs per EVI is reached. Additional CEs
                       are assigned to the second and subsequent
                       EVIs in the same fashion.

The default value is ROUND_ROBIN.

-cust_route_distinguisher_step_per_ce

Specifies the increment value with which to create subsequent route distinguishers per each CE router. The value must be in AS-Number:value format. The default value is 0:0.

-cust_route_distinguisher_step_per_vpn

Specifies the increment value with which to create subsequent route distinguishers per each EVI. The value must be in AS-Number:value format. The default value is 0:0.

-cust_route_distinguisher_step_per_vpn_enable

Enables or disables increment values to create subsequent route distinguishers per each EVI on the customer side. Possible values are true (enable) and false (disable). The default value is true.

-cust_route_distinguisher_step_per_ce_enable

Enables or disables increment values to create subsequent route distinguishers per each CE router on the customer side. Possible values are true (enable) and false (disable). The default value is false.

-core_pe_evi_assignment

Specifies the distribution mode across EVI and PE items. Items will be distributed across a set of targets on the provider side. This argument determines which is the item and which is the target. Possible values are:

EVI_PER_PE         EVI per PE
PES_PER_EVI        PEs per EVI

The default value is EVI_PER_PE.

-core_pe_vpn_all

When enabled, Each PE has routes in all EVIs. Possible values are true (enable) and false (disable). The default value is false.

-cust_route_distinguisher

Specifies the starting route distinguisher on the customer side. The value must be in AS-Number:value format. The default value is is 1:0.

-core_route_distinguisher_step_per_vpn

Specifies the increment value with which to create subsequent route distinguishers for each EVI on the provider side. The value must be in AS-Number:value format. The default value is 1:0.

-core_route_distinguisher_step_per_ce_enable

Enables or disables increment values to create subsequent route distinguishers per CE on the provider side. Possible values are true (enable) and false (disable). The default value is false.

-core_route_distinguisher_step_per_ce

Specifies the increment value with which to create subsequent route distinguishers per CE on the provider side. The value must be in AS-Number:value format. The default value is 0:0.

-core_route_distinguisher_step_per_vpn_enable

Enables or disables increment values to create subsequent route distinguishers per EVI on the provider side. Possible values are true (enable) and false (disable). The default value is false.

-core_route_distinguisher

Specifies the route distinguisher for the EVI route. The value must be in AS-Number:value format. The default value is 1:0.

-vpn_count

Specifies the number of EVIs to configure. Possible values range from 1 to 65535. The default value is 10.

-vpn_route_target

Specifies the Route Target extended community attribute of the EVI. The value must be in AS-Number:value or IPv4:Number format. The default value is 1:0.

-vpn_route_target_step

Specifies the increment value with which to create subsequent route targets for the EVI. The value must be in AS-Number:value or IPv4:Number format. The default value is 1:0.

PBB EVPN Configurations (with -traffic_encapsulation set to PBB)

-isid_start_value

Specifies the starting service instance identifier (I-SID). Possible values range from 1 to 2147483647. The default value is 1.

-isid_step_value

Specifies the increment value with which to create subsequent I-SIDs. Possible values range from 1 to 2147483647. The default value is 1.

-isid_count

Specifies the number of I-SIDs to create. Possible values range from 1 to 2147483647. The default value is 1.

-customer_mac_addr

Specifies the starting MAC address on the customer side. The default value is 0.0.1.0.0.1.

-customer_mac_addr_prefix

Specifies the prefix for the host MAC address on the customer side. Possible values range from 0 to 48. The default value is 48.

-customer_mac_addr_step

Specifies the increment value with which to create subsequent MAC addresses on the customer side. Possible values range from 0 to 255. The default value is 1.

-cust_cmac_count

Specifies the number of customer MACs (C-MAC) to create on the provider side. Possible values range from 1 to 2147483647. The default value is 1.

-provider_mac_addr

Specifies the starting MAC address on the provider side. The default value is 0.0.1.0.0.1.

-provider_mac_addr_prefix

Specifies the prefix for the host MAC address on the provider side. Possible values range from 0 to 48. The default value is 48.

-provider_mac_addr_step

Specifies the increment value with which to create subsequent MAC addresses on the provider side. The default value is 1.

-prov_cmac_count

Specifies the number of C-MACs to create on the provider side. Possible values range from 1 to 2147483647. The default value is 1.

-host_mac_start

Specifies the starting host MAC address. The default value is 0.0.1.0.0.1.

-host_mac_prefix

Specifies the prefix for the host MAC. Possible values range from 0 to 48. The default value is 48.

-host_mac_step

Specifies the increment value with which to create subsequent host MAC addresses. Possible values range from 0 to 255 The default value is 1.

-route_mpls_label_start

Specifies the starting MPLS label for the route. Possible values range from 0 to 1048575. The default value is 16.

EVPN Parameters (with -traffic_encapsulation set to IPV4 or IPV6)

-ethernet_segment_route

When enabled, Spirent HLTAPI will generate Ethernet segment routes for the EVPN. Possible values are true (enable) and false (disable). The default value is false.

-ethernet_segment_type

Specifies the Ethernet segment type to be generated. It determines the format of the Ethernet segment ID. Possible values are:

TYPE0                    Operator
TYPE1                    IEEE 802.1AX LACP
TYPE2                    Bridged LAN
TYPE3                    MAC Based
TYPE4                    Router ID
TYPE5                    Autonomous System

The default value is TYPE0.

-ethernet_segment_id

Specifies the Ethernet segment ID. An Ethernet segment ID identifies the link between the CE and a PE. The value must be a 10-byte hexadecimal. The default value is 00:00:00:00:00:00:00:00:00.

-ethernet_segment_id_step

Specifies the increment value with which to create subsequent Ethernet Segment IDs. The value must be a 10-byte hexadecimal. The default value is 00:00:00:00:00:00:00:00:00.

-provider_ethernet_tags_per_evi

Specifies the number of Ethernet tags to create per EVI on the provider side. Possible values range from 1 to 2147483647. The default value is 1.

-provider_ethernet_start_tag

Specifies the value of the first Ethernet tag on the provider side. Possible values range from 1 to 2147483647. The default value is 1.

-provider_ethernet_tag_step

Specifies the increment value with which to create subsequent Ethernet tags on the provider side. Possible values range from 1 to 2147483647. The default value is 1.

MAC Block Configurations

-route_mpls_label_type

Specifies whether MPLS labels are assigned per site or per route. Possible values are:

SITE                Label per site
ROUTE               Label per route

The default value is SITE.

-vpn_route_mpls_label_start

Specifies the value of the first MPLS label. Possible values range from 0 to 1048575. The default value is 16.

-vlan_enable

Enables or disables host VLANs. Possible values are true (enable) and false (disable). The default value is false.

-host_overlap

Determines whether to allow hosts to overlap. Possible values are:

true       Restart the numbering of the emulated CE host block MAC
           address at the first Host MAC value when starting a
           new CE host block

false      Continue incrementing the MAC address when starting a
           new emulated CE host block

The default value is false.

-host_vlan_id

Specifies the starting host VLAN ID. You must set -vlan_enable to true. Possible values range from 0 to 4095. The default value is 100.

-host_vlan_id_step_per_host

Specifies the increment value with which to create subsequent VLAN IDs per host. Possible values range from 0 to 4095. The default value is 0.

-host_vlan_id_step_per_vpn

Specifies the increment value with which to create subsequent VLAN IDs per EVI. Possible values range from 0 to 4095. The default value is 0.

-host_num_core_vlans

Specifies the number of host VLANs to be configured for provider side hosts. Possible values range from 0 to 9. The default value is 1.

-host_num_cust_vlans

Specifies the number of host VLANs to be configured for customer side hosts. Possible values range from 0 to 9. The default value is 1.

-vpn_host_assignment

Specifies how EVI hosts are assigned. Possible values are:

HOSTS_PER_CE                Hosts per CE
HOSTS_PER_VPN               Hosts per VPN
TOTAL_HOSTS                 Total hosts

The default value is HOSTS_PER_CE.

-cust_hosts_per_ce

Specifies the number of hosts per CE on the customer side. Possible values range from 1 to 2147483647. The default value is 1.

-core_hosts_per_ce

Specifies the number of hosts per CE on the provider side. Possible values range from 1 to 2147483647. The default value is 1.

-total_hosts

Specifies the total number of hosts to be created. Possible values range from 1 to 2147483647. The default value is 100.

-hosts_per_vpn

Specifies the number of hosts per EVI on the provider side. Possible values range from 1 to 2147483647. The default value is 100.

-cust_host_percent

Specifies the customer host percent. Possible values range from 0 to 100. The default value is 50.

-core_host_percent

Specifies the provider host percent. Possible values range from 0 to 100. The default value is 50.

-ipv4_route_start

Specifies the starting IP address for the route. The default value is 110.1.1.0.

-ipv4_route_prefix_length

Specifies the prefix length of the route IP address. Possible values range from 1 to 128. The default value is 64.

-ipv4_route_step

Specifies the increment value with which to create subsequent IP addresses. Possible values range from 1 to 4294967295. The default value is 1.

Traffic Configurations

-traffic_load_percent_from_customer_ports

Specifies the traffic load percent from customer ports. Possible values range from 0 to 100. The default value is 10.

-traffic_flow

Specifies the traffic flow to be configured. Possible values are:

CUSTOMER_TO_CORE   Emulated CE devices > emulated PE devices,
                    through the DUT

CORE_TO_CUSTOMER   Emulated PE devices > emulated P device >
                   the emulated CE, through the DUT

BIDIRECTIONAL      Bi-directional, traffic flow in both directions
                   between the emulated CE and the simulated CE
                   devices behind the PEs fully_meshed traffic
                   flows are created between all CE sites
                   within the same VPLS that are on different ports.

NONE               No traffic flow
-traffic_pattern

Specifies the traffic pattern. Possible values are:

ONE_TO_ONE           One-to-one
ONE_TO_MANY          One-to-many

The default value is ONE_TO_MANY.

-traffic_load_percent_from_core_ports

Specifies the traffic load percent from provider ports. Possible values range from 0 to 100. The default value is 10.

-stream_block_group_method

Specifies the stream block grouping method. Possible values are:

AGGREGATE  Aggregates all streams into a single stream block

VPN        Aggregates all streams for a single VPN into a single
           stream block

The default value is AGGREGATE.

-stream_block_use_single_stream_number_per_endpoint_pair

Specifies whether to use a single stream number per endpoint pair. Possible values are:

true     Each endpoint is assigned a single stream ID
false    Each flow between endpoint pairs is assigned a single
         stream ID

The default value is false.

Return Values

Depending on the specific language that HLTAPI uses, the function returns a keyed list/dictionary/hash (See Introduction for more information on return value formats) using the following keys (with corresponding data):

rtgtestgenipv4portparams_hnd        General test configuration handle
vpnigpisissessionparams_hnd         EVPN IGP/ISIS session handle
vpnevpngencustportparams_hnd        EVPN customer port handle
vpnlsppinggenipv4coreparams_hnd     EVPN LSP core handle
vpnevpngencoreportparams_hnd        EVPN provider port handle
vpnevpngenparams_hnd                EVPN general parameters handle
rtgtestgenipv6portparams_hnd        EVPN IPv6 provider port handle
vpnlsppinggenipv4vpnparams_hnd      EVPN LSP provider handle
ldpauthenticationparams_hnd         LDP authentication handle
isisauthenticationparams_hnd        ISIS authentication handle
ospfv2authenticationparams_hnd      OSPFv2 authentication handle

LdpRouterConfig         The LDP router configuration handle returned by the function
BfdRouterConfig         The BFD router configuration handle returned by the function
Ospfv2RouterConfig      The OSPFv2 router configuration handle returned by the function
BgpRouterConfig         The BGP router configuration handle returned by the function
BgpRouter               The device handle which contains BgpRouterConfig
LdpRouter               The device handle which contains LdpRouterConfig
OspfRouter              The device handle which contains Ospfv2RouterConfig
BfdRouter               The device handle which contains BfdRouterConfig

CERouter                The device handle for the CE Router
PERouter                The device handle for the PE Router

status                  Success (1) or failure (0) of the operation

log                     An error message (if the operation failed)

Description

The sth::emulation_evpn_config function configures Ethernet VPN topology, creates emulated and simulated CE, P, and PE routers, specifies routing and labeling protocols, configures customer and provider side VPNs, and creates the traffic that is sent between VPNs, mapping the operations of the EVPN wizard in the Spirent TestCenter GUI.

If the operation fails, Spirent HLTAPI returns an error message.

Examples

Sample Input:

set device_ret1 [sth::emulation_evpn_config\
    -core_port_handle                               $port1\
    -cust_port_handle                                $port2\
    -enable_pbb                                      false \
    -enable_unicast                                  true \
    -traffic_encapsulation                           IPv4 \
    -use_core_ports_enable                           true \
    -dut_ipv4_addr                                   13.1.1.1 \
    -dut_ipv4_addr_step                              0.0.0.1 \
    -core_sub_if_count                               1 \
    -core_vlan_id_step                               1 \
    -core_sub_if_enable                             false \
    -core_vlan_id                                    4 \
    -dut_loopback_ip_addr                           4.4.4.4 \
    -enable_4byte_dut_as                            true \
    -dut_as_4byte                                    1:1 \
    -dut_as                                          2 \
    -core_p_enable                                  true \
    -core_p_per_sub_if                              1 \
    -core_p_if_ip_addr                              13.1.1.2 \
    -core_p_if_prefix_length                        24 \
    -core_p_loopback_ip_addr                         172.1.0.1 \
    -core_p_topology_type                            GRID \
    -core_p_loopback_ip_addr_step                   0.0.0.1 \
    -core_pe_per_sub_if                             1\
    -core_pe_loopback_ip_addr                       20.1.1.1 \
    -core_pe_loopback_ip_addr_step                  0.0.0.1 \
    -core_route_reflector_enable                    true \
    -core_route_reflector_mode                      DUT_AS_RR \
    -core_route_reflector_ids                        1.1.1.0 \
    -core_igp_protocol                              ISIS \
    -core_mpls_protocol                             RSVP \
    -ospfv2_network_type                            NATIVE \
    -ospfv2_enable_graceful_restart                 false \
    -area_id                                        0.0.0.100 \
    -ospfv2_enable_bfd                              false \
    -ospfv2_router_priority                         1 \
    -options                                        EBIT \
    -graceful_restart_type                          NONE \
    -sr_algorithm_tlv_algorithms                    0 \
    -sid_label_range_tlv_sid_range                  100 \
    -sid_label_range_tlv_sid_base                   100 \
    -prefix_sid_sub_tlv_index_step                  1 \
    -prefix_sid_sub_tlv_index                       0 \
    -if_cost                                        1 \
    -isis_enable_graceful_restart                   false \
    -isis_enable_bfd                                false \
    -isis_authentication                             none \
    -l2_wide_metric                                 1 \
    -hello_padding                                  true \
    -level                                          LEVEL2 \
    -metric_mode                                    NARROW_AND_WIDE \
    -area1                                          000001 \
    -area3                                          000001 \
    -area2                                          000001 \
    -l1_wide_metric                                  1 \
    -isis_network_type                               BROADCAST \
    -l1_metric                                       1 \
    -isis_router_priority                            0 \
    -circuit_id                                      1 \
    -l2_metric                                       1 \
    -sr_algorithms                                   0 \
    -sr_node_sid_index_step                          1 \
    -sr_node_sid_index                              0 \
    -sr_cap_sid_base                                100 \
    -sr_cap_sid_range                               100 \
    -ldp_label_min                                  16 \
    -ldp_hello_interval                             5 \
    -core_ldp_hello_type                            DIRECTED \
    -hello_type                                     LDP_DIRECTED_HELLO \
    -label_advertisement_mode                       DOWNSTREAM_UNSOLICITED \
    -ldp_enable_bfd                                 false \
    -reconnect_time                                 60 \
    -ldp_enable_graceful_restart                    false \
    -transport_tlv_mode                         TRANSPORT_TLV_MODE_TESTER_IP \
    -keep_alive_interval                        60 \
    -ldp_egress_label                           LDP_EGRESS_NEXTAVAILABLE \
    -ldp_recovery_time                          140 \
    -core_p_rsvp_bandwidth_per_link             100000 \
    -core_p_rsvp_bandwidth_per_tunnel            0 \
    -rsvp_egress_label                       RSVP_EGRESS_NEXTAVAILABLE \
    -transit                                 RSVP_TRANSIT_ACCEPT_CONFIGURED \
    -label_max                                          65535 \
    -rsvp_enable_graceful_restart                       false \
    -restart_time                                       3000 \
    -rsvp_recovery_time                                  0 \
    -rsvp_label_min                                     16 \
    -rsvp_enable_bfd                                    true \
    -inter_pkt_delay                                    30 \
    -rsvp_hello_interval                                1000 \
    -enable_resv_request_confirmation                   true \
    -enable_hello                                       true \
    -enable_reliable_delivery                           true \
    -refresh_reduction_summary_refresh_interval         null \
    -retransmit_delta                                   1 \
    -refresh_interval                                   30000 \
    -retransmit_limit                                   3 \
    -refresh_reduction_bundle_interval                  3000 \
    -retransmit_interval                                500 \
    -use_cust_ports_enable                              true \
    -cust_sub_if_enable                                 true \
    -customer_bmac_addr_step                            1 \
    -customer_bmac_addr                                 40:00:01:00:00:01 \
    -cust_vlan_id                                       7 \
    -cust_vlan_id_step                                  2 \
    -cust_sub_if_count                                  1 \
    -vpn_count                                          1 \
    -vpn_route_target                                   1:1 \
    -vpn_route_target_step                              1:1 \
    -core_ce_bgp_as_enable                              true \
    -core_ce_bgp_as_step_per_vpn_enable                 true \
    -core_ce_bgp_4byte_as_enable                        true \
    -core_ce_bgp_4byte_as                               1:1 \
    -core_ce_bgp_4byte_as_step_per_vpn                  1 \
    -core_ce_bgp_4byte_as_step_per_ce                   1 \
    -core_ce_bgp_4byte_as_step_per_ce_enable            true \
    -core_ce_bgp_4byte_as_step_per_vpn_enable           true \
    -core_ce_bgp_as_step_per_ce                         1 \
    -core_ce_bgp_as_step_per_vpn                        1 \
    -core_ce_bgp_as                                     1 \
    -core_ce_bgp_as_step_per_ce_enable                  true \
    -cust_ce_vpn_assignment                             ROUND_ROBIN \
    -cust_route_distinguisher_step_per_ce               0:0 \
    -cust_route_distinguisher_step_per_vpn              1:0 \
    -cust_route_distinguisher_step_per_vpn_enable       false \
    -cust_route_distinguisher_step_per_ce_enable        true \
    -core_pe_evi_assignment                             EVI_PER_PE \
    -core_pe_vpn_all                                    false \
    -cust_route_distinguisher                           1:0 \
    -core_route_distinguisher_step_per_vpn              1:1 \
    -core_route_distinguisher_step_per_ce_enable         true \
    -core_route_distinguisher_step_per_ce               0:0 \
    -core_route_distinguisher_step_per_vpn_enable       false \
    -core_route_distinguisher                           1:0 \
    -ethernet_segment_route                             false \
    -ethernet_segment_type                              TYPE3 \
    -ethernet_segment_id_step                           00:00:00:00:00:00:00:00:00 \
    -ethernet_segment_id                                00:00:00:00:00:00:00:00:00 \
    -provider_ethernet_tags_per_evi                     1 \
    -provider_ethernet_start_tag                        1 \
    -provider_ethernet_tag_step                         1 \
    -route_mpls_label_type                              ROUTE \
    -vpn_route_mpls_label_start                         16 \
    -vlan_enable                                        true \
    -host_overlap                                       false \
    -host_vlan_id                                       100 \
    -host_vlan_id_step_per_host                          0 \
    -host_vlan_id_step_per_vpn                          1 \
    -host_num_core_vlans                                1 \
    -host_num_cust_vlans                                1 \
    -vpn_host_assignment                                HOSTS_PER_VPN \
    -cust_hosts_per_ce                                  1 \
    -core_hosts_per_ce                                  1 \
    -total_hosts                                        100 \
    -hosts_per_vpn                                      100 \
    -cust_host_percent                                  50 \
    -core_host_percent                                  50 \
    -ipv4_route_start                                   210.1.1.0 \
    -ipv4_route_prefix_length                           24 \
    -ipv4_route_step                                    1 \
    -traffic_load_percent_from_customer_ports           10.0 \
    -traffic_flow                                       CORE_TO_CUSTOMER \
    -traffic_pattern                                    ONE_TO_MANY \
    -traffic_load_percent_from_core_ports               20.0 \
    -stream_block_group_method                          AGGREGATE \
    -stream_block_use_single_stream_number_per_endpoint_pair    false \
    ]

Sample Output:

{status 1} {rtgtestgenipv4portparams_hnd {rtgtestgenipv4portparams2
rtgtestgenipv4portparams1}} {isisauthenticationparams_hnd
{isisauthenticationparams1 isisauthenticationparams2 isisauthenticationparams3
isisauthenticationparams4 isisauthenticationparams5 isisauthenticationparams6
isisauthenticationparams7}} {rtgtestgenipv6portparams_hnd
{rtgtestgenipv6portparams1 rtgtestgenipv 6portparams2}} {vpnevpngenparams_hnd
vpnevpngenparams1} {ldpauthenticationparams_hnd {ldpauthenticationparams1
ldpauthenticationparams2 ldpauthenticationparams3 ldpauthenticationparams4
ldpauthenticationparams5 ldpauthenticationparams6 ldpauthenticationparams7}}
{vpnigpisissessionparams_hnd {vpnigpisissessionparams1 vpnigpisissessionparams2
vpnigpisissessionparams3 vpnigpisissessionparams4 vpnigpisissessionparams5
vpnigpisissessionparams6 vpnigpisissessionparams7}} {ospfv2aut
henticationparams_hnd {ospfv2authenticationparams1 ospfv2authenticationparams2
ospfv2authenticationparams3 ospfv2authenticationparams4
ospfv2authenticationparam s5 ospfv2authenticationparams6
ospfv2authenticationparams7}} { vpnevpngencoreportparams_hnd
vpnevpngencoreportparams1} {vpnevpngencustportparams_hnd
vpnevpngencustportparams1} {LdpRouterConfig {ldprouterconfig1 }} {BfdRouterConfig
{bfdrouterconfig1 }} {Ospfv2RouterConfig {ospfv2routerconfig1 }} {BgpRouterConfig
{bgprouterconfig1 }} {BgpRouter {emulateddevice2 }} {LdpRouter {emulateddevice1
}} {OspfRouter {emulateddevice1 }} {BfdRouter {emulateddevice1 }} {CERouter
{emulateddevice3 emulateddevice4}} {PERouter emulateddevice2} {Streamblock
{streamblock1 streamblock2}}