Ethernet OAM Functions

emulation oam port config

Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>

Purpose:

Spirent Extension (for Spirent HLTAPI only).

Configures or modifies Operation Administration Maintenance (OAM) port configuration on a Spirent HLTAPI chassis.

Synopsis:

Note: M indicates the argument is `Mandatory`.

     emulation oam port config
         mode= {config} M
         port_handle= <port_handle>
         multicast_mac_type1= <aa:bb:cc:dd:ee:ff>
         multicast_mac_type2= <aa:bb:cc:dd:ee:ff>
         disable_cont_chk_rx= {true|false}
         enable_pm= {true|false}
         echo_tlvs_in_dm= {true|false}
         echo_tlvs_in_lm= {true|false}
         echo_tlvs_in_slr= {true|false}
         encode_me_level= {true|false}
         immediate_lt_response= {true|false}
         immediate_lb_response= {true|false}
         lt_response_delay_action= {default|no_action|rly_fdb|rly_mpdb}

Arguments:

port_handle
                Specifies the OAM port.

multicast_mac_type1
                Specifies the multicast DA Class 1: CCM, LBM, and so on.
                The default is 01:80:c2:00:00:30.

multicast_mac_type2
                Specifies the multicast DA Class 2: LTM.
                The default is 01:80:c2:00:00:38.

disable_cont_chk_rx
                Specifies whether to disable the receiving of CC messages.
                The default is false.

                 true    Do not process incoming CC messages

                 false   Process incoming CC messages

enable_pm
                Specifies to enable or disable the Enable Performance Monitoring Testing
               (DM, LM and SLM). The default is false.

echo_tlvs_in_dm
                Specifies whether to echo TLVs in DM response.
                The default is true.

                 true    Echo TLVs in DM response

                 false   Do not echo TLVs in DM response

echo_tlvs_in_lm
                Specifies whether to echo TLVs in LM response.
                The default is true.

                 true    Echo TLVs in LM response

                 false   Do not echo TLVs in LM response

echo_tlvs_in_slr
                Specifies whether to echo TLVs in SLM response.
                The default is true.

                 true    Echo TLVs in SLM response

                 false   Do not echo TLVs in SLM response

encode_me_level
                Specifies whether to encode the ME level in the multicast DA.
                The default is true.

                 true    Encode ME level in multicast DA

                 false   Do not encode ME level in multicast DA

immediate_lt_response
                Specifies whether to immediately send an LT response.
                The default is false.

                 true    Send the LT response immediately

                 false   Send the LT response on a random delay

immediate_lb_response
                Specifies whether to immediately send an LB response.
                The default is false.

                 true    Send the LB response immediately

                 false   Send the LB response on a random delay

lt_response_delay_action
                Specifies the relay action for LinkTrace.
                The default is Default.

                 default     Default

                 no_action   No action

                 rly_fdb     Use relay filtering database

                 rly_mpdb    Use relay MP database
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 (1) or $FAILURE (0)
log                     Error message if command returns {status 0}
Description:
The emulation oam port config function configures or modifies the OAM port.
Examples:

The following example configures OAM on the specified port:

emulation oam port config
    mode=                           config
    port_handle=                    $port1
    enable_pm=                      true
    multicast_mac_type1=            01:80:c2:00:00:3
    multicast_mac_type2=            01:80:c2:00:00:31
    disable_cont_chk_rx=            true
    echo_tlvs_in_dm=                true
    echo_tlvs_in_lm=                true
    echo_tlvs_in_slr=               true
    encode_me_level=                true
    immediate_lt_response=          true
    immediate_lb_response=          true
    lt_response_delay_action=       default

Sample Output:

{status 1}

End of Procedure Header

emulation oam config msg

Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>

Purpose:

Creates, modifies, or deletes Operation Administration Maintenance (OAM) message emulators on a Spirent HLTAPI chassis.

Ethernet Operation, Administration and Maintenance (EOAM) describes the monitoring of Ethernet network operation by network operators. Ethernet OAM is composed of a core set of functions and a set of optional functional groups.

The Mandatory functions include discovery operations (determining if the other end of the link is OAM capable, and what OAM functions it implements), state machine implementation, and some critical event flows. The optional functional groups are for link events, remote loopback, and variable retrieval and response.

Synopsis:

Note: M indicates the argument is `Mandatory`.

     emulation oam config msg
        mode= {create|modify|reset} M
        port_handle= <port_handle>|
        handle= <EOAM_session_handle>
        dst_addr_type= <unicast|multicast>
        count= <integer>
        enable_mp_only= {true|false}
        mac_local= < aa:bb:cc:dd:ee:ff >
        mac_local_incr_mode= <none|increment|list|random>
             mac_local_step= < aa:bb:cc:dd:ee:ff >
             mac_local_list= <mac local type>:<comma separated segment list>
        mac_remote= <aa:bb:cc:dd:ee:ff>
        mac_remote_incr_mode= <none|increment|list|random>
             mac_remote_step= < aa:bb:cc:dd:ee:ff>
             mac_remote_repeat= <integer>
             mac_remote_list= <mac remote type> :<comma separated segment list>
        vlan_outer_id= <0-4095>
        vlan_outer_ether_type= <0x8100|0x88A8|0x9100|0x9200>
        vlan_id_outer_step= <0-4095>
        vlan_id= <0-4095>
        vlan_ether_type= <0x8100|0x88A8|0x9100|0x9200>
        vlan_id_step= <0-4095>
        sut_ip_address= <a.b.c.d >|<aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
        mac_dst= < aa:bb:cc:dd:ee:ff >
        mac_dst_incr_mode= <none|increment|list|random>
             mac_dst_step= < aa:bb:cc:dd:ee:ff >
             mac_dst_repeat= <integer>
             mac_dst_list= <mac dst type>:< comma separated segment list >
        md_level= <0|1|2|3|4|5|6|7>
        md_level_incr_mode= <none|increment|list|random>
             md_level_step= <integer>
             md_level_repeat= <integer>
             md_level_list= <md level type>:< comma separated segment list >
        oam_standard= < ieee_802.1ag|itut_y1731>
        trans_id= <integer>
        ttl= <integer>
        msg_type= {loopback|linktrace|test|continuous_check|dm|lm|slm|ais|lck
        tlv_order_list=  {sender|org|data|test|ltr_egress_id|int_status|ltm_id|
                           port_status|reply_egress|reply_ingress|pbb_te_mip}]
        tlv_type= {ltr|lbm|ltm|dmm|dmr|lbr|lmm|lmr|slm|slr}
        tlv_ltr_egress_id_length= <octet_string>
        tlv_ltr_egress_id_type= <octet_string>
        tlv_ltr_egress_id_last_index= <octet_string>
        tlv_ltr_egress_id_last_mac_addr= <aa:bb:cc:dd:ee:ff>
        tlv_ltr_egress_id_next_index= <octet_string>
        tlv_ltr_egress_id_next_mac_addr= <aa:bb:cc:dd:ee:ff>
        tlv_int_status_value= {up|down|testing|unknown|dormant|not_present|lower_layer_down}
        tlv_int_status_length= <octet_string>
        tlv_int_status_type= <octet_string>
        tlv_ltm_id_length= <octet_string>
        tlv_ltm_id_type= <octet_string>
        tlv_port_status_value= {blocked|up}
        tlv_port_status_length= <octet_string>
        tlv_port_status_type= <octet_string>
        tlv_reply_egress_action= {ok|down|blocked|vid}
        tlv_reply_egress_type= <octet_string>
        tlv_reply_egress_mac_addr= <aa:bb:cc:dd:ee:ff>
        tlv_reply_ingress_action= {ok|down|blocked|vid}
        tlv_reply_ingress_length= <octet_string>
        tlv_reply_ingress_type= <octet_string>
        tlv_reply_ingress_mac_addr= <aa:bb:cc:dd:ee:ff>
        tlv_sender_length= <integer>
        tlv_sender_chassis_id= <integer>
        tlv_sender_chassis_id_length= <integer>
        tlv_sender_chassis_id_subtype= <integer>
        tlv_org_length= <integer>
        tlv_org_oui= <integer>
        tlv_org_subtype= <integer>
        tlv_org_value= <hexadecimal>
        tlv_data_length= <integer>
        tlv_data_pattern= <hexadecimal>
        tlv_test_length= <integer>
        tlv_test_pattern= <null|null_with_crc|prbs|prbs_with_crc>
        pkts_per_burst= <integer>
        rate_pps= <integer>
        transmit_mode= <continuous|single_pkt>
        ais_rx=  {true|false}
        delay_measurement_response= {true|false}
        lck_rx=  {true|false}
        link_trace_response=  {true|false}
        loopback_response= {true|false}
        loss_measurement_response=  {true|false}
        slm_response=  {true|false}
        dmm_delay= <0-100>
        dmr_delay= <0-100>
        lmm_tx_fc_fwd_offset= <0-32767>
        lmr_rx_fc_fwd_offset=  <0-32767>
        lmr_rx_fc_fwd_start= <0-4294967295>
        lmr_rx_fc_fwd_step=  <0-65535>
        lmr_tx_fc_bck_offset= <0-32767>
        lmr_tx_fc_bck_start= <0-4294967295>
        lmr_tx_fc_bck_step= <0-65535>
        meg_end_point_id= <1-8191>
        override_ais_period= {none|aisperiod_1s|aisperiod_1min}
        override_cont_chk_period= {none|ccperiod_3ms|ccperiod_10ms|ccperiod_100ms|
                                ccperiod_1s|ccperiod_10s|ccperiod_1min|ccperiod_10min}]
        override_lck_period= {none|lckperiod_1s|lckperiod_1min}
        override_me_level= {none|level_0|level_1|level_2|level_3|level_4|level_5|
                             level_6|level_7}]
        slm_tx_fc_fwd_offset= <0-32767>
        slr_tx_fc_bck_offset= <-32768-32767>
        slr_tx_fc_bck_start= <0-4294967295>
        slr_tx_fc_bck_step= <0-65535>
        cc_cvlan_cos_list= <0-7>
        cc_enable_multicast_target= {true|false}
        cc_svlan_cos_list= <0-7>
        cc_unicast_targetlist= <aa:bb:cc:dd:ee:ff>
        lb_enable_multicast_target=  {true|false}
        lb_initial_transaction_id= <1-4294967295>
        lb_loopback_tx_count= < 1-4294967295>
        lb_loopback_tx_rate= {lbrate_10_per_sec|lbrate_1_per_sec|lbrate_1_per_min|
                                lbrate_1_per_10min}]
        lb_loopback_tx_type= {single_msg|continuous|multiple_msg}
        lb_operation_mode= {itu_t|ieee}
        lb_unicast_target_list= <aa:bb:cc:dd:ee:ff>
        lt_enable_multicast_target= {true|false}
        lt_initial_transaction_id= <1-4294967295>
        lt_link_trace_tx_count= <1-4294967295>
        lt_link_trace_tx_rate= {ltrate_10_per_sec|ltrate_1_per_sec|ltrate_1_per_min|
                                ltrate_1_per_10min}]
        lt_link_trace_tx_type= {single_msg|continuous|multiple_msg}
        lt_link_trace_ttl= < 1-255>
        lt_unicast_target_list= <aa:bb:cc:dd:ee:ff>
        dm_append_null_test_id= {true|false}
        dm_cvlan_cos_list= <0-7>
        dm_custom_tx_rate= <1-100>
        dm_custom_tx_rate_unit= {dmrate_second|dmrate_minute|dmrate_10_minute}
        dm_test_id_count= <0-4294967295>
        dm_test_id_input_type= {testid_input_start_step_count|testid_input_list}
        dm_test_id_step= <1-65535>
        dm_test_id_value= < 0 -4294967295>
        dm_tx_mode= {on_demand|proactive}
        dm_tx_rate= {dmrate_10_per_sec|dmrate_1_per_sec|dmrate_1_per_min|
                      dmrate_1_per_10min|dmrate_custom}]
        dm_tx_type= {single_msg|continuous}
        dm_enable_multicast_target= {true|false}
        dm_svlan_cos_list= <0-7>
        dm_test_id_list= <0-7>
        dm_unicast_target_list= <aa:bb:cc:dd:ee:ff>
        dm_version= {dmversion_0|dmversion_1}
        lm_cvlan_cos_list=  <0-7>
        lm_enable_multicast_target= {true|false}
        lm_custom_tx_rate= <1-100>
        lm_custom_tx_rate_unit= {lmrate_second|lmrate_minute|lmrate_10_minute}
        lm_tx_rate= {lmrate_10_per_sec|lmrate_1_per_sec|lmrate_1_per_min|
                    lmrate_1_per_10min|lmrate_custom}]
        lm_tx_type= {single_msg|continuous}
        lm_svlan_cos_list=  <0-7>
        lm_tx_fc_fwd_mode= {static|step}
        lm_tx_fc_fwd_step= <1-65535>
        lm_tx_fc_fwd_value= < 0-4294967295>
        lm_unicast_target_list=  <aa:bb:cc:dd:ee:ff>
        slm_cvlan_cos_list=  <0-7>
        slm_enable_multicast_target=  {true|false}
        slm_svlan_cos_list=  <0-7>
        slm_custom_tx_rate= <1-100>
        slm_custom_tx_rate_unit= {slmrate_second|slmrate_minute|slmrate_10_minute}
        slm_test_id_count= < 1-4294967295>
        slm_test_id_input_type= {testid_input_start_step_count|testid_input_list}
        slm_test_id_step= < 1-65535>
        slm_test_id_value= <0-4294967295>
        slm_tx_count= <0-4294967295>
        slm_tx_rate= {slmrate_10_per_sec|slmrate_1_per_sec|slmrate_1_per_min|
                     slmrate_1_per_10min|slmrate_custom}]
        slm_tx_type= <multiple_msg>
        slm_test_id_list= <string>
        slm_tx_fc_fwd_mode= {static|step}
        slm_tx_fc_fwd_step= <1-65535>
        slm_tx_fc_fwd_value= <0-4294967295>
        slm_unicast_target_list=  <aa:bb:cc:dd:ee:ff>
        tlv_pbb_te_mip_length= <octet string>
        tlv_pbb_te_mip_type= <0-99>
        tlv_pbb_te_mip_mip_mac= <aa:bb:cc:dd:ee:ff>
        tlv_pbb_te_mip_reverse_mac= <aa:bb:cc:dd:ee:ff>
        tlv_pbb_te_mip_reverse_vid= <0-4095>
        ais_enable_multicast_target= {true|false}
        ais_unicast_target_list=  <aa:bb:cc:dd:ee:ff>
        lck_enable_multicast_target=  {true|false}
        lck_unicast_target_list=  <aa:bb:cc:dd:ee:ff>

