MPLS TP Functions¶
emulation mpls tp config¶
Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>
- Purpose:
This function is a Spirent Extension to configure the emulation of a Multiprotocol Label Switching ProtocolTransport Profile (MPLSTP) network, or a Martini style Pseudo Wire Emulation Edgeto-Edge(PWE3) network topologies (as in Spirent Test Center) on the specified port.
A PWE3 VPN uses extended Virtual Circuit (VC) Label Switched Path (LSP) of Label Protocol (LDP) or BGP signaling in the MPLS architecture to exchange Layer 2 switching information between VPN sites on the service provider network.
The system includes two types of topologiesSingle Segment and Multi Segment. In a singlesegment test, only Provider Edge (PE) routers and a Provider (P) router are involved; while in a multi segment test, the DUT serves as an S-PE router or an Ingress/Egress router.
The different parts of a PWE3 VPN are described as:
- Provider (P) router
- Router in the core of the provider network. P routers run MPLS switching, and do not attach VPN labels (assigned by PE routers) to routed packets between VPN sites.
- ProviderEdge (PE) router
- Edge router of the MPLS network that attaches the VPN label to the incoming packets based on the interface or subinterface on which they are received. A PE router directly attaches to a Customer Edge (CE) device. VPN labels are used to direct data packets to the correct egress router of MLPS network.
- Customer Edge (CE) device
- Edge device on the network of a VPN site that connects to the PE router on the ISP network. A CE must interface with a PE router.
- Pseudo Wire Switching Provider Edge (SPE)
- The switching router in a multisegment PW.
- Pseudowire Terminating Provider Edge (TPE)
- The ingress/egress router in a multisegment PW, which connects directly to a CE.
The parameter also supports LSP Ping.
Spirent HLTAPI supports the types of PWE3 VPN listed below: :
- Ethernet over MPLS (EoMPLS or Martini Traffic)
- Pointto-Point connection of Ethernet VPN over MPLS network.
- LDPVirtual Private LAN Services (VPLS)
- LDP signaled multipointto-multipoint Ethernet VPN over MPLS network.
- BGP- Virtual Private LAN Services(VPLS)
- BGP signaled multipointto-multipoint Ethernet VPN over MPLS network.
Spirent HLTAPI also supports MPLS over GRE for PWE3 VPN.
Synopsis:
Note: M indicates the argument is `Mandatory`.
emulation mpls tp config
mode= {create|delete} M
ports= <handle> M
port_handle= <port_handle>
handle= <handle>
test_type= {pwe|mplstp}
Configure PWE Topology
attachment_group_id= (100:1)
attachment_group_id_assignment= {use_rt|manual}
attachment_group_id_increment= <xx:xx>
attachment_group_id_increment_simulated_segment= <xx:xx>
attachment_group_id_simulated_segment= <xx:xx>
cbit= { 0|1 }
core_host_percent= <0-100>
core_hosts_per_ce= <1-2147483647>
core_igp_protocol= {ospf|isis|rip}
core_ldp_hello_type= {directed|targeted}
core_mpls_protocol= {none|ldp|rsvp}
core_p_enable= { 0|1 }
core_p_if_ip_addr= {a.b.c.d}
core_p_if_prefix_length= <0-30>
core_p_loopback_ip_addr= {a.b.c.d}
core_p_loopback_ip_addr_step= {a.b.c.d}
core_p_per_sub_if= <1-65535>
core_p_rsvp_bandwidth_per_link= <1-2147483647>
core_p_rsvp_bandwidth_per_tunnel= <0-2147483647>
core_p_topology_type= {tree|grid}
core_pe_loopback_ip_addr= {a.b.c.d}
core_pe_loopback_ip_addr_step= {a.b.c.d}
core_pe_per_sub_if= <1-65535>
create_unused_vpn_hosts_core_ports= { 0|1 }
cust_host_percent= <0-100>
cust_hosts_per_ce= <1-2147483647>
dut_as= {a.b.c.d}
dut_loopback_ip_addr= {a.b.c.d}
enable_bgp_auto_discovery= { 0|1 }
enable_nil_fec_label= { 0|1 }
encap= {ldp_lsp_encap_frame_relay_dlci|ldp_lsp_encap_atm_aal5_vcc|ldp_lsp_encap_atm_transparent_cell|ldp_lsp_encap_ethernet_vlan|ldp_lsp_encap_ethernet|ldp_lsp_encap_hdlc|ldp_lsp_encap_ppp|ldp_lsp_encap_cem|ldp_lsp_encap_atm_vcc|ldp_lsp_encap_atm_vpc|ldp_lsp_encap_ethernet_vpls}
encap_override= { 0|1 }
group_id= <0-65535>
host_num_core_vlans= <0-9>
host_num_cust_vlans= <0-9>
host_num_left_site_vlans= <0-9>
host_num_right_site_vlans= <0-9>
host_vlan_id= <0-65535>
host_vlan_id_step_per_host= <0-65535>
host_vlan_id_step_per_vpn= <0-65535>
hosts_per_vpn= < 1- 2147483647>
include_status_tlv= { 0|1 }
ldp_fec_type= {fec_128|fec_129}
ldp_fec_type_simulated_segment= {fec_128|fec_129}
left_site_host_percent= <1-100>
left_site_hosts_per_ce= <1-2147483647>
mtu= <512-65535>
multi_segment_topology_type= {dut_spe|dut_ingress_egress}
pseudowire_type= {multi_segment|single_segment}
pw_count= <1-4294967295>
right_site_host_percent= <0-100>
right_site_hosts_per_ce= <1-2147483647>
route_distinguisher= <XX:XX>
route_distinguisher_assignment= {manual|use_rt}
route_distinguisher_increment= <xx:xx>
route_target= <xx:xx >
route_target_increment= <xx:xx>
s_pe_enable= { 0|1
simulated_pe_loopback_ip_addr= <a.b.c.d>
simulated_pe_loopback_ip_addr_step= <a.b.c.d>
simulated_pe_per_core_pe= <1-65535>
simulated_t_pe_per_core_pe= <1-65535>
src_attachment_individual_id= <a.b.c.d>
src_attachment_individual_id_increment= <a.b.c.d>
src_attachment_individual_id_increment_simulated_segment= <a.b.c.d>
src_attachment_individual_id_simulated_segment= <a.b.c.d>
status_code= {attachment_circuit_rx_fault|attachment_circuit_tx_fault|
not_forwarding|pseudowire_rx_fault|pseudowire_tx_fault}]
stream_block_group_method= {aggregate|vpn}
stream_block_use_single_stream_number_per_endpoint_pair= { 0|1 }
t_pe_per_sub_if= <0-1000>
target_attachment_individual_id= <a.b.c.d>
target_attachment_individual_id_increment= <a.b.c.d>
target_attachment_individual_id_increment_simulated_segment= <a.b.c.d>
target_attachment_individual_id_simulated_segment= <a.b.c.d>
traffic_flow= {bidirectional|core_to_customer|customer_to_core}
traffic_load_percent_from_core_ports= <0-100>
traffic_load_percent_from_customer_ports= <0-100>
traffic_load_percent_from_left_site_ports= <0-100>
traffic_load_percent_from_right_site_ports= <0-100>
vc_count= <1-65535>
vc_id_pe_overlap_enable= {0|1}
vc_id_start= <1-4294967295>
vc_id_start_simulated_segment= <1-4294967295>
vc_id_step= <1-4294967295>
vc_id_step_simulated_segment= <1-4294967295>
vlan_enable= { 0|1 }
enable_core_tunnel_lsp_ping= { 0|1 }
core_tunnel_lsp_ping_config
dst_addr= {a.b.c.d}
experimental_bits= <0-7>
pad_data
pad_mode= {request_copy_pad_tlv|request_drop_pad_tlv|no_pad_tlv}
ping_interval= <0-3999999999>
ping_timeout= <0-99>
time_to_live= <1-255>
validate_fec_stack= { 0|1 }
enable_vpn_to_dut_tunnel_lsp_ping= { 0|1 }
vpn_to_dut_tunnel_lsp_ping_config
dst_addr= {a.b.c.d}
experimental_bits= <0-7>
pad_data
pad_mode= {tlvrequest_copy_pad_tlv|request_drop_pad_tlv|no_pad_tlv}
ping_interval= <0-3999999999>
ping_timeout= <0-99>
time_to_live= <1-255>
validate_fec_stack= { 0|1 }
vpn_host_assignment= {hosts_per_ce|hosts_per_vpn}
vpn_host_id_format_enable= { 0|1 }
vpn_host_id_format_offset_bytes= <0-4>
vpn_host_id_format_port_bytes= <0-4>
vpn_host_id_format_router_bytes= <0-4>
vpn_host_mac_start= <aa:bb:cc:dd:ee:ff>
vpn_host_mac_step= <aa:bb:cc:dd:ee:ff>
vpn_host_overlap= { 0|1 }
Configure MPLSTP= Topology::
work_protect_pair_list= <working_device protecting_device pair list>
LSP
mplstp_enable_linear_protection_on_lsps= {true|false}
mplstp_enable_static_lsps= {true|false}
mplstp_enable_dynamic_lsps= {true|false}
PWE Configuration
mplstp_enable_linear_protection_on_pws= {true|false}
mplstp_enable_dynamic_pws= {true|false}
mplstp_enable_static_pws= {true|false}
mplstp_enable_scale_mode= {true|false}
mplstp_dut_topology= {edge}
mplstp_segment_type= {single_segment}
Linear Protection
mplstp_flow_mode= {bi_directional|uni_directional}
mplstp_protection_path= {point_to_point}
mplstp_protection_type= {one_to_one}
mplstp_revertive_mode= {nonrevertive|revertive}
Configure Routers/LSPs::
mplstp_global_id= <octets>
mplstp_dut_node_id= <a.b.c.d>
LSP Configuration
mplstp_lsp_work_src_tunnel_num= <NUMERIC>
mplstp_lsp_work_src_tunnel_step= <NUMERIC>
mplstp_lsp_work_dst_tunnel_num= <NUMERIC>
mplstp_lsp_work_dst_tunnel_step= <NUMERIC>
mplstp_lsp_work_lsp_id= <NUMERIC>
mplstp_lsp_work_lsp_id_step= <NUMERIC>
mplstp_lsp_work_incoming_label= <NUMERIC>
mplstp_lsp_work_incoming_label_step= <NUMERIC>
mplstp_lsp_work_outgoing_label= <NUMERIC>
mplstp_lsp_work_outgoing_label_step= <NUMERIC>
mplstp_lsp_protect_src_tunnel_num= <NUMERIC>
mplstp_lsp_protect_src_tunnel_step= <NUMERIC>
mplstp_lsp_protect_dst_tunnel_num= <NUMERIC>
mplstp_lsp_protect_dst_tunnel_step= <NUMERIC>
mplstp_lsp_protect_lsp_id= <NUMERIC>
mplstp_lsp_protect_lsp_id_step= <NUMERIC>
mplstp_lsp_protect_incoming_label= <NUMERIC>
mplstp_lsp_protect_incoming_label_step= <NUMERIC>
mplstp_lsp_protect_outgoing_label= <NUMERIC>
mplstp_lsp_protect_outgoing_label_step= <NUMERIC>
P Routers(MIP)
mplstp_core_p_enable= {true|false}
mplstp_core_p_per_subif= <1-65535>
mplstp_p_router_node_id= <a.b.c.d>
mplstp_p_router_node_id_step= <a.b.c.d>
PE Routers (MEPs)
mplstp_core_pe_per_p= <1-65535>
mplstp_pe_router_node_id= <a.b.c.d>
mplstp_pe_router_node_id_step= <a.b.c.d>
Configure PWE:
[mplstp_total_pws_working <NUMERIC>]
PW
mplstp_pwe_work_use_attachment_group_id= {true|false}
mplstp_pwe_work_attach_circuit_id_local= <NUMERIC>
mplstp_pwe_work_attach_circuit_id_local_step= <NUMERIC>
mplstp_pwe_work_attach_circuit_id_remote= <NUMERIC>
mplstp_pwe_work_attach_circuit_id_remote_step= <NUMERIC>
mplstp_pwe_work_attach_group_id < 32bit= value >
mplstp_pwe_work_attach_group_id_step < 32bit= mask>
mplstp_pwe_work_incoming_label= <NUMERIC>
mplstp_pwe_work_incoming_label_step= <NUMERIC>
mplstp_pwe_work_outgoing_label= <NUMERIC>
mplstp_pwe_work_outgoing_label_step= <NUMERIC>
mplstp_pwe_work_enable_control_word= {true|false}
Configure OAM and Triggers:
LSPs
Enable BFD
mplstp_lsp_work_enable_bfd_options= {true|false}
mplstp_lsp_work_enable_bfd_trigger= {true|false}
mplstp_lsp_work_bfd_config= <BFD_OPTION_LIST>
Enable LSP Ping
mplstp_lsp_work_enable_lsp_ping_options= {true|false}
mplstp_lsp_work_enable_lsp_ping_trigger= {true|false}
mplstp_lsp_work_lsp_ping_config= <LSP_PING_OPTION_LIST>
Enable Y1731
mplstp_lsp_work_enable_y1731_options= {true|false}
mplstp_lsp_work_y1731_config= <Y1731_OPTION_LIST>
PW
Enable BFD
mplstp_pwe_work_enable_bfd_options= {true|false}
mplstp_pwe_work_enable_bfd_trigger= {true|false}
mplstp_pwe_work_bfd_config= <BFD_OPTION_LIST>
Enable LSP Ping
mplstp_pwe_work_enable_lsp_ping_options= {true|false}
mplstp_pwe_work_enable_lsp_ping_trigger= {true|false}
mplstp_pwe_work_lsp_ping_config= <LSP_PING_OPTION_LIST>
Enable Y1731
mplstp_pwe_work_enable_y1731_options= {true|false}
mplstp_pwe_work_y1731_config= <Y1731_OPTION_LIST>
<BFD_OPTION_LIST>
mplstp_bfd_rx_interval= <1-10000>
mplstp_bfd_tx_interval= <1-10000>
mplstp_bfd_detect_multiplier= <2-100>
mplstp_bfd_enable_gen_associated_channel= {true|false}
mplstp_bfd_enable_gen_associated_label= {true|false}
mplstp_bfd_encap= {raw|udp}
mplstp_bfd_message_format= {bfd_cc|bfd_cv}
mplstp_bfd_failure_duration= <1-1200>
mplstp_bfd_failure_command= {admin_down|set_diagnostic_code|stop_pdu}
mplstp_bfd_clear_duration= <1-1200>
mplstp_bfd_clear_command= {clear_failure|none}
mplstp_bfd_loop_count= <1-100>
mplstp_bfd_include_tlv= {true|false}
mplstp_bfd_results_file_name= <ANY>
mplstp_bfd_tlv_code= <ipv4_src_tlv|mep_custom_tlv|mep_lsp_tlv|mep_pw_tlv|
mep_section_tlv|none>]
<LSP_PING_OPTION_LIST>
mplstp_lsp_ping_channel_type= <NUMERIC>
mplstp_lsp_ping_clear_duration= <1-1200>
mplstp_lsp_ping_dst_addr= <a.b.c.d>
mplstp_lsp_ping_echo_reply_mode= {control_channel|ip_udp_packet|
ip_udp_with_router_alert|no_reply}]
mplstp_lsp_ping_enable_gen_associated_channel= {true|false}
mplstp_lsp_ping_enable_gen_associated_label= {true|false}
mplstp_lsp_ping_experimental_bits= <0-7>
mplstp_lsp_ping_failure_duration= <1-1200>
mplstp_lsp_ping_include_tlv= {true|false}
mplstp_lsp_ping_loop_count= <1-100>
mplstp_lsp_ping_clear_command= {clear_failure|none}
mplstp_lsp_ping_encap= {raw|udp}
mplstp_lsp_ping_failure_command= {pause_lsp_ping}
mplstp_lsp_ping_lsp_sub_tlv= <NUMERIC>
mplstp_lsp_ping_operation_mode= {both|lsp_ping|trace_route}
mplstp_lsp_ping_ping_interval= <NUMERIC>
mplstp_lsp_ping_ping_timeout= <NUMERIC>
mplstp_lsp_ping_pw_sub_tlv= <NUMERIC>
mplstp_lsp_ping_time_to_live= <1-255>
mplstp_lsp_ping_tlv_code= {ipv4_src_tlv|mep_custom_tlv|mep_lsp_tlv|
mep_pw_tlv|mep_section_tlv|none}]
mplstp_lsp_ping_trace_route= <NUMERIC>
mplstp_lsp_ping_trace_route_timeout= <NUMERIC>
mplstp_lsp_ping_validate_fec_stack= {true|false}
mplstp_lsp_ping_results_file_name= <ANY>
<Y1731_OPTION_LIST>
mplstp_y1731_cc_period= {ccperiod_100ms|ccperiod_10min|ccperiod_10ms|
ccperiod_10s|ccperiod_1min|ccperiod_1s|ccperiod_3ms}]
mplstp_y1731_dut_mep_id_fixed_across_megs= {true|false}
mplstp_y1731_num_dut_mps_per_meg= <1-10>
mplstp_y1731_dut_mep_id_start= <1-8191>
mplstp_y1731_dut_mep_id_step= <1-8191>
mplstp_y1731_icc_length= <1-6>
mplstp_y1731_id_expression= <ANY>
mplstp_y1731_meg_id_wildcard= <ANY>
mplstp_y1731_meg_id_wildcard_range_step= <1-4294967295>
mplstp_y1731_meg_id_wildcard_range_start= <1-4294967295>
mplstp_y1731_me_level= <0-7>
mplstp_y1731_mep_id_start= <1-8191>
mplstp_y1731_mep_id_step= <0-8191>
mplstp_y1731_merge_duplicate_megs= {true|false}
mplstp_y1731_results_file_name= <ANY>
Configure Hosts::
Host MAC
mplstp_vpn_host_id_format_enable= {true|false}
mplstp_vpn_host_id_format_offset_bytes= <0-5>
mplstp_vpn_host_id_format_port_bytes= <0-4>
mplstp_vpn_host_id_format_router_bytes= <0-4>
mplstp_vpn_host_mac_start= <aa:bb:cc:dd:ee:ff>
mplstp_vpn_host_mac_step= <aa:bb:cc:dd:ee:ff>
mplstp_vpn_host_overlap= {true|false}
Host VLAN Stacked VLAN
mplstp_vlan_enable= {true|false}
mplstp_host_num_core_vlans= <0-9>
mplstp_host_num_cust_vlans= <0-9>
mplstp_host_vlan_id= <1-4095>
mplstp_host_vlan_id_step_per_host= <0-4095>
mplstp_host_vlan_id_step_per_vpn= <1-4095>
Host Assignment
mplstp_total_hosts= <1-2147483647>
mplstp_vpn_host_assignment= {hosts_per_ce|hosts_per_vpn|total_hosts}
mplstp_hosts_per_vpn= {1-2147483647}
mplstp_core_hosts_per_ce= {1-2147483647}
mplstp_cust_hosts_per_ce= {1-2147483647}
Configure Traffic:
mplstp_traffic_flow= {bidirectional|core_to_customer|customer_to_core none}
mplstp_traffic_load_percent_from_core_ports= <0-100>
mplstp_traffic_load_percent_from_cust_ports= <0-100>
Arguments:
test_type
Spirent Extension (for Spirent HLTAPI only).
Determines the test type
Values:
pwe
PWE wizard automation
mplstp
MPLSTP wizard automation
mode
Specifies the action to perform. This argument is `Mandatory`.
Values:
create
Configures PWE3 VPN/MPLSTP on the port specified with the
port_handle argument
delete
Deletes the PWE3/MPLSTP configurations
The following arguments are for PWE wizard::
attachment_group_id
Specifies the first attachment group identifier across the
provider network. Input value should be in format xx:xx. The
default value is 100:1.
This argument is available when enable_bgp_auto_discovery
is set to 0 and argument ldp_fec_type is set to fec_129.
attachment_group_id_assignment
Defines the Attachment Group ID (AGI) assignment mode.
Possible values are::
user_rt - Sets AGI to the RT value that is specified by
route_target.
manual - Sets AGI to the value that is specified by
attachment_group_id.
The default value is use_rt.
This argument is available when enable_bgp_auto_discovery
is set to 1 and ldp_fec_type is set to fec_129.
attachment_group_id_increment
The step value for subsequent AGIs. Input value should be in
format xx:xx. The default value is 0:1.
This argument is available when enable_bgp_auto_discovery is
set to 0 and ldp_fec_type is set to fec_129.
attachment_group_id_simulated_segment
Specifies the first attachment group identifier across a
simulated segment. Input value should be in format xx:xx.
The default value is 100:1.
This argument is available when pseudowire_type is set to
multi_segment and ldp_fec_type is set to fec_129.
attachment_group_id_increment_simulated_segment
The step value for subsequent AGIs in a simulated segment.
Input value should be in format xx:xx. The default value is
0:1.
This argument is available when pseudowire_type is set to
multi_segment and ldp_fec_type_simulated_segment is set to
fec_129.
create_unused_vpn_hosts_core_ports
Enables or disables the creation of provider hosts for unused
VPNs. Possible values are 1 (enabled) and 0 (disabled). The
default value is 0.
core_pe_per_sub_if
Number of Provider Edge (PE) routers per port or subinterface.
Possible values range from 1 to 65535. The default value is 1.
This argument is available when pseudowire_type is set to
single_segment and core_p_enable is set to 1.
core_pe_loopback_ip_addr
Specifies the loopback IP address of the PE router that the
configured PWE3 connection attaches to. Input value
must be in the IPv4 format. The default value is 10.0.0.2.
core_pe_loopback_ip_addr_step
The increment value for the next loopback address.
Input value must be in the IPv4 format.
The default value is 0.0.0.1.
core_p_enable
Enables or disables emulation of provider routers in the test.
Possible values are 1 (enabled) and 0 (disabled). If it is
set to 0, only provider edge routers will be simulated.
The default value is 1.
core_p_loopback_ip_addr
Specifies the starting loopback IP address of P routers.
This argument must be in the IPv4 format. The default
value is 192.0.1.1.
This argument is available when core_p_enable is set to 1.
core_p_loopback_ip_addr_step
The increment value for the next loopback address for provider
routers. Input value must be in the IPv4 format.
The default value is 0.0.1.0.
This argument is available when core_p_enable is set
to 1.
core_p_if_ip_addr
Specifies the starting IP address of the interface between the
P and PE routers. This argument must be in the IPv4 format.
The default value is 1.0.0.1.
This argument is available when core_p_enable is set to 1.
core_p_if_prefix_length
Specifies the IP prefix length on the Pto-PE interface.
Possible values range from 0 to 30. The default value is 24.
This argument is available when core_p_enable is set to 1.
core_p_topology_type
Specifies the topology of the provider network. Possible
values are tree and grid. The default value is tree.
This argument is available when core_p_enable is set to 1.
core_p_per_sub_if
Number of P routers per port or subinterface. Possible values
range from 1 to 65535. The default value is 1.
This argument is available when core_p_enable is set to 1.
Note: Only one emulated P router is created on each port or
subinterface. Additional P routers are simulated through
the IGP protocol.
core_mpls_protocol
Specifies the signaling protocol to be used by the provider
side. MPLS refers to a mechanism which directs and transfers
data between Wide Area Networks (WANs) nodes with high
performance, regardless of the content of the data.
none
Specifies that there is no MPLS protocol to be used by the
provider side.
ldp
Indicates the Label Distribution Protocol (LDP).
rsvp
Indicates the resource reservation setup protocol (RSVP).
The default value is ldp.
core_ldp_hello_type
Specifies the type of Hello messages for the LDP session in
the provider network. Possible values are:
directed
A Basic Discovery mechanism that is used to locate
directlyconnected neighbors. The Peer IP address
is the DUT interface address.
targeted
An Extended Discovery mechanism that is used
to locate neighbors which are not directly connected.
The Peer IP address is the DUT loopback address.
The default value is direct. This argument is available when
core_mpls_protocol is set to ldp.
core_igp_protocol
Specifies the Interior Gateway Protocol (IGP) used by the
provider side. Networks within an autonomous system communicate
routing information to each other using an IGP protocol.
Possible values are:
ospf
Indicates Open Shortest Path First (OSPF), which is
a router protocol used within larger autonomous
system networks.
isis
Specifies the Intermediate System to Intermediate
system (ISIS) protocol. Routers (Intermediate Systems)
use ISIS to exchange routes within a single
network (routing domain).
rip
Specifies the Routing Information Protocol (RIP).
The default value is ospf.
core_p_rsvp_bandwidth_per_link
Specifies the maximum bandwidth per ISIS/OSPFv2 TE link for
simulated Provider router topology links. The value is
measured in bytes per second. Possible values range from 1
to 2147483647. The default value is 100000.
This argument is available when core_mpls_protocol is set
to rsvp.
core_p_rsvp_bandwidth_per_tunnel
Specifies the RSVPTE T-Spec Bandwidth rate in bytes/sec
Possible values range from 1 to 2147483647. The default
value is 100000.
This argument is available when core_mpls_protocol is set
to rsvp.
core_hosts_per_ce
Specifies the number of hosts assigned to each providerside
or rightside CE router. Possible values range from 1 to
2147483647. The default value is 1.
This argument is available when pseudowire_type is set to
single_segment and vpn_host_assignment is set to
hosts_per_ce.
cust_hosts_per_ce
Specifies the number of hosts assigned to each customerside
or rightside CE router. Possible values range from 1 to
2147483647. The default value is 1.
This argument is available when pseudowire_type is set to
single_segment and vpn_host_assignment is set to
hosts_per_ce.
core_host_percent
Specifies the percentage of hosts on the provider or right side.
Possible values range from 0 to 100. The default value is 50.
This argument is available when pseudowire_type is set to
single_segment and vpn_host_assignment is set to hosts_vpn.
cust_host_percent
Specifies the percentage of hosts on the customer or left side.
Possible values range from 0 to 100. The default value is 50.
This argument is available when pseudowire_type is set to
single_segment and vpn_host_assignment is set to hosts_vpn.
cbit
Enables setting the control bit to 1. Possible values are
1 (enabled) and 0 (disabled). The default value is 0.
dut_as
Specifies the number of autonomous systems (AS) of DUT.
Possible values range from 1 to 65535. The default value is 1.
This argument is available when enable_bgp_auto_discovery is
set to 1. and ldp_fec_type is set to fec_129.
dut_loopback_ip_addr
Defines the loopback IP address. The value must be in the
IPv4 format. The default value is 10.0.0.1
encap_override
Enables or disables the Encap parameters. Possible values are 1
(enabled) and 0 (disabled). The default value is 0.
encap
Specifies the Layer 2 encapsulation type. The values are
described below::
ldp_lsp_encap_frame_relay_dlci Frame Relay DLCI
ldp_lsp_encap_atm_aal5_vcc ATM AAL5 Cell Transport
ldp_lsp_encap_atm_transparent_cell ATM Transparent Cell Transport
ldp_lsp_encap_ethernet_vlan Ethernet VLAN
ldp_lsp_encap_ethernet Ethernet
ldp_lsp_encap_hdlc HDLC
ldp_lsp_encap_ppp PPP
ldp_lsp_encap_cem CEM
ldp_lsp_encap_atm_vcc ATM VCC cell transport
ldp_lsp_encap_atm_vpc ATM VPC cell transport
ldp_lsp_encap_ethernet_vpls Ethernet VPLS
Data traffic generation is only supported for encapsulation
types 4 (Ethernet VLAN), 5 (Ethernet), and 11 (VPLS). All
other encapsulations can be advertised in label messages,
but data traffic is not generated. The default value is
ldp_lsp_encap_ethernet_vlan.
enable_core_tunnel_lsp_ping
Enables or disables LSP Ping on the core tunnel. Possible
values are 1 (enabled) and 0 (disabled). The default value
is 0.
core_tunnel_lsp_ping_config
A list of suboptions that configure core tunnel LSP Ping.
This argument is available when enable_core_tunnel_lsp_ping
is set to 1.
enable_vpn_to_dut_tunnel_lsp_ping
Enables or disables LSP Ping on PEto-DUT VPN tunnels. Possible
values are 1 (enabled) and 0 (disabled). The default value is 0.
vpn_to_dut_tunnel_lsp_ping_config
A list of suboptions that configure LSP Ping for VPN-to-DUT
tunnels.
This argument is available when
enable_vpn_to_dut_tunnel_lsp_ping is set to 1.
enable_bgp_auto_discovery
Enables or disables BGP autodiscovery in the provider network.
Possible values are 1 (enabled) and 0 (disabled). The default
value is 0.
This argument is available when ldp_fec_type is set to fec_129.
group_id
Specifies a unique identifier for the virtual tunnel. Possible
values range from 0 to 65535. The default value is 0.
hosts_per_vpn
Specifies the number of hosts assigned to each VPN or PW.
Possible values range from 1 to 2147483647. The default value
is 100.
This argument is available when vpn_host_assignment is set to
hosts_per_vpn
host_num_cust_vlans
Specifies the number of customer side VLAN headers. Possible
values range from 0 to 9. The default is 1.
This argument is available when pseudowire_type is set to
single_segment and vlan_enable is set to 1.
host_num_core_vlans
Specifies the number of provider side VLAN headers. Possible
values range from 0 to 9. The default is 1.
This argument is available when pseudowire_type is set to
single_segment and vlan_enable is set to 1.
host_vlan_id
Specifies the value of the first Host VLAN ID. Possible values
range from 0 to 65535. The default value is 100.
This argument is available when vlan_enable is set to 1.
host_vlan_id_step_per_vpn
Specifies the increment value for subsequent VLAN IDs for each
VPN. Possible values range from 0 to 65535. The default value
is 1.
This argument is available when vlan_enable is set to 1.
host_vlan_id_step_per_host
Specifies the increment value for subsequent VLAN IDs for each
host. Possible values range from 0 to 65535. The default value
is 1.
This argument is available when vlan_enable is set to 1.
host_num_left_site_vlans
Specifies the number of customer side VLAN headers. Possible
values range from 0 to 9. The default value is 1.
This argument is available when pseudowire_type is set to
multi_segment.
host_num_right_site_vlans
Specifies the number of customer side VLAN headers. Possible
values range from 0 to 9. The default value is 1.
This argument is available when pseudowire_type is set to
multi_segment.
include_status_tlv
Determines whether to include the Status TLV in the PDU.
Possible values are 0 and 1. When it is set to 1, Spirent
HLTAPI will include the Status TLV in the PDU. The default
value is 0.
ldp_fec_type
Defines the type of Forward Equivalency Class (FEC). Possible
values are described below: :
fec_128
Manually configured pseudowires.
fec_129
Virtual Private LAN Service (VPLS) autodiscovery.
The default value is fec_128
ldp_fec_type_simulated_segment
Defines Type of Forward Equivalency Class (FEC) in the
simulated segment. Possible values are described below: :
fec_128
Manually configured pseudowires
fec_129
Virtual Private LAN Service (VPLS) autodiscovery
The default value is fec_128. This argument is available when
pseudowire_type is set to multi_segment.
left_site_hosts_per_ce
Specifies the number of hosts assigned to each customerside
or leftside CE router. Possible values range from 1 to
2147483647. The default value is 1.
This argument is available when pseudowire_type is set to
multi_segment and vpn_host_assignment is set to hosts_per_ce.
left_site_host_percent
Specifies the percentage of hosts on the provider or left side.
Possible values range from 0 to 100. The default value is 1.
This argument is available when pseudowire_type is set to
multi_segment and vpn_host_assignment is set to
hosts_per_vpn.
mtu
Specifies the maximum allowable frame size, or Maximum
Transmission Unit (MTU), to traverse a given VPLS instance.
Possible values range from 512 to 65535. The default value is
1500.
multi_segment_topology_type
Determines the DUT to serve as an SPE router or an
ingress/egress router. Possible values are described below: :
dut_spe
The DUT serves as an SPE router; Spirent
TestCenter emulates routers running IGP/MPLS
protocols and configures bound streams based on
the configuration parameters in the traffic step.
The left side is the customer VPN side, the right
side is the provider side and the DUT is a SPE
router.
dut_ingress_egress
Spirent TestCenter emulates hosts and
configures traffic. The left side and right side
are providers and the DUT can be either an
SPE or TPE router.
The default value is dut_spe. This argument is available
when pseudowire_type is set to multi_segment.
port_handle
Specifies the port on which to create the
pseudowire_type
Specifies either a singlesegment or multisegment test.
Possible values are single_segment and multi_segment. The
default value is single_segment.
pw_count
Specifies the number of pseudowires across the provider.
Possible values range from 1 to 4294967295. The default
value is 1.
This argument is available when ldp_fec_type is set to
fec_129.
route_target
Specifies the Route Target extended community attribute. The
Route Target identifies a set of sites to which a PE router
distributes. Input value should be in format xx:xx. The
default value is 1:0.
This argument is available when enable_bgp_auto_discovery is
set to 1 and ldp_fec_type is set to fec_129.
route_target_increment
Specifies the step value for additional route targets. Input
value should be in format xx:xx. The default value is 0:1.
This argument is available when enable_bgp_auto_discovery is
set to 1 and ldp_fec_type is set to fec_129.
route_distinguisher_assignment
Defines the Route Distinguisher assignment. Possible values
are:
use_rt
Use the Route Target field for all Route
Distinguishers in the VPLS.
manual
Manually configure Route Distinguishers by setting
customer/provider RD start, step per VPLS,
step per CE.
The default value is use_rt. This argument is available
when enable_bgp_auto_discovery is set to 1 and -ldp_fec_type
is set to fec_129.
route_distinguisher
Specifies the Route Distinguisher for the LSP route. The
distinguisher is an 8byte value that is concatenated with an
IPv4 prefix to create a unique LSP IPv4 prefix. The default
value is 1:0.
This argument is available when enable_bgp_auto_discovery is
set to 1 and ldp_fec_type set to fec_129 and
route_distinguisher_assignment is set to manual.
route_distinguisher_increment
Specifies the step value for Route Distinguishers. Input value
should be in format xx:xx. The default value is 0:1.
This argument is available when enable_bgp_auto_discovery
is set to 1, ldp_fec_type is set to fec_129 and
route_distinguisher_assignment is set to manual.
right_site_hosts_per_ce
Specifies the number of hosts assigned to each providerside
or rightside CE router. Possible values range from 1 to
2147483647. The default value is 1.
This argument is available when pseudowire_type is set to
multi_segment and vpn_host_assignment is set to hosts_per_ce.
right_site_host_percent
Specifies the percent of hosts on the provider or right side.
Possible values range from 0 to 100. The default value is 1.
This argument is available when pseudowire_type is set to
multi_segment and vpn_host_assignment is set to hosts_per_vpn.
status_code
Specifies the status code in the Status TLV. Possible values
are attachment_circuit_rx_fault, attachment_circuit_tx_fault,
not_forwarding, pseudowire_rx_fault and pseudowire_tx_fault.
src_attachment_individual_id
Specifies the first source attachment interface identifier.
Input value must be in the IPv4 format.
The default value is 10.0.0.2.
This argument is available when ldp_fec_type set to fec_129.
src_attachment_individual_id_increment
Specifies the step value of source attachment interface
identifier. The default value is 0.0.0.1.
This argument is available when ldp_fec_type set to fec_129.
src_attachment_individual_id_simulated_segment
Specifies the first source attachment interface identifier
in the simulated segment. Input value must be in the IPv4 format.
The default value is 10.0.0.1.
This argument is available when pseudowire_type is set to
multi_segment and ldp_fec_type_simulated_segment is set to
fec_129.
src_attachment_individual_id_increment_simulated_segment
Specifies the step value for source attachment interface
identifiers in the simulated segment. Input value
must be in the IPv4 format. The default value is 0.0.0.1.
This argument is available when pseudowire_type is set to
multi_segment and ldp_fec_type_simulated_segment is set to
fec_129.
s_pe_enable
Enables or disables SPE in the provider network. Possible
values are 1 (enabled) and 0 (disabled). The default value
is 0.
This argument is available when pseudowire_type is set to
multi_segment
simulated_pe_per_core_pe
Specifies the number of simulated SPE routers per emulated
PE. Possible values range from 1 to 65535. The default value
is 1.
This argument is available when pseudowire_type is set to
multi_segment and s_pe_enable is set to 1.
simulated_t_pe_per_core_pe
Specifies the number of simulated TPE routers per emulated
SPE. Possible values range from 1 to 65535. The default
value is 1.
This argument is available when pseudowire_type is set to
multi_segment and s_pe_enable is set to 1.
simulated_pe_loopback_ip_addr
Specifies the starting loopback IP address of the Simulated
PE routers. Input value must be in the IPv4 format.
The default value is 100.0.0.2.
This argument is available when pseudowire_type is set to
multi_segment and s_pe_enable is set to 1.
simulated_pe_loopback_ip_addr_step
Specifies the increment value for the next loopback address
of simulated PE routers. Input value must be in the IPv4
format. The default value is 0.0.0.1.
This argument is available when pseudowire_type is set to
multi_segment and s_pe_enable is set to 1.
stream_block_group_method
Defines the mode of Stream Block Grouping. 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
Determines whether to use single stream number per endpoint
pair. Possible values are 1 and 0. If it is set to 1, each
endpoint is assigned a single stream ID; if it is set to 0,
each flow between endpoint pairs is assigned a single stream
ID. The default value is 0.
target_attachment_individual_id
Specifies the first target attachment interface identifier.
Input value must be in the IPv4 format.
The default value is 10.0.0.1.
This argument is available when- ldp_fec_type is set to fec_129.
target_attachment_individual_id_increment
Specifies the step value of the next target attachment
interface identifier. Input value must be in the IPv4
format. The default value is 0.0.0.1.
This argument is available when ldp_fec_type set to fec_129.
target_attachment_individual_id_simulated_segment
Specifies the first target attachment interface identifier in
the simulated segment. Input value must be in the IPv4 format.
The default value is 192.0.0.1.
This argument is available when pseudowire_type is set to
multi_segment and ldp_fec_type_simulated_segment is set to
fec_129.
target_attachment_individual_id_increment_simulated_segment
Specifies the step value of the target attachment interface
identifier in the simulated segment. Input value must be
in the IPv4 format. The default value is 0.0.0.1.
This argument is available when pseudowire_type is set to
multi_segment and ldp_fec_type_simulated_segment is set
to fec_129.
t_pe_per_sub_if
Specifies the number of simulated TPE routers per port or
subinterface.
Possible values range from 0 to 1000. The default value is 1.
This argument is available when pseudowire_type is set to
multi_segment.
traffic_flow
Defines the traffic flow. Possible values are bidirectional,
core_to_customer and customer_to_core. The default value is
bidirectional. The values are described below: :
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
Bidirectional, traffic flow in both directions between
the emulated CE and the simulated CE devices behind the
PEs.
traffic_load_percent_from_core_ports
Defines the traffic load percentage from provider ports.
Possible values range from 0 to 100. The default value is 10.
This argument is available when pseudowire_type is set to
single_segment.
traffic_load_percent_from_customer_ports
Defines the traffic load percentage from customer ports.
Possible values range from 0 to 100. The default value is 10.
This argument is available when pseudowire_type is set to
single_segment.
traffic_load_percent_from_left_site_ports
Defines the traffic load percentage from customer ports.
Possible values range from 0 to 100. The default value is 10.
This argument is available when pseudowire_type is set to
multi_segment.
traffic_load_percent_from_right_site_ports
Defines the traffic load percentage from provider ports. Possible
values range from 0 to 100. The default value is 10.
This argument is available when pseudowire_type is set to
multi_segment.
vc_count
Defines the number of virtual circuits across the provider.
Possible values range from 1 to 65535. The default value is 10.
This argument is available when ldp_fec_type is set to fec_128.
vc_id_start
Defines the first virtual circuit identifier. Possible values
range from 1 to 4294967295. The default value is 1.
This argument is available when ldp_fec_type is set to fec_128.
vc_id_step
Defines the step value for additional VC IDs. Possible values
range from 1 to 4294967295. The default value is 1.
This argument is available when ldp_fec_type is set to fec_128.
vc_id_start_simulated_segment
Defines the first virtual circuit identifier. Possible values
range from 1 to 4294967295. The default value is 1.
This argument is available when pseudowire_type is set to
multi_segment and ldp_fec_type_simulated_segment is set to
fec_128.
vc_id_step_simulated_segment
Defines the step value for additional VC IDs. Possible values
range from 1 to 4294967295. The default value is 1.
This argument is available when pseudowire_type is set to
multi_segment and ldp_fec_type_simulated_segment is set to
fec_128.
vc_id_pe_overlap_enable
Specifies whether VC IDs are assigned per PE or per VPN.
Overlapped VC IDs are allowed on different PEs. Possible
values are 1 and 0. If it is set to 1, VC IDs are assigned
on a per PE basis. The default value is 0.
vlan_enable
Enables or disables configurations on VPN host VLANs.
Possible values are 1 (enabled) and 0 (disabled). The default
value is 0.
vpn_host_mac_start
Specifies the first host MAC address in the VPN in the MAC address
range. The default value is 00:00:01:00:00:01.
vpn_host_mac_step
Defines the increment value for subsequent MAC addresses.
The default value is 00:00:00:00:00:01.
vpn_host_overlap
Enables or disables overlapping hosts across VPNs. Possible
values are 1 (enabled) and 0 (disabled). The default value
is 0.
vpn_host_id_format_enable
Enables or disables the function to specify the step bytes
of the MAC address per port and/or per router.
Enable this option to track the source and destination of
traffic. Possible values are 1 (enabled) and 0 (disabled).
The default value is 0.
vpn_host_id_format_offset_bytes
Specifies the number of bytes to offset the tracking numbers
and the number of bytes used for tracking ports and routers.
This defines the starting bytes of the customized MAC address.
Possible values range from 0 to 4. The default value is 1.
This argument is available when vpn_host_id_format_enable
is set to 1.
vpn_host_id_format_port_bytes
Specifies the number of bytes to offset the tracking numbers
and the number of bytes used for tracking ports and routers.
This defines the increment to add to the starting bytes of the
customized MAC address for each port. Possible values range
from 0 to 4. The default value is 1.
This argument is available when vpn_host_id_format_enable
is set to 1.
vpn_host_id_format_router_bytes
Specifies the number of bytes to offset the tracking numbers
and the number of bytes used for tracking ports and routers.
This defines the increment to add to the starting bytes of the
customized MAC address for each router. Possible values range
from 0 to 4. The default value is 1.
This argument is available when vpn_host_id_format_enable
is set to 1.
vpn_host_assignment
Specifies the host MAC assignment mode. Possible values are
hosts_per_ce, and hosts_per_vpn. The default value
is hosts_per_ce. The values are described below: :
HOSTS_PER_CE
Specifies the hosts per customer CE device
and the hosts per provider CE device.
(Hosts per customer and per provider CE device
fields become visible)
HOSTS_PER_VPN
Specifies the hosts per VPN, customer CE
percentage, and provider CE percentage.
(Customer and provider host % fields become
visible)
ports
Specifies ports, their types and interface parameters,
which are the handle key values returned by function
emulation_mpls_tp_port_config. This argument is `Mandatory`.
Following are the suboptions for -core_tunnel_lsp_ping_config and
vpn_to_dut_tunnel_lsp_ping_config:
dst_addr
Specifies the IPv4 address for the destination of the
request. The default value is 127.0.1.
ping_interval
Specifies the number of seconds to wait between ping
messages. Possible values range from 0 to 3999999999.
The default value is 5.
ping_timeout
Specifies the number of seconds to wait for a reply
before timing out. Possible values range from 0 to 99.
The default value is 2.
time_to_live
The MPLS IP TLL value. Possible values range from 1 to
255.
experimental_bits
Specifies the value of the EXP bits. Possible values
range from 0 to 7. The default value is 0.
validate_fec_stack
Determines whether to perform FEC stack validation.
Possible values are 1 and 0. Set to 1 if the sender
wants the receiver to perform FEC Stack validation.
Set to 0 to leave the choice to the receiver. The default
value is 0.
enable_nil_fec_label
Determines whether to allow labels from the reserved
range to be added to the label stack. Possible values are 1
and 0. Set to 1 to allow labels from the reserved range to
be added to the label stack for various diagnostic purposes.
The default value is 0.
pad_mode
Sets the value of the Pad TLV; can be omitted. Possible
values are described below::
NO_PAD_TLV Transmit without Pad TLV
REQUEST_DROP_PAD_TLV Request peer to drop Pad TLV
REQUEST_COPY_PAD_TLV Request peer to copy Pad TLV
The default value is no_pad_tlv.
pad_data
Pad data. The default value is none.
The following arguments are for MPLSTP wizard::
work_protect_pair_list
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the working and protecting device name pairs. The name
must be the one specified in the emulation mpls tp port config
function. The pairs must follow an order as specified in the following
example::
work_protect_pair_list "work1 protect1 work2 protect2"
mplstp_enable_linear_protection_on_lsps
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables linear protection on LSPs
Values: true, false
Default: true
mplstp_enable_static_lsps
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables static LSPs
Values: true, false
Default: true
mplstp_enable_dynamic_lsps
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables dynamic LSPs
Values: true, false
Default: false
mplstp_enable_linear_protection_on_pws
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables linear protection on PWs
Values: true, false
Default: false
mplstp_enable_dynamic_pws
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables dynamic PWs
Values: true, false
Default: false
mplstp_enable_static_pws
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables static PWs
Values: true, false
Default: true
mplstp_enable_scale_mode
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables scale mode to test large scale topologies
Values: true, false
Default: false
mplstp_dut_topology
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the DUT type
Values: edge
Default: edge
mplstp_segment_type
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the segment type
Values: single_segment
Default: single_segment
mplstp_flow_mode
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the flow mode
Values: bi_directional, uni_directional
Default: uni_directional
mplstp_protection_path
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the protection path type
Values: point_to_point
Default: point_to_point
mplstp_protection_type
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the linear protection type
Values: one_to_one
Default: one_to_one
mplstp_revertive_mode
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the reversion scheme for linear protection
Values:
nonrevertive
None revertive mode
revertive
Revertive mode
Default: nonrevertive
mplstp_global_id
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the global ID of the LSP
Values: 4 octets
Default: 1000
mplstp_dut_node_id
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the node ID of the DUT serving as the PE router
Values: IPv4
Default: 10.0.0.1
mplstp_core_p_enable
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables the core P router
Values: true, false
Default: true
mplstp_core_p_per_subif
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the number of P routers per subinterface
Values: 1-65535
Default: 1
mplstp_p_router_node_id
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the first ID of the interface between the P and PE routers
Values: IPv4
Default: 192.0.1.1
mplstp_p_router_node_id_step
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the step value by which to create subsequent node IDs
for P routers
Values: IPv4
Default: 0.0.0.1
mplstp_core_pe_per_p
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the number of PE routers per P router
Values: 1-65535
Default: 1
mplstp_pe_router_node_id
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the first ID of the interface between emulated PE
routers and the DUT
Values: IPv4
Default: 10.0.0.2
mplstp_pe_router_node_id_step
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the step value by which to create subsequent node
IDs for PE routers
Values: IPv4
Default: 0.0.0.1
mplstp_lsp_work_src_tunnel_num
Spirent Extension (for Spirent HLTAPI only).
Specifies the first source tunnel number for the working LSP
Default: 100
mplstp_lsp_work_src_tunnel_step
Spirent Extension (for Spirent HLTAPI only).
Specifies the step value by which to create subsequent source
tunnel numbers
Default: 1
mplstp_lsp_work_dst_tunnel_num
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the first destination tunnel number for the working LSP
Default: 100
mplstp_lsp_work_dst_tunnel_step
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the step value by which to create subsequent
destination tunnel numbers
Default: 1
mplstp_lsp_work_lsp_id
Spirent Extension (for Spirent HLTAPI only).
Specifies the first LSP ID for the working LSP
Default: 1
mplstp_lsp_work_lsp_id_step
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the step value by which to create subsequent LSP IDs
Default: 1
mplstp_lsp_work_incoming_label
Spirent Extension (for Spirent HLTAPI only).
Specifies the first incoming label for the working LSP
Default: 100
mplstp_lsp_work_incoming_label_step
Spirent Extension (for Spirent HLTAPI only).
Specifies the step value by which to create subsequent incoming
labels
Default: 1
mplstp_lsp_work_outgoing_label
Spirent Extension (for Spirent HLTAPI only).
Specifies the first outgoing label for the working LSP
Default: 200
mplstp_lsp_work_outgoing_label_step
Spirent Extension (for Spirent HLTAPI only).
Specifies the step value by which to create subsequent outgoing
labels
Default: 1
mplstp_lsp_protect_src_tunnel_num
Spirent Extension (for Spirent HLTAPI only).
Specifies the first source tunnel number for the protecting LSP
Default: 100
mplstp_lsp_protect_src_tunnel_step
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the step value by which to create subsequent source
tunnel numbers
Default: 1
mplstp_lsp_protect_dst_tunnel_num
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the first destination tunnel number for the protecting LSP
Default: 100
mplstp_lsp_protect_dst_tunnel_step
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the step value by which to create subsequent
destination tunnel numbers
Default: 1
mplstp_lsp_protect_lsp_id
Spirent Extension (for Spirent HLTAPI only).
Specifies the first LSP ID for the protecting LSP
Default: 1
mplstp_lsp_protect_lsp_id_step
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the step value by which to create subsequent LSP IDs
Default: 1
mplstp_lsp_protect_incoming_label
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the first incoming label for the protecting LSP
Default: 100
mplstp_lsp_protect_incoming_label_step
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the step value by which to create subsequent incoming labels
Default: 1
mplstp_lsp_protect_outgoing_label
Spirent Extension (for Spirent HLTAPI only).
Specifies the first outgoing label for the protecting LSP
Default: 200
mplstp_lsp_protect_outgoing_label_step
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the step value by which to create subsequent outgoing labels
Default: 1
mplstp_total_pws_working
`Spirent Extension (for Spirent HLTAPI only).`
Number of working pseudowires
Default: 10
mplstp_pwe_work_use_attachment_group_id
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables using attachment global IDs for working PWs
Values: true, false
Default: false
mplstp_pwe_work_attach_circuit_id_local
Spirent Extension (for Spirent HLTAPI only).
Specifies the first local attachment circuit ID for the working PW
Default: 1000
mplstp_pwe_work_attach_circuit_id_local_step
Spirent Extension (for Spirent HLTAPI only).
Specifies the step value by which to create subsequent local
attachment circuit IDs
Default: 1
mplstp_pwe_work_attach_circuit_id_remote
Spirent Extension (for Spirent HLTAPI only).
Specifies the first remote attachment circuit ID for the working PW
Default: 1000
mplstp_pwe_work_attach_circuit_id_remote_step
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the step value by which to create subsequent remote
attachment circuit IDs
Default: 1
mplstp_pwe_work_attach_group_id
Spirent Extension (for Spirent HLTAPI only).
Specifies the first attachment group ID for the working PW
Values: 32bit value
Default: 100:1
mplstp_pwe_work_attach_group_id_step
Spirent Extension (for Spirent HLTAPI only).
Specifies the step value by which to create subsequent attachment
group IDs
Values: 32bit mask
Default: 0:1
mplstp_pwe_work_incoming_label
Spirent Extension (for Spirent HLTAPI only).
Specifies the first incoming label for the working PW
Default: 1000
mplstp_pwe_work_incoming_label_step
Spirent Extension (for Spirent HLTAPI only).
Specifies the step value by which to create subsequent incoming labels
Default: 1
mplstp_pwe_work_outgoing_label
Spirent Extension (for Spirent HLTAPI only).
Specifies the first outgoing label for the working PW
Default: 1000
mplstp_pwe_work_outgoing_label_step
Spirent Extension (for Spirent HLTAPI only).
Specifies the step value by which to create subsequent outgoing labels
Default: 1
mplstp_pwe_work_enable_control_word
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables Control Word for the working PW
Values: true, false
Default: false
mplstp_lsp_work_enable_bfd_options
Spirent Extension (for Spirent HLTAPI only).
Enables or disables BFD options for LSPs
Values: true, false
Default: false
mplstp_lsp_work_enable_bfd_trigger
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables BFD triggers for LSPs
Values: true, false
Default: false
mplstp_lsp_work_bfd_config
Spirent Extension (for Spirent HLTAPI only).
Handle of BFD configuration options for LSPs. Refer to
BFD_OPTION_LIST for more details.
Dependency: mplstp_lsp_work_enable_bfd_options true
mplstp_lsp_work_enable_lsp_ping_options
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables LSP Ping options for LSPs
Values: true, false
Default: false
mplstp_lsp_work_enable_lsp_ping_trigger
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables LSP Ping triggers for LSPs
Values: true, false
Default: false
mplstp_lsp_work_lsp_ping_config
Spirent Extension (for Spirent HLTAPI only).
Handle of LSP Ping configuration options for LSPs. Refer to
LSP_PING_OPTION_LIST for more details.
Dependency: mplstp_lsp_work_enable_lsp_ping_options true
mplstp_lsp_work_enable_y1731_options
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables Y1731 options for LSPs
Values: true, false
Default: false
mplstp_lsp_work_y1731_config
Spirent Extension (for Spirent HLTAPI only).
Handle of Y1731 OAM options for LSPs. Refer to
Y1731_OPTION_LIST for more details.
Dependency: mplstp_lsp_work_enable_y1731_options true
mplstp_pwe_work_enable_bfd_options
Spirent Extension (for Spirent HLTAPI only).
Enables or disables BFD options for PW configurations
Values: true, false
Default: false
mplstp_pwe_work_enable_bfd_trigger
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables BFD triggers for PW configurations
Values: true, false
Default: false
mplstp_pwe_work_bfd_config
Spirent Extension (for Spirent HLTAPI only).
Handle of BFD configuration options for PW configurations.
Refer to BFD_OPTION_LIST for more details.
Dependency: mplstp_pwe_work_enable_bfd_options true
mplstp_pwe_work_enable_lsp_ping_options
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables LSP Ping options for PW configurations
Values: true, false
Default: false
mplstp_pwe_work_enable_lsp_ping_trigger
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables LSP Ping triggers for PW configurations
Values: true, false
Default: false
mplstp_pwe_work_lsp_ping_config
Spirent Extension (for Spirent HLTAPI only).
Handle of BFD configuration options for PW configurations. Refer to
BFD_OPTION_LIST for more details.
Dependency: mplstp_pwe_work_bfd_config true
mplstp_pwe_work_enable_y1731_options
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables Y1731 options for PW configurations
Values: true, false
Default: false
mplstp_pwe_work_y1731_config
Spirent Extension (for Spirent HLTAPI only). <Y1731_OPTION_LIST>
Handle of Y1731 OAM options for PW configurations. Refer to
Y1731_OPTION_LIST for more details.
Dependency: mplstp_pwe_work_enable_y1731_options true
BFD_OPTION_LIST
mplstp_bfd_clear_command
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the command type used to clear state
Values: clear_failure, none
Default: clear_failure
mplstp_bfd_failure_command
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the command type used to indicate a failure
Values: admin_down, set_diagnostic_code, stop_pdu
Default: stop_pdu
mplstp_bfd_message_format
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the BFD message format
Values: bfd_cc, bfd_cv
Default: bfd_cc
mplstp_bfd_clear_duration
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the duration of the Clear command, in seconds
Values: 1-1200
Default: 30
mplstp_bfd_detect_multiplier
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the detect multiplier.
timeout = interval * detect multiplier
Values: 2-100
Default: 3
mplstp_bfd_enable_gen_associated_channel
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables Generic Associated Channel header (GACh) for BFD
Values: true, false
Default: true
mplstp_bfd_enable_gen_associated_label
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables Generic Associated Label (GAL) for BFD
Values: true, false
Default: true
mplstp_bfd_encap
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the BDF encapsulation type
Values: raw, udp
Default: raw
mplstp_bfd_failure_duration
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the duration of the Failure command in seconds
Values: 1-1200
Default: 30
mplstp_bfd_include_tlv
`Spirent Extension (for Spirent HLTAPI only).`
Determines whether to include TLVs in the message
Values: true, false
Default: false
mplstp_bfd_loop_count
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the number of times to send the command
Values: 1-100
Default: 1
mplstp_bfd_results_file_name
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the name of the results file
Default: "" (empty string)
mplstp_bfd_rx_interval
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the interval during which the device expects to receive
a command, in milliseconds
Values: 1-10000
Default: 100
mplstp_bfd_tlv_code
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the TLVs to be included in the message
Values::
ipv4_src_tlv
IPv4 Source TLV
mep_custom_tlv
MEP Custom TLV
mep_lsp_tlv
MSP LSP TLV
mep_pw_tlv
MEP PW TLV
mep_section_tlv
MEP Section TLV
none
None
Default: none
mplstp_bfd_tx_interval
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the interval between consecutive commands, in milliseconds
Values: 1-10000
Default: 100
mplstp_lsp_ping_channel_type
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the LSP Ping channel type
Values: 0-9999
Default: 3
mplstp_lsp_ping_clear_duration
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the duration of the Clear command, in seconds
Values: 1-1200
Default: 30
mplstp_lsp_ping_dst_addr
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the destination IPv4 address
Default: 127.0.0.1
mplstp_lsp_ping_echo_reply_mode
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the mode of replying to echo requests
Values::
control_channel
Control Channel
ip_udp_packet
IP UDP Packet
ip_udp_with_router_alert
IP UDP with Router Alert
no_reply
No Echo Reply
Default: control_channel
mplstp_lsp_ping_enable_gen_associated_channel
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables GACh for LSP Ping
Values: true, false
Default: false
mplstp_lsp_ping_enable_gen_associated_label
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables GAL for LSP Ping
Values: true, false
Default: false
mplstp_lsp_ping_experimental_bits
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the Experimental bits
Values: 0-7
Default: 0
mplstp_lsp_ping_failure_duration
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the duration of the Failure command, in seconds
Values: 1-1200
Default: 30
mplstp_lsp_ping_include_tlv
`Spirent Extension (for Spirent HLTAPI only).`
Determines whether to include TLVs in the message
Values: true, false
Default: false
mplstp_lsp_ping_loop_count
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the number of times to send the command
Values: 1-100
Default: 1
mplstp_lsp_ping_clear_command
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the command type used to clear state
Values: clear_failure, none
Default: clear_failure
mplstp_lsp_ping_encap
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the LSP Ping encapsulation type
Values: raw, udp
Default: udp
mplstp_lsp_ping_failure_command
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the command type used to indicate a failure
Values: pause_lsp_ping
Default: pause_lsp_ping
mplstp_lsp_ping_lsp_sub_tlv
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the type of LSP subTLVs to be included in the message
Values: 0-65535
Default: 22
mplstp_lsp_ping_operation_mode
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the LSP Ping operation to perform
Values: lsp_ping, trace_route, both
Default: lsp_ping
mplstp_lsp_ping_ping_interval
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the interval between LSP Ping commands, in seconds
Default: 5
mplstp_lsp_ping_ping_timeout
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the Ping timeout, in seconds
Values: 0-65535
Default: 2
mplstp_lsp_ping_pw_sub_tlv
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the type of the PW subTLV
Values: 0-65535
Default: 23
mplstp_lsp_ping_results_file_name
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the name of the results file
Default: "" (empty string)
mplstp_lsp_ping_time_to_live
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the TTL value
Values: 1-255
Default: 255
mplstp_lsp_ping_tlv_code
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the TLVs to be included in the message
Values::
ipv4_src_tlv
IPv4 Source TLV
mep_custom_tlv
MEP Custom TLV
mep_lsp_tlv
MSP LSP TLV
mep_pw_tlv
MEP PW TLV
mep_section_tlv
MEP Section TLV
none
None
Default: none
mplstp_lsp_ping_trace_route
`Spirent Extension (for Spirent HLTAPI only).`
Interval between traceroute commands, in seconds
Default: 5
mplstp_lsp_ping_trace_route_timeout
`Spirent Extension (for Spirent HLTAPI only).`
Number of seconds to wait for a command before timeout
Values: 0-65535
Default: 2
mplstp_lsp_ping_validate_fec_stack
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables validating the FEC stack
Values: true, false
Default: false
mplstp_y1731_cc_period
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the CC Period for the MEG and its MPs
Values::
ccperiod_100ms 100ms
ccperiod_10min 10min
ccperiod_10ms 10ms
ccperiod_10s 10s
ccperiod_1min 1min
ccperiod_1s 1sec
ccperiod_3ms 3ms
Default: ccperiod_1s
mplstp_y1731_dut_mep_id_fixed_across_megs
`Spirent Extension (for Spirent HLTAPI only).`
Determines whether to restart or continue numbering of the DUT
MEP IDs across MEGs
Values:
true
Restart numbering of MEP IDs of the DUT across MEGs
false
Continue numbering of MEP IDs of the DUT across MEGs
Default: false
mplstp_y1731_dut_mep_id_start
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the ID for the first MEP
Values: 1-8191
Default: 1
mplstp_y1731_dut_mep_id_step
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the step value by which to create subsequent DUT MEP IDs
Values: 1-8191
Default: 1
mplstp_y1731_icc_length
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the length of the ITU carrier code
Values: 1-6
Default: 4
mplstp_y1731_id_expression
`Spirent Extension (for Spirent HLTAPI only).`
Specifies an ID expression with fixed values and wildcard placeholders
Values: Alphanumeric
Default: meg_$
mplstp_y1731_meg_id_wildcard
`Spirent Extension (for Spirent HLTAPI only).`
Specifies a MEG ID wildcard expression
Default: $
mplstp_y1731_meg_id_wildcard_range_step
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the step value by which to create subsequent MEG IDs
Default: 1
mplstp_y1731_meg_id_wildcard_range_start
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the first MEG ID
Default: 1
mplstp_y1731_me_level
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the level of the MEG
Values: 0-7
Default: 7
mplstp_y1731_mep_id_start
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the ID of the first generated MEP
Values: 1-8191
Default: 2
mplstp_y1731_mep_id_step
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the step value by which to create subsequent MEP IDs
Values: 1-8191
Default: 1
mplstp_y1731_merge_duplicate_megs
`Spirent Extension (for Spirent HLTAPI only).`
Determines whether to merge duplicate MEGs
Values: true, false
Default: false
mplstp_y1731_num_dut_mps_per_meg
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the number of DUT MPs per MEG on the DUT
Default: 1
mplstp_y1731_results_file_name
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the name of the results file
Default: "" (empty string)
mplstp_vpn_host_id_format_enable
Spirent Extension (for Spirent HLTAPI only).
Enables or disables the VPN host ID format
Values: true, false
Default: false
mplstp_vpn_host_id_format_offset_bytes
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the offset bytes for the customized MAC address of the
VPN host
Values: 0-4
Default: 1
mplstp_vpn_host_id_format_port_bytes
Spirent Extension (for Spirent HLTAPI only).
Specifies the increment to add to the starting bytes of the
customized MAC address for each port
Values: 0-4
Default: 1
mplstp_vpn_host_id_format_router_bytes
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the increment to add to the starting bytes of the
customized MAC address for each router
Values: 0-4
Default: 2
mplstp_vpn_host_mac_start
Spirent Extension (for Spirent HLTAPI only).
Specifies the first host MAC address
Default: 0.0.1.0.0.1
mplstp_vpn_host_mac_step
Spirent Extension (for Spirent HLTAPI only).
Specifies the step value by which to create subsequent MAC addresses
Values: 48bit mask
Default: 0.0.0.0.0.1
mplstp_vpn_host_overlap
Spirent Extension (for Spirent HLTAPI only).
Enables or disables overlapping hosts across VPNs
Values: true, false
Default: false
mplstp_vlan_enable
`Spirent Extension (for Spirent HLTAPI only).`
Enables or disables host VLANs
Values: true, false
Default: false
mplstp_host_num_core_vlans
Spirent Extension (for Spirent HLTAPI only).
Specifies the number of host VLANs for core side hosts
Values: 0-4
Default: 1
mplstp_host_num_cust_vlans
Spirent Extension (for Spirent HLTAPI only).
Specifies the number of host VLANs for customer side hosts
Values: 0-4
Default: 1
mplstp_host_vlan_id
Spirent Extension (for Spirent HLTAPI only).
Specifies the first VLAN ID
Values: 0-65535
Default: 100
mplstp_host_vlan_id_step_per_host
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the increment value per host by which to create
subsequent VLAN IDs
Values: 0-65535
Default: 0
mplstp_host_vlan_id_step_per_vpn
Spirent Extension (for Spirent HLTAPI only).
Specifies the increment value per VPN by which to create
subsequent VLAN IDs
Values: 0-65535
Default: 1
mplstp_total_hosts
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the total number of hosts to be created
Default: 100
mplstp_vpn_host_assignment
Spirent Extension (for Spirent HLTAPI only).
Specifies the VPN host assignment mode
Values:
hosts_per_ce
Specifies the hosts per customer CE device and the
hosts per provider CE device
hosts_per_vpn
Specifies the hosts per VPN, customer CE percent, and
provider CE percent
total_hosts
Specifies the total hosts, customer CE percent, and
provider CE percent
Default: hosts_per_ce
mplstp_hosts_per_vpn
Spirent Extension (for Spirent HLTAPI only).
Specifies the number of hosts assigned to each VPN or PW
Default: 100
mplstp_core_hosts_per_ce
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the number of hosts assigned to each provider side CE
router
Default: 1
mplstp_cust_hosts_per_ce
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the number of hosts assigned to each customer side CE
router
Default: 1
mplstp_traffic_flow
Spirent Extension (for Spirent HLTAPI only).
Specifies the traffic flow
Values: bidirectional, core_to_customer, customer_to_core, none
Default: bidirectional
mplstp_traffic_load_percent_from_core_ports
Spirent Extension (for Spirent HLTAPI only).
Traffic load percent from provider side ports
Values: 0-100
Default: 10
mplstp_traffic_load_percent_from_cust_ports
Spirent Extension (for Spirent HLTAPI only).
Traffic load percent from customer side ports
Values: 0-100
Default: 10
- 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):
status $SUCCESS | $FAILURE handle.traffic <traffic handle> handle.vpn <vpn group handle> handle.vpnsite <vpn site info handle> handle.host <host handle> handle.router <router handle> handle.spe <spe router handle> handle.tpe <tpe router handle> handle.pe <pe router handle> handle.p <p router handle> handle.ospf <ospf router handle> handle.isis <isis router handle> handle.ldp <ldp router handle> handle.rsvp <rsvp router handle> handle.bgp <bgp router handle> handle.lspping <lspping handle>
- Description:
The
emulation mpls tp config
function creates or deletes the specified configurations for an MPLSTP emulation. Use the -mode argument to specify the action to perform. (See the mode argument description for information about the actions.)To setup an emulated MPLSTP VPN, you must specify the mode create and the ports function of the
emulation mpls tp config
function.To enable LSP Ping in the emulated VPN, you must set either enable_vpn_to_dut_tunnel_lsp_ping or enable_core_tunnel_lsp_ping to true and configure the function with the vpn_to_dut_tunnel_lsp_ping_config or core_tunnel_lsp_ping_config function respectively.
- Examples:
The following example configures the core port:
set cmdReturn [emulation mpls tp port config type=core port_handle= port1 dut_ipv4_addr= "10.1.1.1" dut_ipv4_addr_step= "0.0.1.0" ipv4_prefix= 24\] set cmdReturn [keylget cmdReturn handle]
Sample Output:
{handle {port_handle port2 type cust subif= 1 subif_count 1 vlan_id 100 vlan_id_step= 10}} {status 1}The following example configures the customer port:
set cmdReturn [emulation mpls tp port config type= cust port_handle= port2 subif= "1" subif_count= 2 vlan_id= 100 vlan_id_step= 10] set mpls_tp_port2 [keylget cmdReturn handle]
Sample Output:
{handle {port_handle port2 type cust subif 1 subif_count= 1 vlan_id 100 vlan_id_step= 10}} {status 1}
The following example configures the Core side LSP Ping:
set core_lsp_ping list dst_addr= 100.0.0.1 ping_interval= 150 ping_timeout= 50 time_to_live= 25 experimental_bits= 1 validate_fec_stack= 1 enable_nil_fec_label= 1 pad_mode= request_drop_pad_tlv pad_data= 0102]
The following example configures VPN side LSP Ping:
set vpn_lsp_ping list dst_addr= 100.0.0.1 ping_interval= 150 ping_timeout= 50 time_to_live= 25 experimental_bits= 1 validate_fec_stack= 1 enable_nil_fec_label= 1 pad_mode= request_drop_pad_tlv pad_data= 0102]
The following example configures MPLSTP:
set cmdReturn [emulation mpls tp config mode= create ports= [list $mpls_tp_port1 $mpls_tp_port2] dut_loopback_ip_addr= 1.1.1.4 core_igp_protocol= ospf core_mpls_protocol= ldp core_p_loopback_ip_addr= 99.1.1.1 core_p_loopback_ip_addr_step= 0.0.0.0 core_pe_loopback_ip_addr= 100.1.1.1 core_pe_loopback_ip_addr_step= 0.0.0.0 cust_hosts_per_ce= 1 vc_count= 1 core_p_topology_type= tree route_distinguisher_assignment= use_rt route_target= 1:0 stream_block_group_method= aggregate traffic_flow= core_to_customer enable_core_tunnel_lsp_ping= 1 core_tunnel_lsp_ping_config= $core_lsp_ping enable_vpn_to_dut_tunnel_lsp_ping= 1 vpn_to_dut_tunnel_lsp_ping_config= $vpn_lsp_ping\] set mplsTpHandle [keylget cmdReturn handle] set routerlist [keylget cmdReturn handle.router] set hostlist [keylget cmdReturn handle.host] set stream_id [keylget mplsTpHandle traffic]
Sample Output:
{handle {{vpn {vpnidgroup1 vpnidgroup2 vpnidgroup3 vpnidgroup4 vpnidgroup5 vpnidgroup6 vpnidgroup7 vpnidgroup8 vpnidgroup9 vpnidgroup10}} {vpnsite {vpnsiteinfovplsldp1 vpnsiteinfovplsldp2 vpnsiteinfovplsldp3 vpnsiteinfovplsldp4 vpnsiteinfovplsldp5 vpnsiteinfovplsldp6 vpnsiteinfovplsldp7 vpnsiteinfovplsldp8 vpnsiteinfovplsldp9 vpnsiteinfovplsldp10 vpnsiteinfovplsldp11}} {host {host5 host6 host7 host8 host9 host10 host11 host12 host13 host14 host15}} {router {router1 router2}} {spe {}} {tpe= {}} {pe router2} {p router1} {ospf {{} {}}} {isis {{} {}}} {ldp {{} ldprouterconfig1}} {rsvp {rsvprouterconfig1 {}}} {bgp {{} {}}} {lspping= {{} {}}} {traffic {streamblock1 streamblock2}}}} {status 1}
The following example starts traffic:
set cmdReturn [traffic control mode= start port_handle= port1 \]
The following example configures MPLSTP= wizard:
# To configure the PE port set provider_edge [emulation mpls tp port config port_handle= $port2 type= core dut_ipv4_addr= 10.1.1.1 ipv4_prefix= 24 subif= 0 subif_count= 1 vlan_id= 4001 vlan_id_step= 1 dest_mac= 00:23:8A:B7:EA:81 ] set mplstp_PE [keylget provider_edge handle] # To configure the CE port set customer_edge [emulation mpls tp port config type= cust port_handle= $port1 subif= 0 subif_count= 1 vlan_id= 100 vlan_id_step= 1 ] set mplstp_CE [keylget customer_edge handle] # To configure BFD options set BFD_Options list mplstp_bfd_tx_interval= 10 mplstp_bfd_rx_interval= 10 mplstp_bfd_detect_multiplier= 3 mplstp_bfd_enable_gen_associated_channel= true mplstp_bfd_enable_gen_associated_label= true mplstp_bfd_encap= raw mplstp_bfd_message_format= bfd_cc mplstp_bfd_failure_command= stop_pdu mplstp_bfd_failure_duration= 30 mplstp_bfd_clear_command= clear_failure mplstp_bfd_clear_duration= 30 mplstp_bfd_loop_count= 1 ] To configure the MPLS TP wizard set mplstp [emulation mpls tp config mode= create test_type= mplstp ports= $mplstp_PE $mplstp_CE mplstp_dut_topology= edge mplstp_enable_dynamic_lsps= false mplstp_enable_dynamic_pws= false mplstp_enable_linear_protection_on_lsps= false mplstp_enable_linear_protection_on_pws= false mplstp_enable_scale_mode= false mplstp_enable_static_lsps= true mplstp_enable_static_pws= true mplstp_segment_type= single_segment mplstp_global_id= 1000 mplstp_dut_node_id= 1.1.1.1 mplstp_lsp_work_src_tunnel_num= 100 mplstp_lsp_work_src_tunnel_step= 1 mplstp_lsp_work_dst_tunnel_num= 100 mplstp_lsp_work_dst_tunnel_step= 1 mplstp_lsp_work_lsp_id= 1 mplstp_lsp_work_lsp_id_step= 1 mplstp_lsp_work_incoming_label= 1001 mplstp_lsp_work_incoming_label_step= 1 mplstp_lsp_work_outgoing_label= 2001 mplstp_lsp_work_outgoing_label_step= 1 mplstp_core_p_enable= true mplstp_core_p_per_subif= 1 mplstp_p_router_node_id= 192.0.1.1 mplstp_p_router_node_id_step= 0.0.0.1 mplstp_core_pe_per_p= 1 mplstp_pe_router_node_id= 2.2.2.2 mplstp_pe_router_node_id_step= 0.0.0.1 mplstp_total_pws_working= 1 mplstp_pwe_work_use_attachment_group_id= false mplstp_pwe_work_attach_circuit_id_local= 1000 mplstp_pwe_work_attach_circuit_id_local_step= 1 mplstp_pwe_work_attach_circuit_id_remote= 1000 mplstp_pwe_work_attach_circuit_id_remote_step= 1 mplstp_pwe_work_incoming_label= 100001 mplstp_pwe_work_incoming_label_step= 1 mplstp_pwe_work_outgoing_label= 100001 mplstp_pwe_work_outgoing_label_step= 1 mplstp_pwe_work_enable_control_word= false mplstp_lsp_work_enable_bfd_options= true mplstp_lsp_work_enable_bfd_trigger= false mplstp_lsp_work_bfd_config= $BFD_Options mplstp_pwe_work_enable_bfd_options= true mplstp_pwe_work_enable_bfd_trigger= false mplstp_pwe_work_bfd_config= $BFD_Options mplstp_vpn_host_id_format_enable= false mplstp_vpn_host_mac_start= "00:00:01:00:00:01" mplstp_vpn_host_mac_step= "00:00:00:00:00:01" mplstp_vpn_host_overlap= false mplstp_vlan_enable= false mplstp_host_num_core_vlans= 1 mplstp_host_num_cust_vlans= 1 mplstp_host_vlan_id= 100 mplstp_host_vlan_id_step_per_host= 0 mplstp_host_vlan_id_step_per_vpn= 1 mplstp_total_hosts= 1 mplstp_vpn_host_assignment= hosts_per_ce mplstp_core_hosts_per_ce= 1 mplstp_cust_hosts_per_ce= 1 mplstp_traffic_flow= bidirectional mplstp_traffic_load_percent_from_core_ports= 1 mplstp_traffic_load_percent_from_cust_ports= 1 ]
Sample Output:
{handle {{vpn vpnidgroup1} {vpnsite {}} {host {host3 host4}} {router {router1 router2}} {spe {}} {tpe= {}} {pe router2} {p router1} {ospf {{} {}}} {isis {{} {}}} {ldp {{} {}}} {rsvp {{} {}}} {bgp {{} {}}} {bfd {router1 router2}} {lspping= {{} {}}} {traffic {streamblock1 streamblock2}} {mplstp_y1731_oam {{mp_handle { }} {meg_handle {}}}}}} {status 1}
End of Procedure Header
emulation mpls tp port config¶
Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>
- Purpose:
- A Spirent Extension function to create the port on which the MPLSTP emulation is performed.
Synopsis:
Note: M indicates the argument is `Mandatory`.
emulation mpls tp port config
port_handle= <handle> M
type= {cust | core} M
dut_ipv4_addr= <a.b.c.d>
dut_ipv4_addr_step= <a.b.c.d>
dest_mac= <aa:bb:cc:dd:ee:ff>
name= <string>
ipv4_prefix= <0 - 32>
port_type= {working_egress | protecting_egress | both_egress}
subif= { 0 | 1 }
subif_count= <1-10>
vlan_id= <1-4095>
vlan_id_step= <1-4095>
Arguments:
type
Defines the type of port. This argument is `Mandatory`.
Possible values are::
cust - Customer side router
core - Core router
port_handle
Defines the handle of the port on which the MPLSTP emulation
is performed. This argument is `Mandatory`.
dest_mac
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the destination MAC address
Default: 10:00:00:00:00:01
dut_ipv4_addr
Defines the starting IP address of the DUT. Input value must be
in the IPv4 format. The default value is 0.0.0.0.
This argument is available when type is set to core.
dut_ipv4_addr_step
Defines the increment value for subsequent DUT addresses.
Input value must be in the IPv4 format. The default value
is 0.0.1.0. This argument is available when type is set to core.
ipv4_prefix
Specifies the IPv4 address prefix length for the created
device. Possible values range from 0 to 32. The default is 24.
This argument is available when type is set to core.
port_type
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the port type
Values: working_egress, protecting_egress, both_egress
Default: working_egress
name
`Spirent Extension (for Spirent HLTAPI only).`
Specifies the device name. Primarily used for provider edge devices.
Refer to work_protect_pair_list under the
``emulation mpls tp config`` function for more details.
subif
Enables or disables VLANs. Possible values are 1 (enabled)
and 0 (disabled). The default value is 0.
subif_count
Defines the number of VLANs. Possible values range from 1 to
10. The default value is 1.
vlan_id
Defines the first VLAN ID for a range of customer VLANs.
Possible values range from 1 to 4095. The default value is 1.
vlan_id_step
Defines the step value by which VLAN ID is incremented.
Possible values range from 1 to 4095. The default value is 1.
- 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):
status $SUCCESS | $FAILURE log Error message if command returns {status 0} handle <handle>
- Description:
The
emulation mpls tp port config
TP= port (for either customer side or provider side) on which the MPLSTP emulation is configured. Use the type argument to specify the type of the port, and use the port_handle argument to specify the port to be added.You can use dut_ipv4_addr, dut_ipv4_addr, and -ipv4_prefix to configure the DUT interface that is connected to the test port.
Use subif to determine whether to enable sub-interface on the DUT interface. subif_count, -vlan_id, and -vlan_id_step are applicable only when subif is set to true.
- Examples:
The following example configures MPLSTP= Core Port configuration:
set cmdReturn [emulation mpls tp port config type= core port_handle= port1 dut_ipv4_addr= "10.1.1.1" dut_ipv4_addr_step= "0.0.1.0" ipv4_prefix= 24\] set mpls_tp_port1 [keylget cmdReturn handle]
The following example configures MPLSTP= Customer Port configuration:
set cmdReturn [emulation mpls tp port config type= cust port_handle= port2 subif= "1" subif_count= 2 vlan_id= 100 vlan_id_step= 10] set mpls_tp_port2 [keylget cmdReturn handle]
End of Procedure Header
emulation mpls tp control¶
Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>
- Purpose:
- A Spirent Extension function to start or stop an MPLSTP emulation.
Synopsis:
Note: M indicates the argument is `Mandatory`.
emulation mpls tp control
handle= <handle_list>
action= {start | stop | start_lsp_ping | stop_lsp_ping}
Arguments:
handle
The a list of MPLSTP handles returned by
emulation_mpls_tp_config
action
The action to be performed. Possible values are stop, start,
start_lspping and stop_lsp_ping. The default value is start.
The values are described below::
start - Starts the MPLSTP emulation
stop - Stops the MPLSTP emulation
start_lsp_ping - Starts LSP Ping
stop_lsp_ping - Stops LSP Ping
- 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):
status $SUCCESS | $FAILURE log Error message if command returns {status 0}
- Description:
The function controls the MPLSTP emulation configured on the specified port. With the handle value returned by the emulation mpls tp config function, you can use this function to start or stop the MPLSTP VPN topology. You can also start or stop LSP Ping in the MPLSTP VPN. (See
emulation_mpls_tp_config for more information.)- Examples:
This example starts the configured MPLSTP= emulation:
set cmdReturn [emulation mpls tp control handle=$mplsTpHandle action= start]
This example stops the configured MPLSTP= emulation:
set cmdReturn [emulation mpls tp control handle=$mplsTpHandle action= stop]
This example starts LSP Ping:
set cmdReturn [emulation mpls tp control handle=$mplsTpHandle action= start_lsp_ping]
This example stops LSP Ping:
set cmdReturn [emulation mpls tp control handle=$mplsTpHandle action= stop_lsp_ping]
Sample Output:
{status 1}
End of Procedure Header
emulation lsp ping info¶
Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>
- Purpose:
- A Spirent Extension function to get information about LSPPing in MPLSTP emulation.
Synopsis:
Note: M indicates the argument is `Mandatory`.
emulation lsp ping info
mode= {aggregate | ping | trace_route} M
port_handle= <handle> M
Arguments:
mode
Specifies the mode to get the LSP Ping results. Possible
values are::
aggregate - Gets all LSP Ping statistics per router
ping - Gets LSP Ping statistics associated with each Ping
trace_route - Gets Trace Route statistics associated with each Ping
The default value is aggregate.
port_handle
Specifies the port on which LSP Ping is performed to get
information. This argument is `Mandatory`.
- 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):
status $SUCCESS | $FAILURE log Error message if command returns {status 0}
These statistics are returned for the aggregate mode:
port_handle device_handle lsp_ping_down_count lsp_ping_up_count rx_echo_reply_count rx_echo_request_count tx_echo_reply_count tx_echo_request_count
These statistics are returned for the ping mode:
port_handle device_handle avg_ping_latency fail_count lsp_fec_info lsp_path_down lsp_path_up max_ping_latency min_ping_latency rx_return_code state success_count
These statistics are returned for the trace_route mode:
port_handle device_handle fail_count lsp_fec_info lsp_hop_count lsp_path_down lsp_path_up rx_return_code state success_count
- Description:
The
emulation lsp ping info
function provides Ping information in the emulated MPLSTP VPN. See the examples in emulation_mpls_tp_config for more information on LSP Ping configurations.This function returns the requested data and a status value ($SUCCESS or $FAILURE). If there is an error, the function returns the status value $FAILURE and an error message. Function return values are formatted as a keyed list (supported by the Tcl extension software - TclX). Use the TclX function keylget to retrieve data from the keyed list. (See Return Values)
- Examples:
This example gets aggregate LSP Ping information:
set cmdReturn [emulation lsp ping info port_handle=[list port1 port2] mode= aggregate ] set portHandle [kelget cmdReturn 1.port_handle] set deviceHandle [kelget cmdReturn 1.device_handle] set lspPingUpCount [kelget cmdReturn 1.lsp_ping_up_count] set txEchoReply_count [keylget cmdReturn 1.tx_echo_reply_count] set portHandle [kelget cmdReturn 2.port_handle] set deviceHandle [kelget cmdReturn 2.device_handle] set lspPingUpCount [kelget cmdReturn 2.lsp_ping_up_count] set txEchoReply_count [keylget cmdReturn 2.tx_echo_reply_count]
This example gets ping LSP Ping information:
set cmdReturn [emulation lsp ping info port_handle=[list port1 port2] mode= ping ] set state [keylget cmdReturn 1.state] set lspDownCount [keylget cmdReturn 1.lsp_path_down] set lspFecInfo [keylget cmdReturn 1. lsp_fec_info] set state [keylget cmdReturn 2.state] set lspDownCount [keylget cmdReturn 2.lsp_path_down] set lspFecInfo [keylget cmdReturn 2. lsp_fec_info]
This example gets Trace Route results for LSP Ping:
set stats [emulation lsp ping info port_handle="port2 port3" mode= trace_route]
Sample Output:
{1 {{fail_count 2} {success_count 0} {state STARTED} {lsp_hop_count 1} {lsp_path_down 1} {rx_return_code NO_RETURN_CODE} {lsp_path_up 0} {lsp_fec_info {Static LSP: 100(tunnel) 1(lsp)}} {port_handle port3} {device_handle lsppingprotocolconfig1}}} {2 {{fail_count 1} {success_count 0} {state STARTED} {lsp_hop_count 255} {lsp_path_down 1} {rx_return_code NO_RETURN_CODE} {lsp_path_up 0} {lsp_fec_info {Static PW: 1000/0.0.3.232(global) 167772162/10.0.0.2(node) 1006/0.0.3.238(ac)}} {port_handle port3} {device_handle lsppingprotocolconfig2}}} {3 {{fail_count 2} {success_count 0} {state STARTED} {lsp_hop_count 255} {lsp_path_down 1} {rx_return_code NO_RETURN_CODE} {lsp_path_up 0} {lsp_fec_info {Static PW: 1000/0.0.3.232(global) 167772162/10.0.0.2(node) 1008/0.0.3.240(ac)}} {port_handle port3} {device_handle lsppingprotocolconfig2}}} {4 {{fail_count 1} {success_count 0} {state STARTED} {lsp_hop_count 255} {lsp_path_down 1} {rx_return_code NO_RETURN_CODE} {lsp_path_up 0} {lsp_fec_info {Static PW: 1000/0.0.3.232(global) 167772162/10.0.0.2(node) 1000/0.0.3.232(ac)}} {port_handle port3} {device_handle lsppingprotocolconfig2}}} {5 {{fail_count 1} {success_count 0} {state STARTED} {lsp_hop_count 255} {lsp_path_down 1} {rx_return_code NO_RETURN_CODE} {lsp_path_up 0} {lsp_fec_info {Static PW: 1000/0.0.3.232(global) 167772162/10.0.0.2(node) 1003/0.0.3.235(ac)}} {port_handle port3} {device_handle lsppingprotocolconfig2}}} {6 {{fail_count 1} {success_count 0} {state STARTED} {lsp_hop_count 255} {lsp_path_down 1} {rx_return_code NO_RETURN_CODE} {lsp_path_up 0} {lsp_fec_info {Static PW: 1000/0.0.3.232(global) 167772162/10.0.0.2(node) 1009/0.0.3.241(ac)}} {port_handle port3} {device_handle lsppingprotocolconfig2}}} {status 1}
End of Procedure Header
emulation mplstp y1731 oam control¶
Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>
- Purpose:
Spirent Extension (for Spirent HLTAPI only).
Starts, stops, or deletes Y1731 OAM emulations
Synopsis:
Note: M indicates the argument is `Mandatory`.
emulation mplstp y1731 oam control
action= {start|stop|delete}
handle= <handle_list>
port_handle= <port_handle_list>
msg_type= {cc|lb|lck|ais|tst|csf|dm|lm }
dm_tx_rate= {dmrate_10_per_sec | dmrate_1_per_sec | dmrate_1_per_min | dmrate_1_per_10min}
dm_tx_type= {single_msg |continuous}
csf_tx_type= {single_msg |continuous}
csf_type= {los | fdi_ais | rdi | dci}
tst_tx_type= {single_msg |continuous}
lm_tx_rate= {lmrate_10_per_sec | lmrate_1_per_sec | lmrate_1_per_min | lmrate_1_per_10min}
lm_tx_type= {single_msg |continuous}
lm_tx_fcf_mode= {static | step}
lm_tx_fcf_step= <NUMERIC>
lm_tx_fcf_value= <NUMERIC>
lb_tx_type= {single_msg |continuous}
lb_initial_transaction_id= {static | step}
lb_meg_handle_list= <handle list>
- Description:
- port_handle=
- Specifies a list of ports on which to control the MPLSTP= Y1731 OAM emulation
- handle=
- Identifies a list of MPLSTP= Y1731 OAM emulations to start, stop, or delete
- action=
Specifies the action to perform Values:
- start
- Starts the message emulators for the specified port
- stop
- Stops the message emulators for the specified port
- delete
- Deletes the message emulators for the specified port
- msg_type=
Type of MPLSTP= Y1731 OAM messages to start or stop Values:
- lb
- Loopback (LB) messages
- cc
- Continuous Check (CC) messages
- dm
- Delay Measurement (DM) messages
- lm
- Loss Measurement (LM) messages
- ais
- Alarm Indication Signal (AIS) messages
- lck
- Lock Indication Function (LCK) messages
- tst
- Test messages
- csf
- Client Signal Fail (CSF) messages
- stop_all
- Stops all messages
- dm_tx_rate=
Transmission rate of DM messages Dependency: msg_type= dm
Values:
- dmrate_10_per_sec
- 10 DMs per second
- dmrate_1_per_sec
- 1 DM per second
- dmrate_1_per_min
- 1 DM per minute
- dmrate_1_per_10min
- 1 DM per 10 minutes
Default: dmrate_1_per_sec
- dm_tx_type=
Transmission type of DM messages Dependency: msg_type= dm Values:
- single_msg
- Send a single DM message
- continuous
- Send continuous DM messages
Default: single_msg
- csf_tx_type=
Transmission type of CSF messages Dependency: msg_type= csf Values:
- single_msg
- Send a single CSF message
- continuous
- Send continuous CSF messages
Default: single_msg
- csf_type=
Specifies the CSF message type Dependency: msg_type= csf Values:
- los
- Loss of signal
- fdi_ais
- Forward defect indication
- rdi
- Reverse defect indication
- dci
- Defect clear indication
Default: los
- tst_tx_type=
Transmission type of TST messages Dependency: msg_type= tst Values:
- single_msg
- Send a single TST message
- continuous
- Send continuous TST messages
Default: single_msg
- lm_tx_rate=
Transmission rate of LM messages Dependency: msg_type= lm
- lmrate_10_per_sec
- 10 LMs per second
- lmrate_1_per_sec
- 1 LM per second
- lmrate_1_per_min
- 1 LM per minute
- lmrate_1_per_10min
- 1 LM per 10 minutes
- lm_tx_type=
Transmission type of LM messages Dependency: msg_type= lm Values:
- single_msg
- Send a single LM message
- continuous
- Send continuous LM messages
Default: single_msg
- lm_tx_fcf_mode=
Specifies the sent frame count forwarding mode for LM messages Dependency: msg_type= lm Values:
- static
- Use the same TxFCf for each LM message
- step
- Step the TxFCf for each LM message
Default: step
- lm_tx_fcf_step=
- Specifies the step value by which to increment the TxFCf Dependency: msg_type= lm Default: 1
- lm_tx_fcf_value=
- Specifies the initial TxFCf value Dependency: msg_type= lm Default: 1
- lb_tx_type=
Transmission type of LB messages Dependency: msg_type= lb Values:
- single_msg
- Send a single TST message
- continuous
- Send continuous TST messages
Default: single_msg
- lb_initial_transaction_id=
- Specifies the initial transaction ID for LB messages Dependency: msg_type= lb Default: 1
- lb_meg_handle_list=
- A list of MEG handles. Refer to the return values of the
emulation mpls tp config
test_mode=mplstp Dependency: msg_type= lb
- 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):
- status
- Retrieves a value indicating the success (1) or failure (0) of the operation.
- log_msg
- Retrieves a message describing the last error that occurred during the operation. If the operation was successful - {status 1} - the log_msg value is null.
- Description:
The emulation mplstp y1731 oam control performs several actions: starting message emulators, stopping message emulators, and deleting message emulators.
When you call the
emulation mplstp y1731 oam control
function, you specify a port handle, and Spirent HLTAPI applies the specified action to all emulated Y1731 OAM message emulators associated with the specified port.
Examples:
To start the LM message emulator:
set mp_handle [keylget mplstp handle.mplstp_y1731_oam.mp_handle] set status [emulation mplstp y1731 oam control handle= $mp_handle msg_type= lm lm_tx_rate= lmrate_1_per_sec lm_tx_type= single_msg lm_tx_fcf_mode= static lm_tx_fcf_step= 1 lm_tx_fcf_value= 1 action= start]
Sample Output:
{status 1}
emulation mplstp y1731 oam stats¶
Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>
- Purpose:
Spirent Extension (for Spirent HLTAPI only).
Returns information for the Y1731OAM emulation
Synopsis:
Note: M indicates the argument is `Mandatory`.
emulation mplstp y1731 oam stats
mode= {cc | lb | lck | ais | tst | csf | dm | lm | meg} M
handle= <handle>
port_handle= <port_handle>
Arguments:
mode
Specifies the desired mode for information return. This argument is
`Mandatory`. The modes can be combined by using "|".
The modes are described below: :
cc
MPLSTP OAM CC results
lb
MPLSTP OAM LB results
lck
MPLSTP OAM LCK results
ais
MPLSTP OAM AIS results
tst
MPLSTP OAM TST results
csf
MPLSTP OAM CSF results
dm
MPLSTP OAM DM results
lm
MPLSTP OAM LM results
meg
MPLSTP OAM MEG results
handle
Specifies the MP/MEG OAM handle from which to retrieve statistics. You must
specify either handle or -port_handle, but not both.
Note: MEG handle is only required for mode meg.
port_handle
Specifies the port from which to retrieve statistics
- 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):
- status
- Retrieves a value indicating the success (1) or failure (0) of the operation
- log_msg
- Retrieves a message describing the last error that occurred during the operation. If the operation was successful - {status 1} - the log value is null.
Following are the keys returned for CC mode:
- ais_rx_state
- AIS receive state
- cc_rx_count
- Number of CC messages received
- cc_tx_count
- Number of CC messages transmitted
- dropped_pkt_count
- Number of unserviceable packets that were dropped
- lck_rx_state
- LCK receive state
- meg_id
- MEG ID
- mp_name
- MP name
- num_of_remote_meps
- Number of remote MEPs that the MP expects to send CC messages
- num_of_remote_meps_down
- Number of remote MEPs that have not sent CC messages
- num_of_remote_meps_up
- Number of remote MEPs that have sent CC messages
- num_of_timeouts
- Number of timeouts
- num_of_unexpected_meg_ids
- Number of received CC messages with a MEG ID that is not configured on the receiving port
- num_of_unexpected_meg_levels
- Number of CC messages with an unexpected MD level value
- num_of_unexpected_meps
- Number of CC messages received from a MEP ID that is not found in the expected MEPs list for that MEG
- num_of_unexpected_period_values
- Number of received CC Messages for which the CC period value in the message does not match the one configured on the MEG
- rdi_rx_state
- Remote Defect Indication (RDI) receive state
- rdi_tx_state
- RDI transmit state
Following are the keys returned for LB mode:
- dropped_pkt_count
- Number of unserviceable packets that were dropped
- lbm_rx_count
- Number of LB messages received
- lbm_tx_count
- Number of LB messages sent
- lbr_rx_count
- Number of LB responses received
- lbr_tx_count
- Number of LB responses transmitted
- meg_id
- MEG ID
- mp_name
- MP name
- num_of_timeouts
- Number of timeouts
- num_of_transaction_id_mismatches
- Number of transaction ID mismatches
Following are the keys returned for LCK mode:
- lck_rx_count
- Number of LCK messages received
- lck_rx_period
- LCK receive period for MEPs
- lck_rx_state
- LCK receive state
- lck_tx_count
- Number of LCK messages transmitted
- lck_tx_state
- LCK transmit state
- meg_id
- MEG ID
- mp_name
- MP name
Following are the keys returned for AIS mode:
- ais_rx_count
- Number of AIS messages received
- ais_rx_period
- AISperiod for MEPs
- ais_rx_state
- AIS receive state
- ais_tx_count
- Number of AIS messages transmitted
- ais_tx_state
- AIS transmit state
- meg_id
- MEG ID
- mp_name
- MP name
Following are the keys returned for TST mode:
- last_seq_num_rx
- Last receive sequence number in TST messages
- last_seq_num_tx
- Last transmit sequence number in TST messages
- meg_id
- MEG ID
- mp_name
- MP name
- num_out_of_seq
- Number of outof-sequence messages
- tst_rx_count
- Number of TST messages received
- tst_tx_count
- Number of TST messages sent
Following are the keys returned for CSF mode:
- meg_id
- MEG ID
- mp_name
- MP name
- axicons
- Number of CSF messages received
- rx_csf_period
- Period of last received CSF message
- rx_csf_type
- CSF type received
- toxicant
- Number of CSF messages sent
- tx_csf_type
- CSF type transmitted
Following are the keys returned for DM mode:
- meg_id
- MEG ID
- mp_name
- MP name
- dmm_rx_count
- Number of DM messages received
- dmm_tx_count
- Number of DM messages sent
- dmr_rx_count
- Number of DM responses received
- dmr_tx_count
- Number of DM responses sent
Following are the keys returned for LM mode:
- lmm_rx_count
- Number of LM messages received
- lmm_tx_count
- Number of LM messages sent
- lmr_rx_count
- Number of LM responses received
- lmr_tx_count
- Number of LM responses transmitted
- meg_id
- MEG ID
- mp_name
- MP name
- tx_f_cf
- Frame count forwarding transmitted
Following are the keys returned for MEG mode:
- bad_cc_rx_count
- Number of bad CC messages received from all MEPs in the MEG
- cc_rx_state
- CC receive state
- cc_tx_state
- CC transmit state
- dropped_pkt_count
- Number of unserviceable packets that were dropped
- meg_id
- MEG ID
- me_level
- ME level of the MEG
- num_of_meps
- Number of MEPs in the MEG
- num_of_timeouts
- Number of timeouts in the MEG
- num_of_unexpected_meg_ids
- Number of received OAM messages with an unexpected MEG ID
- num_of_unexpected_meg_levels
- Number of OAM messages with an unexpected ME level
- num_of_unexpected_meps
- Number of CC messages received from a MEP ID that is not found in the expected MEPs listed for that MEG
- num_of_unexpected_period_values
- Number of received OAM messages with an unexpected period value
- port_name
- Name of the port
- Description:
- The
emulation mplstp y1731 oam stats
function provides information about the Y1731 OAM emulation. This function returns the requested data and a status value (1 for success). If there is an error, the function returns the status value (0) and an error message. Function return values are formatted as a keyed list supported by the Tcl extension software - TclX. Use the TclX function (keylget) to retrieve data from the keyed list. (See Return Values for a description of each key.)
Examples:
To return results for combined modes of ais and lck:
set results [emulation mplstp y1731 oam stats mode= "ais|lck" port_handle= $port2]Sample Output:
{status 1} {ais {{mplstpoammpconfig1 {{ais_tx_state OFF} {ais_tx_count 8} {ais_rx_period NONE} {mp_name {MP 1_2}} {meg_id MEG_LSP1} {ais_rx_state OFF} {ais_rx_count 0}}} {mplstpoammpconfig2 {{ais_tx_state OFF} {ais_tx_count 8} {ais_rx_period NONE} {mp_name {MP 2_2}} {meg_id MEG_PW1} {ais_rx_state OFF} {ais_rx_count 0}}}}} {lck {{mplstpoammpconfig1 {{mp_name {MP 1_2}} {meg_id MEG_LSP1} {lck_tx_state OFF} {lck_tx_count 8} {lck_rx_period NONE} {lck_rx_state OFF} {lck_rx_count 0}}} {mplstpoammpconfig2 {{mp_name {MP 2_2}} {meg_id MEG_PW1} {lck_tx_state OFF} {lck_tx_count 8} {lck_rx_period NONE} {lck_rx_state OFF} {lck_rx_count 0}}}}}