Arguments:

 handle
                 Specifies the Ethernet OAM session handle, a string value,
                 to use when mode is set to "modify", or "reset".

 port_handle
                 Specifies the port on which to create the emulated EOAM
                 Maintenance Point (MP) when mode is set to "create".

 enable_mp_only
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Determines whether to only add Maintenance Points (MPs), or
                 create an MEG that is associated with the MP.
                 Possible values are true and false. When set to true, only MPs
                 will be created. The default value is false.

 mode
                 Specifies the action to perform on the specified test port.
                 This argument is `Mandatory`. Possible values are create,
                 modify, and reset.
                 The modes are described below::


                  create   Creates one or more Ethernet OAM message
                           emulator(s) on the port specified with the
                           port_handle argument. You must specify the
                           port_handle argument.

                  modify   Changes the configuration for the Ethernet OAM
                           message emulator(s) identified by the handle
                           argument. You must specify the handle argument.

                  reset   Deletes all of the EOAM message emulator(s)
                          specified in the handle argument. You must specify
                          the handle argument.

 dst_addr_type
                 Specifies whether the destination address, the address to
                 which the MP(s) test messages should be sent, is unicast or
                 multicast. Possible values are::


                  unicast    Indicates the destination address is a unicast
                             address. The unicast address specifies a single
                             network device.

                  multicast  Indicates the destination address is a multicast
                             address. The multicast address specifies a group
                             of network devices that have joined a multicast
                             group. "Multicast address" is synonymous with
                             "group address".

 msg_type
                 Specifies the type of EOAM message/messages to create. Possible
                 values are loopback, linktrace, test, and continuous_check.
                 You can configure multiple message options together.
                 Example, msg_type continuous_check linktrace.
                 The types are described below::


                  loopback   Indicates the EOAM message to create is a
                             Loopback message. A Loopback message helps a
                             Maintenance End Point (MEP) identify the precise
                             fault location along a given MA (Maintenance
                             Association). A Loopback message is issued by an
                             MEP to a given Maintenance Intermediate Point
                             (MIP) along an MA. The appropriate MIP in front
                             of the fault will respond with a Loopback reply.
                             The MIP behind the fault will not respond.

                  linktrace   Indicates the EOAM message to create is a
                              Linktrace message. A Linktrace message helps a
                              MEP to discover vital connectivity data about
                              the path.

                  test        Indicates the EOAM message to create is a test
                              message. Test messages are used by the Ethernet Test
                              Signal function to perform oneway, on-demand in-
                              service or outof-service diagnostics tests. This
                              includes verifying bandwidth throughput, frame loss,
                              bit errors, and so on.

                  continuous_check  Used to verify that a destination is reachable
                                    proactively by sending messages periodically
                                    and errors are detected when certain messages
                                    are not received

                  dm            Creates Delay Measurement (DM) messages.
                                Frame delay and frame delay variation measurements
                                are performed by sending periodic frames with
                                Ethernet Delay Measurement information to the peer
                                MEP, and receiving frames with Ethernet Delay
                                Measurement information from the peer MEP, during
                                proactive measurement session and/or the
                                diagnostic interval. Each MEP may perform frame
                                delay and frame delay variation measurement.

                  lm            Creates Loss Measurement (LM) messages.
                                The Frame Loss Measurement feature maintains
                                counters of received and transmitted data frames
                                between a pair of MEPs. These counters are used to
                                calculate the frame loss ratio.

                  slm           Creates Synthetic Loss Measurement (SLM) messages.
                                SLM is part of the ITU-T Y.1731 standard. It can
                                be used to periodically measure frame loss,
                                forward loss ratio (FLR), and frame delay between
                                a pair of point to point MEPs. Measurements are
                                made between two MEPs belonging to the same
                                domain and MA.

                  ais           Create Alarm Indication Signal (AIS) messages. When
                                an MEP detects a connectivity failure, it will
                                send AIS multicastly in the direction away from the
                                detected failure at the next most superior level.
                                It will send AIS multicastl on each SVLAN affected by
                                the failure

                  lck           Create Lock Signal Function (LCK) messages.
                                Locked Signal is transmitted by an MEP to
                                communicate intentional administrative or
                                diagnostic actions at that MEP. It is used for
                                client layer alarm suppression, and enables client
                                MEPs to differentiate between the defect
                                conditions and intentional
                                administrative/diagnostic actions at the server
                                layer MEP.

                 Note: mode modify can only change the parameters of a created
                       message. To change the message type, use msg_type with
                       mode create.

 count
                 Defines the number of EOAM messages to send by MEPs. The
                 default is 1.

 mac_local
                 Defines the MAC address of the emulated MPs.

 mac_local_incr_mode
                 Defines the increment method of the local MAC address.
                 Possible values are::


                  none        Indicates that the local MAC address will not be
                              incremented.

                  increment   Indicates the local MAC address increments
                              by the step specified in the mac_local_step
                              argument.

                  list       Indicates the list of the local MAC addresses
                             should be inputted.

                  random      Indicates the local MAC addresses should be
                               distributed randomly.

                 Note: The decrement mode is not supported.

 mac_local_step
                 Specifies the step size in which the local MAC address is
                 incremented. The default is 00:00:00:00:00:01.

 mac_local_list
                 Defines the list of local MAC addresses that should be used
                 for the emulated EOAM messages. You must specify this
                 argument when you specify "list" for mac_local_incr_mode.
                 Local MAC addresses can be used as MEPs that issue emulated
                 EOAM messages or MIPs that respond to these messages on
                 request.

 mac_remote
                 Indicates the MAC address of device under test (DUT).
                 Remote MAC addresses should be used as MEPs that issue
                 emulated EOAM messages or MIPs that respond to these
                 messages on request.

 mac_remote_incr_mode
                 Defines the method to increment of DUT MAC address. Possible
                 values are::


                  none       Indicates the remote MAC address will not be
                             incremented.

                  increment  Indicates the remote MAC address should
                             increment by the step specified in the
                             mac_remote_step argument.

                  list     Indicates the remote MAC addresses should be
                           inputted. The list of the remote MAC addresses are
                           specified in the mac_remote_list argument.

                  random   Indicates the remote MAC addresses should be
                           distributed randomly.

                 Note: The decrement mode is not supported.

 mac_remote_step
                 Specifies the step size in which the remote MAC address is
                 incremented. The default is 00:00:00:00:00:01.

 mac_remote_repeat
                 Specifies the number of times a remote MAC address should be
                 repeated before the step specified in the mac_remote_step
                 argument is applied to the MAC address for incrementing. The
                 default value is 1.

 mac_remote_list
                 Defines the list of remote MAC addresses to use
                 for the emulated EOAM messages. You must specify this list
                 when you specify "list" for the mac_remote_incr_mode
                 argument.

 vlan_outer_id
                 Specifies Virtual Local Area Network (VLAN) ID for the outer
                 VLAN tag that is an encapsulation of the test message(s).
                 VLAN ID is the identification of the VLAN, which is
                 basically used by the standard 802.1Q. Possible values range
                 from 0 to 4095. The default is 1.

 vlan_outer_ether_type
                 Indicates the value of VLAN EtherType to be used for the
                 test message(s). EtherType is a twooctet field in an
                 Ethernet frame, as defined by the Ethernet II framing
                 networking standard. It is used to indicate which protocol
                 is encapsulated in the frame data. Possible values are
                 0x8100, 0x88A8, 0x9100, and 0x9200. The default is 0x8100.
                 The types are described below::


                  0x8100   Specifies EtherType value 0x8100, a value of 8100
                           in hexadecimal. When a frame has the VLAN EtherType
                           equal to 8100, this frame carries the tag IEEE 802.1Q.

                  0x88A8   Specifies EtherType value 0x88A8, a value of
                           88A8 in hexadecimal. When a frame has the VLAN
                           EtherType equal to 88A8, this frame carries the tag
                           IEEE 802.1ad.

                  0x9100   Specifies EtherType value 0x9100, a value of 9100
                           in hexadecimal. When a frame has the VLAN
                           EtherType equal to 9100, this frame carries the tag
                           IEEE standard IEEE 802.1Q-1998.

                  0x9200   Specifies EtherType value 0x9200, a value of 9200
                           in hexadecimal.

 vlan_id_outer_step
                 The amount by which the specified outer VLAN ID
                 (vlan_outer_id) increments for subsequent messages. This
                 argument allows users to configure VLAN IDs in a flexible
                 way.

 vlan_id
                 Specifies the inner VLAN to which the test messages belongs.
                 Possible values range from 0 to 4095. The default is 1.

 vlan_ether_type
                 Specifies the VLAN EtherType to use for the test
                 message(s).Possible values are 0x8100, 0x88A8, 0x9100 and
                 0x9200. The default is 0x8100. The types are described below::


                  0x8100   Specifies EtherType value 0x8100, a value of 8100
                           in hexadecimal. When a frame has the VLAN EtherType
                           equal to 8100, this frame carries the tag IEEE 802.1Q.

                  0x88A8   Specifies EtherType value 0x88A8, a value of 88A8
                           in hexadecimal. When a frame has the VLAN EtherType
                           equal to 88A8, this frame carries the tag IEEE 802.1ad.

                  0x9100   Specifies EtherType value 0x9100, a value of 9100
                           in hexadecimal. When a frame has the VLAN EtherType
                           equal to 9100, this frame carries the tag IEEE 802.1Q-1998.

                  0x9200   Specifies EtherType value 0x9200, a value of 9200
                           in hexadecimal.

 vlan_id_step
                 Defines the step size by which the VLAN ID is incremented.
                 Possible values range from 0 to 4095.

 sut_ip_address
                 Specifies the IP address or Gateway Address for the chassis
                 to reach the System Under Test (SUT). This address can be in
                 either IPv4 or IPv6 format. The default for IPv4 is
                 192.85.1.1. The default for IPv6 is 2001::1.

 mac_dst
                 Specifies the start destination MAC address of the emulated
                 EOAM messages.

 mac_dst_incr_mode
                 Defines how to increment the destination MAC addresses for
                 test messages. Possible values are::


                  none       Indicates the MAC addresses will not be incremented.

                  increment  Indicates the MAC address of the target device
                             will increment by the step specified in the
                             mac_dst_step argument.

                  list       Indicates you must enter the MAC address of the
                             target device manually. Specify the list of MAC
                             addresses in the mac_dst_list argument.

                  random      Indicates the remote MAC addresses will be
                              distributed randomly.

                 Note: The decrement mode is not supported.

 mac_dst_step
                 The amount by which to increment the specified destination MAC
                 address (mac_dst) for subsequent messages. You must specify this
                 step when you specify "increment" for the mac_dst_incr_mode
                 argument.

 mac_dst_repeat
                 Specifies the number of times a MAC address (mac_dst) will be
                 repeated before the step specified in the mac_dst_step argument
                 is applied to the MAC address for incrementing. The default value
                 is 1.

 mac_dst_list
                 Defines the list of target device MAC addresses to use for the
                 emulated EOAM messages. You must specify this list when you
                 specify "list" for the mac_dst_incr_mode argument.

 md_level
                 Indicates the Maintenance Domain (MD) Level to be used for
                 emulated messages. An MD is an administrative domain for the
                 purpose of managing and administering a network. An MD is
                 assigned a unique MD Level (among eight possible) by the
                 administrator, which is useful for defining the hierarchical
                 relationship of MDs. MDs may nest or touch but cannot intersect.
                 If two MDs nest, the outer MD must have a higher MD Level than
                 the inner one. Messages from a lowerlevel MD cannot be switched
                 into a higherlevel MD. Possible values range from 0 (lowest) to
                 7 (highest). The default is 0.

 md_level_incr_mode
                 Defines the increment method of MD Level for test messages.
                 Possible values are::


                  none        Indicates the MD levels will not be incremented.
                  increment   Indicates the MD Level will increment by the
                              step specified in the - md_level_step argument.

                  list       Indicates you must enter the MD Level manually.
                             The list of the MD Levels is defined in the
                             md_level_list argument.

                  random     Indicates the MD Level will be distributed
                             randomly.

                 Note: The decrement mode is not supported.

 md_level_step
                 Specifies the step size in which the MD Level incremented.
                 You must specify this step when you specify "increment" for
                 the md_level_incr_mode argument. The default is 1.

 md_level_repeat
                 Specifies the number of times a MD Level should be
                 repeated before the step specified in the md_level_step
                 argument is applied to the MD Level for incrementing. The
                 default value is 1.

 md_level_list
                 Defines the list of MD levels to use for the
                 emulated EOAM messages. Possible values are lists of
                 integers ranging from 0 to 7.

 oam_standard
                 Specifies the Ethernet OAM standard to use, either IEEE
                 802.1ag or ITU-T Y1731. Use this argument only if the
                 msg_type is loopback or linktrace. The default is
                 ieee_802.1ag.

 trans_id
                 Defines the value for the starting Sequence Number that is
                 referred to as Linktrace Message (LTM) Transaction ID for
                 Linktrace Messages and Loopback Message (LBM) Transaction ID
                 for loopback messages. Each LBM and LTM includes this field,
                 which is incremented for each Protocol Data Unit (PDU)
                 transmitted for each type, so that consecutively transmitted
                 PDUs are in numerical order. The default is 1.

 ttl
                 Defines the timeto-live (TTL) value for emulated messages.
                 The TTL is a counter measured in units of seconds that
                 gradually decrements to zero, at which point the datagram is
                 discarded. Use this option only if the message
                 type ( msg_type) is linktrace. The default is 64.

 tlv_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Creates optional TLVs for a particular message type. Possible
                 values are::


                  cc    Continuous Check (CC) optional TLVs
                  ltm   Link Trace Message (LTM) optional TLVs
                  ltr    Link Trace Reply (LTR) optional TLVs
                  dmm  Delay Measurement Message (DMM) optional TLVs
                  dmr   Delay Measurement Reply (DMR) optional TLVs
                  lbm   Loopback Message (LBM) optional TLVs
                  lbr   Loopback Reply (LBR) optional TLVs
                  lmm  Loss Measurement Message (LMM) optional TLVs
                  lmr   Loss Measurement Reply (LMR) optional TLVs
                  slm   Synthetic Loss Measurement (SLM) optional TLVs
                  slr    Synthetic Loss Reply (SLR) optional TLVs

                 Note: tlv_type cannot be used with mode modify.

 tlv_order_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the order of TLVs in a spaceseparated list.
                 Possible values are::


                   sender                  Sender TLV
                   org                     OrganizationSpecific TLV
                   data                    Data TLV
                   test                    Test TLV
                   ltr_egress_id           LTR Egress TLV
                   int_status              Interface Status TLV
                   ltm_id                  LTM ID TLV
                   port_status             Port Status TLV
                   reply_egress            Reply Egress TLV
                   reply_ingress           Reply Ingress TLV
                   pbb_te_mip              PBB TE MIP TLV

                 The default value is::


                   sender org data test ltr_egress_id int_status ltm_id
                   port_status reply_egress reply_ingress

 tlv_ltr_egress_id_length
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the length for the LTR Egress ID TLV. The value must be
                 an octet string. The default value is 0000.

 tlv_ltr_egress_id_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the type for the LTR Egress ID TLV. The value must be
                 an octet string. The default value is 08.

 tlv_ltr_egress_id_last_index
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the last index for the LTR Egress ID TLV. The value
                 must be an octet string. The default value is 0000.

 tlv_ltr_egress_id_last_mac_addr
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the last MAC address for the LTR Egress ID TLV. The
                 default value is 00:00:00:00:00:00.

 tlv_ltr_egress_id_next_index
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the next index for the LTR TLV. The value
                 must be an octet string. The default value is 0000.

 tlv_ltr_egress_id_next_mac_addr
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the next MAC address for the LTR TLV. The
                 default value is 00:00:00:00:00:00.

 tlv_int_status_value
                 `Spirent Extension (for Spirent HLTAPI only).`

                Specifies the value for the Interface Status TLV
                of the specified MP.
                Possible values are::


                 up                       Interface status up
                 down                     Interface status down
                 testing                  Interface status testing
                 unknown                  Interface status unknown
                 dormant                  Interface status dormant
                 not_present              Interface status not present
                 lower_layer_down         Interface status lower layer down

                The default value is up.

 tlv_int_status_length
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the length for the Interface Status TLV. The
                 value must be an octet string. The default value is 0000.

 tlv_int_status_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the type for the Interface Status TLV. The value
                 must be an octet string. The default value is 04.

 tlv_ltm_id_length
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the length for the LTM Egress ID TLV. The value
                 must be an octet string. The default value is 0000.

 tlv_ltm_id_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the type for the LTM Egress ID TLV. The value
                 must be an octet string. The default value is 07.

 tlv_port_status_value
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the value for the Port Status TLV. Possible values are
                 blocked and up. The default value is up.

 tlv_port_status_length
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the length for the Port Status TLV. The value
                 must be an octet string. The default value is 0000.

 tlv_port_status_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the type for the Port Status TLV. The value
                 must be an octet string. The default value is 0000.

 tlv_reply_egress_action
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the value for the Reply Egress TLV.
                 Possible values are::


                  ok                 Egress OK
                  down               Egress down
                  blocked            Egress blocked
                  vid                Egress VID

                The default value is ok.

 tlv_reply_egress_length
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the length for the Reply Egress TLV. The value
                 must be an octet string. The default value is 0000.

 tlv_reply_egress_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the type for the Reply Egress TLV. The value must be an
                 octet string. The default value is 06.

 tlv_reply_egress_mac_addr
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the MAC address for the Reply Egress TLV.
                 The default value is 00:00:00:00:00:00.

 tlv_reply_ingress_action
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the value for the Reply Ingress TLV.
                 Possible values are::


                  ok                 Ingress OK
                  down              Ingress down
                  blocked            Ingress blocked
                  vid                Ingress VID

                 The default value is ok.

 tlv_reply_ingress_length
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the length for the Reply Ingress TLV. The value
                 must be an octet string. The default value is 0000.

 tlv_reply_ingress_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the type for the Reply Ingress TLV. The value
                 must be an octet string. The default value is 05.

 tlv_reply_ingress_mac_addr
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the MAC address for the Reply Ingress TLV. The default
                 value is 00:00:00:00:00:00.

 tlv_pbb_te_mip_length
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the length for the PBB TE MIP TLV. The value must be an
                 octet string. The default value is 0000.

 tlv_pbb_te_mip_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the type for the PBB TE MIP TLV. Possible values range
                 from 0 to 99. The default value is 09.

 tlv_pbb_te_mip_mip_mac
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the MAC address for the PBB TE MIP TLV. The default
                 value is 00:00:00:00:00:00.

 tlv_pbb_te_mip_reverse_mac
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the reverse MAC address for the PBB TE MIP TLV. The
                 default value is 00:00:00:00:00:00.

 tlv_pbb_te_mip_reverse_vid
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the VLAN ID (VID) for the PBB TE MIP TLV. Possible
                 values range from 0 to 4095. The default value is 0.

 tlv_sender_length
                 Defines the size of the Sender ID Type Length Value (TLV).
                 With the type value of 1, a Sender ID TLV identifies the
                 Bridge on which the transmitting MP is configured and may
                 also include a management address for that Bridge. This
                 option is only valid when the msg_type is loopback or
                 linktrace. The default is 0.

 tlv_sender_chassis_id
                 Define the Sender ID TLV Chassis ID. As a field of Sender
                 ID TLV, Chassis ID identifies the chassis. Do not use this
                 argument if the Chassis ID Length field
                 (tlv_sender_chassis_id_length) contains 0. Use this option
                 only if msg_type is loopback or linktrace. The default is 0.

 tlv_sender_chassis_id_length
                 Defines the size of the Chassis ID field. If you did not
                 specify a chassis ID this argument value is 0. The Chassis
                 ID Length field is either 0 or is less than
                 (TLV Length field value - 1). Use this option only if
                 msg_type is loopback or linktrace. The default is 0.

 tlv_sender_chassis_id_subtype
                 Defines the format of the Chassis ID field. Use this option
                 only if msg_type is loopback or linktrace. The default is 0.

 tlv_org_length
                 Defines the size of an OrganizationSpecific TLV.
                 OrganizationSpecific TLV allows different organizations as
                 well as individual software and equipment vendors to define
                 TLVs that advertise information to remote entities attached
                 to the same media. Use this option only if msg_type is
                 loopback or linktrace. The default is 4.

 tlv_org_oui
                 Defines the Organizationally Unique Identifier of an
                 OrganizationSpecific TLV. The OUI is the first 24 bits of a
                 MAC address for a network device, which indicates the
                 specific vendor for that device as assigned by the IEEE.
                 Use this option only if msg_type is loopback or
                 linktrace. The default is 0.

 tlv_org_subtype
                 Defines the format of the OrganizationSpecific TLV field.
                 Use this option only if the msg_type is loopback or
                 linktrace. The default is 0.

 tlv_org_value
                 Defines the value of an OrganizationSpecific TLV. Use this
                 option only if msg_type is loopback or linktrace. Specify
                 this value as hexadecimal characters. The default is 0.

 tlv_data_length
                 Defines the length value of the Data TLV. Data TLV is
                 arbitrary data of zero or more octets. Data TLV serves
                 several purposes including the transmission of different
                 frame sizes to test Mobile Test Unit (MTU) capabilities and
                 the testing for dataspecific error dependencies. The Data
                 TLV shall not be examined or interpreted by the receiver of
                 any Connectivity Fault Management (CFM) PDU. Use this option
                 only if msg_type is loopback or linktrace. The default is 5.

 tlv_data_pattern
                 Defines the Data TLV Data pattern, an noctet (n = Length)
                 arbitrary bit pattern. Specify this value as hexadecimal
                 characters. Use this option only if msg_type is loopback.
                 The default is 0x0.

 tlv_test_length
                 Specifies the size of the Value field containing the Test
                 Pattern and CRC-32. Use this option only if msg_type is
                 test. The default is 20.

 tlv_test_pattern
                 Identifies the Pattern Type of Test TLV. Possible values are
                 null, null_with_crc, prbs, and prbs_with_crc. Use this
                 option only if msg_type is test. The default is null.
                 null - Defines Null signal without Cyclic Redundancy Check
                 (CRC)-32
                 null with crc Defines Null signal with CRC-32
                 prbs Defines Pseudorandom Bit Sequence (PRBS) 2-31-1
                 without CRC-32
                 prbs with crc - PRBS 2-31-1 with CRC-32

 transmit_mode
                 Defines the mode of message transmission. Possible values
                 are continuous and single_pkt. The random_spaced,
                 single_burst, multi_burst, and continuous_burst mode are not
                 supported. Use this option only when the rate_pps is
                 specified. The default is single_pkt.

 pkts_per_burst
                 Indicates the number of packets each port transmits in a
                 single burst. The default is 1.

 rate_pps
                 Defines the traffic transmission rate in packets per second.
                 This value refers to the packet rate of a given packet size
                 that will load up an interface to 100%. The default is 1.

 ais_rx
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Determines whether the Maintenance Point (MP) will receive or
                 ignore AIS messages. Possible values are true and false. When it
                 is set to true, the MP will receive AIS messages. The default
                 value is true.

 delay_measurement_response
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Once enabled, the MP will respond to Delay Measurement (DM)
                 messages by sending a Delay Measurement Reply (DMR). Possible
                 values are true (enable) and false (disable). The default value
                 is true.

 lck_rx
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Determines whether the MP will receive or ignore LCK messages.
                 Possible values are true and false. When it is set to true, the
                 MP will receive AIS messages. The default value is true.

 link_trace_response
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Once enabled, the MP will respond to Link Trace (LT) messages by
                 sending a Link Trace Reply (LTR). Possible values are true
                 (enable) and false (disable). The default value is true.

 loopback_response
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Once enabled, the MP will respond to Loopback messages
                 by sending a Loopback Reply (LBR). Possible values are true
                 (enable) and false (disable). The default value is true.

 loss_measurement_response
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Once enabled, the MP will respond to Loss Measurement (LM) messages
                 by sending a Loss Measurement Reply (LMR). Possible values are
                 true (enable) and false (disable). The default value is true.

 slm_response
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Once enabled, the MP will respond to Synthetic Loss Measurement
                 messages by sending a Synthetic Loss Measurement Reply (SLR).
                 Possible values are true (enable) and false (disable). The
                 default value is true.

 dmm_delay
                 `Spirent Extension (for Spirent HLTAPI only).`

                Delay the sending of each DMM frame by this value multiplied by 10
                milliseconds. Possible values range from 0 to 100. The default
                value is 0.

 dmr_delay
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Delay the sending of each DMR frame by this value multiplied by
                 10 milliseconds. Possible values range from 0 to 100. The default
                 value is 0.

 lmm_tx_fc_fwd_offset
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the TLV offset for LMM sent frame count
                 forwarding (TxFCf). Possible values range from 0 to 32767. The
                 default value is 0.

 lmr_rx_fc_fwd_offset
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the TLV offset for the LMR received frame count
                 forwarding (RxFCf). Possible values range from 0 to 32767. The
                 default value is 0.

 lmr_rx_fc_fwd_start
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the initial value of the LMR RxFCf. The default value is 0.

 lmr_rx_fc_fwd_step
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the increment value for the number of frames in
                 subsequent steps. Possible values range from 0 to 65535. The
                 default value is 0.

 lmr_tx_fc_bck_offset
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the TLV offset for the LMR Tx frame count backward
                 (TxFCb). Possible values range from 0 to 32767. The default value
                 is 0.

 lmr_tx_fc_bck_start
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the initial value of LMR TxFCb. The default value is 0.

 lmr_tx_fc_bck_step
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the increment value for the number of frames in
                 subsequent steps. Possible values range from 0 to 65535. The
                 default value is 0.

 meg_end_point_id
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the MEP ID. This value must be unique within the MEG.
                 Possible values range from 1 to 8191. The default value is 1.

 override_ais_period
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies an override AIS period for the specified MEP. Possible
                 values are::


                  none              No override value specified. Use the AIS period
                                    from the associated MEG
                  aisperiod_1s      1s AIS period
                  aisperiod_1min    1 min AIS period

                 The default value is none.

 override_cont_chk_period
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies an override CC period for the specified MEP. Possible
                 values are::


                  none               No override value specified. Use the CC period
                                     from the associated MEG
                  ccperiod_3ms       3 ms CC period
                  ccperiod_10ms      10ms CC period
                  ccperiod_100ms     100ms CC period
                  ccperiod_1s        1s CC period
                  ccperiod_10s       10s CC period
                  ccperiod_1min      1 min CC period
                  ccperiod_10min     10 min CC period

                 The default value is none.

 override_lck_period
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies an override LCK period for the specified MEP. Possible
                 values are::


                  none               No override value specified. Use the LCK period
                                     from the associated MEG
                  lckperiod_1s       1s LCK period
                  lckperiod_1min     1 min LCK period

                 The default value is none.

 override_me_level
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies an override ME level for the specified MEP. Possible
                 values are::


                  none          No override value specified. Use the ME level from
                                the associated MEG
                  level_0        Level 0
                  level_1        Level 1
                  level_2        Level 2
                  level_3        Level 3
                  level_4        Level 4
                  level_5        Level 5
                  level_6        Level 6
                  level_7        Level 7

                 The default value is none.

 slm_tx_fc_fwd_offset
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the offset value for the SLM TxFCf.
                 Possible values range from 0 to 32767. The default value is 0.

 slr_tx_fc_bck_offset
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the TLV offset for the SLR TxFCb. Possible values range
                 from -32767 to 32767. The default value is 0.

 slr_tx_fc_bck_start
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the initial value of the SLR TxFCb.
                 The default value is 1.

 slr_tx_fc_bck_step
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the SLR increment value for the number of frames in
                 subsequent steps. Possible values range from 0 to 65535. The
                 default value is 1.

Continuous Check Message (msg_type continuous_check)

 cc_cvlan_cos_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A comma separated list of class of service values for the customer
                 VLAN. Possible values range from 0 to 7.

 cc_svlan_cos_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A comma separated list of class of service values for the
                 service provider VLAN. Possible values range from 0
                 to 7.

 cc_unicast_targetlist
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A list of unicast MAC addresses for CC messages to target.
                 The default value is 00:00:00:00:00:00. You must set
                 cc_enable_multicast_target to false.

 cc_enable_multicast_target
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies if messages are unicast (false) or multicast (true).
                 The default value is true.

 Loopback Message (msg_type loopback)

 lb_enable_multicast_target
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies if Loopback messages are unicast (false) or multicast
                 (true). The default value is true.

 lb_initial_transaction_id
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the transaction ID for the initial Loopback
                 message. The default value is 1.

 lb_loopback_tx_count
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the number of Loopback messages to be transmitted. The
                 default value is 1.

 lb_loopback_tx_rate
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the transmission rate of Loopback messages.
                 Possible values are::


                  lbrate_10_per_sec       10 per second
                  lbrate_1_per_sec        1 per second
                  lbrate_1_per_min        1 per minute
                  lbrate_1_per_10min      1 per 10 minutes

                 The default value is lbrate_1_per_sec.

 lb_loopback_tx_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the transmission type of Loopback messages. Possible
                 values are::


                  single_msg    Send a single Loopback message

                  continuous    Send Loopback messages continuously

                  multiple_msg   Send a group of Loopback messages

                 The default value is single_msg.

 lb_operation_mode
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the operation mode of the command. This must match the
                 MEG's operation mode that is being targeted. Possible values are::


                  itu_t       Send Loopback messages to an ITU-T MEG
                  ieee        Send Loopback messages to an IEEE MEG

                 The default value is itu_t.

 lb_unicast_target_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A list of unicast MAC addresses for Loopback messages to target.
                 The default value is 00:00:00:00:00:00.

 Link Trace Message (msg_type linktrace)

 lt_enable_multicast_target
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies if Link Trace messages are unicast (false) or multicast
                 (true). The default value is true.

 lt_initial_transaction_id
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the transaction ID value for the initial Link Trace
                 message. The default value is 1.

 lt_link_trace_tx_count
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the number of packets to send for each
                 source/destination pair in the Link Trace packet stream of each
                 individual MEP device. The default value is 1.

 lt_link_trace_tx_rate
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the transmission rate for Link Trace messages.
                 Possible values are::


                  ltrate_10_per_sec   10 per second
                  ltrate_1_per_sec    1 per second
                  ltrate_1_per_min    1 per minute
                  ltrate_1_per_10min  1 per 10 minutes

                 The default value is lbrate_1_per_sec.

 lt_link_trace_tx_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the transmission type of Link Trace messages. Possible
                 values are::


                  single_msg       Send a single Link Trace message

                  continuous       Send Link Trace messages continuously

                  multiple_msg     Send a group of Link Trace messages

                  The default value is single_msg.

 lt_link_trace_ttl
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the initial TTL value. Possible values range from 1 to
                 255. The default value is 255.

 lt_unicast_target_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A list of unicast MAC addresses for Link Trace messages to
                 target. The default value is 00:00:00:00:00:00. You must set
                 lt_enable_multicast_target to false.

Delay Measurement Message (msg_type dm)

 dm_append_null_test_id
                 `Spirent Extension (for Spirent HLTAPI only).`

                 When enabled, a null test ID TLV will be appended to the message.
                 Possible values are true and false. The default value is false.

 dm_cvlan_cos_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A comma separated list of class of service values for the customer
                 VLAN. Possible values range from 0 to 7.

 dm_svlan_cos_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A comma separated list of class of service values for the
                 service provider VLAN. Possible values range from 0 to 7.

 dm_custom_tx_rate
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the number of DM messages for the custom transmission
                 rate. You must set dm_tx_rate to dmrate_custom. The default
                 value is 1.

 dm_custom_tx_rate_unit
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the unit for the custom transmission rate. You must set
                 dm_tx_rate to dmrate_custom. Possible values are::


                  dmrate_second           Unit in second
                  dmrate_minute           Unit in minute
                  dmrate_10_minute        Unit in 10 minutes

                 The default value is dmrate_second.

 dm_test_id_count
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the number of test IDs for DM messages.
                 The default value is 1.

 dm_test_id_input_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the input format for test IDs. Possible values are::


                  testid_input_start_step_count     Start/Step/Count format
                  testid_input_list                 List format

                 The default value is testid_input_start_step_count.

 dm_test_id_step
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the increment value to create subsequent test IDs. This
                 argument is available when dm_test_id_input_type is set to
                 testid_input_start_step_count. Possible values range from 1 to
                 65535. The default value is 1.

 dm_test_id_value
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the first test ID. This argument is available when
                 dm_test_id_input_type is set to testid_input_start_step_count.
                 The default value is 1.

 dm_tx_mode
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the transmission mode of DM messages.
                 Possible values are::


                  on_demand       Ondemand mode
                  proactive         Proactive mode

                 The default value is on_demand.

 dm_tx_rate
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the transmission rate of DM messages. Possible values
                 are::


                  dmrate_10_per_sec            10 per second
                  dmrate_1_per_sec             1 per second
                  dmrate_1_per_min             1 per minute
                  dmrate_1_per_10min           1 per 10 minutes
                  dmrate_custom                Customized rate

                 The default value is dmrate_1_per_sec

 dm_tx_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the transmission type of DM messages. Possible values
                 are::


                  single_msg      Send a single DM message
                  continuous      Send continuous DM messages

                 The default value is single_msg.

 dm_enable_multicast_target
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies if messages are unicast (false) or multicast (true).
                 The default value is true.

 dm_test_id_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies a list of test IDs. This argument is available when
                 dm_test_id_input_type is set to testid_input_list. The default
                 value is 1.

 dm_unicast_target_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A list of unicast MAC addresses for DM messages to target.
                 The default value is 00:00:00:00:00:00. You must set
                 dm_enable_multicast_target to false.

 dm_version
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the version of the specification to use. Possible
                 values are::


                  dmversion_0   DM version 0
                  dmversion_1   DM version 1

                 The default value is dmversion_0.

Loss Measurement Message (msg_type lm)

 lm_cvlan_cos_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A comma separated list of class of service values for the
                 customer VLAN. Possible values range from 0 to 7.

 lm_svlan_cos_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A comma separated list of class of service values for the
                 service provider VLAN. Possible values range from 0 to 7.

 lm_enable_multicast_target
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies if messages are unicast (false) or multicast
                 (true). The default value is true.

 lm_custom_tx_rate
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the number of messages for the custom transmission rate.
                 This argument is available when lm_tx_rate is set to
                 dmrate_custom. The default value is 1.

 lm_custom_tx_rate_unit
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the unit for the custom transmission rate. This argument is
                 available when lm_tx_rate is set to lmrate_custom. Possible
                 values are::


                  lmrate_second      Unit in second
                  lmrate_minute      Unit in minute
                  lmrate_10_minute   Unit in 10 minutes

                 The default value is dmrate_second.

 lm_tx_rate
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the transmission rate of LM messages. Possible values
                 are::


                  lmrate_10_per_sec           10 per second
                  lmrate_1_per_sec            1 per second
                  lmrate_1_per_min            1 per minute
                  lmrate_1_per_10min          1 per 10 minutes
                  lmrate_custom               Customized rate

                 The default value is dmrate_1_per_sec.


 lm_tx_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the transmission type of LM messages. Possible values
                 are::


                  single_msg      Send a single LM message
                  continuous      Send continuous LM messages

                 The default value is single_msg.


 lm_tx_fc_fwd_mode
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the method for transmitting LM frames. Possible values
                 are::


                  static        Use a constant rate
                  step         Step the number of frames

                 The default value is step.

 lm_tx_fc_fwd_step
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the step value for the TxFCf in each subsequent LM message.
                 Possible values range from 0 to 65535. The default value is 1.

 lm_tx_fc_fwd_value
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the TxFCf value to be included in the LM message (when
                 lm_tx_fc_fwd_mode is static) or the initial value of the counter
                 (when lm_tx_fc_fwd_mode is step). The default value is 1.

 lm_unicast_target_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A list of unicast MAC addresses to target. The default value is
                 00:00:00:00:00:00. You must set lm_enable_multicast_target to
                 false.

Synthetic Loss Measurement Message (msg_type slm)

 slm_cvlan_cos_list
                 A comma separated list of class of service values for the customer
                 VLAN. Possible values range from 0 to 7.

 slm_enable_multicast_target
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies if SLM messages are unicast (false) or multicast
                 (true). The default value is true.

 slm_svlan_cos_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A comma separated list of class of service values for the service
                 provider VLAN. Possible values range from 0 to 7.


 slm_custom_tx_rate
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the number of messages for the custom transmission rate.
                 The default value is 1.

 slm_custom_tx_rate_unit
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the unit for the custom transmission rate. Possible
                 values are::


                  slmrate_second          Unit in second
                  slmrate_minute          Unit in minute
                  slmrate_10_minute       Unit in 10 minutes

                 The default value is dmrate_second.

 slm_test_id_count
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the number of test IDs for SLM messages.
                 The default value is 1.

 slm_test_id_input_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the input format of test IDs. Possible values are::


                  testid_input_start_step_count        Start/Step/Count format
                  testid_input_list                   List format

                 The default value is testid_input_start_step_count.


 slm_test_id_step
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the increment value to create subsequent test IDs. This
                 argument is available when slm_test_id_input_type is set to
                 testid_input_start_step_count. Possible values range from 1 to
                 65535. The default value is 1.

 slm_test_id_value
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the first test ID. This argument is available when
                 slm_test_id_input_type is set to testid_input_start_step_count.
                 The default value is 1.

 slm_tx_count
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the number of SLM messages to be transmitted.
                 The default value is 1.

 slm_tx_rate
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the transmission rate of SLM messages. Possible values
                 are::


                  slmrate_10_per_sec       10 per second
                  slmrate_1_per_sec        1 per second
                  slmrate_1_per_min        1 per minute
                  slmrate_1_per_10min      1 per 10 minutes
                  slmrate_custom           Customized rate

 slm_tx_type
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the transmission type of SLM messages. Possible values
                 are::


                  multiple_msg   Send a group of SLM messages

                 The default value is multiple_msg.


 slm_test_id_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies a list of test IDs. This argument is available when
                 slm_test_id_input_type is set to testid_input_list. The default
                 value is 1.

 slm_tx_fc_fwd_mode
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the method for transmitting SLM frames. Possible values
                 are::


                  static            Use a constant rate
                  step              Step the number of frames

                 The default value is step.

 slm_tx_fc_fwd_step
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the step value for the TxFCf counter in each subsequent SLM
                 message. Possible values range from 0 to 65535. The default value
                 is 1.

 slm_tx_fc_fwd_value
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies the TxFCf value to be included in the SLM message (when
                 slm_tx_fc_fwd_mode is static), or the initial value of the counter
                 (when slm_tx_fc_fwd_mode is step). The default value is 1.

 slm_unicast_target_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A list of unicast MAC addresses for SLM messages to target.
                 The default value is 00:00:00:00:00:00. You must set
                 ais_enable_multicast_target to false.

Alarm Indication Signal Message (msg_type ais)

 ais_enable_multicast_target
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies if AIS messages are unicast (false) or multicast
                 (true). The default value is true.

 ais_unicast_target_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A list of unicast MAC addresses for AIS messages to target.
                 The default value is 00:00:00:00:00:00. You must set
                 ais_enable_multicast_target to false.

Lock Signal Function Message (msg_type lck)

 lck_enable_multicast_target
                 `Spirent Extension (for Spirent HLTAPI only).`

                 Specifies if LCK messages are unicast (false) or multicast
                 (true). The default value is true.

 lck_unicast_target_list
                 `Spirent Extension (for Spirent HLTAPI only).`

                 A list of unicast MAC addresses for LCK messages to target.
                 The default value is 00:00:00:00:00:00. You must set
                 lck_enable_multicast_target to false.

Arguments Unsupported by Save as HLTAPI:

The following Spirent HLTAPI arguments are currently not supported by the Save as
HLTAPI function::


  mac_local_repeat
  mac_local_list
  mac_remote_repeat
  mac_remote_list
  mac_dst_repeat
  mac_dst_list
  md_level_repeat
  md_level_list
  trans_id_repeat
  trans_id_list
  vlan_id_outer_count
  vlan_id_count
Ciscospecific Arguments:

The following arguments are specific to the Cisco HLTAPI but are not supported by Spirent HLTAPI:

burst_delay
burst_loop_count
encap
mac_local_repeat
msg_timeout
renew_period
renew_test_msgs
trans_id_incr_mode
trans_id_list
trans_id_repeat
trans_id_step
tlv_user_length
tlv_user_type
tlv_user_value
vlan_id_count
vlan_id_outer_count
vlan_id_outer_repeat
vlan_id_repeat
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):

handle         The handle that identifies the EOAM message emulators
               created by the ``emulation oam config msg`` function when
               you use mode create to create a new E-OAM message
               emulators.
               When you want to modify or reset an EOAM message emulator,
               you specify the handle as the value to the handle
               argument.

status         Success (1) or failure (0) of the operation.
log_msg        An error message (if the operation failed).
Description:

The emulation oam config msg function creates, modifies, or resets message emulators from the specified port. Use the mode argument to specify the action to perform. (See the mode argument description for information about the actions.)

When you create an EOAM message emulator, use the -port_handle argument to specify the Spirent HLTAPI port that the emulated router will use. (The port handle value is contained in the keyed list returned by the connect function.)

In addition to specifying the port (port_handle), you must also provide the mode create argument when you create an E-OAM message emulator.

When you create an EOAM message emulator, Spirent HLTAPI automatically starts the message communication.

Each EOAM message emulator establishes adjacency with the neighboring SUT.

Examples:

Note: For creating and configuring an EOAM= message, there must already exist a port with handle $p1:

set oamStandard "ieee_802.1ag"
set dstAddrType "unicast"
set transmitMode "continuous"
set msgType "loopback"

The following example creates and configures a new EOAM= message:

set MP_Port1 [emulation oam config msg
  mode=                                 create
  port_handle=                          $port1
  enable_mp_only=                       true
  mp_name=                              MP1
  msg_type=                             ais
  ais_enable_multicast_target=          true
  ais_unicast_target_list              E4B3185411C3=
  tlv_type=                             lbm
  tlv_ltm_id_type=                      99
  tlv_ltm_id_length=                    02
  tlv_ltr_egress_id_type=                17
  tlv_ltr_egress_id_length=             02
  tlv_ltr_egress_id_last_index=         123
  tlv_ltr_egress_id_last_mac_addr      E4B3185411C2=
  tlv_ltr_egress_id_next_index=         234
  tlv_ltr_egress_id_next_mac_addr     E4B3185422C2=
  tlv_int_status_type=                  88
  tlv_int_status_length=                 02
  tlv_int_status_value=                 up
  tlv_port_status_type=                77
  tlv_port_status_length=                01
  tlv_port_status_value=                blocked
  tlv_reply_egress_type=                66
  tlv_reply_egress_length=              02
  tlv_reply_egress_action=              blocked
  tlv_reply_egress_mac_addr   E4B3185403C2=
  tlv_reply_ingress_type=                55
  tlv_reply_ingress_length=              00
  tlv_reply_ingress_action=              blocked
  tlv_reply_ingress_mac_addr   E4B3185420C2=
  ]

set MP_H1 [keylget MP_Port1 eoam_mp_config_handle]

Sample Output:

{eoam_mp_config_handle eoammaintenancepointconfig1} {handle
eoammaintenancepointconfig1} {device_handle router1} {status 1}

The following example modifies the created EOAM= message:

set cmdReturn [::emulation oam config msg mode=modify
    handle= $eoamMsgHandle
    dst_addr_type= $dstAddrType
    mac_local= 00:94:01:00:10:01
    mac_remote= 00:94:01:10:01:01
    vlan_outer_id= 2100
    vlan_outer_ether_type= 0x9100
    vlan_id= 2200
    vlan_ether_type= 0x88A8
    oam_standard= $oamStandard
    mac_dst= 00:94:01:10:01:01
    sut_ip_address= 13.1.0.1
    ttl= 250
    md_level= 3
    trans_id= 10
    tlv_sender_length= 10
    tlv_sender_chassis_id= 21
    tlv_sender_chassis_id_length= 10
    tlv_sender_chassis_id_subtype= 5
    tlv_org_length= 10
    tlv_org_oui= 22
    tlv_org_subtype= 11
    tlv_org_value= FF
    tlv_data_length= 10
    tlv_data_pattern= 0xAA
    transmit_mode= $transmitMode
    pkts_per_burst= 4
    rate_pps= 15]

Sample output for example shown above:

{handle msg_handle1} {status 1}

The following example deletes the created EOAM= message:

set cmdReturn [::emulation oam config msg mode=reset
                                            handle= $eoamMsgHandle]

Sample output for example shown above:

{status 1}

emulation oam config ma meg

Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>

Purpose:

Spirent Extension (for Spirent HLTAPI only).

Creates, modifies, or deletes an Maintenance Association (MA, IEEE802.1ag) or Maintenance Entity Group (MEG, ITU-T Y.1731) configuration on the emulated EOAM project.

Synopsis:

Note: M indicates the argument is `Mandatory`.

        emulation oam config ma meg
           mode= {add|modify|delete} M
           handle= {MEG_config_handle}
           mp_handle= <mp_config_handle>
           ais_period= {aisperiod_1s|aisperiod_1min}
           ais_priority= <0-7>
           cont_chk_period= {ccperiod_3ms|ccperiod_10ms|ccperiod_100ms|ccperiod_1s
                               |ccperiod_10s|ccperiod_1min|ccperiod_10min}]
           cont_chk_priority= <0-7>
           delay_measurement_priority= <0-7>
           domain_id_dnslike= <string>
           domain_id_mac_2octets= <aabb-cc-dd-ee-ff:xxxx>
           domain_id_type=  {no_name|dns_like|mac_2_octets|string}
           itu_meg_id_2octets= <2_octet_integer>
           itu_meg_id_primaryvid= <0-4095>
           itu_meg_id_string= <string>
           itu_meg_id_vpnid= <xxxxxx:xxxxxxxx>
           itu_meg_id_type= {icc|icc_cc|primary_vid|string|int_2_octets|rfc_2685_vpn_id}
           lck_period=  {lckperiod_1s|lckperiod_1min}
           lck_priority= <0-7>
           link_trace_priority= <0-7>
           loopback_priority= <0-7>
           loss_measurement_priority= <0-7>
           meg_id_2octets= <2_octet_integer>
           meg_id_cc= <string>
           meg_id_icc_string= <string>
           meg_id_primary_vid= <0-4095>
           meg_id_string=  <string>
           meg_id_vpnid= <xxxxxx:xxxxxxxx>
           meg_id_type= {primary_vid|string|int_2_octets|rfc_2685_vpn_id}
           me_level= <0-7>
           mep_mac_addr= <aa:bb:cc:dd:ee:ff>
           mep_id= <1-8191>
           operation_mode= {ieee|itut}
           slm_priority= <0-7>

Arguments:

mode
                Specifies the action to perform. This argument is `Mandatory`. Possible
                values are add, modify, and delete. The modes are described below::


                 add            Creates an MA/MEG configuration, or the
                                Maintenance End Points (MEP) for the MA/MEG

                 modify          Modifies the MA/MEG configuration specified
                                 by handle

                 delete          Deletes the MA/MEG handle specified
                                 by handle or the Maintenance Point (MP)
                                 handle specified by mp_handle



handle
                The MA/MEG configuration handle returned by the current function
                or the ``emulation oam config msg`` function. You must specify
                this argument for mode modify, and for mode add when you
                create more than one MEP by specifying mep_id and
                mep_mac.

mp_handle
                The MP handle returned from the emulation oam config msg
                function. You must specify this argument for mode add or
                modify when you create or modify an MA/MEG configuration.


ais_period
                Specifies the Alarm Indication Signal (AIS) period for an
                MA/MEG and its MPs. Possible values are::


                 aisperiod_1s            1 frame per second
                 aisperiod_1min          1 frame per minute

                The default value is aisperiod_1s.

ais_priority
                Specifies the priority set in AIS messages.
                Possible values range from 0 to 7. The default value is 0.

cont_chk_period
                Specifies the Continuity Check (CC) period for an MA/MEG and
                its MPs. Possible values are::


                 ccperiod_3ms            300 frames per second
                 ccperiod_10ms           100 frames per second
                 ccperiod_100ms          10 frames per second
                 ccperiod_1s             1 frame per second
                 ccperiod_10s            6 frames per minute
                 ccperiod_1min           1 frame per minute
                 ccperiod_10min          6 frame per hour

                The default value is ccperiod_1s.

cont_chk_priority
                Specifies the priority set in CC messages. Possible values
                range from 0 to 7. The default value is 0.

delay_measurement_priority
                Specifies the priority set in Delay Measurement messages.
                Possible values range from 0 to 7. The default value is 0.

domain_id_dnslike
                Specifies the domain name when domain_id_type is dns_like.
                The default value is spirent.com.

domain_id_mac_2octets
                Specifies the domain name when domain_id_type is
                mac_2_octets. The default value is 00-00-00-00-00-00:0000.

domain_id_string
                Specifies the domain name when domain_id_type is string.
                The default value is domain_.

domain_id_type
                Specifies the domain ID type. Possible values are::


                 no_name         Domain name is not used
                 dns_like        Domain name is a globally unique text string
                                 derived from a DNS name
                 mac_2_octets    Domain name is a MAC address followed by a
                                 colon and a twobyte unsigned integer
                 string          Domain name must be a 1-43 character string

                The default value is no_name.

itu_meg_id_type
                Specifies the ITU-T MEG ID type. This argument is available
                when operation_mode is set to itu_t. Possible values are::


                 icc               MEG ID uses the ICCbased format
                 icc_cc            MEG ID uses the CC- and ICCbased format
                 primary_vid       MEG ID is the primary VLAN ID
                 string            MEG ID must be a 1-43 character string
                 int_2_octets      MEG ID is a twobyte unsigned integer
                 rfc_2685_vpn_id   MEG ID is a sixbyte VPN ID

                The default value is icc.

meg_id_cc
                Specifies the MEG ID when itu_meg_id_type is set to
                icc_cc. The value must be a 1-13 character string. The default
                value is zz.

meg_id_icc_string
                Specifies the MEG ID when itu_meg_id_type is set to
                icc. The value must be a 1-13 character string. The default
                value is meg_.

itu_meg_id_2octets
                Specifies the MEG ID when itu_meg_id_type is set to
                int_2_octets. The default value is 0000.

itu_meg_id_primaryvid
                Specifies the MEG ID when itu_meg_id_type is set to
                primary_vid. Possible values range from 0 to 4095. The
                default value is 100.

itu_meg_id_string
                Specifies the MEG ID when itu_meg_id_type is set to
                string. The default value is MEG_.

itu_meg_id_vpnid
                Specifies the MEG ID when itu_meg_id_type is set to
                rfc_2685_vpn_id. The value must be a sixbyte VPN ID in
                format of xxxxxx:xxxxxxxx. The default value is
                00-00-00:00-00-00-00.


lck_period
                Specifies the Locked Signal Function (LCK) period for an
                MA/MEG and its MPs. Possible values are::


                 lckperiod_1s           1 frame per second
                 lckperiod_1min         1 frame per minute

                The default value is lckperiod_1s.

lck_priority
                Specifies the priority set in LCK messages. Possible values
                range from 0 to 7. The default value is 0.

link_trace_priority
                Specifies the priority set in Link Trace messages. Possible
                values range from 0 to 7. The default value is 0.

loopback_priority
                Specifies the priority set in Loopback messages. Possible
                values range from 0 to 7. The default value is 0.

loss_measurement_priority
                Specifies the priority set in Loss Measurement messages.
                Possible values range from 0 to 7. The default value is 0.

meg_id_2octets
                Specifies the MEG ID when meg_id_type is set to
                int_2_octets. The default value is 0000.

meg_id_primary_vid
                Specifies the MEG ID when meg_id_type is set to
                primary_vid. Possible values range from 0 to 4095. The
                default value is 100.

meg_id_string
                Specifies the MEG ID when meg_id_type is set to
                string. The default value is ma_.

meg_id_vpnid
                Specifies the MEG ID when meg_id_type is set to
                rfc_2685_vpn_id. The value must be a sixbyte VPN ID in
                format of xxxxxx:xxxxxxxx. The default value is
                00-00-00:00-00-00-00.

meg_id_type
                Specifies the IEEE MEG ID type. This argument is available
                when operation_mode is set to ieee. Possible values are::


                 primary_vid       MEG ID is the primary VLAN ID
                 string            MEG ID must be a 1-43 character string
                 int_2_octets      MEG ID is a twobyte unsigned integer
                 rfc_2685_vpn_id   MEG ID is a sixbyte VPN ID

                The default value is string.

me_level
                Specifies the level of the MEG or MA. Possible values range
                from 0 to 7. The default value is 1.

mep_mac_addr
                Specifies the MAC address of the emulated MEP. The default value
                is the address of the associated MEP.

mep_id
                Specifies the ID of the emulated MEP in the MA/MEG. Possible
                values range from 1 to 8191. The default value is 1.

operation_mode
                Specifies the operation mode. Possible values are::


                 itu_t       ITU-T
                 ieee        IEEE

                Each option has its own set of available arguments.
                The default value is itu_t.

slm_priority
                Specifies the priority set in Synthetic Loss Message (SLM)
                messages. Possible values range from 0 to 7. The default
                value is 0.

Arguments Unsupported by Save as HLTAPI:

This function is not currently supported by Save as HLTAPI.
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 (1) or failure (0) of the operation

handle          EOAM MEG configuration handle, which can be used for mode modify
                or delete
Description:

The emulation oam config ma meg function creates, modifies, or deletes an MA or MEG configuration on the given EOAM project. Use the mode argument to specify the action to perform. (See the mode argument description for information about the actions.)

When you create or modify an MA/MEG configuration, you must specify handle and mp_handle. The MA/MEG handle can be either returned by the emulation oam config msg function or by the current function, and the MP handle is returned by the emulation oam config msg mode= delete to delete any handle. handle is also required when you create more than one MEP using mode add.

Examples:

To modify an MEG configuration returned from emulation oam config msg:

set EOAM(MEG_Modify_7) [emulation oam config ma meg
       mode=                                             modify
       handle=                                           $EOAM(MEG_Handle_2)
       mp_handle=                  "$EOAM(MP_Handle_1) $EOAM(MP_Handle_2)"
       operation_mode=                                   ieee
       me_level=                                         7
       ais_period=                                       aisperiod_1min
       cont_chk_period=                                  ccperiod_10ms
       lck_period=                                       lckperiod_1s
       cont_chk_priority=                                7
       loopback_priority=                                7
       link_trace_priority=                              7
       delay_measurement_priority=                       7
       loss_measurement_priority=                        7
       slm_priority=                                     7
       ais_priority=                                     7
       lck_priority=                                     7
       domain_id_type=                                   no_name
       meg_id_type=                                      string
       meg_id_string=                                    CISCO]

Sample Output:

{handle MEG_Modify_1} {status 1}

The following example calls mode= modify when there are multiple MPs to be associated with a single MEG:

set MP_MEG [emulation oam config ma meg
  mode=         modify
  handle=      $MEG_Handle
  mp_handle=   $MP_H1  ]

Sample Output:

{status 1}

To delete an MEG configuration:

set EOAM(MP_Handle_1_Delete) [emulation oam config ma meg
     mode=           delete
     handle=         $EOAM(MEG_Handle_1)         ]

Sample Output:

{status 1}

emulation oam config topology

Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>

Purpose:
Configures Topology Emulation for EOAM on the specified test port. The chassis emulates a series of EOAM-aware devices in a structured topology. Also, it optionally provisions Continuity Check database entries.

Synopsis:

Note: M indicates the argument is `Mandatory`.

     emulation oam config topology
        mode= {create|modify|reset} M
        port_handle= <port_handle>
        handle= <handle>
        count= <integer>
        mac_local= <aa:bb:cc:dd:ee:ff>
        mac_local_incr_mode= <none|increment|list|random>
            mac_local_step= <aa:bb:cc:dd:ee:ff>
            mac_local_list= < mac local type> :< comma separated segment list>
        mac_remote= <aa:bb:cc:dd:ee:ff>
        mac_remote_incr_mode= <none|increment|list|random>
            mac_remote_step= <aa:bb:cc:dd:ee:ff>
            mac_remote_repeat= <integer>
            mac_remote_list= < mac remote type >: < comma separated segment list >
       vlan_outer_id= <0-4095>
       vlan_outer_ether_type= <0x8100|0x88A8|0x9100|0x9200>
       vlan_id_outer_step= <0-4095>
       vlan_id= <0-4095>
       vlan_ether_type= <0x8100|0x88A8|0x9100|0x9200>
       vlan_id_step= <0-4095>
       sut_ip_address= <a.b.c.d >|<aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
       oam_standard= <ieee_802.1ag|itut_y1731>
       responder_loopback= <0|1>
       responder_link_trace= <0|1>
       continuity_check= <0|1>
       continuity_check_interval= <100ms|1s|10s|1min|10min>
       continuity_check_remote_defect_indication= <0|1>
       continuity_check_ucast_mac_dst= <aa:bb:cc:dd:ee:ff>
       continuity_check_mcast_mac_dst= <0|1>
       continuity_check_burst_size= <1 - 8192>
       domain_level= <level0|level1|level2|level3|level4|level5|level6|level7>
       md_level= <0-7>
       md_name_format= <none|domain_name|mac_addr|char_str|icc_based>
       md_name= <string>
       md_mac= <aa:bb:cc:dd:ee:ff>
       md_integer= <0-65535>
       short_ma_name_format= <primary_vid|char_str|integer|rfc_2685_vpn_id>
       short_ma_name_value= <string>
       mip_count= <integer>
       mep_id= <1-8191>
       mep_id_incr_mode= <none|increment|list|random>
            mep_id_step= <integer>
            mep_count= <1-8192>
            mep_id_list= <mep id type> : <comma separated segment list>

Arguments:

port_handle
                Specifies the port on which to configure the EOAM
                topology emulation.

handle
                Defines the unique handle to which you must refer, when
                modifying or destroying specific emulator instances.

mode
                Specifies the action to perform on the specified test port.
                This argument is `Mandatory`. Possible values are create,
                modify, and reset.
                The modes are described below::


                 create   Creates Ethernet OAM topology emulations on the
                         port specified with the port_handle argument. You
                         must specify the port_handle argument.

                 modify   Changes the configuration of the Ethernet OAM
                         topology emulations identified by the handle
                         argument. You must specify the handle argument.

                 reset   Deletes all of the EOAM topology emulations
                         specified in the handle argument. You must specify
                         the handle argument.

count
                Defines the number of EOAM message emulators. The
                default is 1.

mac_local
                Defines the MAC address of the EOAM message emulators.

mac_local_incr_mode
                Defines the increment method of the local MAC address.
                Possible values are::


                 none        Indicates the local MAC address will not be
                             incremented.

                 increment   Indicates the local MAC address increments
                             by the step specifies in the mac_local_step
                             argument.

                 list       Indicates you must enter the local MAC addresses
                            manually. Specify the list of the local MAC addresses
                            in the mac_local_list argument.

                 random     Indicates the local MAC addresses should be
                            distributed randomly.

                Note: The decrement mode is not supported.

mac_local_step
                Specifies the step size in which the local MAC address is
                incremented. You must specify this step when you specify
                "increment" for the mac_local_incr_mode argument. The
                default is 00:00:00:00:00:01.

mac_local_list
                Defines the list of local MAC addresses that should be used
                for the emulated EOAM messages. Local MAC addresses can be
                used as MEPs that issue emulated EOAM messages or MIPs that
                respond to these messages on request. Specify this argument
                a list of MAC addresses.

mac_remote
                Indicates the MAC address of the device under test (DUT).
                Remote MAC addresses can be used as MEPs that issue
                emulated EOAM messages or MIPs that respond to these
                messages on request.

mac_remote_incr_mode
                Defines the method to increment the DUT MAC address.
                Possible values are::


                 none      Indicates the remote MAC address will not be
                           incremented.

                 increment  Indicates the remote MAC address should
                            increment by the step specified in the
                            mac_remote_step argument.

                 list       Indicates you must enter the remote MAC addresses
                            manually. The list of the remote MAC addresses is
                            defined in the mac_remote_list argument.

                 random     Indicates the remote MAC addresses should be
                            distributed randomly.

                Note: The decrement mode is not supported.

mac_remote_step
                Specifies the step size in which the remote MAC address is
                incremented. You must specify this step when you specify
                "increment" for the mac_remote_incr_mode argument. The
                default is 00:00:00:00:00:01.

mac_remote_repeat
                Specifies the number of times a remote MAC address should be
                repeated before the step specified in the mac_remote_step
                argument is applied to the MAC address for incrementing. The
                default value is 1.

mac_remote_list
                Defines the list of remote MAC addresses that should be used
                for the emulated EOAM messages. You must specify this list
                when you specify "list" for the mac_remote_incr_mode
                argument.

vlan_outer_id
                Specifies Virtual Local Area Network (VLAN) ID for the outer
                VLAN tag that is an encapsulation of the test message(s).
                VLAN ID is the identification of the VLAN, which is
                basically used by the standard 802.1Q. Possible values range
                from 0 to 4095. The default is 1.

vlan_outer_ether_type
                Indicates the value of VLAN EtherType to be used for the
                test message(s). EtherType is a twooctet field in an
                Ethernet frame, as defined by the Ethernet II framing
                networking standard. It is used to indicate which protocol
                is encapsulated in the frame data. Possible values are::


                 0x8100   Specifies EtherType value 0x8100, a value of 8100 in
                          hexadecimal. When a frame has the VLAN EtherType
                          equal to 8100, this frame carries the tag
                          IEEE 802.1Q.

                 0x88A8   Specifies EtherType value 0x88A8, a value of 88A8
                          in hexadecimal. When a frame has the VLAN EtherType
                          equal to 88A8, this frame carries the tag IEEE
                          802.1ad.

                 0x9100   Specifies EtherType value 0x9100, a value of 9100
                          in hexadecimal. When a frame has the VLAN EtherType
                          equal to 9100, this frame carries the tag IEEE
                          802.1Q-1998.

                 0x9200   Specifies EtherType value 0x9200, a value of 9200
                          in hexadecimal.

vlan_id_outer_step
                Specifies the increment for the outer VLAN ID when using
                ethernet_ii_qinq encapsulation. A step value of zero
                indicates no stepping occurs. Note: This parameter only
                applies to Ethernet interfaces. The increment is applied via
                addition modulo 4096. Possible values range from 0 to 4095.
                The default is 1.

vlan_id
                Specifies the inner VLAN to which the test messages belongs.
                Possible values range from 0 to 4095. The default is 1.

vlan_ether_type
                Defines VLAN EtherType to be used for the test message(s).
                Possible values are::


                 0x8100   Specifies EtherType value 0x8100, a value of 8100 in
                          hexadecimal. When a frame has the VLAN EtherType
                          equal to 8100, this frame carries the tag
                          IEEE 802.1Q.

                 0x88A8   Specifies EtherType value 0x88A8, a value of 88A8
                          in hexadecimal. When a frame has the VLAN EtherType
                          equal to 88A8, this frame carries the tag IEEE
                          802.1ad.

                 0x9100   Specifies EtherType value 0x9100, a value of 9100
                          in hexadecimal. When a frame has the VLAN EtherType
                          equal to 9100, this frame carries the tag IEEE
                          802.1Q-1998.

                 0x9200   Specifies EtherType value 0x9200, a value of 9200
                          in hexadecimal.

vlan_id_step
                Defines the step size by which the VLAN ID is incremented.
                Possible values range from 0 to 4095.

sut_ip_address
                Specifies the IP address / Gateway Address for the chassis to
                reach the SUT. It can be in either IPv4 or IPv6 format. The
                default for IPv4 is 192.85.1.1. The default for IPv6 is 2001::1.

oam_standard
                Specifies the Ethernet OAM standard to be used, either IEEE
                802.1ag or ITU-T Y1731. This will affect other available options.
                This argument is only valid when the msg_type is loopback or
                linktrace. The default is ieee_802.1ag.

responder_loopback
                Defines that the Loopback message (LBM) responding is enabled or
                not. Possible values are 0 (disabled) and 1 (enabled). For
                verifying the connectivity between MEPs and MIPs, the LBM is
                initiated by a MEP. When the Loopback message responding is
                enabled, the LBM received by the MP Loopback Responder may be
                examined for validity and discarded if invalid. If the LBM is
                validated, it will be transmitted to the receiving MP that responds
                to the LBM with a Loopback Reply (LBR). The default is 1.

responder_link_trace
                Defines that the Linktrace responding is enabled or not.
                Possible values are 0 (disabled) and 1 (enabled). Linktrace
                responding is performed by the Linktrace Responder
                associated with a Bridge. The default is 1.

continuity_check
                Defines whether the Continuity Check messages are sent or
                not. Possible values are 0 and 1. If it is set to 0, the
                Continuity Check messages (CCM) are not sent. If it is set
                to 1, the Check messages are sent. CCMs are "heartbeat"
                messages issued periodically by MEPs. They allow MEPs to
                detect loss of service connectivity amongst themselves. They
                also allow MEPs to discover other MEPs within a domain, and
                allow MIPs to discover MEPs. The default is 1.

continuity_check_interval
                Defines the interval between CCMs. Possible values are
                100ms, 1s, 10s, 1min, and 10min. The default is 1s.

continuity_check_remote_defect_indication
                Specifies the Remote Defect Indication in Continuity Check
                Messages should be enabled when Loss of Continuity (LOC)
                is detected for expected remote MEP. Possible values are
                0(disabled) and 1(enabled). The Remote Defect Indication
                (RDI) is a single bit carried by the CCM. The absence of RDI
                in a CCM indicates that the transmitting MEP is receiving
                CCMs from all configured MEPs. The default is 1.

continuity_check_ucast_mac_dst
                Specifies the destination MAC address for the CCM. The
                default is 00:00:00:00:00:01.

continuity_check_mcast_mac_dst
                Defines whether Multicast MAC address is used for CCM,
                the address is picked automatically based on the MD level.
                Possible values are 0 and 1. The default is 1.

continuity_check_burst_size
                Defines how many CCMs to send per burst. Possible
                values range from 1 to 8192.The default is 1000. This
                argument is valid only when the continuity_check argument
                is enabled.

domain_level
                Specifies that the chassis simulates a topology of Ethernet
                OAM MPs spanning across multiple levels. Possible values are
                level0, level1, level2, level3, level4, level5, level6, and
                level7. The default is level0.

md_level
                Define the Maintenance Entity Group(MEG) level. The MEG
                Level distinguishes between the OAM flows of nested
                MEGs. Eight MEG levels are available to accommodate
                different network deployment scenarios. Possible values
                range from 0 to 7. The default is 0.

md_name_format
                Defines the format of the MEG ID. Possible values are none,
                domain_name, mac_addr, char_str, and icc_based. When the
                md_name_format argument is specified as mac_addr, the MEG
                ID is defined by md_mac and md_integer together. The
                default is char_str. The values are described below::


                 none          Specifies there is no MEG ID.
                 domain_name   Specifies that the MEG ID is defined by the
                               name of the domain to which it belongs.
                 mac_addr      Specifies that the MEG ID is defined by the
                               relevant MAC address.
                 char_str      Specifies that the MEG ID is a string of
                               characters.
                 icc_based     Specifies that the MEG ID is an ICC string.

md_name
                Defines the character string value of the MD name. Use this
                argument when the md_name_format
                argument is set to char_str mode. The default is DEFAULT.

md_mac
                Defines the MAC address value of the Maintenance Domain
                name. Use this argument when the
                md_name_format argument is set to mac_addr mode.
                The default is 00:00:00:00:00:01.

md_integer
                Defines the 2octet integer value of the Maintenance Domain
                name. Use this argument when the
                md_name_format argument is set to mac_address. Possible
                values range from 0 to 65535. The default is 0.

short_ma_name_format
                Defines the format of the short MA name. Possible values
                are::


                 primary_vid   The format of the short MA name
                               is the primary VLAN ID.

                 char_str      The format of the short MA name is
                               a string of characters.

                 integer       The format of the short MA name is
                               an integer.

                 rfc_2685_vpn_id   The format of the short MA name
                                  is the VPN ID using the RFC 2685
                                  Standard.

                The default is an integer.


short_ma_name_value
                Defines the Value for the Maintenance Domain name. Specify
                a string of characters for this argument. The default is
                DEFAULT.

mip_count
                Defines the number of simulated MIPs for a particular domain
                level, connected in a series. The default is 1.

mep_count
                Defines the number of simulated MEPs for the specified
                domain level. Possible values range from 1 to 8192.

mep_id
                Defines the MEP ID for the simulated end point of the
                specified domain level. Possible values range from 1 to
                8191. The default is 1.

mep_id_incr_mode
                Defines the method to increment of the MEP ID. Possible values are::


                 none        Indicates the MEP ID will not be incremented.

                 increment   Indicates the MEP ID increments by the step
                             specifies in the mep_id_step argument.

                 list       Indicates the MEP IDs should be inputted. The list
                            of MEP IDs is speci fied by the mep_id_list argument.

                 random     Indicates the MEP IDs should be distributed
                            randomly.

                Note: The decrement mode is not supported.

mep_id_step
                The amount by which to increment MEP IDs (mep_id) for
                subsequent messages.

mep_id_list
                Defines the list of MEP IDs to use for the
                emulated EOAM messages.

Arguments Unsupported by Save as HLTAPI:

The following Spirent HLTAPI arguments are currently not supported by the Save as
HLTAPI function::


  count
  mac_local_list
  mac_local_repeat
  mac_remote_list
  mac_remote_repeat
  mep_id_list
  mep_id_repeat
Ciscospecific Arguments:

The following arguments are specific to the Cisco HLTAPI but are not supported by Spirent HLTAPI:

encap
vlan_id_outer_count
vlan_id_outer_repeat
vlan_id_count
vlan_id_repeat
responder_latency
spanning_tree_broadcast_domain
continuity_check_burst_delay
fault_alarm_interval
fault_alarm_signal
fault_alarm_locked
md_name_length
short_ma_name_length
mac_local_repeat
mep_id_repeat
mep_port_behavior
group_mp_ingress_egress
ccdb_oam_standard
ccdb_vlan_outer_id
ccdb_vlan_id
ccdb_md_level
ccdb_mac
ccdb_mep_id
ccdb_md_name_format
ccdb_md_name_length
ccdb_md_name
ccdb_md_mac
ccdb_md_integer
ccdb_short_ma_name_format
ccdb_short_ma_name_length
ccdb_short_name_value
ccdb_expected_connectivity
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):

handle         The handle of EOAM topology returned when you use
               "mode create" to create MPs with E-OAM protocol

status        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 oam config topology function creates, modifies or resets MPs on the specified port. Use the mode argument to specify the action to perform. (See the mode argument description for information about the actions.)

When you create a MP, use the port_handle argument to specify the Spirent HLTAPI port that the MP will use. (The port handle value is contained in the keyed list returned by the connect function.)

In addition to specifying the port (port_handle), you must also provide the mode create when you create a MP.

When you create a MP, Spirent HLTAPI automatically starts the message communication.

If the creation/configuration/delete fails, the Spirent HLTAPI returns an error message. For example, if you attempt to configure a nonexisting topology handle under modify mode, an error message will be returned.

Examples:

The following example creates and configures a new EOAM= topology:

#There must already exist a port with handle $p1
set oamStandard "ieee_802.1ag"
set dstAddrType "unicast"
set transmitMode "continuous"

set returnKlist [::emulation oam config topology mode=create
                   port_handle= $p1
                   count= 1
                   mip_count= 2
                   mep_count= 2
                   mac_local= 00:94:01:00:02:01
                   mac_local_incr_mode= increment
                   mac_local_step= 00:00:00:00:00:01
                   mac_remote= 00:94:01:00:03:01
                   mac_remote_incr_mode= increment
                   mac_remote_step= 00:00:00:00:00:01
                   vlan_outer_id= $vlanOuterId
                   vlan_outer_ether_type= 0x8100
                   vlan_id= $vlanId
                   vlan_ether_type= 0x9200
                   sut_ip_address= 192.168.1.1
                   oam_standard= $oamStandard
                   responder_loopback= 1
                   continuity_check= 1
                   continuity_check_interval= 100ms
                   continuity_check_ucast_mac_dst=  00:94:01:10:01:01
                   continuity_check_burst_size= 3
                   md_level= 1
                   md_name_format= mac_addr
                   md_mac= 00:94:01:00:02:00
                   md_integer= 4
                   short_ma_name_format= char_str
                   short_ma_name_value= Sh_MA_
                   mep_id= 10
                   mep_id_incr_mode= increment
                   mep_id_step= 1]

set eoamTopHandle [lindex [keylget returnKlist handle] 0]

Sample output for example shown above:

{handle topology_handle1} {status1}

The following example modifies the created EOAM= topology:

set returnKlist [::emulation oam config topology mode=modify
                    handle= $eoamTopHandle
                     mac_local= 00:94:01:00:02:01
                     mac_local_incr_mode= increment
                     mac_local_step= 00:00:00:00:00:02
                     mac_remote= 00:94:01:00:03:02
                     responder_loopback= 0
                     responder_link_trace= 0
                     continuity_check= 1
                     continuity_check_interval= 1s
                     md_level= 2
                     md_name_format= domain_name
                     md_name= cisco.com
                     short_ma_name_format= integer
                     short_ma_name_value= 1000
                     mep_id= 100
                     mep_id_incr_mode= increment \

Sample output for example shown above:

{handle topology_handle1} {status 1}

The following example deletes the created EOAM= topology:

set cmdReturn [::emulation oam config topology mode=reset
                                             handle= $eoamTopHandle]

Sample output for example shown above:

{status 1}

emulation oam control

Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>

Purpose:
Starts, stops, or resets EOAM emulations.

Synopsis:

Note: M indicates the argument is `Mandatory`.

     emulation oam control
        action= {start|stop|reset} M
        handle= <handle_list>
        port_handle= <port_handle_list>
        msg_type= {loopback|linktrace|continuous_check|dm|lm|slm|ais|lck}

Arguments:

handle
                Identifies a list of EOAM emulations to start, stop or reset.

action
                Defines the actions performed upon the EOAM emulation.
                Possible values are::


                 Start   Starts the message emulator for the specified port.
                 Stop    Stops the message emulator for the specified port.
                 Reset   Resets the message emulators for the specified port.

                This argument is `Mandatory`.

port_handle
                Specifies a list of ports on which to control EOAM emulation.

msg_type
                `Spirent Extension (for Spirent HLTAPI only).`

                Type of EOAM messages to start/stop. Possible values are::


                 loopback           Loopback message
                 linktrace          Link Trace message
                 continuous_check   Continuous Check message
                 dm                 Delay Measurement message
                 lm                 Loss Measurement message
                 slm                Synthetic Loss Measurement message
                 ais                Alarm Indication Signal message
                 lck                Lock Indication Function message
Ciscospecific Arguments:

The following arguments are specific to the Cisco HLTAPI but are not supported by Spirent HLTAPI:

link_level
md_level
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 oam control function controls the routing of traffic through the specified ports. You can use the function to perform several actions: starting message emulators, stopping message emulators, and resetting message emulators.

When you call the emulation oam control function, you specify a port handle. Spirent HLTAPI applies the specified action to all of the emulated EOAM message emulators associated with the specified port.

Examples:

To start the specified EOAM= message emulator:

emulation oam control mode=start handle $eoamMsgHandle

To stop the EOAM= message emulator:

emulation oam control mode=stop handle $eoamMsgHandle

Sample Output:

{status 1}

emulation oam info

Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>

Purpose:
Returns information about the EOAM configuration.

Synopsis:

Note: M indicates the argument is `Mandatory`.

     emulation oam info
        mode=  {aggregate|session} M
        handle= <handle>
        port_handle= <port_handle>}
        action= <get_topology_stats|get_message_stats>

Arguments:

handle
                Specifies the message emulator from which to extract EOAM
                session data. You must specify handle or -port_handle, but
                not both.


mode
                Specifies the desired mode for information return. Possible
                values are aggregate and session. This argument is `Mandatory`.
                The modes are described below::


                 aggregate   Returns transmitted and received statistics for
                             the specified port.

                 session     Returns statistics for topology, if action is
                             specified as get_topology_stats. Returns
                             statistics for message (specified by msg_type in
                             emulation oam config msg), action=is
                             specified as get_message_stats.

port_handle
                Specifies the ports from which to extract EAOM session
                data. You must specify handle or -port_handle, but not both.

action
                Specifies what type of data to poll from the port specified in
                the port_handle argument. Possible values are::


                 get_topology_stats   Retrieves all EOAM topology statistics
                                      for the specified port.

                 get_message_stats   Retrieves all EOAM message statistics
                                     for the specified port.
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.

Test Messages:

tst.transmit_count
           Number of TST packets transmitted

The following keys are returned, when you specify mode aggregate:

rx
      fm_pkts         Number of all frame pkts_tx in the port. Sum
                      of lbm_pkts, ltm_pkts, and ccm_pkts.
      lbm_pkts        Number of LBM packets transmitted in the port
      ltm_pkts        Number of LTM packets transmitted in the port
      ccm_pkts        Number of CCM packets transmitted in the port
      ais_pkts        Not supported in Spirent HLTAPI
      lck_pkts        Not supported in Spirent HLTAPI
      tst_pkts        Not supported in Spirent HLTAPI
      aps_pkts        Not supported in Spirent HLTAPI
      mcc_pkts        Not supported in Spirent HLTAPI
      exm_pkts        Not supported in Spirent HLTAPI
      exr_pkts        Not supported in Spirent HLTAPI
      vsm_pkts        Not supported in Spirent HLTAPI
      vsr_pkts        Not supported in Spirent HLTAPI

tx
      fm_pkts         Sum of lbm_pkts, ltm_pkts, and ccm_pkts below
      lbm_pkts        In EoamLoopbackResults, sum of
                      DroppedPktCount, NumOfTransactionIdMismatches
                      and NumOfTimeouts
      ltm_pkts        In EoamLinkTraceResults, sum of
                      DroppedPktCount, and NumOfTimeouts
      ccm_pkts        In EoamContChkLocalResults, sum of
                      DroppedPktCount, and NumOfTimeouts
      ais_pkts        Not supported in Spirent HLTAPI
      lck_pkts        Not supported in Spirent HLTAPI

error
      lbm_pkts       In EoamLoopbackResults, sum of
                     DroppedPktCount, NumOfTransactionIdMismatches
                     and NumOfTimeouts
      ltm_pkts       In EoamLinkTraceResults, sum of
                     DroppedPktCount, and NumOfTimeouts
      ccm_pkts       In EoamContChkLocalResults, sum of
                     DroppedPktCount, and NumOfTimeouts
      ais_pkts       Not supported in Spirent HLTAPI
      lck_pkts       Not supported in Spirent HLTAPI

detected_failure_stats
      unexpected_mep           Number of unexpected MEG End Points
                               in the MEG
      unexpected_cc_period     The number of unexpected CC period
                               values
      lock                     Not supported in Spirent HLTAPI
      ais_pkts                 Not supported in Spirent HLTAPI
      lck_pkts                 Not supported in Spirent HLTAPI

topology_stats
      total_md_levels          Sum of the MEG's ME level in the port
      operational_md_levels    MEG's ME level in the port
      total_maintenance_points The number of MEPs in the MEG
      operational_maintenance_points  The number of up MEPs in the
                                     MEG
      total_entries            Not supported in Spirent HLTAPI
      start_entries            Not supported in Spirent HLTAPI
      ok_entries               Not supported in Spirent HLTAPI
      fail_entries             Not supported in Spirent HLTAPI

states
      maintenance_point_down    Number of remote MEPs whose
                               State is up
      disabled                  Not supported in Spirent HLTAPI
      enabled                   Not supported in Spirent HLTAPI

Sockets
cfmMcastRxSocket
      state                     Not supported in Spirent HLTAPI
      rx_pkts                   Not supported in Spirent HLTAPI
      tx_pkts                   Not supported in Spirent HLTAPI

cfmSocket
      state                     Not supported in Spirent HLTAPI
      rx_pkts                   Not supported in Spirent HLTAPI
      tx_pkts                   Not supported in Spirent HLTAPI

The following keys will be returned when you specify mode session:

linktrace
   receive_ltr_count        Number of LTR packets received by the MEP
   transmit_ltm_count       Number of LTM packets transmitted by the MEP
   state_waiting            Not supported in Spirent HLTAPI
   state_received           Not supported in Spirent HLTAPI
   state_failed             Not supported in Spirent HLTAPI
   min_response_time        Not supported in Spirent HLTAPI
   avg_response_time        Not supported in Spirent HLTAPI
   max_response_time        Not supported in Spirent HLTAPI

Loopback
   receive_lbr_count       Number of LBR packets received by the MEP
   transmit_lbm_count      Number of LBM packets transmitted by the MEP
   state_waiting           Not supported in Spirent HLTAPI
   state_received          Not supported in Spirent HLTAPI
   state_failed            Not supported in Spirent HLTAPI
   min_response_time       Not supported in Spirent HLTAPI
   avg_response_time       Not supported in Spirent HLTAPI
   max_response_time       Not supported in Spirent HLTAPI

Test
   transmit_count          Number of TST packets transmitted by the MEP

The following Link Trace and Loopback keys are not supported in Spirent HLTAPI:

Link Trace Messages
   linktrace.state_waiting
              Number of transitions to the Waiting state

   linktrace.state_received
              Number of transitions to the Received state

   linktrace.state_failed
              Number of transitions to the Failed state

   linktrace.receive_ltr_count
              Number of Link Trace Reply (LTR) packets received
              linktrace.transmit_ltm_count
              Number of Link Trace Message (LTM) packets transmitted

   linktrace.min_response_time
              Minimum Link Trace response time, in milliseconds
              (elapsed time from sending a Link Trace Message to
              receiving a Link Trace Reply)

   linktrace.avg_response_time
              Average Link Trace response time, in milliseconds
              (elapsed time from sending a Link Trace Message to
              receiving a Link Trace Reply)

   linktrace.max_response_time
              Maximum Link Trace response time, in milliseconds
              (elapsed time from sending a Link Trace Message to
              receiving a Link Trace Reply)

Loopback Messages
   loopback.state_waiting
              Number of transitions to the Waiting state

   loopback.state_received
              Number of transitions to the Received state

   loopback.state_failed
              Number of transitions to the Failed state

   loopback.receive_lbr_count
              Number of Loopback Reply (LBR) packets received

   loopback.transmit_lbm_count
              Number of Loopback Message (LBM) packets transmitted

   loopback.min_response_time
              Minimum Loopback response time, in milliseconds
              (elapsed time from sending a Loopback Message to
              receiving a Loopback Reply).

   loopback.avg_response_time
              Average Loopback response time, in milliseconds
              (elapsed time from sending a Loopback Message to
              receiving a Loopback Reply).

   loopback.max_response_time
              Maximum Loopback response time, in milliseconds
              (elapsed time from sending a Loopback Message to
              receiving a Loopback Reply)

The following CCDB return keys are not supported in Spirent HLTAPI:

status
  log_msg
  md_level
    1
      mac
        00:00:00:00:00:01
          vlan_outer
          vlan
          md_level
          mac
          mep_id
          md_name
          short_ma_name
          state
          last_state_change
          ccm_interval
          remote_failure_indicator
        00:00:00:00:00:02
          vlan_outer
          vlan
          md_level
          mac
          mep_id
          md_name
Description:

The emulation oam info function provides information about the ports specified for the EOAM configuration.

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:

Sample Input:

::emulation oam info
         mode= session
         handle= $eoamMsgHandle

Sample Output:

# Results for LM messages (msg_type lm in emulation oam config msg)

{session {{lm {{transmit_lmr_count 0} {mp_name MP0} {transmit_fwd_framecount 0}
{receive_lmr_count 0} {transmit_lm_count 1} {receive_lm_count 0}}}}} {status 1}

# Results for DM  messages (msg_type dm in emulation oam config msg)

{session {{dm {{transmit_dmr_count 0} {mp_name MP0} {receive_dmr_count 0}
{transmit_mode_state NONE} {version 0} {transmit_dm_count 1}
{receive_dm_count 0}}}}} {status 1}

# Results for CC messages (msg_type continuous_check in emulation oam config msg)

{session {{continuous_check {{receive_cc_count 0} {lck_rx_state OFF}
{num_of_remote_meg_ep 0} {num_of_unexp_meg_levels 0} {mp_name MP0}
{last_seq_num_tx 0} {num_of_unexp_meg_ep 0} {num_of_remote_meg_ep_up 0}
{rdi_rx_state OFF} {port_status NONE} {dropped_pkt_cc_count 0} {rdi_tx_state
OFF} {num_of_unexp_meg_ids 0} {num_of_remote_meg_ep_down 0} {intf_status NONE}
{num_of_timeouts 0} {ais_rx_state OFF} {num_of_unexp_period_val 0}
{transmit_cc_count 2}}}}} {status 1}

# Results for AIS messages (msg_type ais in emulation oam config msg)

{session {{ais {{mp_name MP0} {receive_ais_period NONE} {transmit_ais_state ON}
{transmit_ais_count 2} {receive_ais_state OFF} {receive_ais_count 0}}}}}
{status 1}

# Results for LCK messages (msg_type lck in emulation oam config msg)

{session {{lck {{receive_lck_state ON} {receive_lck_count 8} {mp_name MP1000}
{receive_lck_period LCKPERIOD_1S} {transmit_lck_state ON} {transmit_lck_count
8}}}}} {status 1}

# Results for SLM messages (msg_type slm in emulation oam config msg)

{session {{slm {{mp_name MP0} {transmit_slm_count 1} {frameloss_ratio 0.00}
{frameloss_far_end 0} {transmit_slr_count 0} {receive_slm_count 0}
{frameloss_near_end 0} {receive_slr_count 0}}}}} {status 1}

End of Procedure Header