Traffic Functions

sth::traffic_config

Purpose

Creates, modifies, removes, or resets a stream block of network traffic on the specified test port(s). A stream is a series of packets that can be tracked by Spirent HLTAPI. A stream block is a collection of one or more streams represented by a base stream definition plus one or more rules that describe how the base definition is modified to produce additional streams.

Synopsis

Note

M indicates that the argument is Mandatory .

sth::traffic_config
   [-mode  {create|modify|remove|enable|disable|reset}  M]
        [-port_handle  <handle>  M]
        [-add_header  <ALPHANUM>]
        [-header_handle  <ANY>]
        [-pcap_file <inputFilePath>]
        [-stream_id <stream_handle>]
        [-tx_port_sending_traffic_to_self_en {true|false}]
        [-endpoint_map {one_to_one|one_to_many|many_to_many}]
        [-traffic_pattern {pair|backbone}]
        [-disable_signature -{1|0}]
        [-emulation_src_handle <handle>]
        [-emulation_dst_handle <handle>]
        [-tunnel_bottom_label <ALPHANUM>]
        [-tunnel_next_label <ALPHANUM>]
        [-tunnel_top_label <ALPHANUM>]
        [-auto_select_bindings  {1|0}]
        [-enable_stream {1|0}]
        [-traffic_type {L2|L3|FC}]
        [-fcs_error {1|0}]
        [-fill_value <integer>]
        [-inter_stream_gap <ANY>]
        [-inter_stream_gap_sb <ANY>]
        [-inter_stream_gap_unit {percent|fps|bytes|ms|ns|bps|Kbps|Mbps}]
        [-inter_stream_gap_unit_sb {percent|fps|bytes|ms|ns|bps|Kbps|Mbps}]
        [-bidirectional {0|1|true|false|yes|no}]
        [-port_handle2 <handle>]
        [-mac_dst2 <aa:bb:cc:dd:ee:ff>]
        [-mac_dst2_count <1-2147483647>]
        [-mac_dst2_mode {fixed|increment|decrement|random|shuffle|list}]
        [-mac_dst2_step <1-255>]
        [-mac_src2 <aa:bb:cc:dd:ee:ff>]
        [-mac_src2_count <1-2147483647>]
        [-mac_src2_mode {fixed|increment|decrement|random|shuffle|list}]
        [-mac_src2_step <1-255>]
        [-mac_src2_repeat_count <0-2147483647>]
        [-mac_dst2_repeat_count <0-2147483647>]
        [-mac_src_repeat_count <0-2147483647>]
        [-mac_dst_repeat_count <0-2147483647>]
        [-mac_src_seed <integer>]
        [-mac_src_mask <aa:bb:cc:dd:ee:ff>]
        [-mac_dst_seed <integer>]
        [-mac_dst_mask <aa:bb:cc:dd:ee:ff>]
        [-mac_src2_seed <integer>]
        [-mac_src2_mask <aa:bb:cc:dd:ee:ff>]
        [-mac_dst2_seed <integer>]
        [-mac_dst2_mask <aa:bb:cc:dd:ee:ff>]
        [-eth_preamble <octet string>]
        [-import_textfile_param <string>]
        [-import_textfile_name <string>]
        [-l2_encap   {ethernet_ii|ethernet_ii_vlan|atm_vc_mux|ethernet_8022|
                     ethernet_8022_vlan|ethernet_ii_vlan_mpls|ethernet_8023_snap|
                     ethernet_8023_snap_vlan|fibre_channel|ethernet_customer_snap|ethernet_customer}]
           [-frame_size <44-16365>]
           [-frame_size_min <44-16365>]
           [-frame_size_max <44-16365>]
           [-frame_size_imix <string>]
           [-frame_size_step <0-16321>]
           [-dest_port_list <port_list>]
           [-lacp_subtype {01|02} ]
           [-lacp_version <integer>]
           [-lacp_actor_info {01|02|03|00}]
           [-lacp_actor_info_len <integer>]
           [-lacp_actor_sys_pri <integer>]
           [-lacp_actor_sys_id <aa:bb:cc:dd:ee:ff>]
           [-lacp_actor_key <integer>]
           [-lacp_actor_port <integer>]
           [-lacp_actor_port_pri <integer>]
           [-lacp_actor_state <integer>]
           [-lacp_actor_reserved <integer>]
           [-lacp_partner_info  {01|02|03|00}]
           [-lacp_partner_info_len <integer>]
           [-lacp_partner_sys_pri <integer>]
           [-lacp_partner_sys_id <aa:bb:cc:dd:ee:ff>]
           [-lacp_partner_key <integer>]
           [-lacp_partner_port_pri <integer>]
           [-lacp_partner_port <integer>]
           [-lacp_partner_state  <integer>]
           [-lacp_partner_reserved  <octet string>]
           [-lacp_collector_info  {01|02|03|00}]
           [-lacp_collector_info_len <integer>]
           [-lacp_collector_state <integer>]
           [-lacp_collector_max_delay <integer>]
           [-lacp_collector_reserved <Octet string>]
           [-lacp_terminator_info {01|02|03|00}]
           [-lacp_terminator_info_len <integer>]
           [-lacp_terminator_reserved <octet string>]
           [-ether_type <hexadecimal>]
           [-eth_pause_dst_mac <aa:bb:cc:dd:ee:ff>]
           [-eth_pause_len_type <octet string>]
           [-eth_pause_name <string>
           [-eth_pause_opcode <octet string>]
           [-eth_pause_params <octet string>]
           [-eth_pause_preamble <octet string>]
           [-eth_pause_reserved <octet string>]
           [-eth_pause_src_mac <aa:bb:cc:dd:ee:ff>]
           [-lldp_chassis_id_length <integer>]
           [-lldp_chassis_id_name <string>]
           [-lldp_chassis_id_type <integer>]
           [-lldp_chassis_id_chassis_component_id <ascii>]
           [-lldp_chassis_id_chassis_component_name <string>]
           [-lldp_chassis_id_chassis_component_subtype <octet string>]
           [-lldp_chassis_id_custom_id <octet string>]
           [-lldp_chassis_id_custom_name <string>]
           [-lldp_chassis_id_custom_subtype <octet string>]
           [-lldp_chassis_id_interface_alias_id <ascii>]
           [-lldp_chassis_id_interface_alias_name <string>]
           [-lldp_chassis_id_interface_alias_subtype <octet string>]
           [-lldp_chassis_id_interface_name_id <ascii>]
           [-lldp_chassis_id_interface_name_name <string>]
           [-lldp_chassis_id_interface_name_subtype <octet string>]
           [-lldp_chassis_id_locally_assigned_id <ascii>]
           [-lldp_chassis_id_locally_assigned_name <string>]
           [-lldp_chassis_id_locally_assigned_subtype <octet string>]
           [-lldp_chassis_id_mac_addr_id <aa:bb:cc:dd:ee:ff>]
           [-lldp_chassis_id_mac_addr_name <string>]
           [-lldp_chassis_id_mac_addr_subtype <octet string>]
           [-lldp_chassis_id_network_addr4_iana <integer>]
           [-lldp_chassis_id_network_addr4_id <a.b.c.d>]
           [-lldp_chassis_id_network_addr4_name <string>]
           [-lldp_chassis_id_network_addr4_subtype <octet string>]
           [-lldp_chassis_id_network_addr6_iana <integer>]
           [-lldp_chassis_id_network_addr6_id <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-lldp_chassis_id_network_addr6_name <string>]
           [-lldp_chassis_id_network_addr6_subtype <octet string>]
           [-lldp_chassis_id_port_component_id <ascii>]
           [-lldp_chassis_id_port_component_name <string>]
           [-lldp_chassis_id_port_component_subtype <octet string>]
           [-lldp_port_id_length <integer>]
           [-lldp_port_id_name <string>]
           [-lldp_port_id_type <integer>]
           [-lldp_port_id_agent_circuit_id_id <ascii>]
           [-lldp_port_id_agent_circuit_id_name <string>]
           [-lldp_port_id_agent_circuit_id_subtype <octet string>]
           [-lldp_port_id_custom_id <octet string>]
           [-lldp_port_id_custom_name <string>]
           [-lldp_port_id_custom_subtype <octet string>]
           [-lldp_port_id_interface_alias_id <ascii>]
           [-lldp_port_id_interface_alias_name <string>]
           [-lldp_port_id_interface_alias_subtype <octet string>]
           [-lldp_port_id_interface_name_id <ascii>]
           [-lldp_port_id_interface_name_name <string>]
           [-lldp_port_id_interface_name_subtype <octet string>]
           [-lldp_port_id_locally_assigned_id <ascii>]
           [-lldp_port_id_locally_assigned_name <string>]
           [-lldp_port_id_locally_assigned_subtype <octet string>]
           [-lldp_port_id_mac_addr_id <aa:bb:cc:dd:ee:ff>]
           [-lldp_port_id_mac_addr_name <string>]
           [-lldp_port_id_mac_addr_subtype <octet string>]
           [-lldp_port_id_network_addr4_iana <integer>]
           [-lldp_port_id_network_addr4_id <a.b.c.d>]
           [-lldp_port_id_network_addr4_name <string>]
           [-lldp_port_id_network_addr4_subtype <octet string>]
           [-lldp_port_id_network_addr6_iana <integer>]
           [-lldp_port_id_network_addr6_id <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-lldp_port_id_network_addr6_name <string>]
           [-lldp_port_id_network_addr6_subtype <octet string>]
           [-lldp_port_id_port_component_id <ascii>]
           [-lldp_port_id_port_component_name <string>]
           [-lldp_port_id_port_component_subtype <octet string>]
           [-lldp_ttl_length <integer>]
           [-lldp_ttl_name <string>]
           [-lldp_ttl_type <integer>]
           [-lldp_ttl_ttl <integer>]
           [-lldp_end_length <integer>]
           [-lldp_end_name <string>]
           [-lldp_end_type <integer>]
           [-lldp_sys_name_len <integer>]
           [-lldp_sys_name_name <ascii>]
           [-lldp_sys_name_type <integer>]
           [-lldp_sys_decr_len <integer>]
           [-lldp_sys_desc_desc <ascii>]
           [-lldp_sys_desc_type <integer>]
           [-lldp_port_desc_len <integer>]
           [-lldp_port_desc_desc <ascii>]
           [-lldp_port_desc_type <integer>]
           [-lldp_cust_len <integer>]
           [-lldp_cust_value <octet string>]
           [-lldp_cust_type <integer>]
           [-lldp_max_frame_maxframesize <integer>]
           [-lldp_max_frame_len <integer>]
           [-lldp_max_frame_oui <octet string>]
           [-lldp_max_frame_subtype <octet string>]
           [-lldp_max_frame_type <integer>]
           [-lldp_port_vlan_id_len <integer>]
           [-lldp_port_vlan_id_oui <octet string>]
           [-lldp_port_vlan_id_portvlanid <octet string>]
           [-lldp_port_vlan_id_subtype <octet string>]
           [-lldp_port_vlan_id_type <integer>]
           [-lldp_vlan_name_len <integer>]
           [-lldp_vlan_name_oui <octet string>]
           [-lldp_vlan_name_subtype <octet string>]
           [-lldp_vlan_name_type <integer>]
           [-lldp_vlan_name_vlan_id <integer>]
           [-lldp_vlan_name_vlanname <ascii>]
           [-lldp_vlan_name_vlannamelen <integer>]
           [-lldp_protocol_id_len <integer>]
           [-lldp_protocol_id_oui <octet string>]
           [-lldp_protocol_id_protocolid <octet string>]
           [-lldp_protocol_id_protocolidlen <integer>]
           [-lldp_protocol_id_subtype <octet string>]
           [-lldp_protocol_id_type <integer>]
           [-lldp_org_spec_len <integer>]
           [-lldp_org_spec_oui <octet string>]
           [-lldp_org_spec_subtype <octet string>]
           [-lldp_org_spec_type <integer>]
           [-lldp_org_spec_value <octet string>]
           [-lldp_dcbx_tlvt1_len <integer>]
           [-lldp_dcbx_tlvt1_oui <octet string>]
           [-lldp_dcbx_tlvt1_subtype <octet string>]
           [-lldp_dcbx_tlvt1_type <integer>]
           [-lldp_dcbx_tlvt2_len <integer>]
           [-lldp_dcbx_tlvt2_oui <octet string>]
           [-lldp_dcbx_tlvt2_subtype <octet string>]
           [-lldp_dcbx_tlvt2_type <integer>]
           [-lldp_pri_based_flow_control_len <integer>]
           [-lldp_pri_based_flow_control_mbc <bitstring>]
           [-lldp_pri_based_flow_control_oui <octet string>]
           [-lldp_pri_based_flow_control_pfc_cap <integer>]
           [-lldp_pri_based_flow_control_pfc_enable <bitstring>]
           [-lldp_pri_based_flow_control_reserved <bitstring>]
           [-lldp_pri_based_flow_control_subtype <octet string>]
           [-lldp_pri_based_flow_control_type <integer>]
           [-lldp_pri_based_flow_control_willing <bitstring>]
           [-lldp_app_pri_len <integer>]
           [-lldp_app_pri_oui <octet string>]
           [-lldp_app_pri_reserved <bitstring>]
           [-lldp_app_pri_subtype <octet string>]
           [-lldp_app_pri_type <integer>]
           [-lldp_app_pri_app_pri_name <string>]
           [-lldp_app_pri_app_pri_priority <integer>]
           [-lldp_app_pri_app_pri_protocolid <octet string>]
           [-lldp_app_pri_app_pri_reserved <bitstring>]
           [-lldp_app_pri_app_pri_sel <integer>]
           [-lldp_niv_support_len <integer>]
           [-lldp_niv_support_oui <octet string>]
           [-lldp_niv_support_subtype <octet string>]
           [-lldp_niv_support_type <integer>]
           [-lldp_sys_cap_len <integer>]
           [-lldp_sys_cap_type <integer>]
           [-lldp_enabled_cap_bridge <bitstring>]
           [-lldp_enabled_cap_docs_is_cable_dev <bitstring>]
           [-lldp_enabled_cap_name <string>]
           [-lldp_enabled_cap_other <bitstring>]
           [-lldp_enabled_cap_repeater <bitstring>]
           [-lldp_enabled_cap_reserved <octet string>]
           [-lldp_enabled_cap_router <bitstring>]
           [-lldp_enabled_cap_stationonly <bitstring>]
           [-lldp_enabled_cap_telephone <bitstring>]
           [-lldp_enabled_cap_wlan_access_point <bitstring>]
           [-lldp_system_cap_bridge <bitstring>]
           [-lldp_system_cap_docs_is_cable_dev <bitstring>]
           [-lldp_system_cap_name <string>]
           [-lldp_system_cap_other <bitstring>]
           [-lldp_system_cap_repeater <bitstring>]
           [-lldp_system_cap_reserved <octet string>]
           [-lldp_system_cap_router <bitstring>]
           [-lldp_system_cap_stationonly <bitstring>]
           [-lldp_system_cap_telephone <bitstring>]
           [-lldp_system_cap_wlan_access_point <bitstring>]
           [-lldp_mgn_addr_if_num <integer>]
           [-lldp_mgn_addr_len <integer>]
           [-lldp_mgn_addr_oid <octet string>]
           [-lldp_mgn_addr_oid_len <integer>]
           [-lldp_mgn_addr_type <integer>]
           [-lldp_mgn_addr_cust_addr_sub_type <octet string>]
           [-lldp_mgn_addr_cust_addr_mgn_addr <octet string>]
           [-lldp_mgn_addr_ipv4_addr_sub_type <octet string>]
           [-lldp_mac_phy_config_status_len <integer>]
           [-lldp_mac_phy_config_status_op_mau_type <octet string>]
           [-lldp_mac_phy_config_status_oui <octet string>]
           [-lldp_mac_phy_config_status_subtype <octet string>]
           [-lldp_mac_phy_config_status_type <integer>]
           [-lldp_auto_neg_adv_cap_b1000baset <bitstring>]
           [-lldp_auto_neg_adv_cap_b1000basetfd <bitstring>]
           [-lldp_auto_neg_adv_cap_b1000basex <bitstring>]
           [-lldp_auto_neg_adv_cap_b1000basexfd <bitstring>]
           [-lldp_auto_neg_adv_cap_b100baset2 <bitstring>]
           [-lldp_auto_neg_adv_cap_b100baset2fd <bitstring>]
           [-lldp_auto_neg_adv_cap_b100baset4 <bitstring>]
           [-lldp_auto_neg_adv_cap_b100basetx <bitstring>]
           [-lldp_auto_neg_adv_cap_b100basetxfd <bitstring>]
           [-lldp_auto_neg_adv_cap_b10baset <bitstring>]
           [-lldp_auto_neg_adv_cap_b10basetfd <bitstring>]
           [-lldp_auto_neg_adv_cap_bfdxa_pause <bitstring>]
           [-lldp_auto_neg_adv_cap_bfdxb_pause <bitstring>]
           [-lldp_auto_neg_adv_cap_bfdx_pause <bitstring>]
           [-lldp_auto_neg_adv_cap_other <bitstring>]
           [-lldp_auto_neg_adv_cap_name <string>]
           [-lldp_auto_neg_sup_and_stat_auto_neg_enabled <bitstring>]
           [-lldp_auto_neg_sup_and_stat_auto_neg_supported <bitstring>]
           [-lldp_auto_neg_sup_and_stat_name <string>]
           [-lldp_auto_neg_sup_and_stat_reserved <bitstring>]
           [-lldp_pow_via_mdi_len <integer>]
           [-lldp_pow_via_mdi_oui <octet string>]
           [-lldp_pow_via_mdi_name <string>]
           [-lldp_pow_via_mdi_pse_pow_class <octet string>]
           [-lldp_pow_via_mdi_pse_pow_pairs <octet string>]
           [-lldp_pow_via_mdi_subtype <octet string>]
           [-lldp_pow_via_mdi_type <integer>]
           [-lldp_mdi_pow_sup_name <string>]
           [-lldp_mdi_pow_sup_port_class <bitstring>]
           [-lldp_mdi_pow_sup_pse_mdi_pow_state <bitstring>]
           [-lldp_mdi_pow_sup_pse_mdi_pow_support <bitstring>]
           [-lldp_mdi_pow_sup_pse_pairs_ctl_ability <bitstring>]
           [-lldp_mdi_pow_sup_reserved <bitstring>]
           [-lldp_link_agg_len <integer>]
           [-lldp_link_agg_oui <octet string>]
           [-lldp_link_agg_name <string>]
           [-lldp_link_agg_subtype <octet string>]
           [-lldp_link_agg_type <integer>]
           [-lldp_link_agg_port_id <octet string>]
           [-lldp_agg_stat_agg_cap <bitstring>]
           [-lldp_agg_stat_agg_status <bitstring>]
           [-lldp_agg_stat_name <string>]
           [-lldp_agg_stat_reserved <bitstring>]
           [-lldp_port_and_pro_vlanid_len <integer>]
           [-lldp_port_and_pro_vlanid_oui <octet string>]
           [-lldp_port_and_pro_vlanid_name <string>]
           [-lldp_port_and_pro_vlanid_subtype <octet string>]
           [-lldp_port_and_pro_vlanid_type <integer>]
           [-lldp_port_and_pro_vlanid_vlanid <octet string>]
           [-lldp_flags_name <string>]
           [-lldp_ets_conf_cbs <bitstring>]
           [-lldp_ets_conf_len <integer>]
           [-lldp_ets_conf_max_tcs <integer>]
           [-lldp_ets_conf_name <string>]
           [-lldp_ets_conf_oui <octet string>]
           [-lldp_ets_conf_reserved <bitstring>]
           [-lldp_ets_conf_subtype <octet string>]
           [-lldp_ets_conf_type <integer>]
           [-lldp_ets_conf_willing <bitstring>]
           [-lldp_ets_conf_pri_assign_name <string>]
           [-lldp_ets_conf_pri_assign_pri_0 <integer>]
           [-lldp_ets_conf_pri_assign_pri_1 <integer>]
           [-lldp_ets_conf_pri_assign_pri_2 <integer>]
           [-lldp_ets_conf_pri_assign_pri_3 <integer>]
           [-lldp_ets_conf_pri_assign_pri_4 <integer>]
           [-lldp_ets_conf_pri_assign_pri_5 <integer>]
           [-lldp_ets_conf_pri_assign_pri_6 <integer>]
           [-lldp_ets_conf_pri_assign_pri_7 <integer>]
           [-lldp_ets_conf_tc_bw_name <string>]
           [-lldp_ets_conf_tc_bw_tc_percent_0 <integer>]
           [-lldp_ets_conf_tc_bw_tc_percent_1 <integer>]
           [-lldp_ets_conf_tc_bw_tc_percent_2 <integer>]
           [-lldp_ets_conf_tc_bw_tc_percent_3 <integer>]
           [-lldp_ets_conf_tc_bw_tc_percent_4 <integer>]
           [-lldp_ets_conf_tc_bw_tc_percent_5 <integer>]
           [-lldp_ets_conf_tc_bw_tc_percent_6 <integer>]
           [-lldp_ets_conf_tc_bw_tc_percent_7 <integer>]
           [-lldp_ets_conf_tsa_assign_name <string>]
           [-lldp_ets_conf_tsa_assign_traffic_class_0 <integer>]
           [-lldp_ets_conf_tsa_assign_traffic_class_1 <integer>]
           [-lldp_ets_conf_tsa_assign_traffic_class_2 <integer>]
           [-lldp_ets_conf_tsa_assign_traffic_class_3 <integer>]
           [-lldp_ets_conf_tsa_assign_traffic_class_4 <integer>]
           [-lldp_ets_conf_tsa_assign_traffic_class_5 <integer>]
           [-lldp_ets_conf_tsa_assign_traffic_class_6 <integer>]
           [-lldp_ets_conf_tsa_assign_traffic_class_7 <integer>]
           [-lldp_ets_recommend_len <integer>]
           [-lldp_ets_recommend_name <string>]
           [-lldp_ets_recommend_oui <octet string>]
           [-lldp_ets_recommend_reserved <bitstring>]
           [-lldp_ets_recommend_subtype <octet string>]
           [-lldp_ets_recommend_type <integer>]
           [-lldp_ets_recommend_pri_assign_name <string>]
           [-lldp_ets_recommend_pri_assign_pri_0 <integer>]
           [-lldp_ets_recommend_pri_assign_pri_1 <integer>]
           [-lldp_ets_recommend_pri_assign_pri_2 <integer>]
           [-lldp_ets_recommend_pri_assign_pri_3 <integer>]
           [-lldp_ets_recommend_pri_assign_pri_4 <integer>]
           [-lldp_ets_recommend_pri_assign_pri_5 <integer>]
           [-lldp_ets_recommend_pri_assign_pri_6 <integer>]
           [-lldp_ets_recommend_pri_assign_pri_7 <integer>]
           [-lldp_ets_recommend_tc_bw_name <string>]
           [-lldp_ets_recommend_tc_bw_tc_percent_0 <integer>]
           [-lldp_ets_recommend_tc_bw_tc_percent_1 <integer>]
           [-lldp_ets_recommend_tc_bw_tc_percent_2 <integer>]
           [-lldp_ets_recommend_tc_bw_tc_percent_3 <integer>]
           [-lldp_ets_recommend_tc_bw_tc_percent_4 <integer>]
           [-lldp_ets_recommend_tc_bw_tc_percent_5 <integer>]
           [-lldp_ets_recommend_tc_bw_tc_percent_6 <integer>]
           [-lldp_ets_recommend_tc_bw_tc_percent_7 <integer>]
           [-lldp_ets_recommend_tsa_assign_name <string>]
           [-lldp_ets_recommend_tsa_assign_traffic_class_0 <integer>]
           [-lldp_ets_recommend_tsa_assign_traffic_class_1 <integer>]
           [-lldp_ets_recommend_tsa_assign_traffic_class_2 <integer>]
           [-lldp_ets_recommend_tsa_assign_traffic_class_3 <integer>]
           [-lldp_ets_recommend_tsa_assign_traffic_class_4 <integer>]
           [-lldp_ets_recommend_tsa_assign_traffic_class_5 <integer>]
           [-lldp_ets_recommend_tsa_assign_traffic_class_6 <integer>]
           [-lldp_ets_recommend_tsa_assign_traffic_class_7 <integer>]
           [-lldp_congest_notify_cnpv_cap <bitstring>]
           [-lldp_congest_notify_cnpv_ready <bitstring>]
           [-lldp_congest_notify_len <integer>]
           [-lldp_congest_notify_name <string>]
           [-lldp_congest_notify_oui <octet string>]
           [-lldp_congest_notify_subtype <octet string>]
           [-lldp_congest_notify_type <integer>]
           [-lldp_evb_mode <EvbModes>]
           [-lldp_evb_len <integer>]
           [-lldp_evb_name <string>]
           [-lldp_evb_oui <octet string>]
           [-lldp_evb_r <integer>]
           [-lldp_evb_reserved <bitstring>]
           [-lldp_evb_rka <integer>]
           [-lldp_evb_rol_rka <{0|1}>]
           [-lldp_evb_rol_rwd <{0|1}>]
           [-lldp_evb_rte <integer>]
           [-lldp_evb_rwd <integer>]
           [-lldp_evb_type <integer>]
           [-lldp_evb_bg_stat_bgid <bitstring>]
           [-lldp_evb_bg_stat_name <string>]
           [-lldp_evb_bg_stat_reserved <bitstring>]
           [-lldp_evb_bg_stat_rrcap <bitstring>]
           [-lldp_evb_bg_stat_rrctr <bitstring>]
           [-lldp_evb_station_stat_name <string>]
           [-lldp_evb_station_stat_reserved <bitstring>]
           [-lldp_evb_station_stat_rrreq <bitstring>]
           [-lldp_evb_station_stat_rrstat <bitstring>]
           [-lldp_evb_station_stat_sgid <bitstring>]
           [-lldp_cdcp_chn_cap <integer>]
           [-lldp_cdcp_len <integer>]
           [-lldp_cdcp_name <string>]
           [-lldp_cdcp_oui <octet string>]
           [-lldp_cdcp_reserved_1 <bitstring>]
           [-lldp_cdcp_reserved_2 <bitstring>]
           [-lldp_cdcp_role <integer>]
           [-lldp_cdcp_scomp <bitstring>]
           [-lldp_cdcp_type <integer>]
           [-lldp_cdcp_scid_vsids_name <string>]
           [-lldp_cdcp_scid_svid_name <string>]
           [-lldp_cdcp_scid_svid_scid <integer>]
           [-lldp_cdcp_scid_svid_svid <integer>]
           [-lldp_aec_add_frag_size <integer>]
           [-lldp_aec_len <integer>]
           [-lldp_aec_name <string>]
           [-lldp_aec_oui <octet string>]
           [-lldp_aec_preempt_cap_active <integer>]
           [-lldp_aec_preempt_cap_status <integer>]
           [-lldp_aec_preempt_cap_support <integer>]
           [-lldp_aec_subtype <octet string>]
           [-lldp_aec_type <integer>]
           [-lsp_ping_version <integer>]
           [-lsp_ping_msg_type <integer>]
           [-lsp_ping_reply_mode <integer>]
           [-lsp_ping_rsrvd <bitstring>]
           [-lsp_ping_rtn_code <integer>]
           [-lsp_ping_rtn_subcode <integer>]
           [-lsp_ping_seq_num <integer>]
           [-lsp_ping_sndr_hdl <integer>]
           [-lsp_ping_timestamp_recvd <octet string>]
           [-lsp_ping_timestamp_sent <octet string>]
           [-lsp_ping_validate_fec_bit <bitstring>]
           [-lsp_pad_tlv_length <integer>]
           [-lsp_pad_tlv_option <integer>]
           [-lsp_pad_tlv_pad_val <octet string>]
           [-lsp_pad_tlv_type <integer>]
           [-mac_dst <aa:bb:cc:dd:ee:ff>]
           [-mac_dst_count <1-2147483647>]
           [-mac_dst_mode {fixed|increment|decrement|discovery|random|shuffle|list}]
           [-mac_dst_step <1-255>]
           [-mac_src <aa:bb:cc:dd:ee:ff>]
           [-mac_src_count <1-2147483647>]
           [-mac_src_mode {fixed|increment|decrement|random|shuffle|list}]
           [-mac_src_step <1-255>]
           [-llc_control <00-FF>]
           [-snap_ether_type <hexadecimal>]
           [-snap_oui_id <000000-FFFFFF>]
           [-appletalk_header <hexadecimal>]
           [-aarp_header <hexadecimal>]
           [-decnet_header <hexadecimal>]
           [-vines_header <hexadecimal>]
           [-customer_eth_mac_dst <aa:bb:cc:dd:ee:ff>]
           [-customer_eth_mac_src <aa:bb:cc:dd:ee:ff>]
           [-customer_eth_preamble <octet string>]
           [-customer_eth_length <integer>]
           [-customer_eth_type <hexadecimal>]
           [-customer_eth_svlan_dei {0|1}]
           [-customer_eth_svlan_pcp <bitstring>]
           [-customer_eth_svlan_type <0-65535>]
           [-customer_eth_svlan_vid <0-4095>]
           [-customer_eth_cvlan_cfi {0|1}]
           [-customer_eth_cvlan_pcp <bitstring>]
           [-customer_eth_cvlan_type <0-65535>]
           [-customer_eth_cvlan_vid <0-4095>]
           [-llc_dsap {04|06|80|AA|BC|E0|FE}]
           [-llc_ssap {04|06|80|AA|BC|E0|FE}]
           [-ipx_header <hexadecimal>]
           [-xns_header <hexadecimal>]
           [-length_mode    {increment|decrement|imix|fixed|random|auto}]
             [-l3_length <40-16383>]
             [-l3_length_step <1-8192>]
             [-l3_length_max  <40-16383>]
             [-l3_length_min  <40-16383>]
             [-l3_imix1_ratio <integer>]
             [-l3_imix1_size <integer>]
             [-l3_imix2_ratio <integer>]
             [-l3_imix2_size <integer>]
             [-l3_imix3_ratio <integer>]
             [-l3_imix3_size <integer>]
             [-l3_imix4_ratio <integer>]
             [-l3_imix4_size <integer>]
           [-vci <0-65535>]
           [-vci_count <1-65536>]
           [-vci_step <0-65535>]
           [-vpi <0-255>]
           [-vpi_count <1-256>]
           [-vpi_step <0-255>]
           [-vlan_cfi {0|1}]
           [-vlan_outer_cfi {0|1}]
           [-vlan_priority_mode {fixed|increment|decrement|random|shuffle|list}]
           [-vlan_priority_step <0-4095>]
           [-vlan_priority_count <1-4096>]
           [-vlan_id  <0-4094>]
             [-vlan_id_count  <1-4096>]
             [-vlan_id_mode {fixed|increment|decrement|random|shuffle|list}]
             [-vlan_id_repeat <integer>]
             [-vlan_id_step <0-4095>]
             [-vlan_tpid <0-65535>]
             [-vlan_user_priority <0-7>]
           [-vlan_id_outer <0-4095>]
             [-vlan_id_outer_mode {fixed|increment|decrement|random|shuffle|list}]
             [-vlan_id_outer_count <1-4096>]
             [-vlan_id_outer_repeat <integer>]
             [-vlan_id_outer_step <0-4094>]
             [-vlan_outer_tpid <0-65535>]
             [-vlan_outer_user_priority <0-7>]
             [-vlan_priority_outer_mode {fixed|increment|decrement|random|shuffle|list}]
             [-vlan_priority_outer_count <1-4096>]
             [-vlan_priority_outer_step <0-4095>]
           [-qinq_incr_mode {inner|outer|both}]
           [-fc_eof {EOFt|EOFa|EOFn|EOFni}]
           [-fc_sof {SOFi2|SOFn2|SOFi3|SOFn3|SOFf}]
           [-fc_cs_ctl  <00 - FF>]
           [-fc_data_field_control <00 - FF>]
           [-fc_dest_id <000000 - FFFFFF>]
           [-fc_dest_id_count <numeric>]
           [-fc_dest_id_mode {increment|decrement|list|random|shuffle}]
           [-fc_dest_id_repeat <integer>]
           [-fc_dest_id_step <0-4095>]
           [-fc_frame_control <000000 - FFFFFF>]
           [-fc_orig_exchange_id <0000 - FFFF>]
           [-fc_parameter <00000000 - FFFFFFFF>]
           [-fc_r_ctl  <0 - FF>]
           [-fc_response_exchange_id <0000 - FFFF>]
           [-fc_seq_count <0000 - FFFF>]
           [-fc_seq_id <00 - FF>]
           [-fc_source_id <000000 - FFFFFF>]
           [-fc_source_id_count <numeric>]
           [-fc_source_id_mode {increment|decrement|list|random|shuffle}]
           [-fc_source_id_repeat <integer>]
           [-fc_source_id_step <0-4095>]
           [-fc_type <00 - FF>]
        [-l2_encap {ethernet_ii_pppoe|ethernet_ii_vlan_pppoe|
                   ethernet_ii_qinq_pppoe|ethernet_ii_unicast_mpls}]
        [-l3_protocol  {ipv4|ipv6|arp|gre}]
           [-arp_src_hw_addr < aa:bb:cc:dd:ee:ff>]
           [-arp_src_hw_mode <fixed|increment|decrement>]
           [-arp_src_hw_count <1-2147483647>]
           [-arp_src_hw_step < aa:bb:cc:dd:ee:ff>]
           [-arp_dst_hw_addr <aa:bb:cc:dd:ee:ff>]
           [-arp_dst_hw_mode <fixed|increment|decrement>]
           [-arp_dst_hw_count <1-2147483647>]
           [-arp_dst_hw_step < aa:bb:cc:dd:ee:ff>]
           [-arp_operation {arpRequest|arpReply|rarpRequest|rarpReply}]
           [-protocol_addr_len <NUMERIC>]
           [-hardware_addr_len <NUMERIC>]
           [-mf_bit  {0|1}]
           [-mf_bit_mode {increment|decrement|random|shuffle|fixed|list}]
           [-mf_bit_step <integer>]
           [-mf_bit_count <integer>]
           [-mf_bit_mask  <integer>]
           [-mf_bit_repeat_count  <integer>]
           [-reserved  {0|1}]
           [-reserved_mode {increment|decrement|random|shuffle|fixed|list}]
           [-reserved_step <integer>]
           [-reserved_count <integer>]
           [-reserved_mask  <integer>]
           [-reserved_repeat_count  <integer>]
           [-ip_checksum  {0|1}]
           [-ip_dscp  <0-63>]
           [-ip_dscp_step  <1-63>]
           [-ip_dscp_count  <1-63>]
           [-ip_dscp_data_type  {NATIVE|BYTE}]
           [-ip_dscp_mask  <01-FF>]
           [-ip_dst_addr   <a.b.c.d>]
           [-ip_dst_count  <1-2147483647>]
           [-ip_dst_mode  {increment|decrement|random|shuffle|fixed|list}]
           [-ip_dst_step   <a.b.c.d>]
           [-ip_dst_block_count <1-2147483647>]
           [-ip_dst_block_step <a.b.c.d>]
           [-ip_ecn {00|01|10|11}]
           [-ip_fragment   {1|0}]
           [-ip_fragment_mode {increment|decrement|random|shuffle|fixed|list}]
           [-ip_fragment_step <integer>]
           [-ip_fragment_count <integer>]
           [-ip_fragment_mask <integer>]
           [-ip_fragment_repeat_count <integer>]
           [-ip_fragment_offset <0-8191>]
           [-ip_fragment_offset_mode {increment|decrement|random|shuffle|fixed|list}]
           [-ip_fragment_offset_step <integer>]
           [-ip_fragment_offset_count <integer>]
           [-ip_fragment_offset_mask  <integer>]
           [-ip_fragment_offset_repeat_count <integer>]
           [-ip_hdr_length  <0-15>]
           [-ip_id <0-65535> ]
           [-ip_precedence <0-7> ]
           [-ip_precedence_count <integer>]
           [-ip_precedence_mode {increment|decrement|random|shuffle|list}]
           [-ip_precedence_step <1-7> ]
           [-ip_precedence_data_type {NATIVE|BYTE}]
           [-ip_precedence_mask <01-FF>]
           [-ip_protocol   <0-255>]
           [-ip_src_addr   <a.b.c.d>]
           [-ip_src_count  <1-2147483647>]
           [-ip_src_mode {increment|decrement|random|shuffle|fixed|list}]
           [-ip_src_step   <a.b.c.d>]
           [-ip_src_repeat_count <0-2147483647>]
           [-ip_dst_repeat_count <0-2147483647>]
           [-ip_src_seed <integer>]
           [-ip_src_mask <a.b.c.d>]
           [-ip_dst_seed <integet>]
           [-ip_dst_mask <a.b.c.d>]
           [-ip_tos_field  <0-15>]
           [-ip_tos_count <integer>]
           [-ip_tos_step <1-15>]
           [-ip_tos_mode  {increment|decrement|random|shuffle|fixed|list}]
           [-ip_tos_data_type  {NATIVE|BYTE}]
           [-ip_tos_mask  <01-FF>]
           [-ip_mbz {0|1}]
           [-ip_router_alert {0|1}]
           [-ipv4_header_options {router_alert|nop|loose_source_route|strict_source_route
                                  time_stamp|record_route|address_extension|security|stream_identifier}]
           [-ipv4_router_alert  <keyed list>]
           [-ipv4_loose_source_route  <keyed list>]
           [-ipv4_nop  <keyed list>]
           [-ipv4_strict_source_route  <keyed list>]
           [-ipv4_time_stamp  <keyed list>]
           [-ipv4_record_route  <keyed list>]
           [-ipv4_address_extension  <keyed list>]
           [-ipv4_security_compartments  <0-65535>]
           [-ipv4_security_handling_restrictions  <0-65535>]
           [-ipv4_security_length  <0-255>]
           [-ipv4_security  <0-65535>]
           [-ipv4_security_tx_control_code  <integer>]
           [-ipv4_security_type  <integer>]
           [-ipv4_stream_identifier_len  <0-255>]
           [-ipv4_stream_identifier  <0-65535>]
           [-ipv4_stream_identifier_type  <integer>]
           [-ip_ttl        <0-255>]
           [-ipv6_dst_addr  <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-ipv6_dst_count <1-2147483647>]
           [-ipv6_dst_mode  {increment|decrement|random|shuffle|fixed|list}]
           [-ipv6_dst_step <1-65535>|<aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-ipv6_dstprefix_len <1-128>]
           [-ipv6_flow_label  <0-1048575]
           [-ipv6_hop_limit  <0-255>]
           [-ipv6_length    <0-65535>]
           [-ipv6_next_header <0-255>]
           [-ipv6_gateway_addr <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-ipv6_src_addr  <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-ipv6_src_count <1-2147483647>]
           [-ipv6_src_mode  {increment|decrement|random|shuffle|fixed|list}]
           [-ipv6_src_step <1-65535>|<aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-ipv6_src_repeat_count <0-2147483647>]
           [-ipv6_dst_repeat_count <0-2147483647>]
           [-ipv6_srcprefix_len <1-128>]
           [-ipv6_traffic_class <0-255>]
           [-ipv6_traffic_class_mode {increment|decrement|random|shuffle|fixed|list}]
           [-ipv6_traffic_class_step <00-99>]
           [-ipv6_traffic_class_count <integer>]
           [-ipv6_traffic_class_mask <01-FF>]
           [-ipv6_traffic_class_repeat_count <integer>]
           [-ipv6_frag_id < 0-4294967295>]
           [-ipv6_frag_more_flag <0|1>]
           [-ipv6_frag_offset < 0-65535>]
           [-ipv6_auth_seq_num <0-4294967295>]
           [-ipv6_auth_spi <0-4294967295 >]
           [-ipv6_auth_payload_len <0-4294967295>]
           [-ipv6_auth_string < hexadecimal >]
           [-ipv6_routing_res < hexadecimal >]
           [-ipv6_routing_type <integer>]
           [-ipv6_routing_next_header <integer>]
           [-ipv6_routing_length <integer>]
           [-ipv6_routing_seg_left <integer>]
           [-ipv6_routing_node_list < list of IPv6 addresses>]
           [-ipv6_destination_options <keyed list>]
           [-ipv6_hop_by_hop_options <keyed list>]
           [-ipv6_extension_header {none|hop_by_hop|routing|destination|
                                    authentication|fragment|encapsulation|srheader}]
           [-ipv6_encap_auth_data <hex>]
           [-ipv6_encap_pad_len <0-255>]
           [-ipv6_encap_next_header <0-255>]
           [-ipv6_encap_pad_data <hex>]
           [-ipv6_encap_payload_data <hex>]
           [-ipv6_encap_seq_num <0-4294967295>]
           [-ipv6_encap_spi <0-4294967295>]
           [-srheader_count <NUMERIC>]
           [-ipv6_srheader_last_entry <0-255>]
           [-ipv6_srheader_nxt_hdr <0-255>]
           [-ipv6_srheader_length <0-255>]
           [-ipv6_srheader_routing_type <0-255>]
           [-ipv6_srheader_seg_left <0-255>]
           [-ipv6_srheader_tag <0-65535>]
           [-ipv6_srheader_uflag <0-4294967295>]
           [-ipv6_srheader_egress_node <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-ipv6_srheader_egress_flags <0-255>]
           [-ipv6_srheader_egress_length <0-255>]
           [-ipv6_srheader_egress_reserved <0-255>]
           [-ipv6_srheader_egress_type <0-255>]
           [-ipv6_srheader_ingress_flags <0-255>]
           [-ipv6_srheader_ingress_node <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-ipv6_srheader_ingress_length <0-255>]
           [-ipv6_srheader_ingress_reserved <0-255>]
           [-ipv6_srheader_ingress_type <0-255>]
           [-ipv6_srheader_hmac <octet string>]
           [-ipv6_srheader_hmac_key_id <0-4294967295>]
           [-ipv6_srheader_hmac_length <0-255>]
           [-ipv6_srheader_hmac_reserved <0-65535>]
           [-ipv6_srheader_hmac_type <0-255>]
           [-ipv6_srheader_opaquecontainer_flags <0-255>]
           [-ipv6_srheader_opaquecontainer_length <0-255>]
           [-ipv6_srheader_opaquecontainer <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-ipv6_srheader_opaquecontainer_reserved <0-255>]
           [-ipv6_srheader_opaquecontainer_type <0-255>]
           [-ipv6_srheader_pad0_type <0-255>]
           [-ipv6_srheader_padn_length <0-255>]
           [-ipv6_srheader_padn_padding <hexadecimal>]
           [-ipv6_srheader_padn_type <0-255>]
           [-ipv6_srheader_seg <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-ipv6_srheader_nshcarrier_flags <0-255>]
           [-ipv6_srheader_nshcarrier_length <0-255>]
           [-ipv6_srheader_nshcarrier_type <0-255>]
           [-ipv6_srheader_nshmdtype1_version <0-3>]
           [-ipv6_srheader_nshmdtype1_oflag <octet string>]
           [-ipv6_srheader_nshmdtype1_u1bit <octet string>]
           [-ipv6_srheader_nshmdtype1_length <0-63>]
           [-ipv6_srheader_nshmdtype1_ttl <0-63>]
           [-ipv6_srheader_nshmdtype1_u2bits <octet string>]
           [-ipv6_srheader_nshmdtype1_mdtype <0-15>]
           [-ipv6_srheader_nshmdtype1_next_protocol <0-255>]
           [-ipv6_srheader_nshmdtype1_service_path_id <integer>]
           [-ipv6_srheader_nshmdtype1_service_index <0-255>]
           [-ipv6_srheader_nshmdtype1_context_hdr <hexadecimal>]
           [-ipv6_srheader_nshmdtype2_version <0-3>]
           [-ipv6_srheader_nshmdtype2_oflag <octet string>]
           [-ipv6_srheader_nshmdtype2_u1bit <octet string>]
           [-ipv6_srheader_nshmdtype2_ttl <0-63>]
           [-ipv6_srheader_nshmdtype2_length <0-63>]
           [-ipv6_srheader_nshmdtype2_u2bits <octet string>]
           [-ipv6_srheader_nshmdtype2_mdtype <0-15>]
           [-ipv6_srheader_nshmdtype2_next_protocol <0-255>]
           [-ipv6_srheader_nshmdtype2_service_path_id <integer>]
           [-ipv6_srheader_nshmdtype2_service_index <0-255>]
           [-ipv6_srheader_nshmdtype2_md_class <0-65535>]
           [-ipv6_srheader_nshmdtype2_type <0-255>]
           [-ipv6_srheader_nshmdtype2_ubit {0|1}]
           [-ipv6_srheader_nshmdtype2_variable_meta_data <hexadecimal>]
           [-ck_present {0|1}]
           [-routing_present {0|1} ]
           [-key_present {0|1}]
           [-seq_num_present {0|1}]
           [-reserved0 <0-511>]
           [-version <0-7>]
           [-keep_alive_enable {0|1}]
           [-keep_alive_period <0-65535>]
           [-keep_alive_retries <0-255>]
           [-gre_checksum <integer>]
           [-gre_reserved <integer>]
        [-l3_outer_protocol  {ipv4|ipv6}]
           [-ip_dst_outer_addr <a.b.c.d>]
           [-ip_dst_outer_count <1-2147483647>]
           [-ip_outer_gateway_addr <a.b.c.d>]
           [-ip_outer_dscp <0-63>]
           [-ip_outer_dscp_count <1-63>]
           [-ip_outer_dscp_step <1-63>]
           [-ip_dst_outer_mode {increment|decrement|random|fixed|shuffle|list}]
           [-ip_dst_outer_step <a.b.c.d>]
           [-ip_fragment_outer_offset <ip_fragment_outer_offset_traffic_config>`<0-8191>]
           [:ref:-ip_hdr_outer_length <ip_hdr_outer_length_traffic_config>` <0-15>]
           [-ip_outer_ecn {00|01|10|11}]
           [-ip_outer_checksum {0|1}]
           [-ip_outer_ttl <0-255>]
           [-ip_outer_id <0-65535> ]
           [-ip_outer_protocol <0-255>]
           [-ip_outer_precedence <0-7> ]
           [-ip_outer_precedence_mode {increment|dcrement|random|shuffle|list}]
           [-ip_outer_precedence_count <integer>]
           [-ip_outer_precedence_step  <1-7> ]
           [-ip_outer_tos_field  <0-15>]
           [-ip_outer_tos_mode  {increment|decrement|random|shuffle|fixed|list}]
           [-ip_outer_tos_count <integer>]
           [-ip_outer_tos_step <1-15>]
           [-ip_outer_mbz {0|1}]
           [-ip_src_outer_addr <a.b.c.d>]
           [-ip_src_outer_count <1-2147483647>]
           [-ip_src_outer_repeat_count <0-2147483647>]
           [-ip_dst_outer_repeat_count <0-2147483647>]
           [-ip_src_outer_mode {increment|decrement|random|fixed|shuffle|list}]
           [-ip_src_outer_step <a.b.c.d>]
           [-ipv6_dst_outer_count <1-2147483647>]
           [-ipv6_dst_outer_mode {increment|decrement|random|shuffle|list}]
           [-ipv6_dst_outer_step <1-65535>]
           [-ipv6_src_outer_repeat_count <0-2147483647>]
           [-ipv6_dst_outer_repeat_count <0-2147483647>]
           [-ipv6_src_outer_count <1-2147483647>]
           [-ipv6_src_outer_mode {increment|decrement|random|shuffle|list}]
           [-ipv6_src_outer_step <1-65535>]
           [-ipv6_srcprefix <aaaa:bbbb:cccc:dddd:eeee:ffff>]
           [-ipv6_dstprefix <aaaa:bbbb:cccc:dddd:eeee:ffff>]
           [-ipv6_outer_src_addr <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-ipv6_outer_dst_addr <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-ipv6_outer_gateway_addr <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-ipv6_outer_hop_limit <0-255>]
           [-ipv6_outer_traffic_class <0-255>]
           [-ipv6_outer_next_header <0-255>]
           [-ipv6_outer_flow_label <0-1048575]
           [-ipv6_outer_length <0-65535>]
        [-l4_protocol {tcp|udp|udp_dhcp_msg|icmp|icmpv6|igmp|rtp|isis|ospf|ipv4|ipv6|udp_rocev2}]
           [-custom_llc < hexadecimal >]
           [-custom_pattern < hexadecimal >]
           [-tcp_src_port <0-65535>]
           [-tcp_dst_port <0-65535 }]
           [-tcp_ack_num <^[0-9]+$>]
           [-tcp_reserved <0-63>]
           [-tcp_seq_num <1-2147483647>]
           [-tcp_urgent_ptr <0-65535>]
           [-tcp_window  <0-65535>]
           [-tcp_ack_flag  {0|1}]
           [-tcp_fin_flag  {0|1}]
           [-tcp_psh_flag  {0|1}]
           [-tcp_rst_flag  {0|1}]
           [-tcp_syn_flag  {0|1}]
           [-tcp_urg_flag  {0|1}]
           [-tcp_cwr_flag  {0|1}]
           [-tcp_ecn_echo_flag  {0|1}]
           [-tcp_src_port_repeat_count <0-65535>]
           [-tcp_dst_port_repeat_count <0-65535>]
           [-udp_dst_port  <0-65535>]
           [-udp_src_port  <0-65535>]
           [-udp_src_port_repeat_count <0-65535>]
           [-udp_dst_port_repeat_count <0-65535>]
           [-udp_checksum {0|1}]
           [-modifier_option   {{parameter_name}...}]
           [-modifier_mode  {{increment|decrement|random|shuffle|fixed}...}]
           [-modifier_count {{integer}...}]
           [-modifier_repeat_count {{integer}...}]
           [-modifier_step   {{integer}...}]
           [-modifier_mask {{ANY}...}]
           [-modifier_list_value <{value_list}...}>]
           [-modifier_import_textfile_name <{filename1} {filename2}..>]
           [-modifier_export_textfile_name <{filename1} {filename2}..>]
           [-dhcp_srv_msg_options_hdr_seq {cli_hw|cli_non_hw|custom end|hostname|
                                     lease|msg|msg_type|msg_size|overload|req_list|
                                     req_addr|server_id}]
           [-dhcp_cli_msg_options_hdr_seq {cli_hw|cli_non_hw|custom end|hostname|
                                    lease|msg|msg_type|msg_size|overload|req_list|
                                    req_addr|server_id}]
           [-dhcp_msg_header_type {discover|request|decline|release|inform}]
           [-dhcp_srv_msg_client_addr <a.b.c.d>]
           [-dhcp_srv_msg_boot_filename <HEX>]
           [-dhcp_srv_msg_magic_cookie <HEX>]
           [-dhcp_srv_msg_haddr_len <integer>]
           [-dhcp_srv_msg_hops <integer>]
           [-dhcp_srv_msg_next_serv_addr <a.b.c.d>]
           [-dhcp_srv_msg_hw_type <integer>]
           [-dhcp_srv_msg_type <integer>]
           [-dhcp_srv_msg_elapsed <integer>]
           [-dhcp_srv_msg_bootpflags <HEX>]
           [-dhcp_srv_msg_client_hw_pad <HEX>]
           [-dhcp_srv_msg_your_addr <a.b.c.d>]
           [-dhcp_srv_msg_xid <integer>]
           [-dhcp_srv_msg_client_mac <aa:bb:cc:dd:ee:ff>]
           [-dhcp_srv_msg_hostname <HEX>]
           [-dhcp_srv_msg_relay_agent_addr <a.b.c.d>]
           [-dhcp_srv_msg_cli_hw_id_type <HEX>]
           [-dhcp_srv_msg_cli_hw_type <HEX>]
           [-dhcp_srv_msg_cli_hw_client_hwa <aa:bb:cc:dd:ee:ff>]
           [-dhcp_srv_msg_cli_hw_option_length <HEX>]
           [-dhcp_srv_msg_cli_non_hw_id_type <HEX>]
           [-dhcp_srv_msg_cli_non_hw_type <HEX>]
           [-dhcp_srv_msg_cli_non_hw_value <HEX>]
           [-dhcp_srv_msg_cli_non_hw_option_length <HEX>]
           [-dhcp_srv_msg_custom_length <HEX>]
           [-dhcp_srv_msg_custom_type <HEX>]
           [-dhcp_srv_msg_custom_value <HEX>]
           [-dhcp_srv_msg_end_type <HEX>]
           [-dhcp_srv_msg_host_length <HEX>]
           [-dhcp_srv_msg_host_type <HEX>]
           [-dhcp_srv_msg_host_value <HEX>]
           [-dhcp_srv_msg_lease_type <HEX>]
           [-dhcp_srv_msg_lease_length <HEX>]
           [-dhcp_srv_msg_lease_time <integer>]
           [-dhcp_srv_msg_msg_length <HEX>]
           [-dhcp_srv_msg_msg_type <HEX>]
           [-dhcp_srv_msg_msg_value <HEX>]
           [-dhcp_srv_msg_size_length <HEX>]
           [-dhcp_srv_msg_size_type <HEX>]
           [-dhcp_srv_msg_size_value <HEX>]
           [-dhcp_srv_msg_type_length <HEX>]
           [-dhcp_srv_msg_type_code <offer|ack|nak>]
           [-dhcp_srv_msg_msgtype_type <HEX>]
           [-dhcp_srv_msg_overload_length <HEX>]
           [-dhcp_srv_msg_overload_type <HEX>]
           [-dhcp_srv_msg_overload {file|sname|file_sname}]
           [-dhcp_srv_msg_req_list_length <HEX>]
           [-dhcp_srv_msg_req_list_type <HEX>]
           [-dhcp_srv_msg_req_list_value <HEX>]
           [-dhcp_srv_msg_req_addr_length <HEX>]
           [-dhcp_srv_msg_req_addr_type <HEX>]
           [-dhcp_srv_msg_req_addr <a.b.c.d>]
           [-dhcp_srv_msg_srv_id_length <HEX>]
           [-dhcp_srv_msg_srv_id_type <HEX>]
           [-dhcp_srv_msg_srv_id_req_addr <a.b.c.d>]
           [-dhcp_cli_msg_client_addr <a.b.c.d>]
           [-dhcp_cli_msg_boot_filename <HEX>]
           [-dhcp_cli_msg_magic_cookie <HEX>]
           [-dhcp_cli_msg_haddr_len <integer>]
           [-dhcp_cli_msg_hops <integer>]
           [-dhcp_cli_msg_next_serv_addr <a.b.c.d>]
           [-dhcp_cli_msg_hw_type <integer>]
           [-dhcp_cli_msg_type <integer>]
           [-dhcp_cli_msg_elapsed <integer>]
           [-dhcp_cli_msg_bootpflags <HEX>]
           [-dhcp_cli_msg_client_hw_pad <HEX>]
           [-dhcp_cli_msg_your_addr <a.b.c.d>]
           [-dhcp_cli_msg_xid <integer>]
           [-dhcp_cli_msg_client_mac <aa:bb:cc:dd:ee:ff>]
           [-dhcp_cli_msg_hostname <HEX>]
           [-dhcp_cli_msg_relay_agent_addr <a.b.c.d>]
           [-dhcp_cli_msg_cli_hw_id_type <HEX>]
           [-dhcp_cli_msg_cli_hw_type <HEX>]
           [-dhcp_cli_msg_cli_hw_client_hwa <aa:bb:cc:dd:ee:ff>]
           [-dhcp_cli_msg_cli_hw_option_length <HEX>]
           [-dhcp_cli_msg_cli_non_hw_id_type <HEX>]
           [-dhcp_cli_msg_cli_non_hw_type <HEX>]
           [-dhcp_cli_msg_cli_non_hw_value <HEX>]
           [-dhcp_cli_msg_cli_non_hw_option_length <HEX>]
           [-dhcp_cli_msg_custom_length <HEX>]
           [-dhcp_cli_msg_custom_type <HEX>]
           [-dhcp_cli_msg_custom_value <HEX>]
           [-dhcp_cli_msg_end_type <HEX>]
           [-dhcp_cli_msg_host_length <HEX>]
           [-dhcp_cli_msg_host_type <HEX>]
           [-dhcp_cli_msg_host_value <HEX>]
           [-dhcp_cli_msg_lease_type <HEX>]
           [-dhcp_cli_msg_lease_length <HEX>]
           [-dhcp_cli_msg_lease_time <integer>]
           [-dhcp_cli_msg_msg_length <HEX>]
           [-dhcp_cli_msg_msg_type <HEX>]
           [-dhcp_cli_msg_msg_value <HEX>]
           [-dhcp_cli_msg_size_length <HEX>]
           [-dhcp_cli_msg_size_type <HEX>]
           [-dhcp_cli_msg_size_value <HEX>]
           [-dhcp_cli_msg_type_length <HEX>]
           [-dhcp_cli_msg_type_code {discover|request|decline|release|inform}]
           [-dhcp_cli_msg_msgtype_type <HEX>]
           [-dhcp_cli_msg_overload_length <HEX>]
           [-dhcp_cli_msg_overload_type <HEX>]
           [-dhcp_cli_msg_overload {file|sname|file_sname}]
           [-dhcp_cli_msg_req_list_length <HEX>]
           [-dhcp_cli_msg_req_list_type <HEX>]
           [-dhcp_cli_msg_req_list_value <HEX>]
           [-dhcp_cli_msg_req_addr_length <HEX>]
           [-dhcp_cli_msg_req_addr_type <HEX>]
           [-dhcp_cli_msg_req_addr <a.b.c.d>]
           [-dhcp_cli_msg_srv_id_length <HEX>]
           [-dhcp_cli_msg_srv_id_type <HEX>]
           [-dhcp_cli_msg_srv_id_req_addr <a.b.c.d>]
           [-rtp_csrc_count <0-15>]
           [-rtp_payload_type <0-31>]
           [-ssrc <0-4294967295>]
           [-timestamp_initial_value <0-4294967295>]
           [-timestamp_increment <0-65535>]
           [-csrc_list {list of integer values}]
           [-rtp_sequence_number <0-65535>]
           [-rtp_padding {0|1}]
           [-rtp_extension {0|1}]
           [-rtp_marker {0|1}]
           [-rtp_version <0-3>]
           [-rtp_custom_header {0|1}]
           [-icmp_checksum  <integer>]
           [-icmp_code <0-255>]
           [-icmp_id <0-65535>]
           [-icmp_seq <0-65535>]
           [-icmp_type <0-255>]
           [-icmpv6_type {1|2|3|4|129|129|130|131|132|133|134|135|136|137|143}
           [-icmpv6_ip_data <2-octet string>]
           [-icmpv6_ip_src_addr <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-icmpv6_ip_dst_addr <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-icmpv6_ip_hop_limit <0-255>]
           [-icmpv6_ip_traffic_class <0-255>]
           [-icmpv6_ip_next_header <0-255>]
           [-icmpv6_ip_flow_label <0-1048575>]
           [-icmpv6_ip_length <0-65535>]
           [-icmpv6_ip_gateway <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-icmpv6_ip_version {4|6}]
           [-icmpv6_checksum <integer>]
           [-icmpv6_code {1|2|3|4|5}]
           [-icmpv6_unused <0-65535>]
           [-icmpv6_mtu  <0-65535>]
           [-icmpv6_pointer   <0-65535>]
           [-icmpv6_id  <0-65535> ]
           [-icmpv6_seq  <0-65535>]
           [-icmpv6_data <hex>]
           [-icmpv6_reserved <0-65535> ]
           [-icmpv6_target_address <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-icmpv6_oflag {0|1}]
           [-icmpv6_rflag {0|1}]
           [-icmpv6_sflag {0|1}]
           [-icmpv6_suppress_flag {0|1}]
           [-icmpv6_max_resp_delay <0-65535>]
           [-icmpv6_mcast_addr <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-icmpv6_addr_list_ipv6_addr <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-icmpv6_link_layer_length <0-65535>]
           [-icmpv6_link_layer_type {1|2|3|4|5}]
           [-icmpv6_link_layer_value <hex>]
           [-icmpv6_mtu_option_type {1|2|3|4|5}]
           [-icmpv6_mtu_option_length <0-65535>]
           [-icmpv6_mtu_option_reserved <0-65535>]
           [-icmpv6_mtu_option_mtu <0-65535>]
           [-icmpv6_prefix_option_abit {0|1}]
           [-icmpv6_prefix_option_lbit {0|1}]
           [-icmpv6_prefix_option_length <0-65535>]
           [-icmpv6_prefix_option_preferred_lifetime <0-65535>]
           [-icmpv6_prefix_option_prefix <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-icmpv6_prefix_option_prefix_len <0-255>]
           [-icmpv6_prefix_option_reserved1 <0-65535>]
           [-icmpv6_prefix_option_reserved2 <0-65535>]
           [-icmpv6_prefix_option_type {1|2|3|4|5}]
           [-icmpv6_prefix_option_valid_lifetime {1|2|3|4|5}]
           [-icmpv6_dest_address <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-icmpv6_redirect_hdr_type {1|2|3|4|5}]
           [-icmpv6_redirect_hdr_length <0-255>]
           [-icmpv6_redirect_hdr_reserved1 <0-65535>]
           [-icmpv6_redirect_hdr_reserved2 <0-65535>]
           [-icmpv6_group_address  <0-65535>]
           [-icmpv6_max_resp_code <0-65535>]
           [-icmpv6_num_source <0-65535>]
           [-icmpv6_qqic <0-65535>]
           [-icmpv6_qrv <0-65535>]
           [-icmpv6_resv <0-65535>]
           [-icmpv6_cur_hoplimit <0-255>]
           [-icmpv6_mbit <0|1>]
           [-icmpv6_obit <0|1>]
           [-icmpv6_reachable_time <0-4294967295>]
           [-icmpv6_retrans_time <0-4294967295>]
           [-icmpv6_router_lifetime <0-65535>]
           [-icmpv6_num_grp_records <0-65535>]
           [-icmpv6_grp_record_aux_data_len <0-65535>]
           [-icmpv6_grp_record_mcast_addr <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-icmpv6_grp_record_num_source <0-65535>]
           [-icmpv6_grp_record_record_type {1|2|3|4|5|6}]
           [-igmp_checksum <NUMERIC>]
           [-igmp_group_addr <a.b.c.d>]
           [-igmp_group_count <0-65535>]
           [-igmp_group_mode {increment|decrement}]
           [-igmp_group_step <a.b.c.d>]
           [-igmp_multicast_src <a.b.c.d>]
           [-igmp_multicast_addr <a.b.c.d>]
           [-igmp_record_type <NUMERIC>]
           [-igmpv3_grprechandle <igmpv3 grprechandle>
           [-igmp_multicast_addr <a.b.c.d>]
           [-igmp_max_response_time <0-65535>]
           [-igmp_msg_type {query|report}]
           [-igmp_qqic <0-255>]
           [-igmp_qrv <0-7>]
           [-igmp_s_flag {0|1}]
           [-igmp_type <numeric>]
           [-igmp_version <1-3>]
           [-isis_pdu_header_len <00-FF>]
           [-isis_version <00-FF>]
           [-isis_system_id_len <00-FF>]
           [-isis_pdu_type <00-FF>]
           [-isis_version2 <00-FF>]
           [-isis_reserved <00-FF>]
           [-isis_max_area_addr <00-FF>]
           [-isis_reserved_circuit_type <00-FF>]
           [-isis_source_id <hexadecimal>]
           [-isis_holder_timer    <0000-FFFF>]
           [-isis_pdu_len <0000-FFFF>]
           [-isis_reserved_bit <binary string>]
           [-isis_priority <binary string>]
           [-isis_lan_id <hexadecimal>]
           [-l4_ip_gateway_addr <a.b.c.d>]
           [-l4_ip_src_addr <a.b.c.d>]
           [-l4_ip_dst_addr <a.b.c.d>]
           [-l4_ip_protocol <0-255>]
           [-l4_ip_hdr_length <0-15>]
           [-l4_ip_id <0-65535>]
           [-l4_ip_checksum {0|1}]
           [-l4_ip_ecn {00|01|10|11}]
           [-l4_ip_ttl <0-255>]
           [-l4_ip_fragment_offset  <0-8091>]
           [-l4_ip_dst_mode {increment|decrement|random|shuffle|fixed|list}]
           [-l4_ip_dst_step <a.b.c.d>]
           [-l4_ip_dst_count <1-2147483647>]
           [-l4_ip_src_mode {increment|decrement|random|shuffle|fixed|list}]
           [-l4_ip_src_step <a.b.c.d>]
           [-l4_ip_src_count <1-2147483647>]
           [-l4_ip_src_repeat_count <integer>]
           [-l4_ip_dst_repeat_count  <integer>]
           [-l4_ip_precedence  <0-7> ]
           [-l4_ip_precedence_mode  {increment|decrement|random|shuffle|list}]
           [-l4_ip_precedence_count <integer>]
           [-l4_ip_precedence_step  <1-7> ]
           [-l4_ip_tos_field  <0-15>]
           [-l4_ip_tos_mode  {increment|decrement|random|shuffle|fixed|list}]
           [-l4_ip_tos_count <integer>]
           [-l4_ip_tos_step <1-15>]
           [-l4_ip_mbz {0|1}]
           [-l4_ip_dscp <0-63>]
           [-l4_ip_dscp_count <1-63>]
           [-l4_ip_dscp_step <1-63>]
           [-l4_ipv6_src_repeat_count <integer>]
           [-l4_ipv6_dst_repeat_count <integer>]
           [-l4_ipv6_gateway_addr <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-l4_ipv6_src_addr <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-l4_ipv6_dst_addr <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-l4_ipv6_hop_limit <0-255>]
           [-l4_ipv6_traffic_class <0-255>]
           [-l4_ipv6_next_header <0-255>]
           [-l4_ipv6_flow_label <0-1048575>]
           [-l4_ipv6_length <0-65535>]
           [-l4_ipv6_dst_mode {increment|decrement|random|shuffle|fixed|list}]
           [-l4_ipv6_dst_step <1-65535>|<aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-l4_ipv6_dst_count <1-2147483647>]
           [-l4_ipv6_src_mode {increment|decrement|random|shuffle|fixed|list}]
           [-l4_ipv6_src_step <1-65535>|<aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-l4_ipv6_src_count <1-2147483647>]
           [-router_adv_type <integer>]
           [-router_adv_code <integer>]
           [-router_adv_checksum <0-65535>]
           [-router_adv_hop_limit <0-255>]
           [-router_adv_addr_field {0|1}]
           [-router_adv_config_flag {0|1}]
           [-router_adv_reserved <0-63>]
           [-router_adv_lifetime <0-65535>]
           [-router_adv_reachable_time <0-4294967295>]
           [-router_adv_retrans_time <0-4294967295>]
           [-router_adv_link_layer_type <0-255>]
           [-router_adv_link_layer_len <0-255>]
           [-router_adv_link_layer_addr <octet string>]
           [-router_adv_prefix_info_type <integer>]
           [-router_adv_prefix_info_option_len <0-255>]
           [-router_adv_prefix_info_prefix_len <0-255]
           [-router_adv_prefix_info_onlink_flag {0|1}]
           [-router_adv_prefix_info_autonomous_flag {0|1}]
           [-router_adv_prefix_info_reserved1 <0-63>]
           [-router_adv_prefix_info_valid_lifetime <0-4294967295>]
           [-router_adv_prefix_info_preferred_lifetime <0-4294967295>]
           [-router_adv_prefix_info_reserved2 <0-4294967295>]
           [-router_adv_prefix_info_prefix <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
           [-router_adv_mtu_option_type <integer>]
           [-router_adv_mtu_option_len <0-255>]
           [-router_adv_mtu_reserved <0-65535>]
           [-router_adv_mtu_value <0-4294967295>]
           [-ib_payload <HEX>]
           [-ib_icrcvalue <0-4294967295>]
           [-ib_bth_opcode <0-255>]
           [-ib_bth_solicited_event {0|1}]
           [-ib_bth_mig_req {0|1}]
           [-ib_bth_pad_count <0-3>]
           [-ib_bth_transport_header_ver <0-15>]
           [-ib_bth_partition_key <0-65535>]
           [-ib_bth_reserve8 <0-355>]
           [-ib_bth_dst_qp <0-16777215>]
           [-ib_bth_ack_req {0|1}]
           [-ib_bth_reserv7 <0-127>]
           [-ib_bth_pkt_seq_num <0-4294967295>]
           [-ib_deth_queue_key <0-4294967295>]
           [-ib_deth_reserv8 <0-355>]
           [-ib_deth_src_qp <0-4294967295>]
        [-transmit_mode   {continuous|continuous_burst|multi_burst|
                           single_burst|single_pkt|repetitions}]
           [-burst_loop_count <numeric>]
           [-rate_bps   <bits_per_second>]
           [-rate_kbps <kilobits_per_second>]
           [-rate_mbps <megabits_per_second>]
           [-rate_percent <0.00 - 100.00>]
           [-rate_pps   <packets_per_second>]
           [-pkts_per_burst <1-16777215>]
           [-pkts_per_burst_sb <1-16777215>]
        [-priority <0-255>]
        [-start_delay <0-4294967295>]
        [-mpls_labels {0-1048575}]
           [-mpls_bottom_stack_bit {0|1} ]
           [-mpls_labels_mode { fixed|increment|decrement|list}]
           [-mpls_labels_count <numeric>]
           [-mpls_labels_step <1-524288> ]
        [-mpls_cos <numeric>]
           [-mpls_cos_mode { fixed|increment|decrement|list}]
           [-mpls_cos_count <numeric>]
           [-mpls_cos_step <1-524288> ]
        [-mpls_ttl <numeric>]
           [-mpls_ttl_mode { fixed|increment|decrement|list}]
           [-mpls_ttl_count <numeric>]
           [-mpls_ttl_step <1-524288> ]
        [-mac_discovery_gw {<a.b.c.d >|<aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>}]
        [-mac_discovery_gw_step <a.b.c.d>|<aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
        [-mac_discovery_gw_count <1-2147483647>]
        [-ppp_link 0|1]
           [-ppp_link_traffic_src_list <session_block_handle>]
           [-downstream_traffic_src_list <session_block_handle>]
           [-ppp_session_id <integer>]
        [-dhcp_link 0|1]
            [-dhcp_downstream <session_block_handle>]
            [-dhcp_upstream <session_block_handle> ]
        [-tunnel_handle <GRE_tunnel_handle>]
        [-vpls_source_handle <integer>]
        [-vpls_destination_handle <integer>]
        [-enable_stream_only_gen {1|0}]
        [-fill_type {constant|incr|decr|prbs}]
        [-enable_control_plane {0|1}]
        [-enable_custom_pfc {0|1}]
        [-custom_pfc_pri <integer>]
        [-high_speed_result_analysis  {0|1}]
        [-name <name>]
        [-traffic_state {1|0}]
        [-tcp_checksum <integer>]
        [-tcp_data_offset <1-15>]
        [-tcp_src_port_mode {increment|decrement|random|shuffle|list}]
        [-tcp_src_port_count <integer>]
        [-tcp_src_port_step <integer>]
        [-tcp_dst_port_count <integer>]
        [-tcp_dst_port_step <integer>]
        [-tcp_dst_port_mode {increment|decrement|random|shuffle|list}]
        [-udp_src_port_count <integer>]
        [-udp_src_port_step <integer>]
        [-udp_dst_port_mode {increment|decrement|random|shuffle|list}]
        [-udp_dst_port_count <integer>]
        [-udp_dst_port_step <integer>]
        [-udp_src_port_mode {increment|decrement|random|shuffle|list}]
        [-vxlan {0|1}]
        [-vni <0-16777215>]
        [-peer_vtep_ipv4_addr <a.b.c.d>]
        [-ipv4_multicast_group_addr <a.b.c.d>]
        [-inner_l3_protocol {ipv4|ipv6}]
        [-inner_ip_src_addr   <a.b.c.d>]
        [-inner_ip_src_count  <1-2147483647>]
        [-inner_ip_src_mode {increment|decrement|random|shuffle|fixed|list}]
        [-inner_ip_src_step   <a.b.c.d>]
        [-inner_ip_dst_addr   <a.b.c.d>]
        [-inner_ip_dst_count  <1-2147483647>]
        [-inner_ip_dst_mode  {increment|decrement|random|shuffle|fixed|list}]
        [-inner_ip_src_seed <integer>]
        [-inner_ip_src_mask <a.b.c.d>]
        [-inner_ip_dst_seed <integet>]
        [-inner_ip_dst_mask <a.b.c.d>]
        [-inner_ip_dst_step <a.b.c.d>]
        [-inner_ip_fragment_offset  <0-8191>]
        [-inner_ip_id <0-65535> ]
        [-inner_ip_checksum  {0|1}]
        [-inner_ip_gw <a.b.c.d>]
        [-inner_ip_gw_step <a.b.c.d>]
        [-inner_ip_gw_count <1-2147483647>]
        [-inner_ipv6_dst_addr  <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
        [-inner_ipv6_flow_label  <0-1048575>]
        [-inner_ipv6_hop_limit  <0-255>]
        [-inner_ipv6_length    <0-65535>]
        [-inner_ipv6_next_header <0-255>]
        [-inner_ipv6_gateway_addr <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
        [-inner_ipv6_src_addr  <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>]
        [-inner_ipv6_traffic_class <0-255>]
        [-inner_l2_encap {ethernet_ii|ethernet_ii_vlan}]
        [-inner_ether_type <hexadecimal>]
        [-inner_mac_dst <aa:bb:cc:dd:ee:ff>]
        [-inner_mac_dst_count  <1-2147483647>]
        [-inner_mac_dst_mode {fixed|increment|decrement|random|shuffle|list}]
        [-inner_mac_dst_step <1-255>]
        [-inner_mac_src  <aa:bb:cc:dd:ee:ff>]
        [-inner_mac_src_count  <1-2147483647>]
        [-inner_mac_src_mode   {fixed|increment|decrement|random|shuffle|list}]
        [-inner_mac_src_step   <1-255>]
        [-inner_mac_src_mask <aa:bb:cc:dd:ee:ff>]
        [-inner_mac_dst_seed <integer>]
        [-inner_mac_dst_mask <aa:bb:cc:dd:ee:ff>]
        [-inner_mac_src_seed <integer>]
        [-inner_vlan_priority_mode  {fixed|increment|decrement|random|shuffle|list}]
        [-inner_vlan_priority_step <0-4095>]
        [-inner_vlan_priority_count <1-4096>]
        [-inner_vlan_id  <0-4094>]
             [-inner_vlan_id_count  <1-4096>]
             [-inner_vlan_id_mode {fixed|increment|decrement|random|shuffle|list}]
             [-inner_vlan_id_repeat <integer>]
             [-inner_vlan_id_step   <0-4095>]
             [-inner_vlan_cfi {0|1}]
             [-inner_vlan_tpid <0-65535>]
             [-inner_vlan_user_priority <0-7>]
        [-inner_vlan_id_outer <0-4095>]
             [-inner_vlan_id_outer_mode {fixed|increment|decrement|random|shuffle|list}]
             [-inner_vlan_id_outer_count <1-4096>]
             [-inner_vlan_id_outer_repeat <integer>]
             [-inner_vlan_id_outer_step <0-4094>]
             [-inner_vlan_outer_cfi {0|1}]
             [-inner_vlan_outer_tpid <0-65535>]
             [-inner_vlan_outer_user_priority <0-7>]
             [-inner_vlan_outer_user_priority_mode {fixed|increment|decrement|random|shuffle|list}]
             [-inner_vlan_outer_user_priority_step <0-4095>]
             [-inner_vlan_outer_user_priority_count <1-4096>]
        [-inner_qinq_incr_mode {inner|outer|both}]
        [-inner_l4_protocol {udp|tcp}]
        [-inner_udp_dst_port <0-65535>]
        [-inner_udp_src_port <0-65535>]
        [-inner_udp_checksum {0|1}]
        [-inner_tcp_checksum <integer>]
        [-inner_tcp_data_offset <1-15>]
        [-inner_tcp_src_port  <0-65535>]
        [-inner_tcp_dst_port  <0-65535>]
        [-inner_tcp_ack_num  <0-4294967295>]
        [-inner_tcp_reserved <0-63>]
        [-inner_tcp_seq_num   <1-2147483647>]
        [-inner_tcp_urgent_ptr <0-65535>]
        [-inner_tcp_window    <0-65535>]
        [-inner_tcp_ack_flag  {0|1}]
        [-inner_tcp_fin_flag  {0|1}]
        [-inner_tcp_psh_flag  {0|1}]
        [-inner_tcp_rst_flag  {0|1}]
        [-inner_tcp_syn_flag  {0|1}]
        [-inner_tcp_urg_flag  {0|1}]
        [-inner_tcp_cwr_flag  {0|1}]
        [-inner_tcp_ecn_echo_flag  {0|1}]
        [-vlan_id_other <0-4095>]
          [-vlan_cfi_other {0|1}]
          [-vlan_user_priority_other <0-7>]
          [-vlan_id_other_mode {fixed|increment|decrement|random|shuffle}]
          [-vlan_id_other_step  <0-4095>]
          [-vlan_id_other_count  <1-4096>]
          [-vlan_id_other_repeat <integer>]
          [-vlan_tpid_other <0-65535>]
        [-advanced_sequence_threshold <NUMERIC>]
        [-jumbo_frame_threshold <NUMERIC>]
        [-oversize_frame_threshold <NUMERIC>]
        [-undersize_frame_threshold <NUMERIC>]
        [-gtpv1_version <integer>]
        [-gtpv1_tunnel_endpoint_id <integer>]
        [-gtpv1_seq_num_flag {0|1}]
        [-gtpv1_reserved {0|1}]
        [-gtpv1_protocol {0|1}]
        [-gtpv1_npdu_num_flag {0|1}]
        [-gtpv1_msg_type <integer>]
        [-gtpv1_total_length <integer>]
        [-gtpv1_extended_header_flag {0|1}]
        [-gtpv1_ext_seq_num <0-65535>]
        [-gtpv1_ext_npdu_num <0-255>]
        [-gtpv1_ext_next_extension_header_type <0-255>]
        [-gtpv1_ext_extension_header_length <integer>]
        [-gtpv1_ext_pattern <octet string>]
        [-gtpv1_opt_seq_num <0-65535>]
        [-gtpv1_opt_npdu_num <0-255>]
        [-gtpv1_opt_next_extension_header_type <0-255>]
        [-eth_pause_pfc_opCode <octet string>]
        [-eth_pause_pfc_reserved <octet string>]
        [-eth_pause_pfc_time0 <integer>]
        [-eth_pause_pfc_time1 <integer>]
        [-eth_pause_pfc_time2 <integer>]
        [-eth_pause_pfc_time3 <integer>]
        [-eth_pause_pfc_time4 <integer>]
        [-eth_pause_pfc_time5 <integer>]
        [-eth_pause_pfc_time6 <integer>]
        [-eth_pause_pfc_time7 <integer>]
        [-class_enable_vector_lsoctet <octet string>]
        [-class_enable_vector_msoctet <octet string>]
        [-pause_mac_control_opcode <octet string>]
        [-pause_mac_control_pause_time <integer>]
        [-pause_mac_control_reserved <octet string>]

Arguments

-bidirectional

Sets up bidirectional traffic between the ports identified by the port_handle and port_handle2 arguments. Valid values are 0 (false/no) and 1 (true/yes). Specify the value 1 (true/yes) to use bidirectional traffic. The default is 0.

To configure the bidirectional flow, Spirent HLTAPI uses the Layer 3 protocol (IPv4 or IPv6) source and destination addresses for both ports. (See the -l3_protocol, -ip_src_addr, -ip_dst_addr, -ipv6_src_addr, and -ipv6_dst_addr arguments.) Spirent HLTAPI uses the source and destination addresses for the first port (-port_handle), and then swaps the addresses to use them for the second port (-port_handle2). Any additional values specified in the function call are duplicated for both transmitting ports.

Spirent HLTAPI uses the MAC addresses specified in the -mac_dst and -mac_dst2. The -mac_dst2 argument applies to the port associated with -port_handle2.

-burst_loop_count

Specifies the number of times to transmit a burst (that is, a continuous transfer of data without interruption from one device to another). The default is 1. Use this argument when transmit mode is set to either multi_burst, single_burst, single_pkt or repetitions. Set this argument to 1 if transmit mode is set to either single_burst or single_pkt. -port_handle is Mandatory when calling this argument.

-dhcp_downstream

Spirent Extension (for Spirent HLTAPI only).

Specifies the DHCP session block handle from which to retrieve source IP addresses and creates dynamic downstream traffic. The sth::dhcp_config function returns this handle in the keyed list. The -dhcp_link argument must be set to 1.

Spirent Extension (for Spirent HLTAPI only).

Enables or disables DHCP dynamic traffic. Valid values are 1 and 0. Specify the value 1 to enable dynamic binding from the bound DHCP sessions. Specify the value 0 to disable DHCP dynamic traffic. The default is 0.

Note

For both PPPoX and DHCP bound traffic, for subsequent connects and disconnect you do not have to delete and re- create traffic when adding new sessions. To disconnect and re-connect multiple PPPoX or DHCP sessions, you must stop and then restart traffic AFTER all new sessions have connected so the traffic configuration can get the newly updated session information. If you do not stop traffic, the old session information will not be replaced by the new one.

-dhcp_upstream

Spirent Extension (for Spirent HLTAPI only).

Specifies the DHCP session block handle from which to retrieve source IP addresses and creates dynamic upstream traffic. The sth::dhcp_config function returns this handle in the keyed list. The -dhcp_link argument must be set to 1.

-downstream_traffic_src_list

Spirent Extension (for Spirent HLTAPI only).

Specifies the PPPoX session block handle from which to retrieve the source IP addresses and use for the downstream bindings. The sth::pppox_config function returns this handle in the keyed list. If you use this option, you must set -ppp_link to 1.

-emulation_src_handle

The handle used to retrieve information for L2 or L3 IPv4 source addresses. This handle is returned by an emulation configuration function such as sth::emulation_bgp_config, sth::emulation_ospf_config, or sth::emulation_ldp_config. An emulation handle can be a host handle, a router handle, or a router block handle. (For routing protocol, the -emulation_src_handle argument currently only supports BGP, OSPF, and LDP.)

The following example creates a new stream block of traffic on port2, uses the default source and default destination MAC addresses for the stream as Ethernet II, retrieves the IPv4 source address from the specified BGP route block handle, and retrieves the IPv4 destination address from the specified BGP route block handle:

::sth::traffic_config -mode create -port_handle port2\
    -l2_encap ethernet_ii\
    -length_mode fixed -l3_length 128 -l3_protocol ipv4 \
    -emulation_dst_handle $port1BgpRouter1RouteBlk1 \
    -emulation_src_handle $port2BgpRouter1RouteBlk2
-emulation_dst_handle

The handle used to retrieve information for L2 or L3 IPv4 destination addresses. This handle is returned by an emulation configuration function such as sth::emulation_bgp_config, sth::emulation_ospf_config, or sth::emulation_ldp_config. (The -emulation_src_handle argument currently only supports BGP, OSPF, and LDP.)

An emulation handle can be a host handle, a router handle, or a router block handle.

The following example creates a new stream block of traffic on port2, defines the source and destination MAC addresses for the stream as Ethernet II, generates ten source IP addresses for the stream block, uses the default source MAC address and default destination MAC address, and retrieves the IPv4 destination address from the specified BGP route block handle:

::sth::traffic_config -mode create -port_handle port2\
     -l2_encap ethernet_ii\
     -length_mode fixed \
     -l3_length 128\
     -l3_protocol ipv4\
     -ip_src_count 10\
     -ip_src_addr 150.111.0.22\
     -ip_src_step 0.0.0.1\
     -mac_discovery_gw 150.111.0.1\
     -mac_src 00.05.00.01.00.01\
     -emulation_dst_handle $port1BgpRouter1RouteBlk1
-pcap_file

Spirent Extension (for Spirent HLTAPI only).

Specifies the full or relative path of the packet capture (pcap) file to generate streamblocks. This argument is available when -mode is set to create and -port_handle is assigned.

For example:

sth::traffic_config -mode create\
           -port_handle  port1\
           -pcap_file  captureFile.pcap\
-ether_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Ethernet protocol type. Possible Values are described below:

Value   Description
0200    XEROX PUP
0201    PUP Addr Trans
0400    Nixdorf
0600    XEROX NS IDP
0660    DLOG
0661    DLOG2
0800    Internet IP
0801    X.75 Internet
0802    NBS Internet
0803    ECMA Internet
0804    Chaosnet
0805    X.25 Level 3
0806    ARP
0807    XNS Compatibility
0808    Frame Relay ARP
8035    RARP
86DD    IPv6
880B    PPP
8809    Slow Protocol
8847    MPLS Unicast
8848    MPLS Multicast
8863    PPPoE Discovery
8864    PPPoE Session
8906    FCoE
8914    FIP
-frame_size

Specifies the L2 frame size for the stream in bytes. Use this argument when -length_mode is set to fixed. Possible values range from 44 to 16365.

-frame_size_min

Specifies the minimum L2 frame size in bytes. Use this argument when -length_mode is set to random,increment or decrement. Possible values range from 44 to 16365.

-frame_size_max

Specifies the maximum L2 frame size in bytes. Use this argument when -length_mode is set to random,increment or decrement. Possible values range from 44 to 16365.

-frame_size_imix

Specifies the IMIX set values. Use this argument when -length_mode is set to imix and do not specify IMIX ratio and size arguments (-l3_imix1_ratio, -l3_imix1_size etc). Possible values are Default, Spirent, TCPv4, 4-point, IPSEC, JMIX Downstream, JMIX Upstream. Also, specifies any customized IMIX set created using sth::imix_config.

-frame_size_step

Specifies the step by which the frame size increments or decrements when -length_mode is set to increment or decrement. Possible values range from 0 to 16321.

-dest_port_list

Specifies a list of ports that are expected to receive all the packets from this stream block. If -dest_port_list is not specified, all ports will receive packets.

-priority

Spirent Extension (for Spirent HLTAPI only).

Specifies the scheduling priority of the streamblock. Possible values range from 0 to 255. The default value is 0.

-start_delay

Spirent Extension (for Spirent HLTAPI only).

Determines the starting point of the streamblock in bytes. Possible values range from 0 to 4294967295. The default value is 0.

-tunnel_bottom_label

Specifies the bottom label in tunnel. The value is the handle returned for the configured router. For example, -tunnel_bottom_label router2

-tunnel_next_label

Specifies the next label in tunnel. The value is the handle returned for the configured router. For example, -tunnel_next_label router2

-tunnel_top_label
Specify the top label in tunnel. The value is the handle returned for the configured router. For example, -tunnel_top_label router2
-auto_select_bindings
 

Spirent Extension (for Spirent HLTAPI only).

Whether to automatically bind the streamblocks when created with -bidirectional set to 1 and -mode is create, or automatically bind the streamblocks inputted with -stream_id when -mode is modify. The default value is 0.
-tx_port_sending_traffic_to_self_en

Spirent Extension (for Spirent HLTAPI only).

Determines whether to allow the transmitting port to send traffic to itself. Possible values are true and false. When set to true, Spirent HLTAPI will allow the transmitting port to send traffic to itself. The default value is false.

-endpoint_map

Mapping between network endpoints within interface blocks. Possible values are:

Value               Description
one_to_one  One source endpoint to one destination endpoint
one_to_many         One source endpoint to many destination endpoints
many_to_many     Same as one_to_many

Default: one_to_one

-traffic_pattern

Specifies the value for traffic pattern between endpoints.

Default: pair

Possible Values:

Value         Description
pair          Traffic is transmitted between one or more port pairs,
           either uni- or bi-directionally.
backbone   Traffic is transmitted in a partially meshed pattern,
           either uni- or bi-directionally.
-enable_stream

Spirent Extension (for Spirent HLTAPI only).

Whether to use streams or Variable Field Definitions (VFDs) to generate modified values. Possible values are 0 and 1. The default value is 1.

When it is set to 0, Spirent HLTAPI uses VFDs to generate modified values. The values of step attributes under sth::traffic_config must be a power of two. In this situation, the number of modifiers is limited by the Spirent TestCenter hardware (4 or 6 depending on the card series). When it is set to 1, Spirent HLTAPI uses streams to generate modified values. A unique signature per stream is generated. If the per-port limit of 32k streams total across all stream blocks is not exceeded, unlike when the argument is set to 0, there is no extra rules for inputting the step values under the sth::traffic_config command.

-traffic_type

Specifies the traffic type. Possible values are L2 (L2 traffic), L3(L3 traffic ) and FC(Fiber channel).

-fcs_error

Determines whether to insert frame check sequence (FCS) error in the frames. Possible values are:

0 - FCS error in the frames will not be inserted. This is the default.
1 - Inserts FCS error in the frames.
-fill_value

Specifies the value for the constant fill pattern when the -fill_type argument is set to constant. When the -fill_type argument is set to incr or decr, the value of this argument indicates the starting value

-inter_stream_gap

Specifies the gap between frames in the same burst when the burst size is greater than 1. This argument is available when -transmit_mode is continuous_burst or multi_burst. The default value is 12.

-inter_stream_gap_sb

Spirent Extension (for Spirent HLTAPI only).

Specifies the inter-frame gap of the streamblock when the burst size is greater than 1. This argument is available when -transmit_mode is continuous_burst or multi_burst. The default value is 12.

-inter_stream_gap_unit

Spirent Extension (for Spirent HLTAPI only).

Specifies the unit for inter-frame gaps. This argument is available when -tramsmit_mode is set to continuous_burst or multi_burst. Possible values are discribed below:

percent - Inter-frame gap as a percentage of the maximum
           bandwidth available on the test module
fps     - Inter-frame gap as the number of frames per second
bytes   - Inter-frame gap as the number of bytes
ms      - Inter-frame gap in milliseconds
ns      - Inter-frame gap in nanoseconds
bps     - Inter-frame gap as the number of bits per second
Kbps    - Inter-frame gap as the number of kilobits per second
Mbps    - inter-frame gap as the number of megabits per second

The default value is bytes.

-inter_stream_gap_unit_sb

Spirent Extension (for Spirent HLTAPI only).

Specifies the inter-frame gap unit of the streamblock. Possible values are described below:

percent     Inter-frame gap as a percentage of the maximum
            bandwidth available on the test module
fps         Inter-frame gap as the number of frames per second
bytes       Inter-frame gap as the number of bytes
ms          Inter-frame gap in milliseconds
ns          Inter-frame gap in nanoseconds
bps         Inter-frame gap as the number of bits per second
Kbps        Inter-frame gap as the number of kilobits per second
Mbps        inter-frame gap as the number of megabits per second

The default value is bytes.

-ip_checksum

Verifies that packets are not corrupted. Possible values are 0 (not corrupted) and 1 (corrupted). The default is 0. You must specify IPv4 in the -l3_protocol argument.

-ip_dscp

Specifies the Differentiated Service Code Point (DSCP) precedence for a particular stream. The DSCP is made of the six most significant bits of the DiffServ field. Possible values are 0 to 63. The default is 0. You must specify IPv4 in the -l3_protocol argument. See RFC 2474 and 2475 for more information.

-ip_dscp_step

The amount by which to increment the specified DSCP value(-ip_dscp) for subsequent packets. This argument is applicable only when you specify -l3_protocol ipv4.

-ip_dscp_count

Specifies the number of DSCP values to generate for a stream. Possible values range from 1 to 63. The default is 1. You must specify IPv4 in the -l3_protocol argument.

-ip_dscp_data_type

Specifies the type to use for the DSCP mask attribute. The default is NATIVE. Possible values are discribed below:

Value             Description
NATIVE            Mask attribute is the same type as the
                  PDU field being modified.
BYTE              Mask attribute is a hexadecimal byte pattern.
-ip_dscp_mask

Specifies the data bytes to be modified in the DSCP value. The mask size must be the same size as the data. The default is FF.

-ip_dst_addr

Specifies the destination IPv4 address of the first generated packet. The default is 192.0.0.1. You must specify IPv4 in the -l3_protocol argument.

-ip_dst_count

Specifies the number of destination IPv4 addresses to generate for a stream. Possible values range from 1 to 2147483647. The default is 1. You must specify IPv4 in the -l3_protocol argument.

-ip_dst_mode

Specifies how Spirent HLTAPI will assign the IPv4 IP addresses for a particular stream. Possible values are:

increment - For all packets, the destination IP address
    increments by the step specified in the -ip_dst_step
    argument.

decrement - For all packets, the destination IP address
    decrements by the step specified in the -ip_dst_step
    argument.

random   - For all packets, the destination IP addresses are
    in random order.

shuffle - For all packets, the destination IP addresses are
     in random order within a range that is determined by the
     values of -ip_dst_count and -ip_dst_step.

fixed  - The destination IP address is the same for all
    packets.

list    - For all packets, the destination IP addresses are a
          fixed set of values.

You must specify IPv4 in the -l3_protocol argument.

-ip_dst_step

The amount by which to increment the specified IPv4 destination IP address (-ip_dst_addr) for subsequent packets. The modifier is in the format of 0.0.0.0 for IPv4. See -ip_src_step for an example. You must specify IPv4 in the -l3_protocol argument.

-ip_dst_outer_addr

Specifies the destination IPv4 address of the first generated packet in the outer header. The default is 192.0.0.1. You must specify IPv4 in the -l3_protocol argument.

-ip_outer_gateway_addr

Spirent Extension (for Spirent HLTAPI only).

Defines the number of gateway addresses for the streamblocks of outer Ethernet frames. The value must be in IPv4 format. You must specify IPv4 in the -l3_protocol argument.

-ip_dst_outer_count

Specifies the number of destination IPv4 addresses to generate for the outer header. Possible values range from 1 to 2147483647. The default is 1. You must specify IPv4 in the -l3_protocol argument.

-ip_dst_outer_mode

Specifies how Spirent HLTAPI will assign the IPv4 IP addresses for the outer header. Possible values are:

increment - For all packets, the destination IP address
    increments by the step specified in the
    -ip_dst_outer_step argument.

decrement - For all packets, the destination IP address
    decrements by the step specified in the
    -ip_dst_outer_step argument.

random  - For all packets, the destination IP addresses are
    in random order.

fixed  - The destination IP address is the same for all
     packets.

shuffle - For all packets, the destination IP addresses are in
     random order within a range that is determined by the values
     of -ip_dst_outer_count and -ip_dst_outer_step.

list    - For all packets, the destination IP addresses are a
          fixed set of values.

You must specify IPv4 in the -l3_protocol argument.

-ip_dst_outer_step

The amount by which to increment the specified IPv4 destination IP address (-ip_dst_outer_addr) for subsequent packets. The modifier is in the format of 0.0.0.0 for IPv4. See -ip_src_outer_step for an example. You must specify IPv4 in the -l3_protocol argument.

-ip_dst_block_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of destination blocks for the streamblock. Possible values range from 1 to 2147483647. The default value is 1. Specify this argument when the destination of the stream is across different sub-interfaces. You must specify IPv4 in the -l3_protocol argument. Please refer to Examples for more information.

-ip_dst_block_step

Spirent Extension (for Spirent HLTAPI only).

Specifies the step by which to increment the destination addresses across different sub-interfaces. The value must be in IPv4 format. The default value is 0.0.1.0. You must specify IPv4 in the -l3_protocol argument.

-ip_fragment

Specifies whether the datagram is fragmented. Possible values are 0 (not fragmented) and 1 (fragmented). The default value is 1. Fragmentation is a method for dividing large packets into smaller packets at any point on a route between the source and destination. You must specify IPv4 in the -l3_protocol argument.

-mf_bit

Spirent Extension (for Spirent HLTAPI only).

Specifies the More Fragment (MF) bit in the Flags field of the internet header. Possible values are 0 and 1. You must specify IPv4 in the -l3_protocol argument. The default value is 0.

-reserved

Spirent Extension (for Spirent HLTAPI only).

Specifies the reserved bit in the Flags field of the internet header. Possible values are 0 and 1. The default value is 0. It must be set to 0. You must specify IPv4 in the -l3_protocol argument.

-ip_fragment_offset

The byte count from the start of the original sent packet. If the IP packet is a fragment, the fragment offset indicates the location of the fragment in the final datagram. The fragment offset is measured in 8-octet increments (64 bits). Possible values range from 0 to 8191. The default is 0. You must specify IPv4 in the -l3_protocol argument.

-ip_fragment_mode

Specifies how Spirent HLTAPI will assign the DF bit values for a particular stream. You must specify IPv4 in the -l3_protocol argument. Possible values are:

increment - For all packets, the DF bit value increments
     by the step specified in the -ip_fragment_step
     argument.

decrement - For all packets, the DF bit value decrements
     by the step specified in the -ip_fragment_step
     argument.

random  - For all packets, the DF bit values are in random
     order.

shuffle - For all packets, the DF bit values are in
      random order within a range that is determined by
      the values of -ip_fragment_count and -ip_fragment_step.

fixed  - The DF bit value is the same for all packets.

list    - For all packets, the DF bit values are a
          fixed set.
-ip_fragment_step

The amount by which to increment or decrement the specified DF bit value (-ip_fragment) for subsequent packets. The default value is 1. You must specify IPv4 in the -l3_protocol argument.

-ip_fragment_count

Specifies the number of DF bit values in the IPv4 header. The default is 1. You must specify IPv4 in the -l3_protocol argument.

-ip_fragment_mask

Specifies the data bytes to be modified in the DF bit value. The mask size must be the same size as the data. The default is 1.

-ip_fragment_repeat_count

Specifies the number of times to repeat the same DF bit value. The default is 0.

-ip_fragment_offset_mode

Specifies how Spirent HLTAPI will assign the fragment offset values for a particular stream. You must specify IPv4 in the -l3_protocol argument. Possible values are:

increment - For all packets, the fragment offset value
     increments by the step specified in the
     -ip_fragment_offset_step argument.

decrement - For all packets, the fragment offset value
     decrements by the step specified in the
     -ip_fragment_offset_step argument.

random  - For all packets, the fragment offset values
     are in random order.

shuffle - For all packets, the fragment offset values
      are in random order within a range that is determined
      by the values of -ip_fragment_offset_count and
      -ip_fragment_offset_step.

fixed  - The fragment offset value is the same for all packets.

list    - For all packets, the fragment offset values are a
          fixed set.
-ip_fragment_offset_step

The amount by which to increment or decrement the specified fragment offset value (-ip_fragment_offset) for subsequent packets. The default value is 1. You must specify IPv4 in the -l3_protocol argument.

-ip_fragment_offset_count

Specifies the number of fragment offset value in the IPv4 header. The default is 1. You must specify IPv4 in the -l3_protocol argument.

-ip_fragment_offset_mask

Specifies the data bytes to be modified in the fragment offset value. The mask size must be the same size as the data. The default is 8191.

-ip_fragment_offset_repeat_count

Specifies the number of times to repeat the same fragment offset value. The default is 0.

-reserved_mode

Specifies how Spirent HLTAPI will assign the reserved bit values for a particular stream. You must specify IPv4 in the -l3_protocol argument. Possible values are:

increment - For all packets, the reserved bit value
     increments by the step specified in the
     -reserved_step argument.

decrement - For all packets, the reserved bit value
     decrements by the step specified in the
     -reserved_step argument.

random  - For all packets, the reserved bit values are
     in random order.

shuffle - For all packets, the reserved bit values are
      in random order within a range that is determined
      by the values of -reserved_count and -reserved_step.

fixed  - The reserved bit value is the same for all packets.

list    - For all packets, the reserved bit values are a
          fixed set.
-reserved_step

The amount by which to increment or decrement the specified reserved bit value (-reserved) for subsequent packets. The default value is 1. You must specify IPv4 in the -l3_protocol argument.

-reserved_count

Specifies the number of reserved bit value in the IPv4 header. The default is 1. You must specify IPv4 in the -l3_protocol argument.

-reserved_mask

Specifies the data bytes to be modified in the reserved bit value. The mask size must be the same size as the data. The default is 1.

-reserved_repeat_count

Specifies the number of times to repeat the same reserved bit value. The default is 0.

-mf_bit_mode

Specifies how Spirent HLTAPI will assign the MF bit values for a particular stream. You must specify IPv4 in the -l3_protocol argument. Possible values are:

increment - For all packets, the MF bit value
     increments by the step specified in the
     -mf_bit_step argument.

decrement - For all packets, the MF bit value
     decrements by the step specified in the
     -mf_bit_step argument.

random  - For all packets, the MF bit values are
     in random order.

shuffle - For all packets, the MF bit values are
      in random order within a range that is
      determined by  the values of
      -mf_bit_count and -mf_bit_step.

fixed  - The MF bit value is the same for all
     packets.

list    - For all packets, the MF bit values are
          a fixed set.
-mf_bit_step

The amount by which to increment or decrement the specified MF bit value (-mf_bit) for subsequent packets. The default value is 1. You must specify IPv4 in the -l3_protocol argument.

-mf_bit_count

Specifies the number of MF bit value in the IPv4 header. The default is 1. You must specify IPv4 in the -l3_protocol argument.

-mf_bit_mask

Specifies the data bytes to be modified in the MF bit value. The mask size must be the same size as the data. The default is 1.

-mf_bit_repeat_count

Specifies the number of times to repeat the same MF bit value. The default is 0.

-ip_fragment_outer_offset

The byte count from the start of the original sent packet in the outer header. If the IP packet is a fragment, the fragment offset indicates the location of the fragment in the final datagram. The fragment offset is measured in 8-octet increments (64 bits). Possible values range from 0 to 8191. The default is 0. You must specify IPv4 in the -l3_protocol argument.

-ip_hdr_length

The length of the IP header field in number of bytes. Possible values range from 0 to 15. The default is 5. This argument is Mandatory because without it the receiver would not know where the TCP portion of the packet begins. You must specify IPv4 in the -l3_protocol argument.

-ip_hdr_outer_length

Spirent Extension (for Spirent HLTAPI only).

The length of the outer IP header field in number of bytes. Possible values range from 0 to 15. The default is 5. This argument is Mandatory because without it the receiver would not know where the TCP portion of the packet begins. You must specify IPv4 in the -l3_protocol argument.

-ip_ecn

Spirent Extension (for Spirent HLTAPI only).

Specifies the 2-bit Explicit Congestion Notification (ECN) field in the IPv4 header. You must specify IPv4 in the -l3_protocol argument. The values are described below:

Value   Description

00     Not ECN-Capable Transport (ECT)
01     ECT (1)
10     ECT (0)
11     Congestion Experienced (CE)
-ip_id

Specifies the identifying value used to help assemble the fragments of a datagram. Possible values range from 0 to 65535. The default is 0. You must specify IPv4 in the -l3_protocol argument.

-ip_outer_checksum

Spirent Extension (for Spirent HLTAPI only).

Verifies that packets in the outer header are not corrupted. Possible values are 0 (not corrupted) and 1 (corrupted). The default is 0. You must specify IPv4 in the -l3_outer_protocol argument.

-ip_outer_ecn

Spirent Extension (for Spirent HLTAPI only).

Specifies the 2-bit ECN field in the outer IPv4 header. You must specify IPv4 in the -l3_outer_protocol argument. The values are described below:

Value   Description

00     Not ECT
01     ECT (1)
10     ECT (0)
11     CE
-ip_outer_id

Spirent Extension (for Spirent HLTAPI only).

Specifies the identifying value used to help assemble the fragments of a datagram in the outer header. Possible values range from 0 to 65535. The default is 0. You must specify IPv4 in the -l3_outer_protocol argument.

-ip_outer_protocol

Spirent Extension (for Spirent HLTAPI only).

Indicates the type of L4 protocol in the outer header. Possible values range from 0 to 255. The default is 253. See -ip_protocol for descriptions of the possible values.

-ip_outer_ttl

Spirent Extension (for Spirent HLTAPI only).

Sets the time-to-live (TTL) for the IP packet in the outer header. The TTL is a counter measured in units of seconds that gradually decrements to zero, at which point the datagram is discarded. Possible values are 0-255. The default is 64. You must specify IPv4 in the -l3_outer_protocol argument.

-ip_outer_precedence

Spirent Extension (for Spirent HLTAPI only).

Specifies the 3-bit ToS Precedence field in the outer IPv4 header. Possible values are 0 to 7. The default value is 0. You must specify IPv4 in the -l3_outer_protocol argument. The values are described below:

Value     Description
7       Network Control
6       Internetwork Control
5       CRITIC/ECP
4       Flash Override
3       Flash
2       Immediate
1       Priority
0       Routine
-ip_outer_precedence_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign the 3-bit ToS Precedence field in the outer IPv4 header for a particular stream. Possible values are:

increment   For all packets, the ToS Precedence value
            increments by the step specified in the
            -ip_outer_precedence_step argument

decrement   For all packets, the ToS Precedence value
            decrements by the step specified in the
            -ip_outer_precedence_step argument

random      For all packets, the ToS Precedence values will be in
            random order

shuffle     For all packets, the ToS Precedence values will be
            in random order within a range that is determined by
            the values of -ip_outer_precedence_count and
            -ip_outer_precedence_step

list        For all packets, the ToS Precedence are a
            fixed set of values.
-ip_outer_precedence_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of values to use in increment mode for the Precedence field in the outer IPv4 header. The default value is 0. You must specify IPv4 in the -l3_outer_protocol argument.

-ip_outer_precedence_step

Spirent Extension (for Spirent HLTAPI only).

Specifies the step value by which to modify the specified outer IP Precedence field (-ip_outer_precedence). Possible values are 1 to 7. You must specify IPv4 in the -l3_outer_protocol argument.

-ip_outer_tos_field

Spirent Extension (for Spirent HLTAPI only).

Sets the 4-bit ToS field in the outer IPv4 header. Possible values range from 0 to 15. The default value is 0. You must specify IPv4 in the -l3_outer_protocol argument.

-ip_outer_tos_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign the ToS value in the outer IPv4 header for a particular stream. Possible values are:

increment   For all packets, the ToS value increments by the
             step specified in the -ip_outer_tos_step argument

decrement   For all packets, the ToS value decrements by the
            step specified in the -ip_outer_tos_step argument

random      For all packets, the ToS values are in random
            order

shuffle     For all packets, the ToS values are in random
            order within a range that is determined by
            the values of -ip_outer_tos_count and -ip_outer_tos_step

fixed       The ToS value is the same for all packets

list        For all packets, the ToS values are a
            fixed set of values.
-ip_outer_tos_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times the outer ToS value will change before reverting to the initial value. The default value is 0. You must specify IPv4 in the -l3_outer_protocol argument.

-ip_outer_tos_step

Spirent Extension (for Spirent HLTAPI only).

Specifies the step value by which to modify the specified ToS field (-ip_outer_tos_field). Possible values range from 1 to 15. The default value is 0. You must specify IPv4 in the -l3_outer_protocol argument.

-ip_outer_mbz

Spirent Extension (for Spirent HLTAPI only).

Specifies the 1-bit Must Be Zero (MBZ) field of the ToS field in the outer IPv4 header. Possible values are 0 or 1. The default value is 0. You must specify IPv4 in the -l3_outer_protocol argument.

-ip_outer_dscp

Spirent Extension (for Spirent HLTAPI only).

Specifies the DSCP Precedence field in the outer IPv4 header. Possible values are 0 to 63. The default value is 0. You must specify IPv4 in the -l3_outer_protocol argument.

-ip_outer_dscp_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of DSCP values to generate in the outer IPv4 header for a stream. Possible values range from 1 to 63. The default value is 1. You must specify IPv4 in the -l3_outer_protocol argument.

-ip_outer_dscp_step

Spirent Extension (for Spirent HLTAPI only).

Specifies the amount by which to increment the specified DSCP value (-ip_outer_dscp) for subsequent packets. You must specify IPv4 in the -l3_outer_protocol argument.

-ip_precedence

Configure the TOS three-bit Precedence field in the IP header. Possible values are 0 to 7. The default is 0. You must specify IPv4 in the -l3_protocol argument. This argument is not available when -ip_tos_field is in a list format. The value are described below:

Value     Description
7       Network Control
6       Internetwork Control
5       CRITIC/ECP
4       Flash Override
3       Flash
2       Immediate
1       Priority
0       Routine
-ip_precedence_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign the TOS 3-bit Precedence in the IP header for a particular stream. Possible values are:

increment - For all packets, the ToS 3-bit Precedence
            increments by the step specified in the
            -ip_precedence_step argument.

decrement - For all packets, the ToS 3-bit Precedence
            decrements by the step specified in the
            -ip_precedence_step argument.

random - For all packets, the ToS 3-bit Precedence will be in
            random order

shuffle - For all packets, the ToS 3-bit Precedence will be
        in random order within a range that is determined by the
        values of -ip_precedence_count and -ip_precedence_step.

list   - For all packets, the ToS 3-bit Precedence are a
          fixed set of values.

Note

Spirent HLTAPI does not allow switching from increment, or decrement, shuffle to random; or from random to increment, decrement or shuffle.

-ip_precedence_count

Specifies the number of values to use in increment mode. The default is 0. You must specify IPv4 in the -l3_protocol argument. .. note:: A large IP precedence count value can degrade performance. If it takes too long to create the stream, try reducing this count.

-ip_precedence_step

Increment step to use in increment or decrement mode. Possible values are 1 to 7. You must specify IPv4 in the -l3_protocol argument.

-ip_precedence_data_type

Specifies the type to use for the precedence mask attribute. The default is NATIVE. Possible values are discribed below:

Value             Description
NATIVE            Mask attribute is the same type as the
                  PDU field being modified.
BYTE              Mask attribute is a hexadecimal byte pattern.
-ip_precedence_mask

Specifies the data bytes to be modified in the IP precedence value. The mask size must be the same size as the data. The default is FF.

-ip_protocol

Indicates the type of L4 protocol in the IP header. Possible values range from 0 to 255. The default is 253. Possible values are:

Value Description
0     HOPOPT
1     ICMP
2     IGMP
3     GGP
4     IP
5     ST
6     TCP
7     CBT
8     EGP
9     IGP
10    BBN-RCC-MON
11    NVP-II
12    PUP
13    ARGUS
14    EMCON
15    XNET
16    CHAOS
17    UDP
18    MUX
19    DCN-MEAS
20    HMP
21    PRM
22    XNS-IDP
23    TRUNK-1
24    TRUNK-2
25    LEAF-1
26    LEAF-2
27    RDP
28    IRTP
29    ISO-TP4
30    NETBLT
31    MFE-NSP
32    MERIT-INP
33    SEP
34    3PC
35    IDPR
36    XTP
37    DDP
38    IDPR-CMTP
39    TP++
40    IL
41    IPv6
42    SDRP
43    IPv6-Route
44    IPv6-Frag
45    IDRP
46    RSVP
47    GRE
48    MHRP
49    BNA
50    ESP
51    AH
52    I-NLSP
53    SWIPE
54    NARP
55    MOBILE
56    TLSP
57    SKIP
58    IPv6-ICMP
59    IPv6-NoNxt
60    IPv6-Opts
62    CFTP
64    SAT-EXPAK
65    KRYPTOLAN
66    RVD
67    IPPC
69    SAT-MON
70    VISA
71    IPCV
72    CPNX
73    CPHB
74    WSN
75    PVP
76    BR-SAT-MON
77    SUN-ND
78    WB-MON
79    WB-EXPAK
80    ISO-IP
81    VMTP
82    SECURE-VMTP
83    VINES
84    TTP
85    NSFNET-IGP
86    DGP
87    TCF
88    EIGRP
89    OSPFIGP
90    Sprite-RPC
91    LARP
92    MTP
93    AX.25
94    IPIP
95    MICP
96    SCC-SP
97    ETHERIP
98    ENCAP
100   GMTP
101   IFMP
102   PNNI
103   PIM
104   ARIS
105   SCPS
106   QNX
107   A/N
108   IPComp
109   SNP
110   Compaq-Peer
111   IPX-in-IP
112   VRRP
113   PGM
115   L2TP
116   DDX
117   IATP
118   STP
119   SRP
120   UTI
121   SMP
122   SM
123   PTP
124   ISIS over IPv4
125   FIRE
126   CRTP
127   CRUDP
128   SSCOPMCE
129   IPLT
130   SPS
131   PIPE
132   SCTP
133   FC
134   RSVP-E2E-IGNORE
135   Mobility Header
136   UDPLite
137   MPLS-in-IP
253   Experimental
255   Reserved

You must specify IPv4 in the -l3_protocol argument.

-ip_src_addr

Specifies the source IPv4 address of the first generated packet. The default is 0.0.0.0. You must specify IPv4 in the -l3_protocol argument.

-ip_src_count

The number of source IP addresses to generate for a stream. Possible values range from 1 to 2147483647. The default is 1.

-ip_src_outer_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the source IPv4 address of the first generated packet in the outer header. The default is 0.0.0.0. You must specify IPv4 in the -l3_protocol argument.

-ip_src_outer_count

Spirent Extension (for Spirent HLTAPI only).

The number of source IP addresses to generate for a stream in the outer header. Possible values range from 1 to 2147483647. The default is 1.

-ip_src_outer_step

Indicates both the step value and the prefix length that Spirent HLTAPI applies to the specified outer source address (-ip_src_outer_addr). The format of the ip_src_step value is an IPv4 address.

-ip_src_outer_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign the IP addresses for the outer header. Possible values are:

increment - For all packets, the source IP address
     increments by the step specified in the
     -ip_src_outer_step argument.

decrement - For all packets, the source IP address
     decrements by the step specified in the
     -ip_src_outer_step argument.

random  - For all packets, the source IP addresses are
     in random order.

fixed  - The source IP address is the same for all
     packets.

shuffle - For all packets, the source IP addresses are in
     random order within a range that is determined by the
     values of -ip_src_outer_count and -ip_src_outer_step.

list    - For all packets, the source IP addresses are a
          fixed set of values.
-ip_src_mode

Specifies how Spirent HLTAPI will assign the IP addresses for a particular stream. Possible values are:

increment - For all packets, the source IP address
     increments by the step specified in the -ip_src_step
     argument.

decrement - For all packets, the source IP address
     decrements by the step specified in the -ip_src_step
     argument.

random  - For all packets, the source IP addresses are
     in random order.

shuffle - For all packets, the source IP addresses are in
      random order within a range that is determined by
      the values of -ip_src_count and -ip_src_step.
fixed  - The source IP address is the same for all
     packets.

list    - For all packets, the source IP addresses are a
          fixed set of values.
-ip_src_step

Indicates both the step value and the prefix length that Spirent HLTAPI applies to the specified source address (-ip_src_addr). The format of the ip_src_step value is an IPv4 address, for example, 0.0.1.0. Use a single decimal digit equal to a power of 2; the remaining three digits must be zero (0). The numeric value identifies a bit location in the address; the location determines the prefix length. Spirent HLTAPI also uses the value to increment the host ID portion of the address.

For example, if you specify 0.0.8.0 for the -ip_src_step argument, then the step value is 8 and the prefix length is 21. However, if you specify 0.8.0.0, then the step value is 8 but the prefix length is 13:

sth::traffic_config -mode create {other needed switches} \
                  -ip_src_addr 10.100.20.5 \
                  -ip_src_mode increment \
                  -ip_src_step 0.8.0.0 \
                  -ip_src_count 5
-ip_src_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same source IP address for a stream. Possible values range from 1 to 2147483647. The default is 1.

-ip_dst_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same destination IP address for a stream. Possible values range from 1 to 2147483647. The default is 1.

-ip_src_outer_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same source IP address for a stream in the outer header. Possible values range from 1 to 2147483647. The default is 1.

-ip_dst_outer_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same destination IP address for a stream in the outer header. Possible values range from 1 to 2147483647. The default is 1.

-ip_src_seed

Spirent Extension (for Spirent HLTAPI only).

Specifies the seed value which is used for generating random numbers. The default value is 0. You must specify random in the -ip_src_mode argument.

-ip_src_mask

Spirent Extension (for Spirent HLTAPI only).

Specifies the data bytes to be modified in the source IP. The mask size must be the same size as the data. The default is 255.255.255.255.

-ip_dst_seed

Spirent Extension (for Spirent HLTAPI only).

Specifies the seed value which is used for generating random numbers. The default value is 0. You must specify random in the -ip_dst_mode argument.

-ip_dst_mask

Spirent Extension (for Spirent HLTAPI only).

Specifies the data bytes to be modified in the destination IP. The mask size must be the same size as the data. The default is 255.255.255.255.

-ip_tos_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign the four-bit type of service (ToS) in the IP header for a particular stream. Possible values are:

increment - For all packets, the four-bit ToS increments by the
             step specified in the -ip_tos_step argument.

decrement - For all packets, the four-bit ToS decrements by the
            step specified in the -ip_tos_step argument.

random - For all packets, the four-bit ToS are in random
            order.

shuffle - For all packets, the four-bit ToS are in random
           order within a range that is determined by
           the values of -ip_tos_count and -ip_tos_step.

fixed  -  The four-bit ToS is the same for all
        packets.

list   - For all packets, the ToS are a fixed set of values.

Note

Spirent HLTAPI does not allow switching from increment, or decrement, shuffle to random; or from random to increment, decrement or shuffle.

-ip_tos_count

Specifies the number of times the value will change before reverting to the initial value. The default is 0. You must specify IPv4 in the -l3_protocol argument.

-ip_tos_field

Sets the four-bit type of service (ToS) field in the IP header. The ToS field specifies the priority of the packet. Possible values range from 0 to 15. The default is 0. You must specify IPv4 in the -l3_protocol argument.

-ip_tos_step

Specifies the number of values to use in increment or decrement mode. Possible values range from 1 to 15. The default is 0. You must specify IPv4 in the -l3_protocol argument.

-ip_tos_data_type

Specifies the type to use for the TOS mask attribute. The default is NATIVE. Possible values are discribed below:

Value             Description
NATIVE            Mask attribute is the same type as the
                  PDU field being modified.
BYTE              Mask attribute is a hexadecimal byte pattern.
-ip_tos_mask

Specifies the data bytes to be modified in the TOS value. The mask size must be the same size as the data. The default is FF.

-ip_mbz

Specifies 1-bit Must Be Zero (MBZ) field of the ToS field in IPv4 header. Possible values are 0 or 1. The default is 0. You must specify IPv4 in the -l3_protocol argument.

-ip_ttl

Sets the time-to-live (TTL) for the IP packet. The TTL is a counter measured in units of seconds that gradually decrements to zero, at which point the datagram is discarded. Possible values are 0-255. The default is 64. You must specify IPv4 in the -l3_protocol argument.

-ip_router_alert

Determines whether to add the Router Alert option in the IPv4 header. Possible values are 0 or 1. The default is 0. You must specify IPv4 in the -l3_protocol argument.

-ipv4_header_options

Specifies the option to be included in the IPv4 header. Possible values are described below:

router_alert - Adds the IP router alert option in the IPv4
              header. You must set -ip_router_alert to 1.

nop - Adds the IP NOP option in the IPv4
              header

loose_source_route - Adds the IP loose source route option in the IPv4
              header

strict_source_route - Adds the IP loose strict route option in the IPv4
              header

time_stamp - Adds the IP time stamp option in the IPv4
              header

record_route - Adds the IP record route option in the IPv4
              header

address_extension - Adds the IP address extension option in the IPv4
              header

security - Specifies how to include security labels and handling
           restrictions with IP datagrams.

stream_identifier - Carries the 16-bit SATNET stream identifier.

The default value is router_alert.

-ipv4_router_alert

Determines what will be included in the Router Alert option in the IPv4 header. This argument will present a list of keys:

optiontype - Specifies the type of router alert to be included.
             Possible values include:

             end_of_options_list
             nop
             security
             loose_source_route
             time_stamp
             extended_security
             record_route
             stream_identifier
             strict_source_route
             mtu_probe
             mtu_reply
             traceroute
             address_extension
             router_alert
             selective_directed_broadcast_mode

            The default is router_alert.

length - Specifies the length field for the IP router alert
         option. The default value is 4.

routeralertvalue - Specifies the value field for the IP
         router alert option. The default value is 0.

Here is an example:

set returnedString [sth::traffic_config\
     -mode create\
     -port_handle $tgen1_port\
     -l3_protocol ipv4\
     -ip_router_alert 1\
     -ipv4_header_options router_alert\
     -ipv4_router_alert "length:4 routeralertvalue:10
      optiontype:selective_directed_broadcast_mode"

      ]
-ipv4_nop

Determines what will be included in the NOP option in the IPv4 header. This argument will present a list of keys:

optiontype - Specifies the type of nop to be included.
             Possible values include:

             end_of_options_list
             nop
             security
             loose_source_route
             time_stamp
             extended_security
             record_route
             stream_identifier
             strict_source_route
             mtu_probe
             mtu_reply
             traceroute
             address_extension
             router_alert
             selective_directed_broadcast_mode

            The default is nop.


Here is an example::

  set returnedString [sth::traffic_config\
       -mode create\
       -port_handle $tgen1_port\
       -l3_protocol ipv4\
       -ipv4_header_options nop\
       -ipv4_nop "optiontype:selective_directed_broadcast_mode"

        ]
-ipv4_loose_source_route

Determines what will be included in the Loose Source Route option in the IPv4 header. This argument will present a list of keys:

optiontype - Specifies the type of loose source route to be included.
             Possible values include:

             end_of_options_list
             nop
             security
             loose_source_route
             time_stamp
             extended_security
             record_route
             stream_identifier
             strict_source_route
             mtu_probe
             mtu_reply
             traceroute
             address_extension
             router_alert
             selective_directed_broadcast_mode

            The default is loose_source_route.

length - Specifies the length field for the IP loose source route
         option. The default value is 3.

ip_value - Specifies the IP Address List field for the loose source route
         option. The default value is 192.0.0.1.

pointer - Specifies the pointer field for the IP loose source route
         option. The default value is 4.

Here is an example::

  set returnedString [sth::traffic_config\
       -mode create\
       -port_handle $tgen1_port\
       -l3_protocol ipv4\
       -ipv4_header_options loose_source_route\
       -ipv4_loose_source_route "length:4 ip_value:192.0.0.2
        optiontype:selective_directed_broadcast_mode pointer:2"

        ]
-ipv4_strict_source_route

Determines what will be included in the Strict Source Route option in the IPv4 header. This argument will present a list of keys:

optiontype - Specifies the type of strict source route to be included.
             Possible values include:

             end_of_options_list
             nop
             security
             loose_source_route
             time_stamp
             extended_security
             record_route
             stream_identifier
             strict_source_route
             mtu_probe
             mtu_reply
             traceroute
             address_extension
             router_alert
             selective_directed_broadcast_mode

            The default is strict_source_route.

length - Specifies the length field for the IP strict source route
         option. The default value is 3.

ip_value - Specifies the IP Route List field for the strict source route
         option. The default value is 192.0.0.1.

pointer - Specifies the pointer field for the IP strict source route
         option. The default value is 4.

Here is an example::

  set returnedString [sth::traffic_config\
       -mode create\
       -port_handle $tgen1_port\
       -l3_protocol ipv4\
       -ipv4_header_options strict_source_route\
       -ipv4_strict_source_route "length:4 ip_value:192.0.0.2
        optiontype:selective_directed_broadcast_mode pointer:2"

        ]
-ipv4_time_stamp

Determines what will be included in the Time Stamp option in the IPv4 header. This argument will present a list of keys:

optiontype - Specifies the type of time stamp to be included.
             Possible values include:

             end_of_options_list
             nop
             security
             loose_source_route
             time_stamp
             extended_security
             record_route
             stream_identifier
             strict_source_route
             mtu_probe
             mtu_reply
             traceroute
             address_extension
             router_alert
             selective_directed_broadcast_mode

            The default is time_stamp.

length - Specifies the length field for the IP time stamp
         option. The default value is 5.

pointer - Specifies the pointer field for the IP time stamp
         option. The default value is 0.

overflow - Specifies the overflow field for the IP time stamp
         option. The default value is 0.

opt_type - Specifies the option type field for the IP time stamp
         option. The default value is 0.

opt_type_hex -Specifies the option type (hex) field for the IP time stamp
         option. The default value is 0.

Here is an example::

  set returnedString [sth::traffic_config\
       -mode create\
       -port_handle $tgen1_port\
       -l3_protocol ipv4\
       -ipv4_header_options time_stamp\
       -ipv4_time_stamp "length:4 pointer:2 opt_type:2 overflow:1
        optiontype:selective_directed_broadcast_mode opt_type_hex:2"

        ]
-ipv4_record_route

Determines what will be included in the Record Route option in the IPv4 header. This argument will present a list of keys:

optiontype - Specifies the type of record route to be included.
             Possible values include:

             end_of_options_list
             nop
             security
             loose_source_route
             time_stamp
             extended_security
             record_route
             stream_identifier
             strict_source_route
             mtu_probe
             mtu_reply
             traceroute
             address_extension
             router_alert
             selective_directed_broadcast_mode

            The default is record_route.

length - Specifies the length field for the IP record route
         option. The default value is 0.

pointer - Specifies the pointer field for the IP record route
         option. The default value is 4.

ip_value - Specifies the IP Route List field for the record route
         option. The default value is 192.0.0.1.

Here is an example::

  set returnedString [sth::traffic_config\
       -mode create\
       -port_handle $tgen1_port\
       -l3_protocol ipv4\
       -ipv4_header_options record_route\
       -ipv4_record_route "length:4 pointer:2 ip_value:192.0.0.2
        optiontype:selective_directed_broadcast_mode"

        ]
-ipv4_address_extension

Determines what will be included in the Address Extension option in the IPv4 header. This argument will present a list of keys:

optiontype - Specifies the type of address extension to be included.
             Possible values include:

             end_of_options_list
             nop
             security
             loose_source_route
             time_stamp
             extended_security
             record_route
             stream_identifier
             strict_source_route
             mtu_probe
             mtu_reply
             traceroute
             address_extension
             router_alert
             selective_directed_broadcast_mode

            The default is record_route.

length - Specifies the length field for the IP address extension
         option. The default value is 0.

dest_7thbyte - Specifies the Destination 7th Byte field for the address extension
         option. The default value is 0.

dest_ipv7 - Specifies the Destination IPv7 Administrative Domain field for the address extension
         option. The default value is 0.

source_7thbyte - Specifies the Source 7th Byte field for the address extension
         option. The default value is 0.

source_ipv7 - Specifies the Source IPv7 Administrative Domain field for the address extension
         option. The default value is 0.

Here is an example::

  set returnedString [sth::traffic_config\
       -mode create\
       -port_handle $tgen1_port\
       -l3_protocol ipv4\
       -ipv4_header_options address_extension\
       -ipv4_address_extension "length:4 dest_7thbyte:1 dest_ipv7:1
        optiontype:selective_directed_broadcast_mode source_7thbyte:1
        source_ipv7:1"

        ]
-ipv4_security_compartments

An all zero value is used when the information transmitted is not compartmented. Other values for the compartments field may be obtained from the Defense Intelligence Agency. Possible values are 0-65535. The default is 0.

-ipv4_security_handling_restrictions

Specifies the values for the control and release markings. Possible values are 0-65535. The default is 0.

-ipv4_security_length

Specifies the length of security value. Possible values are 0-255. The default is 11.

-ipv4_security

Specifies the security value. Possible values are 0-65535. The default is 1.

-ipv4_security_tx_control_code

Provides a means to segregate traffic and define controlled communities of interest among subscribers. The default is 0.

-ipv4_security_type

Specifies the type of security to be included. Possible values are described below:

Value          Type
0           End of Options List
1           NOP
130         Security
131         Loose Source Route
68          Time Stamp
133         Extended Security
7           Record Route
136         Stream Identifier
137         Strict Source Route
11          MTU Probe
12          MTU Reply
82          Traceroute
147         Address Extension
148         Router Alert
149         Selective Directed Broadcast Mode

The default value is 130.

-ipv4_stream_identifier_len

Specifies the length of stream identifier. Possible values are 0-255. The default is 4.

-ipv4_stream_identifier

Specifies the stream identifier value. Possible values are 0-65535. The default is 0.

-ipv4_stream_identifier_type

Specifies the type of stream ID to be included. Possible values are described below:

Value          Type
0           End of Options List
1           NOP
130         Security
131         Loose Source Route
68          Time Stamp
133         Extended Security
7           Record Route
136         Stream Identifier
137         Strict Source Route
11          MTU Probe
12          MTU Reply
82          Traceroute
147         Address Extension
148         Router Alert
149         Selective Directed Broadcast Mode

The default value is 136.

-ipv6_dst_addr

The destination IPv6 address of the first generated packet. The default is fe80:0:0:0:0:0:0:22. You must specify IPv6 in the -l3_protocol argument.

-ipv6_dst_count

The number of destination IPv6 addresses to generate for a stream. Possible values range from 1 to 2147483647. The default is 1. You must specify IPv6 in the -l3_protocol argument.

-ipv6_dst_mode

Specifies how Spirent HLTAPI will assign the IPv6 addresses for a particular stream. Possible values are:

increment - For all packets, the destination IPv6 address
         increments by the step specified in the -ipv6_dst_step
         argument.

decrement - For all packets, the destination IPv6 address
         decrements by the step specified in the -ipv6_dst_step
         argument.

random  - For all packets, the destination IPv6 addresses are
          in random order.

shuffle - For all packets, the destination IPv6 addresses are
          in random order within a range that is determined
          by the values of -ipv6_dst_count and -ipv6_dst_step.

fixed  - The destination IPv6 address is the same for all
         packets.

list    - For all packets, the destination IPv6 addresses are
          a fixed set of values.

You must specify IPv6 in the -l3_protocol argument.

-ipv6_dst_step

The amount by which to increment the specified IPv6 destination IP address (-ipv6_dst_addr) for subsequent packets. The value must be either in IPv6 format or an integer. When it is in IPv6 format, the default is ::1. When it is an integer, possible values range from 1 to 65535, and the default is 1. You must specify IPv6 in the -l3_protocol argument.

-ipv6_src_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same source IPv6 address for a stream. Possible values range from 1 to 2147483647. The default is 1.

-ipv6_dst_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same destination IPv6 address for a stream. Possible values range from 1 to 2147483647. The default is 1.

-ipv6_dst_outer_count

Spirent Extension (for Spirent HLTAPI only).

The number of destination IPv6 addresses to generate for the outer header. Possible values range from 1 to 2147483647. The default is 1. You must specify IPv6 in the -l3_protocol argument.

-ipv6_dst_outer_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign the IPv6 addresses for the outer header. Possible values are:

increment - For all packets, the destination IPv6 address
        increments by the step specified in the
        -ipv6_dst_outer_step argument.

decrement - For all packets, the destination IPv6 address
        decrements by the step specified in the
        -ipv6_dst_outer_step argument.

random  - For all packets, the destination IPv6 addresses are
       in random order.

shuffle - For all packets, the destination IPv6 addresses are in
       random order within a range that is determined by the
       values of -ipv6_dst_outer_count and -ipv6_dst_outer_step.

list    - For all packets, the destination IPv6 addresses are a
          fixed set of values.

You must specify IPv6 in the -l3_protocol argument.

-ipv6_dst_outer_step

Spirent Extension (for Spirent HLTAPI only).

The amount by which to increment the specified IPv6 destination IP address (-ip_dst_outer_addr) for subsequent packets. Possible values range from 1 to 65535. The default is 1. You must specify IPv6 in the -l3_protocol argument.

-ipv6_dstprefix_len

Spirent Extension (for Spirent HLTAPI only).

Specifies the prefix length of the destination IPv6 address. Possible values range from 1 to 128. The default is 64. This argument is available when -ipv6_dst_step is specified as an integer. The IPv6 destination addresses for subsequent packets will be modified in the specific offset bit with the -ipv6_dst_step value.

-ipv6_flow_label

The flow label value of the IPv6 stream, which is a twenty- bit field used for QoS management. Typical packets not associated with a particular flow, but which require special treatment are set to 0. Possible values range from 0 to 1048575. The default is 0.

-ipv6_hop_limit

The hop limit field in the IPv6 header, which is an eight- bit field similar to TTL in IPv4. Possible values range from 0 to 255. The default is 64.

-ipv6_length

The two-byte payload length field in the IPv6 header. Possible values range from 0 to 65535. The default is 128.

-ipv6_next_header

The next header field in the IPv6 header. For datagrams with extension headers, this field specifies the identity of the first extension header, which is the next header in the datagram. Possible values range from 0 to 255. The default is 59.

-ipv6_gateway_addr

Specifies the IPv6 gateway address in the outer IPv6 header. The value must be in IPv6 format You must specify IPv6 in the -l3_protocol argument.

-ipv6_src_addr

Specifies the source IPv6 address of the first generated packet. The default is fe80:0:0:0:0:0:0:12. You must specify IPv6 in the -l3_protocol argument.

-ipv6_src_count

The number of source IPv6 addresses to generate for a stream. Possible values range from 1 to 2147483647. The default is 1.

-ipv6_src_mode

Specifies how Spirent HLTAPI will assign the IPv6 addresses for a particular stream. Possible values are:

increment - For all packets, the source IPv6 address
     increments by the step specified in the
     -ip_src_step argument.

decrement - For all packets, the source IPv6 address
     decrements by the step specified in the
     -ip_src_step argument.

random  - For all packets, the source IPv6 addresses are
     in random order.

shuffle - For all packets, the source IPv6 addresses are in
     random order between a range that is determined by the
     values of -ipv6_src_count and -ipv6_src_step.

fixed  - The source IPv6 address is the same for all
     packets.

list    - For all packets, the source IPv6 addresses are
          a fixed set of values.

You must specify IPv6 in the -l3_protocol argument.

-ipv6_src_step

The amount by which to increment the specified IPv6 source IP address (-ipv6_src_addr) for subsequent packets. The value must be either in IPv6 format or an integer. When it is in IPv6 format, the default is ::1. When it is an integer, possible values range from 1 to 65535, and the default is 1. You must specify IPv6 in the -l3_protocol argument.

-ipv6_src_outer_count

Spirent Extension (for Spirent HLTAPI only).

The number of source IPv6 addresses to generate for the outer header. Possible values range from 1 to 2147483647. The default is 1.

-ipv6_src_outer_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign the IPv6 addresses for the outer header. Possible values are:

increment - For all packets, the source IP address
         increments by the step specified in the
         -ipv6_src_outer_step argument.

decrement - For all packets, the source IP address
         decrements by the step specified in the
         -ipv6_src_outer_step argument


random  - For all packets, the source IPv6 addresses are
         in random order.

shuffle - For all packets, the source IPv6 addresses are in
         random order within a range that is determined by the
         values of -ipv6_src_outer_count and -ipv6_src_outer_step.

list    - For all packets, the source IPv6 addresses are a
          fixed set of values.

You must specify IPv6 in the -l3_protocol argument.

-ipv6_src_outer_step

Spirent Extension (for Spirent HLTAPI only).

The amount by which to increment the specified IPv6 source IP address (-ip_src_outer_addr) for subsequent packets. Possible values range from 1 to 65535. The default is 1.

-ipv6_srcprefix_len

Spirent Extension (for Spirent HLTAPI only).

Specifies the prefix length of the source IPv6 address. Possible values range from 1 to 128. The default is 64. This argument is available when -ipv6_src_step is specified as an integer. The IPv6 source addresses for subsequent packets will be modified in the specific offset bit with the -ipv6_src_step value.

-ipv6_srcprefix

Spirent Extension (for Spirent HLTAPI only).

Specifies the prefix mask of the source IPv6 address. The default is “FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF” when -ipv6_src_step is specified in IPv6 format, or “FFFF” when -ipv6_src_step is specified as an integer.

-ipv6_dstprefix

Spirent Extension (for Spirent HLTAPI only).

Specifies the prefix mask of the destination IPv6 address. The default is “FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF” when -ipv6_src_step is specified in IPv6 format, or “FFFF” when -ipv6_src_step is specified as an integer.

-ipv6_traffic_class

The traffic class field in the IPv6 header, which is an eight-bit field that describes the packet’s priority. This value is used at the application layer. Possible values range from 0 to 255. The default is 0.

-ipv6_traffic_class_mode

Specifies how HLTAPI will assign the traffic class value in the IPv6 header for a particular stream. Possible values are:

increment - For all packets, the IPv6 traffic class value increments
             by the step specified in the -ipv6_traffic_class_step
             argument.

decrement - For all packets, the IPv6 traffic class value decrements
             by the step specified in the -ipv6_traffic_class_step
             argument.

random    - For all packets, the IPv6 traffic class values are in
             random order.

shuffle   - For all packets, the IPv6 traffic class values are in
             random order within a range that is determined by
             the values of -ip_tos_count and -ipv6_traffic_class_step.

fixed     - The IPv6 traffic class value is the same for all packets.

list      - For all packets, the IPv6 traffic classes values are
             a fixed set of values.
-ipv6_traffic_class_step

The amount by which to increment the specified IPv6 traffic class value (-ipv6_traffic_class) for subsequent packets. Possible values range from 01 to FF. The default is 01.

-ipv6_traffic_class_count

Specifies the number of traffic class value in the IPv6 header. The default is 1.

-ipv6_traffic_class_mask

Specifies the data bytes to be modified in the IPv6 traffic class value. The mask size must be the same size as the data. The default is FF.

-ipv6_traffic_class_repeat_count

Specifies the number of times to repeat the same IPv6 traffic class value. The default is 0.

-ipv6_src_outer_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same source IPv6 address for a stream in the outer header. Possible values range from 1 to 2147483647. The default is 1.

-ipv6_dst_outer_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same destination IPv6 address for a stream in the outer header. Possible values range from 1 to 2147483647. The default is 1.

-ipv6_outer_src_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the outer source IPv6 address of the first generated packet. The default is fe80:0:0:0:0:0:0:12. You must specify IPv6 in the -l3_outer_protocol argument.

-ipv6_outer_dst_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the outer destination IPv6 address of the first generated packet. The default is fe80:0:0:0:0:0:0:22. You must specify IPv6 in the -l3_outer_protocol argument.

-ipv6_outer_gateway_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the IPv6 gateway address in the outer IPv6 header. The value must be in IPv6 format. You must specify IPv6 in the -l3_outer_protocol argument.

-ipv6_outer_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the 2-byte payload length field in the outer IPv6 header. Possible values range from 0 to 65535. The default is 128. You must specify IPv6 in the -l3_outer_protocol argument.

-ipv6_outer_hop_limit

Spirent Extension (for Spirent HLTAPI only).

Specifies the hop limit field in the outer IPv6 header. Possible values range from 0 to 255. The default is 64. You must specify IPv6 in the -l3_outer_protocol argument.

-ipv6_outer_traffic_class

Spirent Extension (for Spirent HLTAPI only).

The traffic class field in the IPv6 header, which is an eight-bit field that describes the packet’s priority. This value is used at the application layer. Possible values range from 0 to 255. The default is 0.

-ipv6_outer_flow_label

Spirent Extension (for Spirent HLTAPI only).

Specifies the flow label value in the outer IPv6 header. Possible values range from 0 to 1048575. The default is 0. You must specify IPv6 in the -l3_outer_protocol argument.

-ipv6_outer_next_header

Spirent Extension (for Spirent HLTAPI only).

Specifies the next header field in the outer IPv6 header. Possible values range from 0 to 255. The default is 59. You must specify IPv6 in the -l3_outer_protocol argument.

-l2_encap

Identifies the type of Layer 2 encapsula tion. Possible values are described below:

ethernet_ii              - Ethernet II
ethernet_ii_vlan         - Ethernet II with VLAN tag(s)
ethernet_ii_unicast_mpls - Ethernet II with MPLS header
ethernet_ii_vlan_mpls    - Ethernet II with VLAN tag(s) and MPLS header
atm_vc_mux               - ATM with encapsulation type set to
                           Virtual Circuit Multiplexing (VC_MUX).
                           You can specify this option on an ATM
                           card.
ethernet_8022             - Ethernet 802.2
ethernet_8022_vlan        - Ethernet 802.2 with VLAN
                           tag(s).
ethernet_ii_pppoe         - Ethernet II with PPPoE
ethernet_ii_vlan_pppoe    - Ethernet II with a single VLAN tag
                           and PPPoE
ethernet_ii_qinq_pppoe    - Ethernet II with dual VLAN tags and
                           PPPoE
ethernet_8023_snap        - Ethernet 802.3 with 802.2 and SNAP header
ethernet_8023_snap_vlan   - Ethernet 802.3 with 802.2 and SNAP header
                           and VLAN tag(s).
ethernet_8023_raw         - Ethernet 802.3 Raw
ethernet_8023_raw_vlan    - Ethernet 802.3 Raw with VLAN tag(s)
ethernet_8023_mac_control - Ethernet 802.3 MAC Control

The default value is ethernet_ii.

Note

  1. ethernet_ii_vlan, ethernet_8022_vlan ethernet_8023_snap_vlan, ethernet_8023_raw_vlan and ethernet_ii_vlan_mpls support VLAN tagging on Ethernet networks. If you use the -vlan_* arguments, a single VLAN sub-interface will be defined; If you use -vlan_* and -vlan_id_outer_* arguments, both inner and outer VLAN headers will be created.
  2. ethernet_ii_unicast_mpls and ethernet_ii_vlan_mpls support adding MPLS header in raw streams. If you use -mpls_* to define an MPLS header, you must set the L2 encapsulation type to ethernet_ii_unicast_mpls.
  3. When you set the L2 encapsulation type to atm_vc_mux, the -vci_* and -vpi_* arguments are available.
  4. LACP headers are only available when you set ethernet_ii for the L2 encapsulation type.
  5. To configure PPPoE traffic, you must set the value of -l2_encap to one of these options: ethernet_ii_pppoe, ethernet_ii_vlan_pppoe, ethernet_ii_qinq_pppoe. To establish PPPoE traffic: use -ppp_link_traffic_src_list to specify the handle from which to retrieve the source address, or use -downstream_traffic_src_list to specify the handle from which to get the destination address. Both -ppp_link_traffic_src_list and -downstream_traffic_src_list handles are returned from sth::pppox_config. Make sure the PPPoE sessions are successfully connected before establishing the traffic.
-lacp_subtype

Spirent Extension (for Spirent HLTAPI only).

Specifies the Subtype field for the LACP header

Values: 01 (LACP), 02 (Marker)

Default: 01

-lacp_version

Spirent Extension (for Spirent HLTAPI only).

Specifies the LACP Version field

Values: integer

Default: 01

-lacp_actor_info

Spirent Extension (for Spirent HLTAPI only).

Specifies the Actor Information field for the LACP header

Values:

01 Actor Information 02 Partner Information 03 Collector Information 00 Terminator

Default:01

-lacp_actor_info_len

Spirent Extension (for Spirent HLTAPI only).

Specifies the Actor Information Length field for the LACP header

Values: integer

Default: 20

-lacp_actor_sys_pri

Spirent Extension (for Spirent HLTAPI only).

Specifies the Actor System Priority field for the LACP header

Values: integer

Default: 0001

-lacp_actor_sys_id

Spirent Extension (for Spirent HLTAPI only).

Specifies the Actor System ID field for the LACP header

Values: MAC

Default: 00:00:00:00:00:01

-lacp_actor_key

Spirent Extension (for Spirent HLTAPI only).

Specifies the Actor Operational Key field for the LACP header

Values: integer

Default: 0001

-lacp_actor_port_pri

Spirent Extension (for Spirent HLTAPI only).

Specifies the Actor Port Priority field for the LACP header

Values: integer

Default: 0001

-lacp_actor_port

Spirent Extension (for Spirent HLTAPI only).

Specifies the port number assigned to the actor

Values: integer

Default: 0001

-lacp_actor_state

Spirent Extension (for Spirent HLTAPI only).

Specifies the Actor State field for the LACP header

Values: integer

Default: 00

-lacp_actor_reserved

Spirent Extension (for Spirent HLTAPI only).

Specifies the Actor Reserved bits for the LACP header

Values: Octet string

Default: 000000

-lacp_partner_info

Spirent Extension (for Spirent HLTAPI only).

Specifies Partner Information field for the LACP header

Values:

01      Actor Information
02      Partner Information
03      Collector Information
00      Terminator

Default:02

-lacp_partner_info_len

Spirent Extension (for Spirent HLTAPI only).

Specifies the Partner Information Length field for the LACP header

Values: integer

Default: 20

-lacp_partner_sys_pri

Spirent Extension (for Spirent HLTAPI only).

Specifies the Partner System Priority for the LACP header

Values: integer

Default: 0001

-lacp_partner_sys_id

Spirent Extension (for Spirent HLTAPI only).

Specifies the Partner System ID field, encoded as a MAC address

Values: MAC

Default: 00:00:00:00:00:01

-lacp_partner_key

Spirent Extension (for Spirent HLTAPI only).

Specifies the Partner Operational Key field for the LACP header

Values: integer

Default: 0001

-lacp_partner_port_pri

Spirent Extension (for Spirent HLTAPI only).

Specifies the Partner Port Priority field for the LACP header

Values: integer

Default: 0001

-lacp_partner_port

Spirent Extension (for Spirent HLTAPI only).

Specifies the port number assigned to the actor

Values: integer

Default: 0001

-lacp_partner_state

Spirent Extension (for Spirent HLTAPI only).

Specifies the Partner State field for the LACP header

Values: integer

Default: 00

-lacp_partner_reserved

Spirent Extension (for Spirent HLTAPI only).

Specifies the Partner Reserved bits for the LACP header

Values: integer

Default: 000000

-lacp_collector_info

Spirent Extension (for Spirent HLTAPI only).

Specifies the Collector Information field for the LACP header

Values:

01 Actor Information 02 Partner Information 03 Collector Information 00 Terminator

Default: 03

-lacp_collector_info_len

Spirent Extension (for Spirent HLTAPI only).

Specifies the Collector Information Length field for the LACP header

Values: integer

Default: 16

-lacp_collector_state

Spirent Extension (for Spirent HLTAPI only).

Specifies the Collector State field for the LACP header

Values: integer

Default: 00

-lacp_collector_max_delay

Spirent Extension (for Spirent HLTAPI only).

Specifies the Collector Maximum Delay field for the LACP header

Values: integer

Default: 32768

-lacp_collector_reserved

Spirent Extension (for Spirent HLTAPI only).

Specifies the Collector Reserved bits for the LACP header

Values: Octet string

Default: 24 zeroes

-lacp_terminator_info

Spirent Extension (for Spirent HLTAPI only).

Specifies the Terminator Information field for the LACP header

Values:

01 Actor Information 02 Partner Information 03 Collector Information 00 Terminator

Default: 04

-lacp_terminator_info_len

Specifies the Terminator Information Length field for the LACP header

Values: integer

Default: 20

-lacp_terminator_reserved

Spirent Extension (for Spirent HLTAPI only).

Specifies the Collector Reserved bits for the LACP header

Values: hex

Default: 100 zeroes

-eth_pause_dst_mac

Specifies the MAC address of the destination interface

Values: macaddr

Default: 01:80:C2:00:00:01

-eth_pause_len_type

Specifies the Type of the ethernet pause header

Values: octet string

Default: 8808

-eth_pause_name

Specifies the text name for the object. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-eth_pause_opcode

Specifies the Pause frame operation code (Opcode)

Values: octet string

Default: 0001

-eth_pause_params

Specifies the Pause frame params

Values: octet string

Default: 0000

-eth_pause_preamble

Specifies the preamble field of the ethernet pause header

Values: octet string

Default: 55555555555555d5

-eth_pause_reserved

Specifies the reserved field of the ethernet pause header

Values: octet string

Default: 00000000

-eth_pause_src_mac

Specifies the MAC address of the source interface

Values: MACADDR

Default: 00:00:01:00:00:03

-lldp_chassis_id_length

Specifies the chassis id length of lldp header

Values: integer

Default: 0

-lldp_chassis_id_name

Specifies the text name for the object. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_chassis_id_type

Specifies the chassis id type of lldp header

Values: integer

Default: 1

-lldp_chassis_id_custom_id

Specifies the chassis custom id of lldp header

Values: octet string

Default: 00

-lldp_chassis_id_custom_name

Specifies the text name for the object. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_chassis_id_custom_subtype

Specifies the chassis component id custom subtype of lldp header

Values: octet string

Default: 00

-lldp_chassis_id_chassis_component_id

Specifies the chassis component id of lldp header

Values: ASCII

Default: SPIRENT

-lldp_chassis_id_chassis_component_name

Specifies the text name for the object. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_chassis_id_chassis_component_subtype

Specifies the chassis component id subtype of lldp header

Values: octet string

Default: 01

Possible Values:

Value Description 01 Chassis Component 02 Interface Alias 03 Port Component 04 MAC Address 05 Network Address 06 Interface Name 07 Locally Assigned
-lldp_chassis_id_interface_alias_id

Specifies the chassis interface alias id of lldp header

Values: ASCII

Default: SPIRENT

-lldp_chassis_id_interface_alias_name

Specifies the name for the object. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_chassis_id_interface_alias_subtype

Specifies the chassis interface alias subtype of lldp header

Values: octet string

Default: 02

-lldp_chassis_id_interface_name_id

Specifies the chassis interface alias subtype of lldp header

Values: ASCII

Default: SPIRENT

-lldp_chassis_id_interface_name_name

Specifies the text name for the object. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_chassis_id_interface_name_subtype

Specifies the chassis interface name subtype of lldp header

Values: octet string

Default: 06

-lldp_chassis_id_locally_assigned_id

Specifies the chassis locally assigned id of lldp header

Values: ASCII

Default: 0

-lldp_chassis_id_locally_assigned_name

Specifies the text name for the object. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_chassis_id_locally_assigned_subtype

Specifies the chassis locally assigned id subtype of lldp header

Values: octet string

Default: 07

-lldp_chassis_id_mac_addr_id

Specifies the chassis mac address of lldp header

Values: MACADDR

Default: 00:00:00:00:00:00

-lldp_chassis_id_mac_addr_name

Specifies the text name for the object. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_chassis_id_mac_addr_subtype

Specifies the chassis mac addr subtype of lldp header

Values: octet string

Default: 04

-lldp_chassis_id_network_addr4_iana

Specifies the chassis network ipv4 address of lldp header

Values: integer

Default: 1

-lldp_chassis_id_network_addr4_id

Specifies the chassis network ipv4 address id of lldp header

Values: IPV4ADDR

Default: 192.168.1.1

-lldp_chassis_id_network_addr4_name

Specifies the text name for the object. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_chassis_id_network_addr4_subtype

Specifies the chassis network ipv4 address subtype of lldp header

Values: octet string

Default: 05

-lldp_chassis_id_network_addr6_iana

Specifies the chassis network ipv6 address of lldp header

Values: integer

Default: 2

-lldp_chassis_id_network_addr6_id

Specifies the chassis network ipv6 address id of lldp header

Values: IPV6ADDR

Default: 2000::

-lldp_chassis_id_network_addr6_name

Specifies the text name for the lldp header: networkAddress6. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_chassis_id_network_addr6_subtype

Specifies the chassis network ipv6 address subtype of lldp header

Values: octet string

Default: 04

-lldp_chassis_id_port_component_id

Specifies the chassis port component id of lldp header

Values: ASCII

Default: SPIRENT

-lldp_chassis_id_port_component_name

Specifies the text name for the lldp header: portComponent. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_chassis_id_port_component_subtype

Specifies the chassis port component subtype of lldp header

Values: octet string

Default: 03

Possible Values:

Value Description 01 Chassis Component 02 Interface Alias 03 Port Component 04 MAC Address 05 Network Address 06 Interface Name 07 Locally Assigned
-lldp_port_id_length

Values: integer

Default: 0

-lldp_port_id_name

Specifies the text name for the lldp header: PortIdTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_port_id_type

Values: integer

Default: 2

-lldp_port_id_agent_circuit_id_id

Values: ASCII

Default: 0000

-lldp_port_id_agent_circuit_id_name

Specifies the text name for the lldp header: pidAgentCircuitID. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_port_id_agent_circuit_id_subtype

Values: octet string

Default: 06

Possible Values:

Value Description 01 Interface Alias 02 Port Component 03 MAC Address 04 Network Address 05 Interface Name 06 Agent Circuit ID 07 Locally Assigned
-lldp_port_id_custom_id

Values: octet string

Default: 00

-lldp_port_id_custom_name

Specifies the text name for the lldp header: pidCustom. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_port_id_custom_subtype

Values: octet string

Default: 00

-lldp_port_id_interface_alias_id

Values: ASCII

Default: SPIRENT

-lldp_port_id_interface_alias_name

Specifies the text name for the lldp header: pidInterfaceAlias. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_port_id_interface_alias_subtype

Values: octet string

Default: 01

Possible Values:

Value Description 01 Interface Alias 02 Port Component 03 MAC Address 04 Network Address 05 Interface Name 06 Agent Circuit ID 07 Locally Assigned
-lldp_port_id_interface_name_id

Values: ASCII

Default: SPIRENT

-lldp_port_id_interface_name_name

Specifies the text name for the lldp header: pidInterfaceName. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_port_id_interface_name_subtype

Values: octet string

Default: 05

Possible Values:

Value Description 01 Interface Alias 02 Port Component 03 MAC Address 04 Network Address 05 Interface Name 06 Agent Circuit ID 07 Locally Assigned
-lldp_port_id_locally_assigned_id

Values: ASCII

Default: 0

-lldp_port_id_locally_assigned_name

Specifies the text name for the lldp header: pidLocallyAssigned. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_port_id_locally_assigned_subtype

Values: octet string

Default: 07

Possible Values:

Value Description 01 Interface Alias 02 Port Component 03 MAC Address 04 Network Address 05 Interface Name 06 Agent Circuit ID 07 Locally Assigned
-lldp_port_id_mac_addr_id

Values: MACADDR

Default: 00:00:00:00:00:00

-lldp_port_id_mac_addr_name

Specifies the text name for the lldp header: pidMacAddress. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_port_id_mac_addr_subtype

Values: octet string

Default: 03

Possible Values:

Value Description 01 Interface Alias 02 Port Component 03 MAC Address 04 Network Address 05 Interface Name 06 Agent Circuit ID 07 Locally Assigned
-lldp_port_id_network_addr4_iana

Values: integer

Default: 1

-lldp_port_id_network_addr4_id

Values: IPV4ADDR

Default: 192.168.1.1

-lldp_port_id_network_addr4_name

Specifies the text name for the lldp header: networkAddress4. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_port_id_network_addr4_subtype

Values: octet string

Default: 04

Possible Values:

Value Description 01 Interface Alias 02 Port Component 03 MAC Address 04 Network Address 05 Interface Name 06 Agent Circuit ID 07 Locally Assigned
-lldp_port_id_network_addr6_iana

Values: integer

Default: 2

-lldp_port_id_network_addr6_id

Values: IPV6ADDR

Default: 2000::

-lldp_port_id_network_addr6_name

Specifies the text name for the lldp header: pidNetworkAddress6. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_port_id_network_addr6_subtype

Values: octet string

Default: 04

Possible Values:

Value Description 01 Interface Alias 02 Port Component 03 MAC Address 04 Network Address 05 Interface Name 06 Agent Circuit ID 07 Locally Assigned
-lldp_port_id_port_component_id

Values: ASCII

Default: SPIRENT

-lldp_port_id_port_component_name

Specifies the text name for the lldp header: pidPortComponent. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_port_id_port_component_subtype

Values: octet string

Default: 02

Possible Values:

Value Description 01 Interface Alias 02 Port Component 03 MAC Address 04 Network Address 05 Interface Name 06 Agent Circuit ID 07 Locally Assigned
-lldp_ttl_length

Values: integer

Default: 2

-lldp_ttl_name

Specifies the text name for the lldp header: TimeToLiveTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_ttl_type

Values: integer

Default: 3

-lldp_ttl_ttl

Values: integer

Default: 0

-lldp_end_length

Values: integer

Default: 0

-lldp_end_name

Specifies the text name for the lldp header: EndTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_end_type

Values: integer

Default: 0

-lldp_sys_name_len

Values: integer

Default: 0

-lldp_sys_name_name

Values: ASCII

Default: Spirent Test Center

-lldp_sys_name_type

Values: integer

Default: 5

-lldp_sys_decr_len

Values: integer

Default: 0

-lldp_sys_desc_desc

Values: ASCII

Default: Spirent Test Center

-lldp_sys_desc_type

Values: integer

Default: 6

-lldp_port_desc_len

Values: integer

Default: 0

-lldp_port_desc_desc

Values: ASCII

Default: Spirent Port

-lldp_port_desc_type

Values: integer

Default: 4

-lldp_cust_len

Values: integer

Default: 0

-lldp_cust_value

Values: octet string

Default: “” (empty string)

-lldp_cust_type

Values: integer

Default: 9

-lldp_max_frame_maxframesize

Values: integer

Default: 1518

-lldp_max_frame_len

Values: integer

Default: 0

-lldp_max_frame_oui

Values: octet string

Default: 00120F

-lldp_max_frame_subtype

Values: octet string

Default: 04

-lldp_max_frame_type

Values: integer

Default: 127

-lldp_port_vlan_id_len

Values: integer

Default: 0

-lldp_port_vlan_id_oui

Values: octet string

Default: 0080C2

-lldp_port_vlan_id_portvlanid

Values: octet string

Default: 0001

-lldp_port_vlan_id_subtype

Values: octet string

Default: 01

-lldp_port_vlan_id_type

Values: integer

Default: 127

-lldp_vlan_name_len

Values: integer

Default: 0

-lldp_vlan_name_oui

Values: octet string

Default: 0080C2

-lldp_vlan_name_subtype

Values: octet string

Default: 03

-lldp_vlan_name_type

Values: integer

Default: 127

-lldp_vlan_name_vlan_id

Values: integer

Default: 1

-lldp_vlan_name_vlanname

Values: ASCII

Default: Vlan1

-lldp_vlan_name_vlannamelen

Values: integer

Default: 0

-lldp_protocol_id_len

Values: integer

Default: 0

-lldp_protocol_id_oui

Values: octet string

Default: 0080C2

-lldp_protocol_id_protocolid

Values: octet string

Default: 0000

-lldp_protocol_id_protocolidlen

Values: integer

Default: 0

-lldp_protocol_id_subtype

Values: octet string

Default: 04

-lldp_protocol_id_type

Values: integer

Default: 127

-lldp_org_spec_len

Values: integer

Default: 0

-lldp_org_spec_oui

Values: octet string

Default: 000000

-lldp_org_spec_subtype

Values: octet string

Default: 00

-lldp_org_spec_type

Values: integer

Default: 127

-lldp_org_spec_value

Values: octet string

Default: 00

-lldp_dcbx_tlvt1_len

Values: integer

Default: 0

-lldp_dcbx_tlvt1_oui

Values: octet string

Default: 001B21

-lldp_dcbx_tlvt1_subtype

Values: octet string

Default: 01

-lldp_dcbx_tlvt1_type

Values: integer

Default: 127

-lldp_dcbx_tlvt2_len

Values: integer

Default: 0

-lldp_dcbx_tlvt2_oui

Values: octet string

Default: 001B21

-lldp_dcbx_tlvt2_subtype

Values: octet string

Default: 02

-lldp_dcbx_tlvt2_type

Values: integer

Default: 127

-lldp_pri_based_flow_control_len

Values: integer

Default: 6

-lldp_pri_based_flow_control_mbc

Values: bitstring

Default: 1

-lldp_pri_based_flow_control_oui

Values: octet string

Default: 0080C2

-lldp_pri_based_flow_control_pfc_cap

Values: integer

Default: 0

-lldp_pri_based_flow_control_pfc_enable

Values: bitstring

Default: 00000000

-lldp_pri_based_flow_control_reserved

Values: bitstring

Default: 00

-lldp_pri_based_flow_control_subtype

Values: octet string

Default: 0B

-lldp_pri_based_flow_control_type

Values: integer

Default: 127

-lldp_pri_based_flow_control_willing

Values: bitstring

Default: 1

-lldp_app_pri_len

Values: integer

Default: 0

-lldp_app_pri_oui

Values: octet string

Default: 0080C2

-lldp_app_pri_reserved

Values: bitstring

Default: 00000000

-lldp_app_pri_subtype

Values: octet string

Default: 0C

-lldp_app_pri_type

Values: integer

Default: 127

-lldp_app_pri_app_pri_name

Specifies the text name for the lldp header: AppPriority. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_app_pri_app_pri_priority

Values: integer

Default: 3

-lldp_app_pri_app_pri_protocolid

Values: octet string

Default: 8906

-lldp_app_pri_app_pri_reserved

Values: bitstring

Default: 00

-lldp_app_pri_app_pri_sel

Values: integer

Default: 0

-lldp_niv_support_len

Values: integer

Default: 4

-lldp_niv_support_oui

Values: octet string

Default: 000142

-lldp_niv_support_subtype

Values: octet string

Default: 04

-lldp_niv_support_type

Values: integer

Default: 127

-lldp_sys_cap_len

Values: integer

Default: 4

-lldp_sys_cap_type

Values: integer

Default: 7

-lldp_enabled_cap_bridge

Values: bitstring

Default: 0

-lldp_enabled_cap_docs_is_cable_dev

Values: bitstring

Default: 0

-lldp_enabled_cap_name

Specifies the text name for the lldp header: enabledCapabilities. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_enabled_cap_other

Values: bitstring

Default: 0

-lldp_enabled_cap_repeater

Values: bitstring

Default: 0

-lldp_enabled_cap_reserved

Values: octet string

Default: 00

-lldp_enabled_cap_router

Values: bitstring

Default: 1

-lldp_enabled_cap_stationonly

Values: bitstring

Default: 0

-lldp_enabled_cap_telephone

Values: bitstring

Default: 0

-lldp_enabled_cap_wlan_access_point

Values: bitstring

Default: 0

-lldp_system_cap_bridge

Values: bitstring

Default: 0

-lldp_system_cap_docs_is_cable_dev

Values: bitstring

Default: 0

-lldp_system_cap_name

Specifies the text name for name for the lldp header: systemCapabilities. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_system_cap_other

Values: bitstring

Default: 0

-lldp_system_cap_repeater

Values: bitstring

Default: 0

-lldp_system_cap_reserved

Values: octet string

Default: 00

-lldp_system_cap_router

Values: bitstring

Default: 1

-lldp_system_cap_stationonly

Values: bitstring

Default: 0

-lldp_system_cap_telephone

Values: bitstring

Default: 0

-lldp_system_cap_wlan_access_point

Values: bitstring

Default: 0

-lldp_mgn_addr_if_num

Values: integer

Default: 0

-lldp_mgn_addr_if_num_sub_type

Values: octet string

Default: 01

Possible Values:

Value  Description
01             Unknown
02             IfIndex
03             SystemPortNumber
-lldp_mgn_addr_len

Values: integer

Default: 0

-lldp_mgn_addr_mgn_addr_len

Values: integer

Default: 0

-lldp_mgn_addr_oid

Values: octet string

Default: “” (empty string)

-lldp_mgn_addr_oid_len

Values: integer

Default: 0

-lldp_mgn_addr_type

Values: integer

Default: 8

-lldp_mgn_addr_cust_addr_sub_type

Values: octet string

Default: 00

Possible Values:

Value Description 00 Other 01 IPv4 02 IPv6 03 nsap 04 hdlc 05 bbn1822 06 All 802 07 e163 08 e164 09 f69 0A x121 0B IPX 0C Apple Talk 0D DEC Net IV 0E Banyan Vines 0F E164 with NSAP 10 DNS 11 Distinguished Name 12 AS Number 13 XTP over IPv4 14 XTP over IPv6 15 XTP native mode XTP 16 Fibre Channel WWPN 17 Fibre Channel WWNN 18 Gateway Identifier 19 AFI
-lldp_mgn_addr_cust_addr_mgn_addr

Values: octet string

Default: “” (empty string)

-lldp_mgn_addr_ipv4_addr_sub_type

Values: octet string

Default: 00

Possible Values:

Value Description 00 Other 01 IPv4 02 IPv6 03 nsap 04 hdlc 05 bbn1822 06 All 802 07 e163 08 e164 09 f69 0A x121 0B IPX 0C Apple Talk 0D DEC Net IV 0E Banyan Vines 0F E164 with NSAP 10 DNS 11 Distinguished Name 12 AS Number 13 XTP over IPv4 14 XTP over IPv6 15 XTP native mode XTP 16 Fibre Channel WWPN 17 Fibre Channel WWNN 18 Gateway Identifier 19 AFI
-lldp_mgn_addr_ipv4_addr_mgn_addr
Values: IPV4ADDR

Default: “” (empty string)

-lldp_mgn_addr_ipv6_addr_sub_type

Values: octet string

Default: 02 Possible Values:

Value   Description
00          Other
01          IPv4
02          IPv6
03          nsap
04          hdlc
05          bbn1822
06          All 802
07          e163
08          e164
09          f69
0A          x121
0B          IPX
0C          Apple Talk
0D          DEC Net IV
0E          Banyan Vines
0F          E164 with NSAP
10          DNS
11          Distinguished Name
12          AS Number
13          XTP over IPv4
14          XTP over IPv6
15          XTP native mode XTP
16          Fibre Channel WWPN
17          Fibre Channel WWNN
18          Gateway Identifier
19          AFI
-lldp_mgn_addr_ipv6_addr_mgn_addr
Values: IPV6ADDR

Default: “” (empty string)

-lldp_mac_phy_config_status_len

Values: integer

Default: 0

-lldp_mac_phy_config_status_op_mau_type

Values: octet string

Default: 0000

Possible Values:

Value Description 0000 Other 0001 AUI 0002 10Base5 0003 FOIRL 0004 10Base2 0005 10BaseT 0006 10BaseFP 0007 10BaseFB 0008 10BaseFL 0009 10Broad36 000A 10BaseTHD 000B 10BaseTFD 000C 10BaseFLHD 000D 10BaseFLFD 000E 10BaseT4 000F 100BaseTXHD 0010 100BaseTXFD 0011 100BaseFXFD 0012 100BaseFXFD 0013 100BaseT2HD 0014 100BaseT2FD 0015 1000BaseTXHD 0016 1000BaseTXFD 0017 1000BaseLXHD 0018 1000BaseLXFD 0019 1000BaseSXHD 001A 1000BaseSXFD 001B 1000BaseCXHD 001C 1000BaseCXFD 001D 1000BaseTHD 001E 1000BaseTFD 001F 10GigBaseX 0020 10GigBaseLX4 0021 10GigBaseR 0022 10GigBaseER 0023 10GigBaseLR 0024 10GigBaseSR 0025 10GigBaseW 0026 10GigBaseEW 0027 10GigBaseLW 0028 10GigBaseSW
-lldp_mac_phy_config_status_oui

Values: octet string

Default: 00120F

-lldp_mac_phy_config_status_subtype

Values: octet string

Default: 01

-lldp_mac_phy_config_status_type

Values: integer

Default: 127

-lldp_auto_neg_adv_cap_b1000baset

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_b1000basetfd

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_b1000basex

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_b1000basexfd

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_b100baset2

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_b100baset2fd

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_b100baset4

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_b100basetx

Values: bitstring

Default: 1

-lldp_auto_neg_adv_cap_b100basetxfd

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_b10baset

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_b10basetfd

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_bfdxa_pause

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_bfdxb_pause

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_bfdx_pause

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_other

Values: bitstring

Default: 0

-lldp_auto_neg_adv_cap_name

Specifies the text name for the lldp header: autoNegotiationAdvertisedCapability. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_auto_neg_sup_and_stat_auto_neg_enabled

Values: bitstring

Default: 0

-lldp_auto_neg_sup_and_stat_auto_neg_supported

Values: bitstring

Default: 0

-lldp_auto_neg_sup_and_stat_name

Specifies the text name for the lldp header: autoNegotiationSupportAndStatus. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_auto_neg_sup_and_stat_reserved

Values: bitstring

Default: 000000

-lldp_pow_via_mdi_len

Values: integer

Default: 0

-lldp_pow_via_mdi_oui

Values: octet string

Default: 00120F

-lldp_pow_via_mdi_name

Specifies the text name for the lldp header: PowerViaMdiTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_pow_via_mdi_pse_pow_class

Values: octet string

Default: 1

Possible Values:

Value Description 01 Class 1 02 Class 2 03 Class 3 04 Class 4 05 Class 5
-lldp_pow_via_mdi_pse_pow_pairs

Values: octet string

Default: 1

Possible Values:

Value Description 01 Signal 02 Spare
-lldp_pow_via_mdi_subtype

Values: octet string

Default: 02

-lldp_pow_via_mdi_type

Values: integer

Default: 127

-lldp_mdi_pow_sup_name

Specifies the text name for the lldp header: mdiPowerSupport. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_mdi_pow_sup_port_class

Values: bitstring

Default: 0

-lldp_mdi_pow_sup_pse_mdi_pow_state

Values: bitstring

Default: 0

-lldp_mdi_pow_sup_pse_mdi_pow_support

Values: bitstring

Default: 0

-lldp_mdi_pow_sup_pse_pairs_ctl_ability

Values: bitstring

Default: 0

-lldp_mdi_pow_sup_reserved

Values: bitstring

Default: 0000

Values: integer

Default: 0

Values: octet string

Default: 00120F

Specifies the text name for the lldp header: LinkAggregationTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

Values: octet string

Default: 03

Values: integer

Default: 127

Values: octet string

Default: 0000000E

-lldp_agg_stat_agg_cap

Values: bitstring

Default: 1

-lldp_agg_stat_agg_status

Values: bitstring

Default: 1

-lldp_agg_stat_name

Specifies the text name for the lldp header: aggregationStatus under LinkAggregationTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_agg_stat_reserved

Values: bitstring

Default: 000000

-lldp_port_and_pro_vlanid_len

Values: integer

Default: 0

-lldp_port_and_pro_vlanid_oui

Values: octet string

Default: 0080C2

-lldp_port_and_pro_vlanid_name

Specifies the text name for the lldp header: PortAndProtocolVlanIdTlv. This attribute is required when you use stream block odifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_port_and_pro_vlanid_subtype

Values: octet string

Default: 02

-lldp_port_and_pro_vlanid_type

Values: integer

Default: 127

-lldp_port_and_pro_vlanid_vlanid

Values: octet string

Default: 0000

-lldp_flags_name

Specifies the text name for the lldp header: flags under PortAndProtocolVlanIdTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_flags_port_and_pro_vlan_enabled

Values: bitstring

Default: 1

-lldp_flags_port_and_pro_vlan_support

Values: bitstring

Default: 1

-lldp_flags_reserved

Values: bitstring

Default: 0

-lldp_ets_conf_cbs

Values: bitstring

Default: 1

-lldp_ets_conf_len

Values: integer

Default: 25

-lldp_ets_conf_max_tcs

Values: integer

Default: 0

-lldp_ets_conf_name

Specifies the text name for the lldp header: ETSConfigurationTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_ets_conf_oui

Values: octet string

Default: 0080C2

-lldp_ets_conf_reserved

Values: bitstring

Default: 000

-lldp_ets_conf_subtype

Values: octet string

Default: 09

-lldp_ets_conf_type

Values: integer

Default: 127

-lldp_ets_conf_willing

Values: bitstring

Default: 1

-lldp_ets_conf_pri_assign_name

Specifies the text name for the lldp header: priorityAssignment under ETSConfigurationTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_ets_conf_pri_assign_pri_0

Values: integer

Default: 0

-lldp_ets_conf_pri_assign_pri_1

Values: integer

Default: 0

-lldp_ets_conf_pri_assign_pri_2

Values: integer

Default: 0

-lldp_ets_conf_pri_assign_pri_3

Values: integer

Default: 0

-lldp_ets_conf_pri_assign_pri_4

Values: integer

Default: 0

-lldp_ets_conf_pri_assign_pri_5

Values: integer

Default: 0

-lldp_ets_conf_pri_assign_pri_6

Values: integer

Default: 0

-lldp_ets_conf_pri_assign_pri_7

Values: integer

Default: 0

-lldp_ets_conf_tc_bw_name

Specifies the text name for the lldp header: tcBandwidth. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_ets_conf_tc_bw_tc_percent_0

Values: integer

Default: 0

-lldp_ets_conf_tc_bw_tc_percent_1

Values: integer

Default: 0

-lldp_ets_conf_tc_bw_tc_percent_2

Values: integer

Default: 0

-lldp_ets_conf_tc_bw_tc_percent_3

Values: integer

Default: 0

-lldp_ets_conf_tc_bw_tc_percent_4

Values: integer

Default: 0

-lldp_ets_conf_tc_bw_tc_percent_5

Values: integer

Default: 0

-lldp_ets_conf_tc_bw_tc_percent_6

Values: integer

Default: 0

-lldp_ets_conf_tc_bw_tc_percent_7

Values: integer

Default: 0

-lldp_ets_conf_tsa_assign_name

Specifies the text name for the lldp header: tsaAssign. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_ets_conf_tsa_assign_traffic_class_0

Values: integer

Default: 0

-lldp_ets_conf_tsa_assign_traffic_class_1

Values: integer

Default: 0

-lldp_ets_conf_tsa_assign_traffic_class_2

Values: integer

Default: 0

-lldp_ets_conf_tsa_assign_traffic_class_3

Values: integer

Default: 0

-lldp_ets_conf_tsa_assign_traffic_class_4

Values: integer

Default: 0

-lldp_ets_conf_tsa_assign_traffic_class_5

Values: integer

Default: 0

-lldp_ets_conf_tsa_assign_traffic_class_6

Values: integer

Default: 0

-lldp_ets_conf_tsa_assign_traffic_class_7

Values: integer

Default: 0

-lldp_ets_recommend_len

Values: integer

Default: 25

-lldp_ets_recommend_name

Specifies the text name for the lldp header: ETSRecommendationTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_ets_recommend_oui

Values: octet string

Default: 0080C2

-lldp_ets_recommend_reserved

Values: bitstring

Default: 00000000

-lldp_ets_recommend_subtype

Values: octet string

Default: 0A

-lldp_ets_recommend_type

Values: integer

Default: 127

-lldp_ets_recommend_pri_assign_name

Specifies the text name for the lldp header: priorityAssignment. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_ets_recommend_pri_assign_pri_0

Values: integer

Default: 0

-lldp_ets_recommend_pri_assign_pri_1

Values: integer

Default: 0

-lldp_ets_recommend_pri_assign_pri_2

Values: integer

Default: 0

-lldp_ets_recommend_pri_assign_pri_3

Values: integer

Default: 0

-lldp_ets_recommend_pri_assign_pri_4

Values: integer

Default: 0

-lldp_ets_recommend_pri_assign_pri_5

Values: integer

Default: 0

-lldp_ets_recommend_pri_assign_pri_6

Values: integer

Default: 0

-lldp_ets_recommend_pri_assign_pri_7

Values: integer

Default: 0

-lldp_ets_recommend_tc_bw_name

Specifies the text name for the lldp header: tcBandwidth under ETSRecommendationTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_ets_recommend_tc_bw_tc_percent_0

Values: integer

Default: 0

-lldp_ets_recommend_tc_bw_tc_percent_1

Values: integer

Default: 0

-lldp_ets_recommend_tc_bw_tc_percent_2

Values: integer

Default: 0

-lldp_ets_recommend_tc_bw_tc_percent_3

Values: integer

Default: 0

-lldp_ets_recommend_tc_bw_tc_percent_4

Values: integer

Default: 0

-lldp_ets_recommend_tc_bw_tc_percent_5

Values: integer

Default: 0

-lldp_ets_recommend_tc_bw_tc_percent_6

Values: integer

Default: 0

-lldp_ets_recommend_tc_bw_tc_percent_7

Values: integer

Default: 0

-lldp_ets_recommend_tsa_assign_name

Specifies the text name for the lldp header: tsaAssign under ETSRecommendationTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_ets_recommend_tsa_assign_traffic_class_0

Values: integer

Default: 0

-lldp_ets_recommend_tsa_assign_traffic_class_1

Values: integer

Default: 0

-lldp_ets_recommend_tsa_assign_traffic_class_2

Values: integer

Default: 0

-lldp_ets_recommend_tsa_assign_traffic_class_3

Values: integer

Default: 0

-lldp_ets_recommend_tsa_assign_traffic_class_4

Values: integer

Default: 0

-lldp_ets_recommend_tsa_assign_traffic_class_5

Values: integer

Default: 0

-lldp_ets_recommend_tsa_assign_traffic_class_6

Values: integer

Default: 0

-lldp_ets_recommend_tsa_assign_traffic_class_7

Values: integer

Default: 0

-lldp_congest_notify_cnpv_cap

Values: bitstring

Default: 00000000

-lldp_congest_notify_cnpv_ready

Values: bitstring

Default: 00000000

-lldp_congest_notify_len

Values: integer

Default: 6

-lldp_congest_notify_name

Specifies the text name for the lldp header: CongestionNotificationTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_congest_notify_oui

Values: octet string

Default: 0080C2

-lldp_congest_notify_subtype

Values: octet string

Default: 8

-lldp_congest_notify_type

Values: integer

Default: 127

-lldp_evb_mode

Values: EvbModes

Default: 2

Possible Values:

Value Description 0 Not Supported 1 EVB Bridge 2 EVB Station
-lldp_evb_len

Values: integer

Default: 0

-lldp_evb_name

Specifies the text name for the lldp header: EvbTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_evb_oui

Values: octet string

Default: 0080C2

-lldp_evb_r

Values: integer

Default: 3

-lldp_evb_reserved

Values: bitstring

Default: 0

-lldp_evb_rka

Values: integer

Default: 20

-lldp_evb_rol_rka

Values: Boolean

Default: 0

Possible Values:

Value Description 0 False 1 True
-lldp_evb_rol_rwd

Values: Boolean

Default: 0

Possible Values:

Value Description 0 False 1 True
-lldp_evb_rte

Values: integer

Default: 20

-lldp_evb_rwd

Values: integer

Default: 20

-lldp_evb_subtype

Values: octet string

Default: 0D

-lldp_evb_type

Values: integer

Default: 127

-lldp_evb_bg_stat_bgid

Values: bitstring

Default: 0

-lldp_evb_bg_stat_name

Specifies the text name for the lldp header: bridgeStatus. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_evb_bg_stat_reserved

Values: bitstring

Default: 0

-lldp_evb_bg_stat_rrcap

Values: bitstring

Default: 0

-lldp_evb_bg_stat_rrctr

Values: bitstring

Default: 0

-lldp_evb_station_stat_name

Specifies the text name for the lldp header: stationStatus. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_evb_station_stat_reserved

Values: bitstring

Default: 0

-lldp_evb_station_stat_rrreq

Values: bitstring

Default: 1

-lldp_evb_station_stat_rrstat

Values: bitstring

Default: 01

-lldp_evb_station_stat_sgid

Values: bitstring

Default: 1

-lldp_cdcp_chn_cap

Values: integer

Default: 1

-lldp_cdcp_len

Values: integer

Default: 0

-lldp_cdcp_name

Specifies the text name for the lldp header: CdcpTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_cdcp_oui

Values: octet string

Default: 0080C2

-lldp_cdcp_reserved_1

Values: bitstring

Default: 000

-lldp_cdcp_reserved_2

Values: bitstring

Default: 000000000000000

-lldp_cdcp_role

Values: integer

Default: 1

Possible Values:

Value Description 0 Bridge 1 Station
-lldp_cdcp_scomp

Values: bitstring

Default: 1

-lldp_cdcp_subtype

Values: octet string

Default: 0E

-lldp_cdcp_type

Values: integer

Default: 127

-lldp_cdcp_scid_vsids_name

Specifies the text name for the lldp header: scidsvids. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_cdcp_scid_svid_name

Specifies the text name for the lldp header: ScidSvid. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_cdcp_scid_svid_scid

Values: integer

Default: 1

-lldp_cdcp_scid_svid_svid

Values: integer

Default: 1

-lldp_aec_add_frag_size

Values: integer

Default: 0

-lldp_aec_len

Values: integer

Default: 6

-lldp_aec_name

Specifies the text name for the lldp header: AECTlv. This attribute is required when you use stream block modifiers such as RangeModifier, RandomModifier, and TableModifier.

Values: string

-lldp_aec_oui

Values: octet string

Default: 00120F

-lldp_aec_preempt_cap_active

Values: integer

Default: 0

-lldp_aec_preempt_cap_status

Values: integer

Default: 0

-lldp_aec_preempt_cap_support

Values: integer

Default: 0

-lldp_aec_reserved

Values:: integer

Default: 0

-lldp_aec_subtype

Values: octet string

Default: 07

-lldp_aec_type

Values: integer

Default: 127

-lsp_ping_version

Values: integer

Default: 1

-lsp_ping_msg_type

Values: integer

Default: 1

Possible Values:

Value      Description
1      MPLS Echo Request
2      MPLS Echo Reply
-lsp_ping_reply_mode

Values: integer

Default: 2

Possible Values:

Value      Description
1      Do not reply
2      Reply via an IPv4/IPv6 UDP Packet
3      Reply via an IPv4/IPv6 UDP Packet with Router Alert
4      Reply via application level control channel
-lsp_ping_rsrvd

Values: bitstring

Default: 000000000000000

-lsp_ping_rtn_code

Values: integer

Default: 0

-lsp_ping_rtn_subcode

Values: integer

Default: 0

-lsp_ping_seq_num

Values: integer

Default: 1

-lsp_ping_sndr_hdl

Values: integer

Default: 1

-lsp_ping_timestamp_recvd

Values: octet string

Default: 0000000000000000

-lsp_ping_timestamp_sent

Values: octet string

Default: 0000000000000000

-lsp_ping_validate_fec_bit

Values: bitstring

Default: 0

-lsp_pad_tlv_length

Values: integer

Default: 4

-lsp_pad_tlv_option

Values: integer

Default: 1

Possible Values:

Value      Description
1      Drop Pad TLV from reply
2      Copy Pad TLV to reply
-lsp_pad_tlv_pad_val

Values: integer

Default: 000000

-lsp_pad_tlv_type

Values: integer

Default: 3

-l3_length

Sets the stream L3 frame size in bytes. To set the frame size, the -length_mode argument must be set to fixed. Possible values range from 44 to 16365. The default is 110. The length of L2 frame is determined by the values of -l2_encap and -l3_length. The valid range for L2 frame length is 62-16383 bytes. The default fixed L2 frame length is 128.

The L2 frame is comprised of these segments if -l2_encap is set to ethernet_ii or ethernet_ii_vlan:

Ethernet II
802.1Q tag (optional)
IPv4/IPv6 packet

The L2 frame is comprised of these segments if -l2_encap is set to ethernet_ii_pppoe, ethernet_ii_vlan_pppoe or ethernet_ii_qinq_pppoe:

Ethernet II
   802.1Q tag (optional)
   PPPoE
   PPP packet
   IPv4/IPv6 packet
-l3_length_max

Sets the maximum L3 frame length in bytes. Use this argument when -length_mode is set to random, increment or decrement. Possible values range from 44 to 16365. The default is 238. The maximum length of L2 frame is determined by the value of -l2_encap and -l3_length_max. The valid range for L2 frame length is 62-16383 bytes. The default maximum L2 frame length is 256.

-l3_length_min

Sets the minimum L3 frame length in bytes. Use this argument when -length_mode is set to random, increment or decrement. Possible values range from 44 to 16365. The default is 110. The minimum length of L2 frame is determined by the value of is 128. -l2_encap and -l3_length_min. The valid range for L2 frame length is 62-16383 bytes. The default minimum L2 length length is 128.

-l3_length_step

Spirent Extension (for Spirent HLTAPI only).

Defines the step by which the L3 frame length increments or decrements when -length_mode is set to increment or decrement.

-l3_imix1_ratio

Specifies the ratio of the first packet size. You can use this argument if -length_mode is imix.

-l3_imix1_size

Specifies the first packet length in bytes. You can use this argument if -length_mode is set to imix.

-l3_imix2_ratio

Specifies the ratio of the second packet length. You can use this argument if -length_mode is set to imix.

-l3_imix2_size

Specifies the second packet length in bytes. You can use this argument if -length_mode is set to imix.

-l3_imix3_ratio

Specifies the ratio of the third packet length. You can use this argument if -length_mode is set to imix.

-l3_imix3_size

Specifies the third packet length in bytes. You can use this argument if -length_mode is set to imix.

-l3_imix4_ratio

Specifies the fourth packet length. You can use this argument if -length_mode is set to imix.

-l3_imix4_size

Specifies the fourth packet length in bytes. You can use this argument if -length_mode is set to imix.

-l3_protocol

Identifies the Layer 3 protocol to use when creating packets. Possible values are IPv4, IPv6, and arp. IPv4 uses 32-bit addresses, generally represented in dotted decimal notation (for example, 10.10.100.1). IPv6 use 128- bit addresses, normally written as eight groups of up to four hexadecimal digits, separated by colons (for example, 1001:0ac8:11a1:02e1:2244:3a2e:8260:6443).

If you specify “arp” as the Layer 3 protocol, you can use the following arguments to configure the traffic: -arp_src_hw_addr, -arp_src_hw_mode, -arp_src_hw_count, -arp_dst_hw_addr,-arp_dst_hw_mode, -arp_dst_hw_count, and -arp_operation. The Address Resolution Protocol (ARP) converts a 32-bit IP address into a 48-bit Ethernet address.

If you specify “arp” as the Layer 3 protocol, use “-ip_src_addr” for the source protocol address and “-ip_dst_addr” for the destination protocol address. Also, only the fixed, increment, and decrement modes are supported in these two arguments when the Layer 3 protocol is arp.

If you specify GRE as the Layer 3 protocol, you can use the following arguments to configure the traffic:

-ck_present, -routing_present, -key_present, -seq_num_present,
-reserved0, -version, -keep_alive_enable, -keep_alive_period, and
-keep_alive_retries.

Note

If you do not specify -l3_protocol, the traffic packets created will not contain any Layer 3 header. You can refer to the examples for more details.

-arp_src_hw_addr

Specifies the MAC address of the sender interface. The sender interface broadcasts an ARP packet to all hosts attached to an Ethernet. The default is 00:00:01:00:00:02. You can use this argument if the Layer 3 protocol (-l3_protocol) is arp.

-arp_src_hw_mode

Specifies the method in which the MAC address of the sender interface is assigned. Possible values are fixed, increment, and decrement. The default is fixed. The step for both increment and decrement is 00:00:00:00:00:01. You can use this argument when -l3_protocol is set to arp.

-arp_src_hw_count

The number of sender MAC addresses to generate for a stream. The default is 1. Possible values range from 1 to 2147483647. You can use this argument when the -l3_protocol is set to arp.

-arp_src_hw_step

The amount by which to increment the specified MAC address of the sender interface (-arp_src_hw_addr). The modifier step is in the format of 00:00:00:00:00:00. You can use this argument when -l3_protocol is set to arp.

-arp_dst_hw_addr

Specifies the MAC address of the target interface. The target interface is the interface with which the sender is interested in communicating. When the sender interface broadcasts a packet containing the IP address of the target interface, the target interface recognizes that the IP address in the packet matches its own and returns an answer to the sender. The default is 00:00:00:00:00:00. You can use this argument if -l3_protocol is set to arp.

-arp_dst_hw_mode

Specifies the method in which the MAC address of the target interface is assigned. Possible values are fixed, increment, and decrement. The default is fixed. The step for both increment and decrement is 00:00:00:00:00:01. You can use this argument if -l3_protocol is set to arp.

-arp_dst_hw_count

The number of target MAC addresses to generate for a stream. The default is 1. You can use this argument if -l3_protocol is set to arp. Possible values range from 1 to 2147483647.

-arp_dst_hw_step

The amount by which to increment the specified MAC address of the target interface (-arp_dst_hw_addr). The modifier step is in the format of 00:00:00:00:00:00. You can use this argument when -l3_protocol is set to arp.

-arp_operation

Defines the operation to be performed by the ARP packet. Possible values are arpRequest, arpReply, rarpRequest, and rarpReply. The default is arpRequest. You can use this argument if -l3_protocol is set to arp. The values are described below:

arpRequest - The ARP packet is sent as an ARP
             Request by the sender interface to the target
             interface.

arpReply - The ARP packet is sent as an ARP Reply
            by the target interface to the sender
            interface.

rarpRequest - The ARP packet is sent as a Reverse
            Address Resolution Protocol (RARP) Request
            by the sender interface to the target
            interface.

            RARP is a Link layer networking protocol
            used by a host computer to obtain its IPv4
            address given only its link-layer address
            (such as an Ethernet address).

rarpReply - The ARP packet is sent as a RARP
            Reply by the target to the sender interface.

Note

Use “-ip_src_addr” for the source protocol address and “ip_dst_addr” for the destination protocol address. Only fixed, increment, and decrement modes are supported in these two arguments when the Layer 3 protocol is arp.

-protocol_addr_len

Specifies the length of the IP address. The sender interface broadcasts an ARP packet to all hosts attached to an Ethernet. The default is 4. You can use this argument if the Layer 3 protocol (-l3_protocol) is arp.

-hardware_addr_len

Specifies the length of the hardware address. The sender interface broadcasts an ARP packet to all hosts attached to an Ethernet. The default is 6. You can use this argument if the Layer 3 protocol (-l3_protocol) is arp.

-ipv6_frag_id

Indicates the identification field in the fragment extension header of an IPv6 stream. You can refer to RFC 2460 for more information. Possible values range from 0 to 4294967295. The default value is 0.

-ipv6_frag_more_flag

M Flag in the fragment extension header. Possible values are 0 and 1. The M flag value set to 0 indicates the fragment is the last one. If not, the M flag value is 1. The default value is 0.

-ipv6_frag_offset

Indicates the Fragment Offset field in the fragment extension header of an IPv6 stream. You can refer to RFC 2460 for details. Possible values range from 0 to 65535. The default value is 0.

-ipv6_auth_seq_num

Specifies the sequence counter for the authentication header (AH). You can refer to RFC 2402 for more information. Possible values range from 0 to 4294967295. The default value is 0. You can use this argument only when authentication is indicated in the -ipv6_extension_header argument.

-ipv6_auth_spi

Indicates the Security Parameter Index (SPI) associated with the authentication header. The SPI, in combination with the destination IP address and security protocol, uniquely identifies the Security Association for this datagram. You can refer to RFC 2402 for more details. Possible values range from 0 to 4294967295. The value format must be an integer. The default value is 0. You can specify this argument only when authentication is indicated in -ipv6_extension_header.

-ipv6_auth_payload_len

Indicates the length of the authentication data. Possible values range from 0 to 4294967295. This argument is available only when authentication is indicated in -ipv6_extension_header.

Note

This argument is designed for the availability of previous scripts. In fact, the authentication length value will be automatically calculated.

-ipv6_auth_string

The value of this argument is a variable length string containing the packet Integrity Check Value (ICV). ICV is a checksum capable of detecting modification of an information system and is the result of the integrity process. The value must be a 32-bit hexadecimal value. It can be separated by “:” or “.”. The default value is 00:00:00:00.

-ipv6_routing_res

Indicates a 32-bit reserved field. This argument is available when routing is indicated in the -ipv6_extension_header argument. The value must be a 16-bit hexadecimal value. It can be separated by “:” or “.”. The default value is 0:0:0:0. You can refer to RFC 2460 for more details.

-ipv6_routing_type

Specifies the IPv6 routing type. This argument is available when routing is indicated in the -ipv6_extension_header argument. The default value is 0.

-ipv6_routing_next_header

Specifies the IPv6 routing next header. This argument is available when routing is indicated in the -ipv6_extension_header argument. The default value is 59.

-ipv6_routing_length

Specifies the IPv6 routing header length. This argument is available when routing is indicated in the -ipv6_extension_header argument. The default value is 0.

-ipv6_routing_seg_left

Specifies the IPv6 routing segment left. This argument is available when routing is indicated in the -ipv6_extension_header argument. The default value is 0.

-ipv6_routing_node_list

Specifies a list of 128-bit IPv6 addresses. The list indicates one or more intermediate nodes to be “visited” on the way to a packet’s destination. This argument is available when routing is indicated in the -ipv6_extension_header argument.

-ipv6_destination_options

Determines what will be included in the “Destination options” field. This option will present a list of keys as described below: :

type

Indicates the type of IPv6 Destination options to be added. This attribute is Mandatory . Possible values are listed below:

pad1 - Indicates the Pad1 option that is used to insert one
     octet of padding into the Options area of a header.

padn - Indicates the Padn option that is used to insert two or
       more octets of padding into the Options area of a
       header. When "-ipv6_destination_options type: padn" is
       indicated, you can specify the value and the length
       options of the -ipv6_destination_options argument.

Here is an example:

set returnedString [sth::traffic_config\
     -mode create\
     -port_handle $tgen1_port\
     -l3_protocol ipv6\
     -ipv6_extension_header "destination " \
     -ipv6_src_addr "2009::1" \
     -ipv6_dst_addr "2009::9" \
     -ipv6_destination_options  "type: padn length:5
                                 value: c:c"\

     ]
length
Specifies the length value for the IPv6 Destination options. Possible values range from 0 to 255.
value
Specifies the value for the IPv6 Destination options. The value must be a 8-bit hexadecimal value. It can be separated by “:” or “.”. The default value is 0:0.
-ipv6_hop_by_hop_options

Determines what will be included in the “Hop-by-Hop options” field. This option will present a list of keysas described below:

type

Indicates the type of IPv6 Hop-by-Hop options to be added. This attribute is Mandatory . Possible values for the type field are listed below:

pad1 - Indicates the Pad1 option that is used to insert one
       octet of padding into the Options area of a header.

padn - Specifies the PadN option that is used to insert two
       or more octets of padding into the Options area of
       a header. When you specify "-ipv6_hop_by_hop_options
       type: padn", the length and the value arguments of
       -ipv6_hop_by_hop_options are available.

jumbo - Indicates the jumbo payload option field of the
      Hop-by-Hop options. The jumbo payload option allows
      transmission of IPv6 packets with payloads between
      65536 and 4294967295 octets in length. Packets with
      such long payloads are commonly referred to as
      "jumbograms". You can refer to RFC 2675 for more
       details.

      When you specify "-ipv6_hop_by_hop_options type:
      jumbo", the length and he payload arguments of
      -ipv6_hop_by_hop_options are available.

router_alert - Indicates the router alert option within the
     IPv6 Hop-by-Hop Header. The presence of this option
     IPv6 datagram informs the router that the contents of
     in an this datagram is of interest to the router and
     to handle any control data accordingly. The absence of
     this option in an IPv6 datagram informs the router that
     the datagram does not contain information needed by the
     router and hence can be safely routed without further
     datagram parsing. You can refer to RFC 2711 for more
     details.

     When you specify "-ipv6_hop_by_hop_options type::
     router_alert", you can use the alert_type argument.

Here is an example::

    set returnedString [sth::traffic_config\
         -mode create\
         -port_handle $tgen1_port\
         -l3_protocol ipv6\
         -ipv6_extension_header "hop_by_hop" \
         -ipv6_src_addr "2009::1" \
         -ipv6_dst_addr "2009::9" \
         -ipv6_hop_by_hop_options "type: router_alert
              length:55 alert_type: active_net" \
     ]

custom - Indicates the custom option within the
     IPv6 Hop-by-Hop Header.

     When you specify -ipv6_hop_by_hop_options type: custom,
     you can use the custom_type and data arguments.
     Here data must be a 8-bit hexadecimal value and custom_type
     should be an integer.

Here is an example::

    set returnedString [sth::traffic_config\
         -mode create\
         -port_handle $tgen1_port\
         -l3_protocol ipv6\
         -ipv6_extension_header "hop_by_hop" \
         -ipv6_src_addr "2009::1" \
         -ipv6_dst_addr "2009::9" \
         -ipv6_hop_by_hop_options "type: custom
              data: 70 custom_type: 15" \
     ]
length
Specifies the length value for the IPv6 Hop-by-Hop option. Possible values range from 0 to 255.
value
Specifies the value for the IPv6 Hop-by-Hop options. The value must be a 8-bit hexadecimal value. It can be separated by “:” or “.”. The default value is 0:0.
payload
Specifies the payload for the IPv6 Hop-by-Hop option. Possible values range from 0 to 65535.
alert_type
Specifies the type of router alert to be included in the packet. Possible values are mld, rsvp, and active_net.
-ipv6_extension_header

Indicates the type of the next extension header. Possible values are listed below. You can specify one or more choices in the list below: :

none
There is no next header.
hop_by_hop
Next header has Hop-by-Hop Options. The Hop-by-Hop Options header is used to carry optional information that must be examined by every node along a packet’s delivery path.
routing
Next header has routing options. The Routing header is used by an IPv6 source to list one or more intermediate nodes to be “visited” on the way to a packet’s destination.
destination
Next header has destination options. The Destination Options header is used to carry optional information that needs be examined only by a packet’s destination node(s).
authentication
Next header has a Internet Protocol Security (IPSEC) AH.
fragment

Payload is a fragment. The Fragment header is used by an IPv6 source to send a packet whose size is larger than that would fit in the path Maximum Transmission Unit (MTU) to its destination.

Whether fragment is indicated in -ipv6_extension_header or not, the arguments listed below are available:

-ipv6_frag_id -ipv6_frag_more_flag -ipv6_frag_offset
srheader
Segment Routing can be applied to the IPv6 data plane with the addition of a new type of Routing Extension Header.

Note

Only when hop_by_hop, routing, destination or authentication is indicated in this argument, the relative arguments can be defined. This is an example for this argument:

set returnedString [sth::traffic_config\
  -mode create\
  -port_handle $tgen1_port\
  -l3_protocol ipv6\
  -ipv6_extension_header "hop_by_hop routing
       destination authentication" \
  -ipv6_src_addr "2009::1" \
  -ipv6_dst_addr "2009::9" \
  -ipv6_frag_id  12\
  -ipv6_frag_more_flag 1\
  -ipv6_frag_offset 20\
  -ipv6_hop_by_hop_options "type: router_alert
       length:55 alert_type: active_net" \
  -ipv6_routing_node_list "2002::2 2003::3"\
  -ipv6_routing_res "a:b:a:b" \
  -ipv6_destination_options "type: padn
       length:5 value:c:c:a"\
  -ipv6_auth_string aa:bb:00:cc\
  -ipv6_auth_spi 77\
  -ipv6_auth_seq_num 99\
  -ipv6_auth_payload_len 4 \
 ]
-ipv6_encap_auth_data

The value of this argument is a variable length field containing the packet Integrity Check Value (ICV). ICV is a checksum capable of detecting modification of an information system and is the result of the integrity process. The default value is 0000. You can use this argument only when encapsulation is configured in the -ipv6_extension_header argument.

-ipv6_encap_pad_len

Specifies the size of the pad bytes. Possible values range from 0 to 255. The default value is 0. You can use this argument only when encapsulation is configured in the -ipv6_extension_header argument.

-ipv6_encap_next_header

The Next Header is an 8-bit field that indicates what type of data is in the payload data field. The default value is 59. You can use this argument only when encapsulation is configured in the -ipv6_extension_header argument.

-ipv6_encap_pad_data

This field is to ensure that the encrypted portion of the header (the payload) must end on the appropriate boundary. The default value is 00. You can use this argument only when encapsulation is configured in the -ipv6_extension_header argument.

-ipv6_encap_payload_data

Specifies the data described by the Next header field. The default value is 0000. You can use this argument only when encapsulation is configured in the -ipv6_extension_header argument.

-ipv6_encap_seq_num

Specifies the sequence counter for the encapsulation header. You can refer to RFC 2406 for more information. Possible values range from 0 to 4294967295. The default value is 0. You can use this argument only when encapsulation is configured in the -ipv6_extension_header argument.

-ipv6_encap_spi

Specifies the Security Parameter Index (SPI) associated with the encapsulation header. The SPI, in combination with the destination IP address and security protocol, uniquely identifies the Security Association for this datagram. You can refer to RFC 2406 for more details. Possible values range from 0 to 4294967295. The default value is 0. You can specify this argument only when encapsulation is configured in -ipv6_extension_header.

-srheader_count

Specifies how many SR headers needs to be created. By default creates one SR header. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_last_entry

Specifies the index, in the Segment List, of the last element of the Segment List. Possible values range from 0 to 255. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nxt_hdr

Specifies the type of header immediately following the SRH. Possible values range from 0 to 255. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_length

Specifies the length of the SRH header. Possible values range from 0 to 255. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_routing_type

Specifies the routing type of SRH header. Possible values range from 0 to 255. The default value is 4. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_seg_left

Specifies the index, in the Segment List, of the next segment to inspect. Segments Left is decremented at each segment. Possible values range from 0 to 255. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_tag

Tag a packet as part of a class or group of packets. Possible values range from 0 to 65535. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_uflag

Specifies the unused flag and for future use. It should be unset on transmission and must be ignored on receipt. The default value is 00000000. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_egress_node

Specifies the node where the packet is expected to exit the SR domain. The default value is 2000::2. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_egress_flags

Specifies the Egress Node TLV flag value. They must be set to 0 on transmission and ignored on receipt. Possible values range from 0 to 255. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_egress_length

Specifies the length of the Egress Node TLV. Possible values range from 0 to 255. The default value is 18. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_egress_reserved

Specifies the reserved bit. It should be unset on transmission and must be ignored on receipt. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_egress_type

Specifies the type of the Ingress Node TLV. Possible values range from 0 to 255. The default value is 2. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_ingress_flags

Specifies the Ingress Node TLV flag value. They must be set to 0 on transmission and ignored on receipt. Possible values range from 0 to 255. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_ingress_node

Specifies the node where the packet is expected to enter the SR domain. The default value is 2000::2. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_ingress_length

Specifies the length of the Ingress Node TLV. Possible values range from 0 to 255. The default value is 18. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_ingress_reserved

Specifies the reserved bit. It should be unset on transmission and must be ignored on receipt. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_ingress_type

Specifies the type of the Ingress Node TLV. Possible values range from 0 to 255. The default value is 1. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_hmac

Specifies the keyed HMAC, in multiples of 8 octets, at most 32 octets. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_hmac_key_id

Specifies the 4-octet opaque number that uniquely identifies the pre-shared key and algorithm used to generate the HMAC. Possible values range from 0 to 4294967295. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_hmac_length

Specifies the length of the variable-length data in bytes. Possible values range from 0 to 255. The default value is 38. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_hmac_reserved

Specifies the reserved bit. It should be unset on transmission and must be ignored on receipt. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_hmac_type

Specifies the HMAC TLV type value. Possible values range from 0 to 255. The default value is 255. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_opaquecontainer_flags

Specifies the Opaque Container TLV flags. They must be set to 0 on transmission and ignored on receipt. Possible values range from 0 to 255. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_opaquecontainer_length

Specifies the length of the opaque container TLV flags. Possible values range from 0 to 255. The default value is 18. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_opaquecontainer

Specifies the 128 bits of opaque data not relevant for the routing layer. Typically, this information is consumed by a non-routing component of the node receiving the packet. The default value is 2000::2. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_opaquecontainer_reserved

Specifies the reserved bit. It should be unset on transmission and must be ignored on receipt. Possible values range from 0 to 255. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_opaquecontainer_type

Specifies the type value of opaque container. Possible values range from 0 to 255. The default value is 3. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_pad0_type

Specifies the type value of pad0 types of Padding TLVs. Possible values range from 0 to 255. The default value is 128. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_padn_length

Specifies the length of the Padding field. Possible values range from 0 to 255. The default value is 1. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_padn_padding

Specifies the padding bits which have no semantic. They must be set to 0 on transmission and ignored on receipt. The default value is 00. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_padn_type

Specifies the type value of padn types of Padding TLVs. Possible values range from 0 to 255. The default value is 129. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_seg

Specifies the 128 bit IPv6 addresses representing the nth segment of the path. The segment list is encoded in the reverse order of the path. The last segment is in the first position of the list and the first segment is in the last position. The default value is 2000::2. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshcarrier_flags

Specifies the NSH carrier flags which have no semantic. They must be set to 0 on transmission and ignored on receipt. Possible values range from 0 to 255. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshcarrier_length

Specifies the total length of the TLV. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshcarrier_type

Specifies the type value of NSH carrier TLV. Possible values range from 0 to 255. The default value is 6. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype1_version

Specifies the version field which is used to ensure backward compatibility going forward with future NSH specification updates. Possible values range from 0 to 3. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype1_oflag

Specifies the O bit indicates an Operations, Administration, and Maintenance (OAM) packet. Possible values range from 0 and 1. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype1_u1bit

Specifies the unassigned bits. Possible values range from 0 and 1. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype1_length

Specifies the total length of NSH including the Base Header, the Service Path Header, the Fixed Length Context Header or Variable Length Context Header(s). Possible values range from 0 to 63. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype1_ttl

Specifies the maximum SFF hops for an SFP. The initial TTL value should be configurable via the control plane; the configured initial value can be specific to one or more SFPs. Possible values range from 0 to 63. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype1_u2bits

Specifies the unassigned metadata type bits. The default value is 0000. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype1_mdtype

Specifies the format of NSH beyond the Mandatory Base Header and the Service Path Header. Possible values range from 0 to 15. The default value is 1. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype1_next_protocol

Specifies the protocol type of the encapsulated data. NSH does not alter the inner payload, and the semantics on the inner protocol remain unchanged due to NSH service function chaining. Possible values range from 0 to 255. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype1_service_path_id

Specifies the contains the index, in the Segment List, of the last element of the Segment List. Possible values range from 0 to 255. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype1_service_index

Specifies the contains the index, in the Segment List, of the last element of the Segment List. Possible values range from 0 to 255. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype1_context_hdr

Specifies the carries metadata (i.e., context data) along with a service path. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_version

Specifies the version field which is used to ensure backward compatibility going forward with future NSH specification updates. Possible values range from 0 to 3. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_oflag

Specifies the Security Parameter Index (SPI) associated with the encapsulation header. The SPI, in combination with the destination IP address and security protocol, uniquely identifies the Security Association for this datagram. You can refer to RFC 2406 for more details. Possible values range from 0 to 4294967295. The default value is 0. You can specify this argument only when encapsulation is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_u1bit

Specifies the unassigned bits. Possible values range from 0 and 1. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_ttl

Specifies the maximum SFF hops for an SFP. The initial TTL value should be configurable via the control plane; the configured initial value can be specific to one or more SFPs. Possible values range from 0 to 63. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_length

Specifies the total length of NSH including the Base Header, the Service Path Header, the Fixed Length Context Header or Variable Length Context Header(s). Possible values range from 0 to 63. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_u2bits

Specifies the unassigned metadata type bits. The default value is 0000. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_mdtype

Specifies the format of NSH beyond the Mandatory Base Header and the Service Path Header. Possible values range from 0 to 15. The default value is 2. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_next_protocol

Specifies the protocol type of the encapsulated data. NSH does not alter the inner payload, and the semantics on the inner protocol remain unchanged due to NSH service function chaining. Possible values range from 0 to 255. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_service_path_id

Specifies the NSH Service Path Identifier(SPI) value. The SPI provides a level of indirection between the service path/topology and the network transport. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_service_index

Specifies the NSH Service Index value. The Service Index provides an indication of location within a service path. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_md_class

Specifies the scope of the type field to provide a hierarchical namespace. Possible values range from 0 to 65535. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_type

Specifies the explicit type of metadata being carried and is the responsibility of the MD Class owner. Possible values range from 0 to 255. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_ubit

Specifies the unassigned metadata bits. They must be set to 0 on transmission and ignored on receipt. Possible values range from 0 and 1. The default value is 0. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ipv6_srheader_nshmdtype2_variable_meta_data

Specifies the variable metadata value. You can specify this argument only when srheader is configured in -ipv6_extension_header.

-ck_present

Spirent Extension (for Spirent HLTAPI only).

Specifie whether the Checksum field will be present in the Layer 3 GRE header. Possible values are 1 (present) and 0 (not present). The default value is 0. You must specify GRE in the -l3_protocol argument.

-routing_present

Spirent Extension (for Spirent HLTAPI only).

Specifie whether the Routing field will be present in the Layer 3 GRE header. Possible values are 1 (present) and 0 (not present). The default value is 0. You must specify GRE in the -l3_protocol argument.

-key_present

Spirent Extension (for Spirent HLTAPI only).

Specifie whether the Key field will be present in the Layer 3 GRE header. Possible values are 1 (present) and 0 (not present). The default value is 0. You must specify GRE in the -l3_protocol argument.

-seq_num_present

Spirent Extension (for Spirent HLTAPI only).

Specifie whether the Sequence Number field will be present in the Layer 3 GRE header. Possible values are 1 (present) and 0 (not present). The default value is 0. You must specify GRE in the -l3_protocol argument.

-reserved0

Spirent Extension (for Spirent HLTAPI only).

Specifie the Reserved0 field in the Layer 3 GRE header. Possible values range from 0 to 511. The default value is 0. You must specify GRE in the -l3_protocol argument.

-version

Spirent Extension (for Spirent HLTAPI only).

Specifie the Version Number field in the Layer 3 GRE header. Possible values range from 0 to 7. The default value is 0 You must specify GRE in the -l3_protocol argument

-keep_alive_enable

Spirent Extension (for Spirent HLTAPI only).

Enables or disables KEEPALIVE messages. possible values are 0 (disable) and 1 (enable). The default value is 0. You must specify GRE in the -l3_protocol argument.

-keep_alive_period

Spirent Extension (for Spirent HLTAPI only).

Specifie the number of seconds between transmissions of KEEPALIVE messages. Possible values range from 0 to 65535. The default value is 10. You must specify GRE in the -l3_protocol argument.

-keep_alive_retries

Spirent Extension (for Spirent HLTAPI only).

Specifie the number of times to retry the message after the KEEPALIVE period is reached. Possible values range from 0 to 255. The default value is 3. You must specify GRE in the -l3_protocol argument.

-gre_checksum

Verifies that packets are not corrupted. Possible values are 0 (not corrupted) and 1 (corrupted). The default is 0. You must specify GRE in the -l3_protocol argument.

-gre_reserved

Specifies the reserved bit in the checksum field of the GRE header. Possible values are 0 and 1. The default value is 0.

-l3_outer_protocol

Identifies the Layer 3 protocol to use when creating packets for the outer header. Possible values are IPv4, IPv6, and GRE.

-l4_protocol

Identifies the Layer 4 protocol to use as a transport service. Possible values are ipv4, tcp, udp, udp_dhcp_msg, icmp, igmp, rtp isis, ospf, ipv4, ipv6 and udp_rocev2.

  • When l4_protocol is ipv4, the IPv4 header related options in Layer 4 can be configured.
  • When you define a TCP header object, you can define the source and destination ports for the traffic, control bits to specify TCP segments (FIN, SYN, RST, PSH, ACK, URG), ACK, SEQ, and window attributes, and TCP frame length and urgent data pointer values.
  • A UDP header contains fields that specify the source and destination ports, the length, and the checksum. When you create a UDP header object, you define the source and destination ports and the length of the combined UDP header and data.
  • When l4_protocol is udp_dhcp_msg, the DHCP client and server message headers in Layer 4 can be configured.
  • When you define an Internet Control Message Protocol (ICMP) header object, you can define the type of ICMP message and the code for each ICMP message type. See RFC 1122 for more about ICMP.
  • When you define an ICMPv6 header object, you can define the type of ICMPv6 message and the code for each ICMPv6 message type. ICMPv6 messages also include sub-types defined in Multicast Listener Discovery (MLDv1 and MLDv2) and Neighbor Discovery Protocol (NDP). See RFC 2710 for more about MLDv1, RFC 3810 for MLDv2, RFC 4861 for NDP and RFC 4443 for ICMPv6.
  • When you define an Internet Group Management Protocol (IGMP) header object, you can define the IGMP version, the message type, the code, and the Multicast group address. See RFC 3376 for more about IGMP.
  • When you define a Real-time Transport Protocol (RTP) header object, you can define the following fields defined in RTP header: CC, PT, Timestamp, SSRC and CSRC.
  • When you define an Intermediate System to Intermediate System Protocol (ISIS) header object, you can specify the following fields defined in the ISIS header: PDU header length, version, the length of system ID, PDU type, reserved field, maximum area addresses, circuit type, system ID, holding time, PDU length, priority and LAN ID. The logical-link control field will be added automatically.
  • When you define an Open Shortest Path First (OSPF) header object, Use the traffic_config_ospf function to configure the parameters related to the OSPF header.
  • When you define an IPv4/IPv6 header object, the IP related fields are available in the Layer 4 header.
  • When l4_protocol is udp_rocev2, the IB (InfiniBand) header in Layer 4 can be configured.
-add_header

Used to add more than one protocol headers. This argument is available for mode -modify. You must specify -l3_protocol argument to add IPv4 and IPv6 headers and -l4_protocol argument along with -l3_protocol argument to add UDP and TCP headers. Currently this option is supported only for IPv4, IPv6, TCP and UDP headers.

-header_handle

The handle used to modify header parameters. This handle is returned by sth::traffic_config API when -add_header and -modify arguments are specified. You must specify -l3_protocol argument to add IPv4 and IPv6 headers and -l4_protocol argument along with -l3_protocol argument to add UDP and TCP headers. Currently this option is supported only for IPv4, IPv6, TCP and UDP headers.

In following example, first API creates one UDP header in the Streamblock. Second API adds second UDP header in the same Streamblock. Third API modifies values of UDP header parameters using UDP header handle.

sth::traffic_config
-mode create
-port_handle $port1

-l3_protocol ipv4-l4_protocol udp-name StreamBlock_1-length_mode fixed-endpoint_map one_to_one

sth::traffic_config
-mode modify

-l3_protocol ipv4-add_header udp -stream_id $stream_handle1-l4_protocol udp -udp_src_port 5001 -udp_dst_port 25001

Returned output::
{udp_handle {udp:udp1 udp:udp2}} {status 1}
sth::traffic_config
-mode modify

-l3_protocol ipv4-stream_id $stream_handle-l4_protocol udp -header_handle [lindex $udp_handle 0]-udp_src_port 6001 -udp_dst_port 26001

In the following example, first API creates one IPv4 header in the Streamblock. The second API adds second IPv4 header in the same Streamblock. The third API modifies values of IPv4 header parameters using IPv4 header handle.

sth::traffic_config
-mode create
-port_handle $port1

-l3_protocol ipv4-name StreamBlock_1-length_mode fixed-endpoint_map one_to_one-ip_src_addr 10.1.1.2 -ip_dst_addr 10.1.1.3

sth::traffic_config
-mode modify

-l3_protocol ipv4-add_header ipv4 -stream_id $stream_handle1-ip_src_addr 11.1.1.2 -ip_dst_addr 11.1.1.3

Returned output::
{ipv4_handle {ipv4:ipv41 ipv4:ipv42}} {status 1}
sth::traffic_config
-mode modify

-l3_protocol ipv4-stream_id $stream_handle-l4_protocol udp -header_handle [lindex $ipv4_handle 1]-ip_src_addr 12.1.1.2 -ip_dst_addr 12.1.1.3

-custom_llc

Creates an LLC header with a user defined value preceded by the Layer 2 encapsulation header of the packet. The value must be in hexadecimal format. You must specify -l2_encap. There is no need to configure this argument if -l4_protocoal is set to isis.

-custom_pattern

Creates a frame with a user defined value at the end of the packet. The value must be in hexadecimal format.

Note

  1. If you only specify -custom_pattern (without -l2_protocol or -l3_protocol), only custom headers will be added.
  2. If you specify -l3_protocol and -custom_pattern (without -l2_protocol), all of Layer 2, Layer 3, and custom headers will be added.
-rtp_csrc_count

Specifies the CSRC count contains the number of CSRC identifiers that follow the fixed header. Possible values range from 0 to 15. The default value is 0. You must specify RTP in the -l4_protocol argument.

-rtp_payload_type

Specifies the type of the RTP payload and thus determines its interpretation by the application. The default value is 18. You must specify RTP in the -l4_protocol argument. Possible values are:

value                   Description
0                        PCM-U -Law
8                        PCM-A Law
9                   G.722 audio codec
4                   G.723 audio codec
15                  G.728 audio codec
18                  G.729 audio codec
34                  G.763 audio codec
31                  G.761 audio codec
-rtp_sequence_number

The sequence number is incremented for each RTP data packet sent and is to be used by the receiver to detect packet loss and to accommodate out-of-order delivery. Possible values range from 0 to 65535. The default value is 0. You must specify RTP in the -l4_protocol argument.

-rtp_padding

Indicates if there are extra padding bytes at the end of the RTP packet. Possible values are 0 and 1. The default value is 0. You must specify RTP in the -l4_protocol argument.

-rtp_extension

Indicates the presence of an extension header between the header and payload data. Possible values are 0 and 1. The default value is 0. You must specify RTP in the -l4_protocol argument.

-rtp_marker

Specifies whether the current data has some special relevance for the application. Possible values are 0 and 1. The default value is 0. You must specify RTP in the -l4_protocol argument.

-rtp_version

Specifies the version of the RTP protocol. Possible values are 0 to 3. The default value is 2. You must specify RTP in the -l4_protocol argument.

-rtp_custom_header

Specifies whether to create RTP packets as custom header or as RTP header. If it is set 0, it will create RTP header under UDP header in the packet. You must specify RTP in the -l4_protocol argument.

-dhcp_srv_msg_options_hdr_seq

Spirent Extension (for Spirent HLTAPI only).

Specifies the sequence of option headers under the DHCP Server Message header

Values:

cli_hw        Client ID (Hardware)
cli_non_hw    Client ID (Non-hardware)
custom        Custom Option
end           End of Header
hostname      Host Name
lease         Lease Time
msg           Message
msg_type      Message Type
msg_size      Message Size
overload      Option Overload
req_list      Parameter Request List
req_addr      Requested IP Address
server_id     Server ID

Note

The sequence cannot be changed in the modify mode. If you need a new sequence, delete the existing one and create again.

-dhcp_cli_msg_options_hdr_seq

Spirent Extension (for Spirent HLTAPI only).

Specifies the sequence of option headers under the DHCP Client Message header

Values:

cli_hw        Client ID (Hardware)
cli_non_hw    Client ID (Non-hardware)
custom        Custom Option
end           End of Header
hostname      Host Name
lease         Lease Time
msg           Message
msg_type      Message Type
msg_size      Message Size
overload      Option Overload
req_list      Parameter Request List
req_addr      Requested IP Address
server_id     Server ID

Note

The sequence cannot be changed in the modify mode. If you need a new sequence, delete the existing one and create again.

-dhcp_msg_header_type

Spirent Extension (for Spirent HLTAPI only).

Specifies DHCP message type to be created along with pre-defined option headers.

Values:

discover    Discover message
request     Request message
decline     Decline message
release     Release message
inform      Inform message
-dhcp_srv_msg_client_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the Client IP Address field for the DHCP Server Message header

Values: IPv4

Default: 0.0.0.0

Default Modifier Mask: 255.255.255.255

-dhcp_srv_msg_boot_filename

Spirent Extension (for Spirent HLTAPI only).

Specifies the Boot File Name field or the DHCP Server Message header

Values: HEX

Default: 256 zeroes

Default Modifier Mask:

0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000FFFFFFFF

Spirent Extension (for Spirent HLTAPI only).

Specifies the Magic Cookie field for the DHCP Server Message header

Values: HEX

Default: 63825363

Default Modifier Mask: FFFFFFFF

-dhcp_srv_msg_haddr_len

Spirent Extension (for Spirent HLTAPI only).

Specifies the Hardware Address Length field for the DHCP Server Message header

Values: HEX

Default: 6

Default Modifier Mask: 255

-dhcp_srv_msg_hops

Spirent Extension (for Spirent HLTAPI only).

Specifies the Hops field for the DHCP Server Message header. This field is used by relay agents.

Values: integer

Default: 0

Default Modifier Mask: 255

-dhcp_srv_msg_next_serv_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the Server IP Address field for the DHCP Server message header

Default: 0.0.0.0

Default Modifier Mask: 255.255.255.255

-dhcp_srv_msg_hw_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Hardware Type field for the DHCP Server Message header

Values: HEX

Default: 1

Default Modifier Mask: 255

-dhcp_srv_msg_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Message Type field for the DHCP Server Message header

Default: 2

Default Modifier Mask: 255

-dhcp_srv_msg_elapsed

Spirent Extension (for Spirent HLTAPI only).

Specifies the Elapsed field for the DHCP Server Message header

Default: 0

Default Modifier Mask: 65535

-dhcp_srv_msg_bootpflags

Spirent Extension (for Spirent HLTAPI only).

Specifies the Bootp Flags field for the DHCP Server Message header

Values: HEX

Default: 8000

Default Modifier Mask: FFFF

-dhcp_srv_msg_client_hw_pad

Spirent Extension (for Spirent HLTAPI only).

Specifies the Client Hardware Address Pad field for the DHCP Server Message header

Default: 20 zeroes hexadecimal

Default Modifier Mask: 000000000000FFFFFFFF

-dhcp_srv_msg_your_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the Your Address field for the DHCP Server Message header

Values: IPv4

Default: 0.0.0.0

Default Modifier Mask: 255.255.255.255

-dhcp_srv_msg_xid

Spirent Extension (for Spirent HLTAPI only).

Specifies the Transaction ID field for the DHCP Server Message header

Values: integer

Default: 1

Default Modifier Mask: 4294967295

-dhcp_srv_msg_client_mac

Spirent Extension (for Spirent HLTAPI only).

Specifies the Client Hardware MAC Address field for the DHCP Server Message header

Values: MAC

Default: 00:00:01:00:00:02

Default Modifier Mask: 00:00:FF:FF:FF:FF

-dhcp_srv_msg_hostname

Spirent Extension (for Spirent HLTAPI only).

Specifies the Server Host Name field for the DHCP Server Message header

Values: HEX

Default: 128 zeroes

Default Modifier Mask:

00000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000FFFFFFFF
-dhcp_srv_msg_relay_agent_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the Relay Agent Address field for the DHCP Server Message header

Values: IPv4

Default: 0.0.0.0

Default Modifier Mask: 255.255.255.255

-dhcp_srv_msg_cli_hw_id_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the ID type field for the Client ID (Hardware) option in the DHCP Server Message header

Values: HEX

Default: 01

Default Modifier Mask: FF

-dhcp_srv_msg_cli_hw_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Client ID (Hardware) option in the DHCP Server Message header

Values: HEX

Default: 3D

Default Modifier Mask: FF

-dhcp_srv_msg_cli_hw_client_hwa

Spirent Extension (for Spirent HLTAPI only).

Specifies the Client Hardware Address field for the Client ID (Hardware) option in the DHCP Server Message header

Values: MAC

Default: 00:00:01:00:00:02

Default Modifier Mask: 00:00:FF:FF:FF:FF

-dhcp_srv_msg_cli_hw_option_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Client ID (Hardware) option in the DHCP Server Message header

Values: HEX

Default: 07

Default Modifier Mask: FF

-dhcp_srv_msg_cli_non_hw_id_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the ID Type field for the Client ID (non-Hardware) option in the DHCP Server Message header

Values: HEX

Default: 00

Default Modifier Mask: FF

-dhcp_srv_msg_cli_non_hw_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Client ID (non-Hardware) option in the DHCP Server Message header

Values: HEX

Default: 3D

Default Modifier Mask: FF

-dhcp_srv_msg_cli_non_hw_value

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Client ID (non-Hardware) option in the DHCP Server Message header

Values: HEX

Default: 010203040506

Default Modifier Mask: 0000FFFFFFFF

-dhcp_srv_msg_cli_non_hw_option_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Client ID (non-Hardware) option in the DHCP Server Message header

Values: HEX

Default: 07

Default Modifier Mask: FF

-dhcp_srv_msg_custom_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Custom Option in the DHCP Server Message header

Values: HEX

Default: 01

Default Modifier Mask: FF

-dhcp_srv_msg_custom_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Custom Option in the DHCP Server Message header

Values: HEX

Default: FE

Default Modifier Mask: FF

-dhcp_srv_msg_custom_value

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Custom Option in the DHCP Server Message header

Values: HEX

Default: 00

Default Modifier Mask: FF

-dhcp_srv_msg_end_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the End of Options option in the DHCP Server Message header

Values: HEX

Default: FF

Default Modifier Mask: FF

-dhcp_srv_msg_host_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Host Name option in the DHCP Server Message header

Values: HEX

Default: 06

Default Modifier Mask: FF

-dhcp_srv_msg_host_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Host Name option in the DHCP Server Message header

Values: HEX

Default: 0C

Default Modifier Mask: FF

-dhcp_srv_msg_host_value

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Host Name option in the DHCP Server Message header

Values: HEX

Default: 636c69656e74

Default Modifier Mask: 0000FFFFFFFF

-dhcp_srv_msg_lease_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Lease Time option in the DHCP Server Message header

Values: HEX

Default: 33

Default Modifier Mask: FF

-dhcp_srv_msg_lease_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Lease Time option in the DHCP Server Message header

Values: HEX

Default: 04

Default Modifier Mask: FF

-dhcp_srv_msg_lease_time

Spirent Extension (for Spirent HLTAPI only).

Specifies the Lease Time field for the Lease Time option in the DHCP Server Message header

Values: integer

Default: 0

Default Modifier Mask: 4294967295

-dhcp_srv_msg_msg_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Message option in the DHCP Server Message header

Values: HEX

Default: 01

Default Modifier Mask: FF

-dhcp_srv_msg_msg_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Message option in the DHCP Server Message header

Values: HEX

Default: 38

Default Modifier Mask: FF

-dhcp_srv_msg_msg_value

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Message option in the DHCP Server Message header

Values: HEX

Default: 00

Default Modifier Mask: FF

-dhcp_srv_msg_size_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Message Size option in the DHCP Server Message header

Values: HEX

Default: 02

Default Modifier Mask: FF

-dhcp_srv_msg_size_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Message Size option in the DHCP Server Message header

Values: HEX

Default: 39

Default Modifier Mask: FF

-dhcp_srv_msg_size_value

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Message Size option in the DHCP Server Message header

Values: HEX

Default: 0240

Default Modifier Mask: FFFF

-dhcp_srv_msg_type_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Message Type option in the DHCP Server Message header

Values: HEX

Default: 01

Default Modifier Mask: FF

-dhcp_srv_msg_type_code

Spirent Extension (for Spirent HLTAPI only).

Specifies the Code field for the Message Type option in the DHCP Server Message header. This option specifies the type of DHCP message type.

Values:

discover     Discover message type
offer        Offer message type
ack          Ack message type
nak          Nak message type

Default: discover.

Default Modifier Mask: 255

-dhcp_srv_msg_msgtype_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Message Type option in the DHCP Server Message header

Values: HEX

Default: 35

Default Modifier Mask: FF

-dhcp_srv_msg_overload_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Message Type option in the DHCP Server Message header

Values: HEX

Default: 01

Default Modifier Mask: FF

-dhcp_srv_msg_overload_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Options Overload option in the DHCP Server Message header

Values: HEX

Default: 34

Default Modifier Mask: FF

-dhcp_srv_msg_overload

Spirent Extension (for Spirent HLTAPI only).

Specifies the Overload field for the Options Overload option in the DHCP Server Message header

Values:

file               The file field is used to hold header
sname              The sname field is used to hold header
file_sname         Both fields are used to hold header

Default: file_sname

Default Modifier Mask: 255

-dhcp_srv_msg_req_list_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Parameter Request List option in the DHCP Server Message header

Values: HEX

Default: 04

Default Modifier Mask: FF

-dhcp_srv_msg_req_list_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Parameter Request List option in the DHCP Server Message header

Values: HEX

Default: 37

Default Modifier Mask: FF

-dhcp_srv_msg_req_list_value

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Parameter Request List option in the DHCP Server Message header

Values: HEX

Default: 01060f21

Default Modifier Mask: FFFFFFFF

-dhcp_srv_msg_req_addr_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Requested IP Address option in the DHCP Server Message header

Values: HEX

Default: 04

Default Modifier Mask: FF

-dhcp_srv_msg_req_addr_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Requested IP Address option in the DHCP Server Message header

Values: HEX

Default: 32

Default Modifier Mask: FF

-dhcp_srv_msg_req_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the IP Address field for the Requested IP Address option in the DHCP Server Message header

Values: IPv4

Default: 0.0.0.0

Default Modifier Mask: 255.255.255.255

-dhcp_srv_msg_srv_id_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Server ID option in the DHCP Server Message header

Values: HEX

Default: 04

Default Modifier Mask: FF

-dhcp_srv_msg_srv_id_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Server ID option in the DHCP Server Message header

Values: HEX

Default: 36

Default Modifier Mask: FF

-dhcp_srv_msg_srv_id_req_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the IP Address field for the Server ID option in the DHCP Server Message header

Values: IPv4

Default: 0.0.0.0

Default Modifier Mask: 255.255.255.255

-dhcp_cli_msg_client_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the Client Address field in the DHCP Client Message header

Values: IPv4

Default: 0.0.0.0

Default Modifier Mask: 255.255.255.255

-dhcp_cli_msg_boot_filename

Spirent Extension (for Spirent HLTAPI only).

Specifies the Boot Filename field in the DHCP Client Message header

Values: HEX

Default: 256 zeroes hexadecimal

Default Modifier Mask:

0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000FFFFFFFF

Spirent Extension (for Spirent HLTAPI only).

Specifies the Magic Cookie field in the DHCP Client Message header

Values: HEX

Default: 63825363

Default Modifier Mask: FFFFFFFF

-dhcp_cli_msg_haddr_len

Spirent Extension (for Spirent HLTAPI only).

Specifies the Hardware Address Length field in the DHCP Client Message header

Values: integer

Default: 6

Default Modifier Mask: 255

-dhcp_cli_msg_hops

Spirent Extension (for Spirent HLTAPI only).

Specifies the Hops field in the DHCP Client Message header. This field is used by relay agents.

Values: integer

Default: 0

Default Modifier Mask: 255

-dhcp_cli_msg_next_serv_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the Server IP Address field in the DHCP Client Message header. This field is used by relay agents.

Values: IPv4

Default: 0.0.0.0

Default Modifier Mask: 255.255.255.255

-dhcp_cli_msg_hw_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Hardware Type field in the DHCP Client Message header

Values: integer

Default: 1

Default Modifier Mask: 255

-dhcp_cli_msg_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Message Type field in the DHCP Client Message header

Values: integer

Default: 2

Default Modifier Mask: 255

-dhcp_cli_msg_elapsed

Spirent Extension (for Spirent HLTAPI only).

Specifies the Elapsed field in the DHCP Client Message header

Values: integer

Default: 0

Default Modifier Mask: 65535

-dhcp_cli_msg_bootpflags

Spirent Extension (for Spirent HLTAPI only).

Specifies the Bootp Flags field in the DHCP Client Message header

Values: HEX

Default: 8000

Default Modifier Mask: FFFF

-dhcp_cli_msg_client_hw_pad

Spirent Extension (for Spirent HLTAPI only).

Specifies the Client Hardware Address Pad field in the DHCP Client Message header

Values: HEX

Default: 20 zeroes hexadecimal

Default Modifier Mask: 000000000000FFFFFFFF

-dhcp_cli_msg_your_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the Your Address field in the DHCP Client Message header

Values: IPv4

Default: 0.0.0.0

Default Modifier Mask: 255.255.255.255

-dhcp_cli_msg_xid

Spirent Extension (for Spirent HLTAPI only).

Specifies the Transaction ID (XID) field in the DHCP Client Message header

Values: integer

Default: 1

Default Modifier Mask: 4294967295

-dhcp_cli_msg_client_mac

Spirent Extension (for Spirent HLTAPI only).

Specifies the Client Hardware MAC Address field in the DHCP Client Message header

Default: 00:00:01:00:00:02

Default Modifier Mask: 00:00:FF:FF:FF:FF

-dhcp_cli_msg_hostname

Spirent Extension (for Spirent HLTAPI only).

Specifies the Host Name field in the DHCP Client Message header

Default: 128 zeroes hexadecimal

Default Modifier Mask:

000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000
0000000000000FFFFFFFF
-dhcp_cli_msg_relay_agent_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the Relay Agent Address field in the DHCP Client Message header

Values: IPv4

Default: 0.0.0.0

Default Modifier Mask: 255.255.255.255

-dhcp_cli_msg_cli_hw_id_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the ID Type field for the Client ID (Hardware) option in the DHCP Client Message header

Values: HEX

Default: 01

Default Modifier Mask: FF

-dhcp_cli_msg_cli_hw_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Client ID (Hardware) option in the DHCP Client Message header

Values: HEX

Default: 3D

Default Modifier Mask: FF

-dhcp_cli_msg_cli_hw_client_hwa

Spirent Extension (for Spirent HLTAPI only).

Specifies the Client Hardware Address field for the Client ID (Hardware) option in the DHCP Client Message header

Values: MAC

Default: 00:00:01:00:00:02

Default Modifier Mask: 00:00:FF:FF:FF:FF

-dhcp_cli_msg_cli_hw_option_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Client ID (Hardware) option in the DHCP Client Message header

Values: HEX

Default: 07

Default Modifier Mask: FF

-dhcp_cli_msg_cli_non_hw_id_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the ID Type field for the Client ID (non-Hardware) option in the DHCP Client Message header

Values: HEX

Default: 00

Default Modifier Mask: FF

-dhcp_cli_msg_cli_non_hw_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Client ID (non-Hardware) option in the DHCP Client Message header

Values: HEX

Default: 3D

Default Modifier Mask: FF

-dhcp_cli_msg_cli_non_hw_value

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Client ID (non-Hardware) option in the DHCP Client Message header

Values: HEX

Default: 010203040506

Default Modifier Mask: 0000FFFFFFFF

-dhcp_cli_msg_cli_non_hw_option_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Client ID (non-Hardware) option in the DHCP Client Message header

Values: HEX

Default: 07

Default Modifier Mask: FF

-dhcp_cli_msg_custom_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Custom Option in the DHCP Client Message header

Values: HEX

Default: 01

Default Modifier Mask: FF

-dhcp_cli_msg_custom_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Custom Option in the DHCP Client Message header

Values: HEX

Default: FE

Default Modifier Mask: FF

-dhcp_cli_msg_custom_value

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Custom Option in the DHCP Client Message header

Values: HEX

Default: 00

Default Modifier Mask: FF

-dhcp_cli_msg_end_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the End of Options option in the DHCP Client Message header

Values: HEX

Default: FF

Default Modifier Mask: FF

-dhcp_cli_msg_host_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Host Name option in the DHCP Client Message header

Values: HEX

Default: 06

Default Modifier Mask: FF

-dhcp_cli_msg_host_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Host Name option in the DHCP Client Message header

Values: HEX

Default: 0C

Default Modifier Mask: FF

-dhcp_cli_msg_host_value

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Host Name option in the DHCP Client Message header

Values: HEX

Default: 636c69656e74

Default Modifier Mask: 0000FFFFFFFF

-dhcp_cli_msg_lease_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Lease Time option in the DHCP Client Message header

Values: HEX

Default: 33

Default Modifier Mask: FF

-dhcp_cli_msg_lease_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Lease Time option in the DHCP Client Message header

Values: HEX

Default: 04

Default Modifier Mask: FF

-dhcp_cli_msg_lease_time

Spirent Extension (for Spirent HLTAPI only).

Specifies the Lease Time field for the Lease Time option in the DHCP Client Message header

Values: integer

Default: 0

Default Modifier Mask: 4294967295

-dhcp_cli_msg_msg_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Message option in the DHCP Client Message header

Values: HEX

Default: 01

Default Modifier Mask: FF

-dhcp_cli_msg_msg_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Message option in the DHCP Client Message header

Values: HEX

Default: 38

Default Modifier Mask: FF

-dhcp_cli_msg_msg_value

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Message option in the DHCP Client Message header

Values: HEX

Default: 00

Default Modifier Mask: FF

-dhcp_cli_msg_size_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Message Size option in the DHCP Client Message header

Values: HEX

Default: 02

Default Modifier Mask: FF

-dhcp_cli_msg_size_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Message Size option in the DHCP Client Message header

Values: HEX

Default: 39

Default Modifier Mask: FF

-dhcp_cli_msg_size_value

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Message Size option in the DHCP Client Message header

Values: HEX

Default: 0240

Default Modifier Mask: FFFF

-dhcp_cli_msg_type_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Message Type option in the DHCP Client Message header

Values: HEX

Default: 01

Default Modifier Mask: FF

-dhcp_cli_msg_type_code

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Message Type option in the DHCP Client Message header. This option decides the type of the DHCP message.

Values:

discover         Discover message type
request          Request message type
decline          Decline message type
release          Release message type
inform           Inform message type

Default: discover

Default Modifier Mask: 255

-dhcp_cli_msg_msgtype_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Message Type option in the DHCP Client Message header

Values: HEX

Default: 35

Default Modifier Mask: FF

-dhcp_cli_msg_overload_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Message Type option in the DHCP Client Message header

Values: HEX

Default: 01

Default Modifier Mask: FF

-dhcp_cli_msg_overload_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Options Overload option in the DHCP Client Message header

Values: HEX

Default: 34

Default Modifier Mask: FF

-dhcp_cli_msg_overload

Spirent Extension (for Spirent HLTAPI only).

Specifies the Overload field for the Options Overload option in the DHCP Client Message header

Values:

file               The file field is used to hold header
sname              The sname field is used to hold header
file_sname         Both fields are used to hold header

Default: file_sname

Default Modifier Mask: 255

-dhcp_cli_msg_req_list_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Parameter Request List option in the DHCP Client Message header

Values: HEX

Default: 04

Default Modifier Mask: FF

-dhcp_cli_msg_req_list_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Parameter Request List option in the DHCP Client Message header

Values: HEX

Default: 37

Default Modifier Mask: FFFFFFFF

-dhcp_cli_msg_req_list_value

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Value field for the Parameter Request List option in the DHCP Client Message header

Values: HEX

Default: 01060f21

Default Modifier Mask: FFFFFFFF

-dhcp_cli_msg_req_addr_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Requested IP Address option in the DHCP Client Message header

Values: HEX

Default: 04

Default Modifier Mask: FF

-dhcp_cli_msg_req_addr_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Requested IP Address option in the DHCP Client Message header

Values: HEX

Default: 32

Default Modifier Mask: FF

-dhcp_cli_msg_req_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the IP Address field for the Requested IP Address option in the DHCP Client Message header

Values: IPv4

Default: 0.0.0.0

Default Modifier Mask: 255.255.255.255

-dhcp_cli_msg_srv_id_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Length field for the Server ID option in the DHCP Client Message header

Values: HEX

Default: 04

Default Modifier Mask: FF

-dhcp_cli_msg_srv_id_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Option Type field for the Server ID option in the DHCP Client Message header

Values: HEX

Default: 36

Default Modifier Mask: FF

-dhcp_cli_msg_srv_id_req_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the IP Address field for the Server ID option in the DHCP Client Message header

Values: IPv4

Default: 0.0.0.0

Default Modifier Mask: 255.255.255.255

-modifier_option

Spirent Extension (for Spirent HLTAPI only).

Specifies a list of fields to which you can add modifiers. Example:

-modifier_option  {{dhcp_srv_msg_srv_id_length}\
                  {dhcp_srv_msg_cli_hw_id_type} \
                  {dhcp_srv_msg_lease_length}}\
-modifier_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign values for the parameters for a particular stream. Possible values are:

increment
For all packets, the value increments by the step specified in the -modifier_step argument
decrement
For all packets, the value decrements by the step specified in the -modifier_step argument
random
For all packets, the values are in random order
list
For all packets, a list of values is specified under the -modifier_list_value argument
shuffle
For all packets, the values are in random order within a range that is determined by the values of -modifier_count and -modifier_step
fixed
The value is the same for all packets
-modifier_count

Spirent Extension (for Spirent HLTAPI only).

Number of values to generate for the parameters specified under -modifier_option

-modifier_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same parameter value before incrementing or decrementing it.

Dependency: -modifier_mode increment or -modifier_mode decrement

-modifier_step

Spirent Extension (for Spirent HLTAPI only).

The amount by which to increment or decrement the parameter values specified under -modifier_option

-modifier_mask

Spirent Extension (for Spirent HLTAPI only).

Mask value for the corresponding parameters specified under -modifier_option

-modifier_list_value

Spirent Extension (for Spirent HLTAPI only).

A list of values for the corresponding parameters specified under -modifier_option

Dependency: -modifier_mode list

Note

For headers with other modifier modes, you must set the values to “{}”. For example:

-modifier_mode   "{{increment} {decrement} {list}}"\
-modifier_list_value    "{{} {} {2 4 5}}"\
-modifier_import_textfile_name

Spirent Extension (for Spirent HLTAPI only).

Specifies the list of text file name along with or without the path to import for the corresponding parameters specified under -modifier_option.

Dependency: -modifier_option and -modifier_mode list

For example::
-modifier_mode “{{mac_dst} {ip_src_addr}}”
-modifier_mode “{{list} {list}}”
-modifier_import_textfile_name
 “{{C:/users/user/filename.txt} {filename2.txt}}”
-modifier_export_textfile_name

Spirent Extension (for Spirent HLTAPI only).

Specifies the list of text file name along with or without the path to export for the corresponding parameters specified under -modifier_option.

Dependency: -modifier_option and -modifier_mode list

For example::
-modifier_mode “{{mac_dst} {ip_src_addr}}”
-modifier_mode “{{list} {list}}”
-modifier_export_textfile_name
 “{{C:/users/user/filename.txt} {filename2.txt}}”
-timestamp_initial_value

Specifies the initial value of the timestamp in the RTP header. Possible values range from 0 to 4294967295. The default value is 0. You must specify RTP in the -l4_protocol argument.

-timestamp_increment

Specifies a monotonic value by which to increment the timestamp. Possible values range from 0 to 65535. The default value is 64. You must specify RTP in the -l4_protocol argument.

-ssrc

Specifies the synchronization source. Possible values range from 0 to 4294967295. The default value is 1246289208. You must specify RTP in the -l4_protocol argument.

-csrc_list

Specifies the CSRC list which identifies the contributing sources for the payload contained in this packet. The number of identifiers is given by the CC field, which configured by the -rtp_csrc_count option. The length of the list should be equal to the rtp_csrc_count. Each item in the list is an integer value, the range of which is from 0 to 4294967295.

-icmp_checksum

Defines the 16-bit one’s complement of the one’s complement sum of the ICMP message starting with the ICMP Type. The value must be an integer. To calculate the checksum correctly, do not specify the argument and let Spirent HLTAPI assign the checksum value automatically. Specify this argument only when your test requires so. You must specify ICMP in the -l4_protocol argument.

-icmp_code

Indicates the further specification of each ICMP message type. Possible values range from 0 to 255. For example, an ICMP Destination Unreachable message might set this field to 1 through 15, where each number has a different meaning. The codes of Destination Unreachable message listed below indicate different reasons for Destination Unreachable situation. The values are described below:

Codes   Description
  0   Net Unreachable
  1   Host Unreachable
  2   Protocol Unreachable
  3   Port Unreachable
  4   Fragmentation Needed and Don't Fragment was
      Set
  5   Source Route Failed
  6   Destination Network Unknown
  7   Destination Host Unknown
  8   Source Host Isolated
  9   Communication with Destination Network is
      Administratively Prohibited
  10  Communication with Destination Host is
      Administratively Prohibited
  11  Destination Network Unreachable for Type of
      Service
  12  Destination Host Unreachable for Type of
       Service
  13  Communication Administratively Prohibited
  14  Host Precedence Violation
  15  Precedence cutoff in effect

See RFC 1122 for more information.

You must specify ICMP in the -l4_protocol argument.

-icmp_id

Indicates the ID for each Ping command (that is, EchoRequest). Possible values range from 0 to 65535. You must specify ICMP in the -l4_protocol argument.

-icmp_seq

Indicates the sequence number for each Ping command, (that is, EchoRequest). The client can use the sequence number to match the reply with the request. Possible values range from 0 to 65535. You must specify ICMP in the -l4_protocol argument.

-icmp_type

A number indicating the ICMP message type, such as 0 for Echo Reply. Possible values range from 0 to 255. You must specify ICMP in the -l4_protocol argument.

-icmpv6_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the ICMPv6 message type. Its value determines the format of the remaining data. Possible values are described below:

Value        Description
    1            Destination Unreachable
    2            Packet Too Big
    3            Time Exceeded
    4            Parameter Problem
  128            Echo Request
  129            Echo Reply
  130            MLDv1 Query
  130            MLDv2  Query
  131            MLDv1 Listener Report
  132            MLDv1 Listener Done
  133            Router Solicitation
  134            Router Advertisement
  135            Neighbor Solicitation
  136            Neighbor Advertisement
  137            Redirect
  143            MLDv2 Listener Report

The default value is 1. Note that MLDv2 Query is the updated version for MLDv1 Query, so they share the same ICMPv6 message type (130), but have different fields .

-icmpv6_ip_data

Spirent Extension (for Spirent HLTAPI only).

Specifies the 2-octet IP data for the IP Header + Data field in ICMPv6 message types Destination Unreachable (type 1), Packet Too Big (type 2), Time Exceeded (type 3), Parameter Problem (type 4) and Redirect (type 137). The default value is 0000000000000000. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_ip_src_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the source IPv6 address of the first generated packet for the IP Header + Data field in ICMPv6 message types Destination Unreachable (type 1), Packet Too Big (type 2), Time Exceeded (type 3), Parameter Problem (type 4) and Redirect (type 137). The value must be in IPv6 format. The default value is 2000::2. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_ip_dst_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the destination IPv6 address of the first generated packet for the IP Header + Data field in ICMPv6 message types Destination Unreachable (type 1), Packet Too Big (type 2), Time Exceeded (type 3), Parameter Problem (type 4) and Redirect (type 137). The value must be in IPv6 format. The default value is 2000::1. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_ip_hop_limit

Spirent Extension (for Spirent HLTAPI only).

Specifies the hop limit field for the IP Header + Data field in ICMPv6 message types Destination Unreachable (type 1), Packet Too Big (type 2), Time Exceeded (type 3), Parameter Problem (type 4) and Redirect (type 137). Possible values range from 0 to 255. The default value is 255. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_ip_traffic_class

Spirent Extension (for Spirent HLTAPI only).

Specifies the traffic class field for the IP Header + Data field in ICMPv6 message types Destination Unreachable (type 1), Packet Too Big (type 2), Time Exceeded (type 3), Parameter Problem (type 4) and Redirect (type 137). Possible values range from 0 to 255. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_ip_next_header

Spirent Extension (for Spirent HLTAPI only).

Specifies the next header for the IP Header + Data field in ICMPv6 message types Destination Unreachable (type 1), Packet Too Big (type 2), Time Exceeded (type 3), Parameter Problem (type 4) and Redirect (type 137). Possible values range from 0 to 255. The default is 59. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_ip_flow_label

Spirent Extension (for Spirent HLTAPI only).

Specifies the flow label value for the IP Header + Data field in ICMPv6 message types Destination Unreachable (type 1), Packet Too Big (type 2), Time Exceeded (type 3), Parameter Problem (type 4) and Redirect (type 137). Possible values range from 0 to 1048575. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_ip_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the two-byte payload length field for the IP Header + Data field in ICMPv6 message types Destination Unreachable (type 1), Packet Too Big (type 2), Time Exceeded (type 3), Parameter Problem (type 4) and Redirect (type 137). Possible values range from 0 to 65535. The default value is 128. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_ip_gateway

Spirent Extension (for Spirent HLTAPI only).

Specifies the IPv6 gateway address for the IP Header + Data field in ICMPv6 message types Destination Unreachable (type 1), Packet Too Big (type 2), Time Exceeded (type 3), Parameter Problem (type 4) and Redirect (type 137). The value must be in IPv6 format. The default is ::0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_ip_version

Spirent Extension (for Spirent HLTAPI only).

Indicates the IP version to be used for the IP Header + Data field in ICMPv6 message types Destination Unreachable (type 1), Packet Too Big (type 2), Time Exceeded (type 3), Parameter Problem (type 4) and Redirect (type 137). Possible values are 4 and 6. The default value is 6. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_checksum

Spirent Extension (for Spirent HLTAPI only).

Indicates the 16-bit checksum field in the ICMPv6 header. To calculate the checksum correctly, do not specify the argument and let Spirent HLTAPI assign the checksum value automatically. Specify this argument only when your test requires it. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_code

Spirent Extension (for Spirent HLTAPI only).

Indicates the ICMPv6 code field that is used to create an additional level of message granularity. Depending on the message type, possible values are described below:

Message Type             Code    Description

Destination Unreachable   0       No Route To Destination
                          1       Communication with
                                  Destination Prohibited
                          3       Address Unreachable
                          4       Port Unreachable
Time Exceeded             0       Hop Limit Exceeded
                          1       Fragment Reassembly Time
                                  Exceeded
Parameter Problem         0       Erroneous Header Field
                          1       Unrecognized Next Header
                                  Type
                          2       Unrecognized IPv6 Option

Router Advertisement      0

Echo Request              0
Echo Reply                0
MLDv1 Query               0
MLDv1 Listener Report     0
MLDv1 Listener Done       0
Packet Too Big            0
Router Solicitation       0
Router Advertisement      0
Neighbor Solicitation     0
Neighbor Advertisement    0
Redirect                  0

The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_unused

Spirent Extension (for Spirent HLTAPI only).

Specifies the unused field for ICMPv6 message types Destination Unreachable (type 1), Time Exceeded (type 3), and MLDv2 Listener Report (type 143). Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_mtu

Spirent Extension (for Spirent HLTAPI only).

Specifies the Maximum Transmission Unit (MTU) of the next-hop link for ICMPv6 message type Packet Too Big (type 2). Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_pointer

Spirent Extension (for Spirent HLTAPI only).

Indicates the pointer field for Parameter Problem messages (type 4). The pointer field identifies the octet offset within the invoking packet where the error was detected. Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_id

Spirent Extension (for Spirent HLTAPI only).

Specifies the identifier field for ICMPv6 message types Echo Request (type 128) and Echo Reply (type 129). For Echo Request messages, this field is used as an identifier to aid in matching Echo Replies to the Echo Request. For Echo Reply messages, this field is the identifier from the invoking Echo Request message. Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_seq

Spirent Extension (for Spirent HLTAPI only).

Specifies the sequence number field for ICMPv6 message types Echo Request (type 128) and Echo Reply (type 129). For Echo Request messages, this field is used as a sequence number to aid in matching Echo Replies to the Echo Request. For Echo Reply messages, this field is the sequence number from the invoking Echo Request message. Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_data

Spirent Extension (for Spirent HLTAPI only).

Indicates the echo data field for ICMPv6 message types Echo Request (type 128) and Echo Reply (type 129). The value must be a 4-digit HEX. The default value is 0000. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_reserved

Spirent Extension (for Spirent HLTAPI only).

Indicates the reserved field for ICMPv6 message types MLDv2 Query (type 130), MLDv1 Listener Report (type 131), MLDv1 Listener Done (type 132), Neighbor Solicitation (type 135), Neighbor Advertisement (type 136) and Redirect (type 137). Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_target_address

Spirent Extension (for Spirent HLTAPI only).

Specifies the target address field for ICMPv6 message types Neighbor Solicitation (type 135), Neighbor Advertisement (type 136) and Redirect (type 137). The value must be in IPv6 format. For types 135 and 136, the value must not be a multicast address. The default value is 2000::1. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_oflag

Spirent Extension (for Spirent HLTAPI only).

Specifies the Override flag bit (O-bit) for Neighbor Advertisement messages (type 136). Possible values are 0 and 1. When set to 1, the O-bit indicates that the advertisement should override an existing cache entry and update the cached link-layer address. When set to 0, the advertisement will not update a cached link-layer address though it will update an existing neighbor cache entry for which no link-layer address is known. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_rflag

Spirent Extension (for Spirent HLTAPI only).

Specifies the router flag bit (R-bit) for Neighbor Advertisement messages (type 136). The R-bit is used by Neighbor Unreachability Detection to detect a router that changes to a host. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_sflag

Spirent Extension (for Spirent HLTAPI only).

Specifies the solicited flag for Neighbor Advertisement messages (type 136). The S-bit is used as a reachability confirmation for neighbor unreachability detection. Possible values are 1 and 0. When set to 1, it indicates that the advertisement was sent in response to a neighbor solicitation from the destination address. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_suppress_flag

Spirent Extension (for Spirent HLTAPI only).

Specifies the Suppress Router-Side Processing flag (S-flag) bit for MLDv2 Query messages (type 130). Possible values are 1 and 0. When set to 1, the S-flag indicates to any receiving multicast routers that they have to suppress the normal timer updates they perform upon hearing a Query. The default value is 1. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_max_resp_delay

Spirent Extension (for Spirent HLTAPI only).

Defines the maximum response delay field for ICMPv6 message types MLDv1 Query (type 130), MLDv1 Listener Report (type 131) and MLDv1 Listener Done (type 132). This field specifies the maximum allowed delay before sending a responding Report, in units of milliseconds. Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_mcast_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the multicast IPv6 address for ICMPv6 message types MLDv1 Listener Report (type 131) and MLDv1 Listener Done (type 132). The value must be in IPv6 format. The default value is FF1E::1. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_addr_list_ipv6_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the IPv6 source address for ICMPv6 message types MLDv2 Query (type 130) and MLDv2 Listener Report (type 143). The value must be in IPv6 format. The default value is 2000::1. You must specify ICMPv6 in the -l4_protocol argument.

Spirent Extension (for Spirent HLTAPI only).

Specifies the length field for the Link Layer Address option in ICMPv6 message types Router Solicitation (type 133), Router Advertisement (type 134), Neighbor Solicitation (type 135), Neighbor Advertisement (type 136 ) and Redirect (type 137). Possible values range from 0 to 65535. The default value is 1. You must specify ICMPv6 in the -l4_protocol argument.

Spirent Extension (for Spirent HLTAPI only).

Specifies the option type field for the Link Layer Address option in ICMPv6 message types Router Solicitation (type 133), Router Advertisement (type 134), Neighbor Solicitation (type 135), Neighbor Advertisement (type 136 ) and Redirect (type 137). Possible values are described below:

Value          Type
1           Source Link-Layer Address
2           Target Link-Layer Address
3           Prefix Information
4           Redirected Header
5           MTU

The default value is 1. You must specify ICMPv6 in the -l4_protocol argument.

Spirent Extension (for Spirent HLTAPI only).

Specifies the source/target link layer address field for the Link Layer Address option in ICMPv6 message types Router Solicitation (type 133), Router Advertisement (type 134), Neighbor Solicitation (type 135), Neighbor Advertisement (type 136) and Redirect (type 137). The value must be a 12-digit HEX. The default value is 000000000000. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_mtu_option_type

Spirent Extension (for Spirent HLTAPI only).

Indicates the 8-bit identifier for the MTU option in Router Advertisement messages (type 134). Possible values are described below:

Value          Type
1           Source Link-Layer Address
2           Target Link-Layer Address
3           Prefix Information
4           Redirected Header
5           MTU

The default value is 5. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_mtu_option_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the option length field for the MTU option in Router Advertisement messages (type 134). Possible values range from 0 to 65535. The default value is 1. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_mtu_option_reserved

Spirent Extension (for Spirent HLTAPI only).

Indicates the reserved field for the MTU option in Router Advertisement messages (type 134). Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_mtu_option_mtu

Spirent Extension (for Spirent HLTAPI only).

Specifies the MTU value for the MTU option in Router Advertisement messages (type 134). Possible values range from 0 to 65535. The default value is 1000. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_prefix_option_abit

Spirent Extension (for Spirent HLTAPI only).

Specifies the 1-bit autonomous address-configuration flag for the Prefix Information option in Router Advertisement messages (type 134). Possible values are 1 and 0. When set to 1, it indicates that this prefix can be used for stateless address configuration. The default is 1. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_prefix_option_lbit

Spirent Extension (for Spirent HLTAPI only).

Specifies the 1-bit on-link flag for the Prefix Information option in Router Advertisement messages (type 134). Possible values are 1 and 0. When set to 1, it indicates that this prefix can be used for on-link determination. When set to 0, the advertisement makes no statement about on-link or off-link properties of the prefix. The default value is 1. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_prefix_option_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the option length field for the Prefix Information option in Router Advertisement messages (type 134). Possible values range from 0 to 65535. The default value is 4. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_prefix_option_preferred_lifetime

Spirent Extension (for Spirent HLTAPI only).

Specifies the preferred lifetime for the Prefix Information option in Router Advertisement messages (type 134). The field indicates the length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. Possible values range from 0 to 65535. The default value is 1. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_prefix_option_prefix

Spirent Extension (for Spirent HLTAPI only).

Specifies the prefix field for the Prefix Information option in Router Advertisement messages (type 134). The value is an IPv6 address. The default value is 2000::0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_prefix_option_prefix_len

Spirent Extension (for Spirent HLTAPI only).

Specifies the prefix length field for the Prefix Information option in Router Advertisement messages (type 134). This field indicates the number of leading bits in the prefix field that are valid. Possible values range from 0 to 255. The default value is 64. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_prefix_option_reserved1

Spirent Extension (for Spirent HLTAPI only).

Specifies reserved field 1 for the Prefix Information option in Router Advertisement messages (type 134). Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_prefix_option_reserved2

Spirent Extension (for Spirent HLTAPI only).

Specifies reserved field 2 for the Prefix Information option in Router Advertisement messages (type 134). Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_prefix_option_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the option type field for the Prefix Information option in Router Advertisement messages (type 134). Possible values are described below:

Value          Type
1           Source Link-Layer Address
2           Target Link-Layer Address
3           Prefix Information
4           Redirected Header
5           MTU

The default value is 3. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_prefix_option_valid_lifetime

Spirent Extension (for Spirent HLTAPI only).

Specifies the valid lifetime field for the Prefix Information option in Router Advertisement messages (type 134). This field indicates the length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. Possible values range from 0 to 65535. The default value is 1. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_dest_address

Spirent Extension (for Spirent HLTAPI only).

Specifies the destination address field in Redirect messages (type 137). The destination address is the IPv6 address that is redirected to the target. The default value is 2000::1. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_redirect_hdr_type

Spirent Extension (for Spirent HLTAPI only).

Indicates the option type for the Redirect Header option in Redirect messages (type 137). Possible values are described below:

Value          Type
1           Source Link-Layer Address
2           Target Link-Layer Address
3           Prefix Information
4           Redirected Header
5           MTU

The default value is 4. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_redirect_hdr_length

Spirent Extension (for Spirent HLTAPI only).

Specifies the length of the Redirect Header option in Redirect messages (type 137). Possible values range from 0 to 255. The default value is 4. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_redirect_hdr_reserved1

Spirent Extension (for Spirent HLTAPI only).

Specifies reserved field 1 for the Redirect Header option in Redirect messages (type 137). Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_redirect_hdr_reserved2

Spirent Extension (for Spirent HLTAPI only).

Specifies reserved field 2 for the Redirect Header option in Redirect messages (type 137). Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_group_address

Spirent Extension (for Spirent HLTAPI only).

Defines the multicast address field in MLDv2 Query messages (type 130). The value must be in IPv6 format. The default value is FF1E::1. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_max_resp_code

Spirent Extension (for Spirent HLTAPI only).

Defines the maximum response code field in MLDv2 Query messages (type 130). This field specifies the maximum time allowed before sending a responding report. Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_num_source

Spirent Extension (for Spirent HLTAPI only).

Defines the number of sources field in MLDv2 Query messages (type 130). This field specifies how many source addresses are present in the Query. Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_qqic

Spirent Extension (for Spirent HLTAPI only).

Defines the Querier’s Query Interval Code (QQIC) field in MLDv2 Query messages (type 130). QQIC specifies the query interval used by the querier. Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_qrv

Spirent Extension (for Spirent HLTAPI only).

Specifies the Querier’s Robustness Variable (QRV) bits in MLDv2 Query messages (type 130). The value is a 3-bit string. The default value is 000. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_resv

Spirent Extension (for Spirent HLTAPI only).

Specifies the reserved field in MLDv2 Query messages (type 130). Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_cur_hoplimit

Spirent Extension (for Spirent HLTAPI only).

Specifies the default hop limit to be used when sending IP packets. Possible values range from 0 to 255. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_mbit

Spirent Extension (for Spirent HLTAPI only).

Specifies the 1-bit Managed address configuration flag. When set, it indicates that addresses are available via Dynamic Host Configuration Protocol. Possible values are 0 and 1. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_obit

Spirent Extension (for Spirent HLTAPI only).

Specifies the 1-bit Other configuration flag. When set, it indicates that other configuration information is available via DHCPv6. Possible values are 0 and 1. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_reachable_time

Spirent Extension (for Spirent HLTAPI only).

Specifies the time that a node assumes a neighbor is reachable after having received a reachability confirmation. Possible values range from 0 to 4294967295. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_retrans_time

Spirent Extension (for Spirent HLTAPI only).

Specifies the time between retransmitted Neighbor Solicitation messages. Possible values range from 0 to 4294967295. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_router_lifetime

Spirent Extension (for Spirent HLTAPI only).

Specifies the lifetime associated with the default router in units of seconds. Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_num_grp_records

Spirent Extension (for Spirent HLTAPI only).

Defines the number of group records field for MLDv2 Listener Report messages (type 143). This field specifies how many multicast address records are present in this report. Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_grp_record_aux_data_len

Spirent Extension (for Spirent HLTAPI only).

Defines the auxiliary data length field for the multicast address record in MLDv2 Listener Report messages (type 143). This field specifies the length of the auxiliary data field in the multicast address record. Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_grp_record_mcast_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the multicast IPv6 address for the multicast address record in MLDv2 Listener Report messages (type 143). The value must be in IPv6 format. The default value is FF1E::1. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_grp_record_num_source

Spirent Extension (for Spirent HLTAPI only).

Defines the number of sources field for the multicast address record in MLDv2 Listener Report messages (type 143). This field specifies how many source addresses are present in this multicast address record. Possible values range from 0 to 65535. The default value is 0. You must specify ICMPv6 in the -l4_protocol argument.

-icmpv6_grp_record_record_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the record type for the multicast address record in MLDv2 Listener Report messages (type 143). You must specify ICMPv6 in the -l4_protocol argument. Possible values are described below:

Value           Description
  1             MODE_IS_INCLUDE
  2             MODE_IS_EXCLUDE
  3             CHANGE_TO_INCLUDE_MODE
  4             CHANGE_TO_EXCLUDE_MODE
  5             ALLOW_NEW_SOURCES
  6             BLOCK_OLD_SOURCES
-igmp_checksum

Spirent Extension (for Spirent HLTAPI only).

Specifies the checksum field for the Report/Query message. You can add modifiers for this argument using the following options:

-modifier_option
-modifier_mode
-modifier_count
-modifier_repeat_count
-modifier_step
-modifier_mask
-modifier_list_value
-igmp_group_addr

Specifies the IP multicast group address of the group being joined or left. This address must be in IPv4 format. You must specify IGMP in the -l4_protocol argument. This argument is only supported when -igmp_version is set to 1 or 2, or -igmp_version is set to 3 and -igmp_msg_type is set to query.

-igmp_group_count

Specifies the number of multicast group addresses to generate for a stream. Possible values range from 0 to 65535. You must specify IGMP in the -l4_protocol argument. This argument is only supported when -igmp_version is set to 1 or 2, or -igmp_version is set to 3 and -igmp_msg_type is set to query.

-igmp_group_mode

Indicates how the group address varies when the repeat count is greater than 1. You must specify IGMP in the -l4_protocol argument. Possible values are:

increment - The group address increments by the step
          defined in the -igmp_group_step argument.
decrement - The group address decrements by the step
          defined in the -igmp_group_step argument.

This argument is only supported when -igmp_version is set to 1 or 2, or -igmp_version is set to 3 and -igmp_msg_type is set to query.

-igmp_group_step

Specifies the amount by which to increment or decrement the IP Multicast group address (-igmp_group_addr) for subsequent messages. You must specify IGMP in the -l4_protocol argument and “increment” or “decrement” for the -igmp_group_mode argument. The default value is 0.0.0.1. This argument is only supported when -igmp_version is set to 1 or 2, or -igmp_version is set to 3 and -igmp_msg_type is set to query.

-igmpv3_grprechandle

Specifies the handle of the IGMPv3 PDU in the stream that you want to modify. This argument is available for mode -modify. The value is returned from mode -create when you create an IGMPv3 header.

-igmp_multicast_src

Specifies the list of source IP addresses in the Report message. The Report message may specify these specific sources be used or not used for the multicast group as a condition of membership. The value must be in IPv4 format.(for example, -igmp_multicast_src {196.168.1.10 196.168.1.11})You must specify IGMP in the -l4_protocol argument. This argument is only supported when -igmp_version is set to 3 and -igmp_msg_type is set to report.

-igmp_multicast_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the multicast group address to which the Group record in the Report message pertains. You must specify IGMP in the -l4_protocol argument. This argument is only supported when -igmp_version is set to 3 and -igmp_msg_type is set to report.

-igmp_record_type

Specifies the types of Group Records to be included in the Report message. Possible values are described below:

Value       Description
5       ALLOW_NEW_SOURCES
6       BLOCK_OLD_SOURCES
4       CHANGE_TO_EXCLUDE_MODE
3       CHANGE_TO_INCLUDE_MODE
2       MODE_IS_EXCLUDE
1       MODE_IS_INCLUDE

You must specify IGMP in the -l4_protocol argument. This argument is only supported when -igmp_version is set to 3 and -igmp_msg_type is set to report.

-igmp_max_response_time

The maximum allowed time, in units of 1/10 second, before sending a responding report. Possible values range from 0 to 65535. You must specify IGMP in the -l4_protocol argument and set -igmp_version to 2 or 3. This option is unavailable when -igmp_msg_type is set to report.

-igmp_msg_type

Specifies the IGMPv3 (see -igmp_version) message type to generate. You must specify IGMP in the -l4_protocol argument and set -igmp_version to 2 or 3, in which case one of the following two values must be specified:

query - Generates a Membership Query message, which is
        sent by IP multicast routers to query the multicast
        reception state of neighboring interfaces.

report - Generates a Membership Report message. Version
        3 Membership Reports are sent by IP systems to
        report (to neighboring routers) the current
        multicast reception state, or changes in the
        multicast reception state, of their interfaces.
-igmp_qqic

Defines the Querier’s Query Interval Code (QQIC) in IGMPv3 Query message. The QQIC indicates the interval at which IGMP Membership Queries are sent. Possible values range from 0 to 255. You must specify IGMP in the -l4_protocol argument and set-igmp_version to 3.

-igmp_qrv

Configures the Querier’s Robustness Variable (QRV) in IGMPv3 Query messages. Possible values range from 0 to 7. If you specify a non-zero value, the QRV field will contain the Robustness Variable value used by the querier, for example, the sender of the Query. You must specify IGMP in the -l4_protocol argument and set -igmp_version to 3.

-igmp_s_flag

Sets the S-flag in a IGMPv3 query message. Possible values are 0 and 1. If set to 0, it indicates that any receiving multicast routers must not suppress the normal timer updates they perform upon hearing a query. If set to 1, it indicates that any receiving multicast routers must suppress the normal timer updates they perform upon hearing a query. The default is 0. You must specify IGMP in the -l4_protocol argument and set -igmp_version to 3.

-igmp_type

Defines the type of IGMP message to send, for example, for IGMPv1, 2 indicates that it is the IGMP membership Query message to be sent. You must specify -igmp_type in numeric format. See RFC 3228 for detail information. You must specify IGMP in the -l4_protocol argument.

-igmp_version

Defines IGMP version. You must specify IGMP in the -l4_protocol argument. Possible values are:

1 - Indicates IGMP version 1. In IGMP version 1, the
    routers send IGMP queries to the "all-hosts" multicast
    address of 224.0.0.1 to solicit multicast groups with
    active  multicast receivers. The multicast receivers
    also can send  IGMP reports to the router to notify it
    that they are interested in receiving a particular
    multicast stream. Hosts can send the report
    asynchronously or in response to the IGMP queries sent
    by the router.

2 - Indicates IGMP version 2. IGMP version 2 introduces
    several changes to make IGMP more efficient in joining
    and leaving the group. The important changes include
    Querier  election mechanism, Leave group message,
    Group-specific query and so on.

3 - Indicates IGMP version 3. IGMP Version 3 (IGMPv3)
    adds support for "source filtering", which enables a
    multicast receiver host to signal to a router which groups
    it wants to receive multicast traffic from and from which
    source(s) this traffic is expected.

Note

If you have set -igmp_version to 3, you must also specify -igmp_msg_type, or the IGMPv3 header will not be created.

-isis_pdu_header_len

Specifies the PDU header length of ISIS hello packet. The value must be in 2-digit hexadecimal format. Possible values range from 00 to FF. The default value is 00. You must set -l4_protocol to isis.

-isis_version

Specifies the version/protocol ID extension of ISIS hello packet. The value must be in 2-digit hexadecimal format. Possible values range from 00 to FF. The default value is 01. You must set -l4_protocol to isis.

-isis_system_id_len

Specifies the system ID length of ISIS hello packet. The value must be in 2-digit hexadecimal format. Possible values range from 00 to FF. The default value is 00. You must set -l4_protocol to isis.

-isis_pdu_type

Specifies the PDU type of ISIS hello packet. The value must be in 2-digit hexadecimal format. Possible values range from 00 to FF. The default value is 0f. You must set -l4_protocol to isis.

-isis_version2

Specifies the version of ISIS hello packet. The value must be in 2-digit hexadecimal format. Possible values range from 00 to FF. The default value is 01. You must set -l4_protocol to isis.

-isis_reserved

Specifies the reserved field of ISIS hello packet. The value must be in 2-digit hexadecimal format. Possible values range from 00 to FF. The default value is 00. You must set -l4_protocol to isis.

-isis_max_area_addr

Specifies the maximum area addresses of ISIS hello packet. The value must be in 2-digit hexadecimal format. Possible values range from 00 to FF. The default value is 00. You must set -l4_protocol to isis.

-isis_reserved_circuit_type

Specifies the combined value of reserved and circuit type of ISIS hello packet. The value must be in 2-digit hexadecimal format. Possible values range from 00 to FF. The default value is 01. You must set -l4_protocol to isis.

-isis_source_id

Specifies the source ID of ISIS hello packet. The value must be in hexadecimal format. The default is the value of -mac_src, or 000001000001 if -mac_src is not defined. You must set -l4_protocol to isis.

-isis_holder_timer

Specifies the holder timer of ISIS hello packet. The value must be in 4-digit hexadecimal format. Possible values range from 0000 to FFFF. The default value is 001e. You must set -l4_protocol to isis.

-isis_pdu_len

Specifies the pdu length of ISIS hello packet. The value must be in 4-digit hexadecimal format. Possible values range from 0000-FFFF. The default value is 0000. You must set -l4_protocol to isis.

-isis_reserved_bit

Specifies the reserved bit field before priority of ISIS hello packet. The value must be a binary string. The default value is 0. You must set -l4_protocol to isis. The total length of -isis_reserved_bit and -isis_priority must be 8 bit to comprise the 1-byte field for ISIS hello packet.

-isis_priority

Specifies the priority of ISIS hello packet. The value must be a binary string. The default value is 0000000. You must set -l4_protocol to isis. The total length of -isis_reserved_bit and -isis_priority must be 8 bit to comprise the 1-byte field for ISIS hello packet.

-isis_lan_id

Specifies the LAN ID of ISIS hello packet. The value must be in hexadecimal. The default is the value of -isis_source_id followed by “ff”. You must set -l4_protocol to isis.

-l4_ip_ecn

Spirent Extension (for Spirent HLTAPI only).

Specifies the 2-bit ECN field in the Layer 4 IPv4 header. You must specify IPv4 in the -l4_protocol argument. The values are described below:

Value   Description

00     Not ECT
01     ECT (1)
10     ECT (0)
11     CE
-l4_ip_gateway_addr

Spirent Extension (for Spirent HLTAPI only).

Specifie the starting IPv4 gateway address in the Layer 4 IP header. The value must be in IPv4 format. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_src_addr

Spirent Extension (for Spirent HLTAPI only).

Specifie the source IPv4 address of the first generated packet in the Layer 4 IP header. The default value is 0.0.0.0. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_dst_addr

Spirent Extension (for Spirent HLTAPI only).

Specifie the destination IPv4 address of the first generated packet in the Layer 4 IP header. The default value is 192.0.0.1. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_protocol

Spirent Extension (for Spirent HLTAPI only).

Indicates the type of IP protocol in the Layer 4 IP header. Possible values range from 0 to 255. The default value is 253. Possible values are:

Value Description
0     HOPOPT
1     ICMP
2     IGMP
3     GGP
4     IP
5     ST
6     TCP
7     CBT
8     EGP
9     IGP
10    BBN-RCC-MON
11    NVP-II
12    PUP
13    ARGUS
14    EMCON
15    XNET
16    CHAOS
17    UDP
18    MUX
19    DCN-MEAS
20    HMP
21    PRM
22    XNS-IDP
23    TRUNK-1
24    TRUNK-2
25    LEAF-1
26    LEAF-2
27    RDP
28    IRTP
29    ISO-TP4
30    NETBLT
31    MFE-NSP
32    MERIT-INP
33    SEP
34    3PC
35    IDPR
36    XTP
37    DDP
38    IDPR-CMTP
39    TP++
40    IL
41    IPv6
42    SDRP
43    IPv6-Route
44    IPv6-Frag
45    IDRP
46    RSVP
47    GRE
48    MHRP
49    BNA
50    ESP
51    AH
52    I-NLSP
53    SWIPE
54    NARP
55    MOBILE
56    TLSP
57    SKIP
58    IPv6-ICMP
59    IPv6-NoNxt
60    IPv6-Opts
62    CFTP
64    SAT-EXPAK
65    KRYPTOLAN
66    RVD
67    IPPC
69    SAT-MON
70    VISA
71    IPCV
72    CPNX
73    CPHB
74    WSN
75    PVP
76    BR-SAT-MON
77    SUN-ND
78    WB-MON
79    WB-EXPAK
80    ISO-IP
81    VMTP
82    SECURE-VMTP
83    VINES
84    TTP
85    NSFNET-IGP
86    DGP
87    TCF
88    EIGRP
89    OSPFIGP
90    Sprite-RPC
91    LARP
92    MTP
93    AX.25
94    IPIP
95    MICP
96    SCC-SP
97    ETHERIP
98    ENCAP
100   GMTP
101   IFMP
102   PNNI
103   PIM
104   ARIS
105   SCPS
106   QNX
107   A/N
108   IPComp
109   SNP
110   Compaq-Peer
111   IPX-in-IP
112   VRRP
113   PGM
115   L2TP
116   DDX
117   IATP
118   STP
119   SRP
120   UTI
121   SMP
122   SM
123   PTP
124   ISIS over IPv4
125   FIRE
126   CRTP
127   CRUDP
128   SSCOPMCE
129   IPLT
130   SPS
131   PIPE
132   SCTP
133   FC
134   RSVP-E2E-IGNORE
135   Mobility Header
136   UDPLite
137   MPLS-in-IP
253   Experimental
255   Reserved

You must specify IPv4 in the -l4_protocol argument.

-l4_ip_hdr_length

Spirent Extension (for Spirent HLTAPI only).

Specifie the length of the Layer 4 IP header field in number of bytes. Possible values range from 0 to 15. The default value is 5. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_id

Spirent Extension (for Spirent HLTAPI only).

Specifie the identifying value used to help assemble the fragments of a datagram in the Layer 4 IP header. Possible values range from 0 to 65535. The default value is 0. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_checksum

Verifies that packets are not corrupted in the Layer 4 IP header. Possible values are 0 (not corrupted) and 1 (corrupted). The Default value is 0. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_ttl

Spirent Extension (for Spirent HLTAPI only).

Sets the time-to-live (TTL) value in the Layer 4 IP header. Possible values range from 0 to 255. The default value is 64. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_fragment_offset

Spirent Extension (for Spirent HLTAPI only).

Specifie the byte count from the start of the original sent packet in the Layer 4 IP header. Possible values range from 0 to 8191. The default value is 0. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_dst_mode

Spirent Extension (for Spirent HLTAPI only).

Specifie how Spirent HLTAPI will assign destination IPv4 addresses for a particular stream in the Layer 4 IP header. Possible values are:

increment  For all packets, the destination IP address
           increments by the step specified in the
           -l4_ip_dst_step argument

decrement  For all packets, the destination IP address
           decrements by the step specified in the
           -l4_ip_dst_step argument

random     For all packets, the destination IP addresses are
           in random order

shuffle    For all packets, the destination IP addresses are
           in random order within a range that is determined by
           the values of -l4_ip_dst_count and -l4_ip_dst_step

fixed      The destination IP address is the same for all
           packets

list    - For all packets, the destination IP addresses are a
          fixed set of values.

You must specify IPv4 in the -l4_protocol argument.

-l4_ip_dst_step

Spirent Extension (for Spirent HLTAPI only).

Specifies the amount by which to increment the specified destination IP address (-l4_ip_dst_addr) for subsequent packets. The modifier must be in IPv4 format. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_dst_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of destination IPv4 addresses to generate in the Layer 4 IP header. Possible values range from 1 to 2147483647. The default value is 1. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_src_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign source IPv4 addresses for a particular stream in the Layer 4 IP header. Possible values are:

increment  For all packets, the source IP address
           increments by the step specified in the
           -l4_ip_src_step argument

decrement  For all packets, the source IP address
           decrements by the step specified in the
           -l4_ip_src_step argument

random     For all packets, the source IP addresses are
           in random order

shuffle    For all packets, the source IP addresses are in
           random order within a range that is determined by
           the values of -l4_ip_src_count and -l4_ip_src_step

fixed      The source IP address is the same for all
           packets

You must specify IPv4 in the -l4_protocol argument.

-l4_ip_src_step

Spirent Extension (for Spirent HLTAPI only).

Indicates both the step value and the prefix length that Spirent HLTAPI applies to the specified source address (-l4_ip_src_addr). The value must be must be in IPv4 format. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_src_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of source IP addresses to generate for a stream in the Layer 4 IP header. Possible values range from 1 to 2147483647. The default value is 1. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_src_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies in the Layer 4 IP header how many times to repeat the same source IPv4 address before incrementing it. The value must be an integer. The default value is 0. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_dst_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies in the Layer 4 IP header how many times to repeat the same destination IPv4 address before incrementing it. The value must be an integer.The default value is 0. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_precedence

Spirent Extension (for Spirent HLTAPI only).

Specifies the 3-bit ToS Precedence field in the Layer 4 IP header. Possible values are 0 to 7. The default value is 0. You must specify IPv4 in the -l4_protocol argument. The values are described below:

Value     Description
7       Network Control
6       Internetwork Control
5       CRITIC/ECP
4       Flash Override
3       Flash
2       Immediate
1       Priority
0       Routine
-l4_ip_precedence_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign the ToS Precedence value in the Layer 4 IP header for a particular stream. Possible values are:

increment   For all packets, the ToS Precedence value
            increments by the step specified in the
            -l4_ip_precedence_step argument.

decrement   For all packets, the ToS Precedence value
            decrements by the step specified in the
            -l4_ip_precedence_step argument.

random      For all packets, the ToS Precedence values will be
            in random order.

shuffle     For all packets, the ToS Precedence values will be
            in random order within a range that is determined by
            the values of -l4_ip_precedence_count and
            -l4_ip_precedence_step.

 list   - For all packets, the ToS Precedence are a
           fixed set of values.
-l4_ip_precedence_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of IP Precedence values to create in the Layer 4 IP header for a particular stream. The default value is 0. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_precedence_step

Spirent Extension (for Spirent HLTAPI only).

Specifies the amount by which to modify the specified IP Precedence field (l4_ip_precedence). Possible values range from 1 to 7. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_tos_field

Spirent Extension (for Spirent HLTAPI only).

Sets the 4-bit ToS field in the Layer 4 IP header. Possible values range from 0 to 15. The default value is 0. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_tos_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign the ToS value in the Layer 4 IP header for a particular stream. Possible values are:

increment   For all packets, the ToS value increments by the
            step specified in the -l4_ip_tos_step argument.

decrement   For all packets, the ToS value decrements by the
            step specified in the -l4_ip_tos_step argument.

random     For all packets, the ToS values will be in random
           order.

shuffle    For all packets, the ToS values are in random
           order within a range that is determined by
           the values of -l4_ip_tos_count and -l4_ip_tos_step.

fixed      The ToS value is the same for all packets

list       For all packets, the ToS values are a
           fixed set of values.
-l4_ip_tos_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times the ToS value will change before reverting to the initial value. The default value is 0. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_tos_step

Spirent Extension (for Spirent HLTAPI only).

Specifies the amount by which to modify the specified ToS field in the Layer 4 IP header. Possible values range from 1 to 15. The default value is 0. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_mbz

Spirent Extension (for Spirent HLTAPI only).

Specifies the 1-bit MBZ field in the Layer 4 IP header. Possible values are 0 and 1. The default value is 0. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_dscp

Spirent Extension (for Spirent HLTAPI only).

Specifies the DSCP field in the Layer 4 IP header for a particular stream. Possible values are 0 to 63. The default value is 0. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_dscp_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of DSCP values to generate for a stream. Possible values range from 1 to 63. The default value is 1. You must specify IPv4 in the -l4_protocol argument.

-l4_ip_dscp_step

Spirent Extension (for Spirent HLTAPI only).

Specifies the amount by which to increment the specified DSCP value (-l4_ip_dscp) for subsequent packets. You must specify IPv4 in the -l4_protocol argument.

-l4_ipv6_dst_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies in the Layer 4 IP header how many times to repeat the same destination IPv6 address before incrementing it. The value must be an integer. The default value is 0. You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_src_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies in the Layer 4 IP header how many times to repeat the same source IPv6 address before incrementing it. The value must be an integer. The default value is 0. You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_gateway_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the starting IPv6 gateway address in the Layer 4 IPv6 header. The value must be in IPv6 format. You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_src_addr

Spirent Extension (for Spirent HLTAPI only).

Specifie the source IPv6 address of the first generated packet in the Layer 4 IPv6 header. The default value is fe80:0:0:0:0:0:0:12. You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_dst_addr

Spirent Extension (for Spirent HLTAPI only).

Specifie the destination IPv6 address of the first generated packet in the Layer 4 IPv6 header. The default value is fe80:0:0:0:0:0:0:22. You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_hop_limit

Spirent Extension (for Spirent HLTAPI only).

Specifie the hop limit field in the Layer 4 IPv6 header. Possible values range from 0 to 255. The default value is 64. You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_traffic_class

Spirent Extension (for Spirent HLTAPI only).

Specifie the traffic class field in the Layer 4 IPv6 header. Possible values range from 0 to 255. The default value is 0. You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_next_header

Spirent Extension (for Spirent HLTAPI only).

Specifie the next header field in the Layer 4 IPv6 header. Possible values range from 0 to 255. The default value is 59. You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_flow_label

Spirent Extension (for Spirent HLTAPI only).

Specifie the flow label value of the stream in the Layer 4 IPv6 header. Possible values range from 0 to 1048575. The default is 0. You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_length

Spirent Extension (for Spirent HLTAPI only).

Specifie the 2-byte payload length field in the Layer 4 IPv6 header. Possible values range from 0 to 65535. The default value is 128. You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_dst_mode

Spirent Extension (for Spirent HLTAPI only).

Specifie how Spirent HLTAPI will assign destination IPv6 addresses for a particular stream in the Layer 4 IPv6 header. Possible values are:

increment  For all packets, the destination IPv6 address
           increments by the step specified in the
           -l4_ipv6_dst_step argument

decrement  For all packets, the destination IPv6 address
           decrements by the step specified in the
           -l4_ipv6_dst_step argument

random    For all packets, the destination IPv6 addresses are
          in random order

shuffle   For all packets, the destination IPv6 addresses are
          in random order within a range that is determined
          by the values of -l4_ipv6_dst_count and
          -l4_ipv6_dst_step

fixed    The destination IPv6 address is the same for all
         packets

list    - For all packets, the destination IPv6 addresses are
          a fixed set of values.

You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_dst_step

Spirent Extension (for Spirent HLTAPI only).

Specifie the amount by which to increment the specified IPv6 destination IP address (-l4_ipv6_dst_addr) for subsequent packets. The value must be either in IPv6 format or an integer. When it is in IPv6 format, The default value is ::1. When it is an integer, possible values range from 1 to 65535, and the default is 1. You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_dst_count

Spirent Extension (for Spirent HLTAPI only).

Specifie the number of destination IPv6 addresses to generate for a stream in the Layer 4 IPv6 header. Possible values range from 1 to 2147483647. The default value is 1. You must specify IPv6 in the -l4_protocol argument

-l4_ipv6_src_mode

Spirent Extension (for Spirent HLTAPI only).

Specifie how Spirent HLTAPI will assign source IPv6 addresses for a particular stream in the Layer 4 IPv6 header. Possible values are:

increment  For all packets, the source IPv6 address
           increments by the step specified in the
           -l4_ipv6_src_step argument.

decrement  For all packets, the source IPv6 address
           decrements by the step specified in the
           -l4_ipv6_src_step argument.

random     For all packets, the source IPv6 addresses are
           in random order.

shuffle    For all packets, the source IPv6 addresses are in
           random order between a range that is determined by the
           values of -l4_ipv6_src_count and -l4_ipv6_src_step

fixed      The source IPv6 address is the same for all
           packets

list    - For all packets, the source IPv6 addresses are a
          fixed set of values.

You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_src_step

Spirent Extension (for Spirent HLTAPI only).

Specifie the amount by which to increment the specified IPv6 source IP address (-l4_ipv6_src_addr) for subsequent packets in the Layer 4 IPv6 header. The value must be either in IPv6 format or an integer. When it is in IPv6 format, The default value is ::1. When it is an integer, possible values range from 1 to 65535, and The default value is 1. You must specify IPv6 in the -l4_protocol argument.

-l4_ipv6_src_count

Spirent Extension (for Spirent HLTAPI only).

Specifie the number of source IPv6 addresses to generate for a stream in the Layer 4 IPv6 header. Possible values range from 1 to 2147483647. The default value is 1. You must specify IPv6 in the -l4_protocol argument.

-length_mode

Specifies how Spirent HLTAPI generates the size of each packet. Possible values are fixed, random, increment, decrement, imix, and auto. Gaussian and quad modes are not supported in Spirent HLTAPI. In fixed mode, all frames in a stream have the same length. If you set the length mode to “fixed”, use the -l3_length argument to specify the size of each frame. In fixed mode, the frames are fixed per stream, so fixed mode applies to only one stream. All frames for that stream will have a fixed frame size.

In random mode, the frames have variable lengths. If you set the length mode to “random”, use the -l3_length_min and l3_length_max arguments to specify the minimum and maximum size of each frame. Because “random” applies to the entire port, not per stream, Spirent HLTAPI will generate frame sizes within the range last specified. The most recent random mode range specification affects all random mode streams defined for a port.

For example, suppose you have four streams of traffic coming out of the same port but with the following settings:

stream 1: -length mode fixed -l3_length 64
stream 2: -length mode random -l3_length_min 128
        -l3_length_max 256
stream 3: -length mode random-l3_length_min 60
        -l3_length_max 150
stream 4: -length mode fixed -l3_length 128

In the above example, stream 1 is 64 bytes, stream 2 ranges between 128 and 256 bytes, stream 3 ranges between 60 and 150 bytes, and stream4 is 128 bytes.

In increment mode, the frame length increments. The step by which the frame length increments is specified in the -l3_length_step argument. Increment mode applies to only one stream. If you set the length mode to “increment”, use the -l3_length_min and -l3_length_max arguments to specify the minimum and maximum size of each frame.

In decrement mode, the frame length decrements. The step by which the frame length decrements is specified in the -l3_length_step argument. Decrement mode applies to only one stream. If you set the length mode to decrement, use the -l3_length_min and -l3_length_max arguments to specify the minimum and maximum size of each frame.

In imix mode, the packet lengths and the ratios of the packet lengths are fixed. Specify the packet lengths using the -l3_imix1_size, -l3_imix2_size, -l3_imix3_size and -l3_imix4_size arguments. Define the ratios of packet lengths using the -l3_imix1_ratio, -l3_imix2_ratio, -l3_imix3_ratio and -l3_imix4_ratio arguments. The sum of all the ratios is 100.

In auto mode, the payload is automatically set to zero. Configure the smallest frame size consistent with the headers defined in the frame. Append the 20-byte signature field if -disable_signature is set to 0.

-mac_discovery_gw

Specify the gateway for the stream, so you can send an ARP for this stream. You must also enable the ARP send request (sth::interface_config -arp_send_req 1), and then call sth::traffic_control -action run -port_handle $porthandle send the ARP. ARP is sent each time you call this function. Both IPv4 and IPv6 are supported. The default is 192.85.1.1 for IPv4, ::0 for IPv6.

Spirent HLTAPI requires that you set -mac_discovery_gw for each stream. You must also specify ethernet_ii in the -l2_encap argument.

-mac_discovery_gw_count

The number of gateway addresses for this streamblock. You should specify this option when the stream is across different sub-interfaces. Possible values range from 1 to 2147483647. The default is 1.

-mac_discovery_gw_step

The amount by which to increment the specified gateway address (-mac_discovery_gw) for subsequent packets. The default is 0.0.0.1 for IPv4, ::1 for IPv6.

-mac_dst

Specifies the destination MAC address for the port. The default is 00-00-00-00-00-00. .. note:: When generating raw streamblocks for multicast traffic, Spirent HLTAPI will automatically calculate the correct destination MAC address if you leave this argument as the default.

-mac_dst_count

The number of destination MAC addresses to generate for a particular stream. Possible values are 1 to 2147483647. The default is 1.

-mac_dst_mode

Specifies how Spirent HLTAPI will assign the destination MAC addresses for a particular stream. Possible values are:

fixed - The destination MAC address is the same for all
        packets.

increment - For all packets, the destination MAC address
         increments by the step specified in the -mac_dst_step
         argument.

decrement - For all packets, the destination MAC address
         decrements by the step specified in the -mac_dst_step
         argument

discovery - For all packets, Spirent HLTAPI will receive the
          destination MAC address from the ARP request, and assign
          the value to the -mac_dst_addr attribute.

random    - For all packets, the MAC addresses are
          in random order.

shuffle - For all packets, the destination MAC addresses are in
          random order within a range that is determined by the
          values of -mac_dst_count and -mac_dst_step.

list    - For all packets, the destination MAC addresses are a
          fixed set of values.

This attribute is Mandatory . You must set it for each stream. You must also set -mac_discovery_gw for each stream.

-mac_dst_step

The amount by which to increment the specified destination MAC address (-mac_dst) for subsequent packets. Possible values range from 1 to 255, expressed as a power-of-two value (1,2,4,8,16…). The default is 1.

-mac_dst2

Specifies the destination MAC address for the port specified in -port-handle2. The default is 00-00-00-00-00-00. .. note:: When generating raw streamblocks for multicast traffic, Spirent HLTAPI will automatically calculate the correct destination MAC address if you leave this argument as the default.

-mac_dst2_count

The number of destination MAC addresses to generate for a particular stream. Possible values are 1 to 2147483647. The default is 1.

-mac_dst2_mode

Specifies how Spirent HLTAPI will assign the destination MAC addresses for a particular stream. Possible values are:

fixed - The destination MAC address is the same for all
        packets.

increment - For all packets, the destination MAC address
          increments by the step specified in the -mac_dst2_step
          argument.

decrement - For all packets, the destination MAC address
          decrements by the step specified in the -mac_dst2_step
          argument

random  - For all packets, the MAC addresses are
          in random order.

shuffle - For all packets, the destination MAC addresses are in
          random order within a range that is determined by the
          values of -mac_dst2_count and -mac_dst2_step.

list  - For all packets, the destination MAC addresses are a
        fixed set of values.
-mac_dst2_step

The amount by which to increment the specified destination MAC address (-mac_dst) for subsequent packets. Possible values range from 1 to 255, expressed as a power-of-two value (1,2,4,8,16…). The default is 1.

-mac_src

Specifies the source MAC address for the port. The default is 00-00-01-00-00-01.

-mac_src_count

The number of the source MAC addresses to generate for a particular stream. Possible values range from 1 to 2147483647. The default is 1.

-mac_src_mode

Specifies how Spirent HLTAPI will assign the source MAC addresses for a particular stream. Possible values are:

fixed - The source MAC address is the same for all packets.

increment - For all packets, the source MAC address
       increments by the step specified in the -mac_src_step
       argument.

decrement - For all packets, the source MAC address
      decrements by the step specified in the -mac_src_step
      argument

random  - For all packets, the MAC addresses are
      in random order.

shuffle - For all packets, the source MAC addresses are in
      random order within a range that is determined by the values
      of -mac_src_count and -mac_src_step.

list  - For all packets, the source MAC addresses are a
        fixed set of values.
-mac_src_step

The amount by which to increment the specified source MAC address (-mac_src) for subsequent packets. Possible values range from 1 to 255, expressed as a power-of-two value (1,2,4,8,16…). The default is 1.

-mac_src2

Specifies the source MAC address for the port specified in -port-handle2. The default is 00-00-01-00-00-01.

-mac_src2_count

The number of the source MAC addresses to generate for a particular stream. Possible values range from 1 to 2147483647. The default is 1.

-mac_src2_mode

Specifies how Spirent HLTAPI will assign the source MAC addresses for a particular stream. Possible values are:

fixed - The source MAC address is the same for all packets.

increment - For all packets, the source MAC address
       increments by the step specified in the -mac_src2_step
       argument.

decrement - For all packets, the source MAC address
       decrements by the step specified in the -mac_src2_step
       argument.

random  - For all packets, the MAC addresses are
       in random order.

shuffle - For all packets, the source MAC addresses are in
       random order within a range that is determined by the
       values of -mac_src2_count and -mac_src2_step.

list  - For all packets, the source MAC addresses are a
        fixed set of values.
-mac_src2_step

The amount by which to increment the specified source MAC address (-mac_src) for subsequent packets. Possible values range from 1 to 255, expressed as a power-of-two value (1,2,4,8,16…). The default is 1.

-mac_src2_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same source MAC address before incrementing it for a particular stream. Possible values range from 1 to 2147483647. The default is 1.

-mac_dst2_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same destination MAC address before incrementing it for a particular stream. Possible values range from 1 to 2147483647. The default is 1.

-mac_src_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same source MAC address before incrementing it for the port. Possible values range from 1 to 2147483647. The default is 1.

-mac_dst_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same destination MAC address before incrementing it for the port. Possible values range from 1 to 2147483647. The default is 1.

-mac_src_seed

Spirent Extension (for Spirent HLTAPI only).

Specifies the seed value which is used for generating random numbers. The default value is 0. You must specify random in the -mac_src_mode argument.

-mac_src_mask

Spirent Extension (for Spirent HLTAPI only).

Specifies the data bytes to be modified in the source MAC. The mask size must be the same size as the data. The default is 00:00:FF:FF:FF:FF.

-mac_dst_seed

Spirent Extension (for Spirent HLTAPI only).

Specifies the seed value which is used for generating random numbers. The default value is 0. You must specify random in the -mac_dst_mode argument.

-mac_dst_mask

Spirent Extension (for Spirent HLTAPI only).

Specifies the data bytes to be modified in the destination MAC. The mask size must be the same size as the data. The default is 00:00:FF:FF:FF:FF.

-mac_src2_seed

Spirent Extension (for Spirent HLTAPI only).

Specifies the seed value which is used for generating random numbers. The default value is 0. You must specify random in the -mac_src2_mode argument.

-mac_src2_mask

Spirent Extension (for Spirent HLTAPI only).

Specifies the data bytes to be modified in the source MAC. The mask size must be the same size as the data. The default is 00:00:FF:FF:FF:FF.

-mac_dst2_seed

Spirent Extension (for Spirent HLTAPI only).

Specifies the seed value which is used for generating random numbers. The default value is 0. You must specify random in the -mac_dst2_mode argument.

-mac_dst2_mask

Spirent Extension (for Spirent HLTAPI only).

Specifies the data bytes to be modified in the destination MAC. The mask size must be the same size as the data. The default is 00:00:FF:FF:FF:FF.

-eth_preamble

Specifies the preamble field of the Ethernet header. The default is 55555555555555d5.

-import_textfile_param

Spirent Extension (for Spirent HLTAPI only).

Specifies the parameter name for which the text file need to be imported. The value supported for this argument is mac_dst.

Dependency: -import_textfile_name and -mac_dst_mode list.

The default is empty.

-import_textfile_name

Spirent Extension (for Spirent HLTAPI only).

Specifies the textfile name and the path to import the values.

Dependency: -import_textfile_param and -mac_dst_mode list

The default is empty.

-llc_control

Spirent Extension (for Spirent HLTAPI only).

Specifies the control field in the Logical Link Control (LLC) header. LLC is the upper portion of the data link layer of the OSI Model, which presents a uniform interface to the user of the data link service. The value must be in 2-digit hexadecimal format. Possible values range from 00 to FF. You can use this argument when -l2_encap is set to ethernet_8022, ethernet_8022_vlan, ethernet_8023_snap, or ethernet_8023_snap_vlan. The value of this argument will automatically change to 03 when -l2_encap is set to ethernet_8023_snap or ethernet_8023_snap_vlan and any of arguments -appletalk_header, -aarp_header, decnet_header, -vines_header, -ipx_header, -xns_header -snap_oui_id and snap_ether_type is set. The default value is 03.

-llc_dsap

Spirent Extension (for Spirent HLTAPI only).

Specifies the Destination Service Access Point (DSAP) field in the LLC header. The possible values are listed below and map to the following protocols respectively:

Value  Protocol
04     IBM SNA
06     IP
80     3Com
AA     Snap
BC     Banyan
E0     Novell
FE     ISO Network Layer Protocol

The default value is AA. You can use this argument when -l2_encap is set to ethernet_8022, ethernet_8022_vlan, ethernet_8023_snap, or ethernet_8023_snap_vlan. The value of this argument will automatically change to AA when -l2_encap is set to ethernet_8023_snap or ethernet_8023_snap_vlan and any of arguments -appletalk_header, -aarp_header, decnet_header, -vines_header, -ipx_header, -xns_header -snap_oui_id and snap_ether_type is set. The default value is 03.

-llc_ssap

Spirent Extension (for Spirent HLTAPI only).

Specifies the Source Service Access Point (SSAP) field in the LLC header. The possible values are listed below and map to the following protocols respectively:

Value      Protocol
  04     IBM SNA
  06     IP
  80     3Com
  AA     Snap
  BC     Banyan
  E0     Novell
  FE     ISO Network Layer Protocol

The default value is AA. You can use this argument when -l2_encap is set to ethernet_8022, ethernet_8022_vlan, ethernet_8023_snap, or ethernet_8023_snap_vlan. The value of this argument will automatically change to AA when -l2_encap is set to ethernet_8023_snap or ethernet_8023_snap_vlan and any of arguments -appletalk_header, -aarp_header, decnet_header, -vines_header, -ipx_header, -xns_header -snap_oui_id and snap_ether_type is set.

-snap_ether_type

Specifies the Ethernet type in the Subnetwork Access Protocol (SNAP) header. The value must be in hexadecimal. This argument will be automatically set when -appletalk_header, -aarp_header, -decnet_header, -vines_header, -ipx_header or -xns_header is set. Possible values are listed below and map to the following packet headers respectively:

Value     Packet Header
8137      IPX
809B      Apple Talk
80F3      Apple Talk AARP
6003      DECNet
0BAD      VINES IP
0807      XNS Compatibility

The default value is 88B5. You can use this argument when -l2_encap is set to ethernet_8023_snap or ethernet_8023_snap_vlan.

-snap_oui_id

Specifies the Organization Code in the SNAP header. The value must be in hexadecimal. You can use this argument when -l2_encap is set to ethernet_8023_snap or ethernet_8023_snap_vlan. The default value is 000000.

-appletalk_header

Specifies the AppleTalk packet header. The value must be in hexadecimal. If you specify this header, the value of argument -snap_ether_type will automatically change to 809B. You can use this argument when -l2_encap is set to ethernet_8023_snap or ethernet_8023_snap_vlan.

-aarp_header

Specifies the AppleTalk Address Resolution Protocol (AARP) packet header. The value must be in hexadecimal. If you specify this header, the value of argument -snap_ether_type will automatically change to 80F3. You can use this argument when -l2_encap is set to ethernet_8023_snap or ethernet_8023_snap_vlan.

-decnet_header

Specifies the DECNet packet header. DECnet is a suite of network protocols created by Digital Equipment Corporation. The value must be in hexadecimal. If you specify this header, the value of argument -snap_ether_type will automatically change to 6003. You can use this argument when -l2_encap is set to ethernet_8023_snap or ethernet_8023_snap_vlan.

-vines_header

Specifies the Virtual Integrated Network Service (VINES) IP packet header. The value must be in hexadecimal. If you specify this header, the value of argument -snap_ether_type will automatically change to 0BAD. You can use this argument when -l2_encap is set to ethernet_8023_snap or ethernet_8023_snap_vlan.

-customer_eth_mac_dst

Specifies the destination MAC address in the frame header of traffic. The default is 00-00-01-00-00-01. You can use this argument when -l2_encap is set to ethernet_customer_snap or ethernet_customer.

-customer_eth_mac_src

Specifies the source MAC address in the frame header of traffic. The default is 00-10-94-00-00-02. You can use this argument when -l2_encap is set to ethernet_customer_snap or ethernet_customer.

-customer_eth_preamble

Specifies the preamble field of the customer ethernet snap header. The default is 55555555555555d5. You can use this argument when -l2_encap is set to ethernet_customer_snap or ethernet_customer.

-customer_eth_length

Specifies the the length of the data in the frame. You can use this argument when -l2_encap is set to ethernet_customer_snap or ethernet_customer.

-customer_eth_type

Specifies the Ethernet protocol type. You can use this argument when -l2_encap is set to ethernet_customer. Possible Values are described below:

Value   Description
0200    XEROX PUP
0201    PUP Addr Trans
0400    Nixdorf
0600    XEROX NS IDP
0660    DLOG
0661    DLOG2
0800    Internet IP
0801    X.75 Internet
0802    NBS Internet
0803    ECMA Internet
0804    Chaosnet
0805    X.25 Level 3
0806    ARP
0807    XNS Compatibility
0808    Frame Relay ARP
8035    RARP
86DD    IPv6
880B    PPP
8809    Slow Protocol
8847    MPLS Unicast
8848    MPLS Multicast
8863    PPPoE Discovery
8864    PPPoE Session
88E7    PBB
8906    FCoE
8914    FIP
-customer_eth_svlan_dei

Specifies the SVlan drop eligible indicator (dei). This may be used separately or in conjunction with PCP to indicate frames eligible to be dropped in the presence of congestion. Possible values are 0 or 1. The default value is 0. You can use this argument when -l2_encap is set to ethernet_customer_snap or ethernet_customer.

-customer_eth_svlan_pcp

Specifies the SVlan priority code point(pcp) which refers to class of service and maps to the frame priority level. Different PCP values can be used to prioritize different classes of traffic. Possible values are from 0 to 7. The default value is 1. You can use this argument when -l2_encap is set to ethernet_customer_snap or ethernet_customer.

-customer_eth_svlan_type

Specifies the type of SVlan in the frame header of traffic. Possible values range from 0 to 65535. The default is 33024. You can use this argument when -l2_encap is set to ethernet_customer_snap or ethernet_customer.

-customer_eth_svlan_vid

Specifies the SVlan ID in the frame header of traffic. Possible values range from 0 to 4095. The default is 100. You can use this argument when -l2_encap is set to ethernet_customer_snap or ethernet_customer.

-customer_eth_cvlan_cfi

Specifies whether the canonical format indicator (cfi) value is set for the CVlan header. Possible values are 0 or 1. The default value is 0. You can use this argument when -l2_encap is set to ethernet_customer_snap or ethernet_customer.

-customer_eth_cvlan_pcp

Specifies the CVlan priority code point(pcp) which refers to the class of service and maps to the frame priority level. Different PCP values can be used to prioritize different classes of traffic. Possible values are from 0 to 7. The default value is 1. You can use this argument when -l2_encap is set to ethernet_customer_snap or ethernet_customer.

-customer_eth_cvlan_type

Specifies the type of CVlan in the frame header of traffic. Possible values range from 0 to 65535. The default is 33024. You can use this argument when -l2_encap is set to ethernet_customer_snap or ethernet_customer.

-customer_eth_cvlan_vid

Specifies the CVlan ID in the frame header of traffic. Possible values range from 0 to 4095. The default is 100. You can use this argument when -l2_encap is set to ethernet_customer_snap or ethernet_customer.

-ipx_header

Spirent Extension (for Spirent HLTAPI only).

Specifies the Novell Internet Packet Exchange (IPX) header. The value must be in hexadecimal.

You can use this argument when -l2_encap is set to ethernet_8022, ethernet_8022_vlan, ethernet_8023_snap, or ethernet_8023_snap_vlan.

If you specify this header in L2 encapsulation mode ethernet_8022 or ethernet_8022_vlan, the value of arguments -llc_dsap and -llc_ssap will automatically change to E0 (Novell). If you specify this header in L2 encapsulation mode ethernet_8023_snap or ethernet_8023_snap_vlan, the value of arguments -snap_ether_type will automatically change to 8137 (IPX packet).

-xns_header

Spirent Extension (for Spirent HLTAPI only).

Specifies the Xerox Network Services (XNS) header. The value must be in hexadecimal. If you specify this header, the value of arguments -llc_dsap and -llc_ssap will automatically change to 80 (3Com).

You can use this argument when -l2_encap is set to ethernet_8022, ethernet_8022_vlan, ethernet_8023_snap, or ethernet_8023_snap_vlan. If you specify this header in L2 encapsulation mode ethernet_8022 or ethernet_8022_vlan, the value of arguments -llc_dsap and -llc_ssap will automatically change to 80 (3Com). If you specify this header in L2 encapsulation mode ethernet_8023_snap or ethernet_8023_snap_vlan, the value of arguments -snap_ether_type will automatically change to 0807 (XNS Compatibility).

-mode

Specifies the action to perform. Possible values are create, disable, enable, modify, remove, or reset. The modes are described below:

create -  Creates a new stream block of traffic for the
         specified port. If you enable bidirectional
         traffic, Spirent HLTAPI creates two stream
         blocks between the specified ports, one for each
         direction of traffic. This argument is :mandatory:`Mandatory`
         for the ``sth::traffic_config`` function. This mode
         returns the stream ID (stream_id).

disable - Deactivates the existing stream blocks for the
         specified port(s). Same as -mode remove.

enable -  Activates the existing stream blocks for the
         specified port(s).

modify -  Modifies the existing stream block for the
         specified port(s).

remove -  Deactivates the existing stream blocks for the
          specified port(s). Same as -mode disable.

reset -   Deletes streamblocks from the system as specified below:  :

          If -stream_id is specified, deletes all streamblocks
          listed in -stream_id.

          If both -port_handle and -stream_id are specified,
          -port_handle will be ignored (not recommended).

          If -port_handle is specified, and -stream_id is not,
          deletes all streams under the specified port.

          If neither of -port_handle and -stream_id is
          specified, deletes all streams under all ports.

Note

For both PPPoX and DHCP bound traffic, for subsequent connects and disconnect you do not have to delete and re- create traffic when adding new sessions. To disconnect and re-connect multiple PPPoX or DHCP sessions, you must stop and then restart traffic AFTER all new sessions have connected so the traffic configuration can get the newly updated session information. If you do not stop traffic, the old session information will not be replaced by the new session information.

-mpls_labels

The value of the MPLS label. This argument is available when the Ethernet type is ethernet_ii_unicast_mpls. Possible values range from 0 to 1048575. Spirent HLTAPI allows one or more labels for a single packet. Here is an example of a stream configuration using MPLS labels:

sth::traffic_config
       -mode create \
       -port_handle $hPort($device.4/0) \
       -l2_encap ethernet_ii_unicast_mpls \
       -mpls_labels {1 3 7}\
       -mpls_labels_mode "list"\
       -mpls_cos 001\
       -mpls_ttl 60\
       -l3_protocol ipv4 \
       -l3_length 256 \
       -length_mode fixed \
       -ip_src_addr 79.13.1.10 \
       -ip_dst_addr 78.14.0.10 \

Note

If you want to create more than one MPLS header in traffic, you must configure a list of MPLS label arguments (-mpls_labels, -mpls_cos, and -mpls_ttl) with double curly braces, and -mpls_labels_mode list with single curly braces. All arguments in the list must have the same length. For example, to create 6 MPLS headers:

set ret [sth::traffic_config \
    -mode create \
    -name stream6\
    -port_handle  $port1 \
    -l2_encap ethernet_ii_unicast_mpls \
    -mpls_labels {{6 3 7} {6 4 6} {6 5 7} {6 4 9 10}\
              {6 5 8} {6 5 9}} \
    -mpls_labels_mode {"list" "list" "list" "list" "list" "list"} \
    -mpls_cos {{001} {001} {001} {011} {011} {011}}\
    -mpls_ttl {{60} {61} {62} {63} {64} {65}} \
    -l3_protocol ipv4 \
    -l3_length 256 \
    -length_mode fixed]
-mpls_bottom_stack_bit

Enables/disables the Bottom of Stack bit in the MPLS label stack. Possible values are 0 (disabled) and 1 (enabled). The default value is 1.

-mpls_labels_mode

Specifies how Spirent HLTAPI will assign MPLS labels to a particular stream. Possible values are:

fixed  -   The MPLS Label is the same for all packets

increment - For all packets, the MPLS labels increments
            by the step specified in the mpls_labels_step
            argument.

decrement - For all packets, the MPLS labels decrements by
            the step specified in the mpls_labels_step
            argument.

list    -   For all packets, the MPLS labels are the
            values in the list.
-mpls_labels_count

Specifies the number of the MPLS labels to generate for a particular stream. The default value is 1.

-mpls_labels_step

Specifies the amount by which to increment or decrement the specified MPLS label for subsequent packets. Possible values range from 1 to 524288.

-mpls_cos

Specifies the value of Class of Service (CoS) for MLPS, which is encoded as part of the MPLS header to place the traffic into a transmission priority queue. The CoS value is encoded using the CoS bits (also known as the EXP or experimental bits). Possible values are 3-bit binary numbers ranging from 000 to 111.

-mpls_cos_mode

Specifies how Spirent HLTAPI will assign CoS value to a particular stream. Possible values are:

fixed  -   The MPLS CoS value is the same for all packets

increment - For all packets, the MPLS CoS value increment
            by the step specified in the mpls_cos_step
            argument.

decrement - For all packets, the MPLS CoS value decrement by
            the step specified in the mpls_cos_step
            argument.

list    -   For all packets, the MPLS CoS values are the
            values in the list.
-mpls_cos_count

Specifies the number of the MPLS CoS values to generate for a particular stream. The default value is 1.

-mpls_cos_step

Specifies the amount by which to increment or decrement the specified MPLS CoS value for subsequent packets. Possible values range from 1 to 524288.

-mpls_ttl

Defines the time-to-live (TTL) value for MPLS label. The TTL is a counter measured in units of seconds that gradually decrements to zero, at which point the datagram is discarded.

-mpls_ttl_mode

Specifies how Spirent HLTAPI will assign time-to-live (TTL) value to a particular stream. Possible values are:

fixed  -   The MPLS time-to-live (TTL) value is the same for all packets

increment - For all packets, the MPLS time-to-live (TTL) value increments
            by the step specified in the mpls_ttl_step argument.

decrement - For all packets, the MPLS time-to-live (TTL) value decrements
            by the step specified in the mpls_ttl_step argument.

list    -   For all packets, the MPLS time-to-live (TTL) values are the
            values in the list.
-mpls_ttl_count

Specifies the number of MPLS time-to-live (TTL) values to generate for a particular stream. The default value is 1.

-mpls_ttl_step

Specifies the amount by which to increment or decrement the specified MPLS time-to-live (TTL) value for subsequent packets. Possible values range from 1 to 524288.

-pkts_per_burst

Sets the number of packets each port transmits in a single burst. Possible values are 1 - 16777215. The default is 1. You must specify a value equal to 1 for continuous mode and greater than 1 for continuous_burst mode. You can only use this argument with gigabit and higher Ethernet speeds in half-duplex mode. -port_handle is Mandatory when calling this argument.

-pkts_per_burst_sb

Spirent Extension (for Spirent HLTAPI only).

Specifies the burst size of the streamblock, in number of frames. Possible values range from 1 to 16777215. The default is 1. You must specify a value equal to 1 for continuous mode and greater than 1 for continuous_burst mode. You can only use this argument with gigabit and higher Ethernet speeds in half-duplex mode. -port_handle is Mandatory when calling this argument.

-port_handle

Specifies the handle for the port to be configured. The port_handle value uniquely identifies a port on a chassis. The port_handle value is obtained when you connect to the chassis (see the description of the connect function). Spirent HLTAPI will use this port to transmit traffic. This argument is Mandatory for the sth::traffic_config function.

-disable_signature

Determines whether to disable the Spirent signature in traffic. Possible values are described:

0 - Inserts Spirent signature. This is the default.
1 - The Spirent signature will not be inserted.
-port_handle2

Specifies the handle for the second port for bidirectional traffic. This port is the source of the reverse stream of traffic. Use this argument only when bidirectional traffic is enabled. (See the description of the -bidirectional argument.)

Spirent Extension (for Spirent HLTAPI only).

Enables or disables PPPoX dynamic traffic. Valid values are 1 and 0. Specify the value 1 to enable dynamic binding from the bound PPPoX sessions. Specify the value 0 to disable PPPoX dynamic traffic. The default is 0. The -l2_encap argument must be set to ethernet_ii_pppoe, ethernet_ii_vlan_pppoe, or ethernet_ii_qinq_pppoe.

Note

For both PPPoX and DHCP bound traffic, for subsequent connects and disconnect you do not have to delete and re- create traffic when adding new sessions. To disconnect and re-connect multiple PPPoX or DHCP sessions, you must stop and then restart traffic AFTER all new sessions have connected so the traffic configuration can get the newly updated session information. If you do not stop traffic, the old session information will not be replaced by the new one.

Spirent Extension (for Spirent HLTAPI only).

Specifies the PPPoX session block handle from which to retrieve source IP addresses and creates dynamic upstream traffic. The sth::pppox_config function returns this handle in the keyed list. If you use this option, you must set -ppp_link to 1.

-ppp_session_id

Specifies the PPPoE session ID. This argument requires the -l2_encap argument to be set to ethernet_ii_pppoe, ethernet_ii_vlan_pppoe, or ethernet_ii_qinq_pppoe. Possible values range from 0 to 65535. If you specify a PPPoE session ID, do not use the -ppp_link or -ppp_link_traffic_src_list arguments.

-rate_bps

The traffic transmission rate in bits per second

-rate_kbps

Spirent Extension (for Spirent HLTAPI only).

The traffic transmission rate in kilobits per second

-rate_mbps

Spirent Extension (for Spirent HLTAPI only).

The traffic transmission rate in megabits per second

-rate_percent

The traffic transmission rate specified as a percent of the line rate for the specified stream. Possible values are between 0.00 and 100.00, inclusive. The default is 100.00.

-rate_pps

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%.

-stream_id

A handle that identifies a stream. Use this argument to modify or remove an existing stream. Spirent HLTAPI creates and returns a stream ID when you configure traffic (sth::traffic_config -mode create). If you create bidirectional traffic, Spirent HLTAPI creates and returns two stream IDs. (Each direction of the stream must have a unique ID.)

-tcp_ack_flag

Indicates whether the data identified by the sequence number has been received. Possible values are 0 and 1. The default is 1. You must specify TCP in the -l4_protocol argument.

-tcp_ack_num

Identifies the next expected TCP octet. Possible values are 1 to 2147483647. The default is 1. You must specify TCP in the -l4_protocol argument.

-tcp_data_offset

Specifies the data offset field in the TCP header. Possible values range from 1 to 15.

-tcp_dst_port

Specifies the port on the receiving TCP module. Possible values range from 0 to 65535. The default is 80. You must specify TCP in the -l4_protocol argument.

-tcp_fin_flag

Indicates whether a connection is terminated. Possible values are 0 and 1. The default is 0. Once the data transfer is complete, the host sends a packet with the FIN and ACK flags set. The FIN flag is then set to 1, while the ACK flag is set to 0. You must specify TCP in the -l4_protocol argument.

-tcp_psh_flag

Indicates whether to ensure that the data is given the appropriate priority and is processed at the sending or receiving end. Possible values are 0 and 1. The default is 0. You must specify TCP in the -l4_protocol argument.

-tcp_reserved

Reserves TCP bits. Possible values range from 0 to 63. The default is 0. You must specify TCP in the -l4_protocol argument.

-tcp_rst_flag

Resets the connection when a segment arrives that is not intended for the current connection. Possible values are 0 and 1. The default is 0. You must specify TCP in the -l4_protocol argument.

-tcp_seq_num

Identifies the position of the data within the data stream. Possible values are 1 to 2147483647. The default is 1. You must specify TCP in the -l4_protocol argument.

-tcp_src_port

Specifies the port on the sending TCP module. Possible values range from 0 to 65535. The default is 1024. You must specify TCP in the -l4_protocol argument.

-tcp_syn_flag

Indicates whether the port is open for connection. Possible values are 0 and 1. A value of 1 indicates the port has established a connection. The default is 0. You must specify TCP in the -l4_protocol argument.

-tcp_cwr_flag

Indicates whether transmit buffers are filling due to congestion. Possible values are 0 and 1. The default is 0. You must specify TCP in the -l4_protocol argument.

-tcp_ecn_echo_flag

Indicates whether the other side of the TCP connection received an ECN notification from the network. Possible values are 0 and 1. The default is 0. You must specify TCP in the -l4_protocol argument.

-tcp_urg_flag

Identifies the incoming data as “urgent,” giving it priority over the other segments. Possible values are 0 and 1. The default is 0. You must specify TCP in the -l4_protocol argument.

-tcp_urgent_ptr

Specifies the position in the segment where urgent data ends. Possible values range from 0 to 65535. The default is 0.

-tcp_window

Specifies the number of bytes that can be sent simultaneously (within the window). In the TCP header, this field is used by the receiver to indicate to the sender the amount of data that it is able to accept. Possible values are 0 to 65535. The default is 4069.

-tcp_src_port_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same value for the TCP source port. Possible values range from 0 to 65535. The default value is 1.

-tcp_dst_port_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same value for the TCP destination port. Possible values range from 0 to 65535. The default value is 1.

-router_adv_type

Specifies the ICMPv6 message type. Possible values are described below:

Value          Type
1           Destination Unreachable
2           Packet Too Big
3           Time Exceeded
4           Parameter Problem
128         Echo Request
129         Echo Reply
130         MLDv1 Query
131         MLDv1 Listener Report
132         MLDv1 Listener Done
133         Router Solicitation
134         Router Advertisement
135         Neighbor Solicitation
136         Neighbor Advertisement
137         Redirect
143         MLDv2 Listener Report

The default value is 134.

-router_adv_code

Indicates the reserved field for ICMPv6 message types. Possible values range from 0 to 255. The default value is 0.

-router_adv_checksum

Specifies the ICMP checksum value. Possible values range from 0 to 65535. The values must be integers. If you do not specify this argument, checksum will be automatically calculated.

-router_adv_hop_limit

Specifies the hop limit field of datagrams. Possible values range from 0 to 255. The default value is 0.

-router_adv_addr_field

Specifies the 1-bit Managed address configuration flag. Possible values are 0 and 1. When set, it indicates that addresses are available via Dynamic Host Configuration Protocol. The default value is 0.

-router_adv_config_flag

Specifies the 1-bit Other configuration flag. Possible values are 0 and 1. When set, it indicates that other configuration information is available via Dynamic Host Configuration Protocol. The default value is 0

-router_adv_reserved

Indicates the reserved field for ICMPv6 message types. Possible values range from 0 to 63. The default value is 0.

-router_adv_lifetime

Specifies the lifetime associated with the default router in units of seconds. Possible values range from 0 to 65535. The default value is 0.

-router_adv_reachable_time

Specifies the time, in milliseconds, that a node assumes a neighbor is reachable after having received a reachability confirmation. Possible values range from 0 to 4294967295. The default value is 0.

-router_adv_retrans_time

Specifies the amount of time, in milliseconds, that a host should wait before retransmitting Neighbor Solicitation messages. Possible values range from 0 to 4294967295. The default value is 0.

Specifies the option type field for the Link Layer Address option in Router Advertisement messages (type 134). Possible values are described below:

Value          Type
1           Source Link-Layer Address
2           Target Link-Layer Address
3           Prefix Information
4           Redirected Header
5           MTU

The default value is 1.

Specifies the length field for the Link Layer Address option in Router Advertisement messages (type 134).

Possible values range from 0 to 255. The default value is 1.

Specifies the source/target link layer address field for the Link Layer Address option in Router Advertisement messages (type 134).

The value type is octet string. The default value is 000000000000.
-router_adv_prefix_info_type

Specifies the option type field for the Prefix Information option in Router Advertisement messages (type 134). Possible values are described below:

Value          Type
1           Source Link-Layer Address
2           Target Link-Layer Address
3           Prefix Information
4           Redirected Header
5           MTU

The default value is 3.

-router_adv_prefix_info_option_len

Specifies the option length field for the Prefix Information option in Router Advertisement messages (type 134). Possible values range from 0 to 255. The default value is 4.

-router_adv_prefix_info_prefix_len

Specifies the prefix length field for the Prefix Information option in Router Advertisement messages (type 134). This field indicates the number of leading bits in the prefix field that are valid. Possible values range from 0 to 255. The default value is 64.

Specifies the 1-bit on-link flag for the Prefix Information option in Router Advertisement messages (type 134). Possible values are 1 and 0. When set to 1, it indicates that this prefix can be used for on-link determination. When set to 0, the advertisement makes no statement about on-link or off-link properties of the prefix. The default value is 1.

-router_adv_prefix_info_autonomous_flag

Specifies the 1-bit autonomous address-configuration flag for the Prefix Information option in Router Advertisement messages (type 134). Possible values are 1 and 0. When set to 1, it indicates that this prefix can be used for stateless address configuration. The default is 1.

-router_adv_prefix_info_reserved1

Specifies reserved field 1 for the Prefix Information option in Router Advertisement messages (type 134). Possible values range from 0 to 63. The default value is 0.

-router_adv_prefix_info_valid_lifetime

Specifies the valid lifetime field for the Prefix Information option in Router Advertisement messages (type 134). This field indicates the length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. Possible values range from 0 to 4294967295.

The default value is 1.
-router_adv_prefix_info_preferred_lifetime

Specifies the preferred lifetime for the Prefix Information option in Router Advertisement messages (type 134). The field indicates the length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address auto configuration remain preferred. Possible values range from 0 to 4294967295. The default value is 1.

-router_adv_prefix_info_reserved2

Specifies reserved field 2 for the Prefix Information option in Router Advertisement messages (type 134). Possible values range from 0 to 4294967295. The default value is 0.

-router_adv_prefix_info_prefix

Specifies the prefix field for the Prefix Information option in Router Advertisement messages (type 134). The value is an IPv6 address. The default value is 2000::0.

-router_adv_mtu_option_type
Specifies the MTU option in Router Advertisement messages (type 134).
Possible values are described below:

Value Type 1 Source Link-Layer Address 2 Target Link-Layer Address 3 Prefix Information 4 Redirected Header 5 MTU

The default value is 5.

-router_adv_mtu_option_len

Specifies the option length field for the MTU option in Router Advertisement messages (type 134). Possible values range

from 0 to 255. The default value is 1.
-router_adv_mtu_reserved

Indicates the reserved field for the MTU option in Router Advertisement messages (type 134). Possible values range from 0 to 65535. The default value is 0.

-router_adv_mtu_value

Specifies the MTU value for the MTU option in Router Advertisement messages (type 134). Possible values range from 0 to 4294967295. The default value is 1000.

-ib_payload

Specifies the (IB) InfiniBand header payload value.

Dependency: -l4_protocol udp_rocev2

Possible values range from 0-65535. The default value is none.

-ib_icrcvalue

Specifies the (IB) InfiniBand header ICRC value.

Dependency: -l4_protocol udp_rocev2

Possible values range from 0-4294967295. The default value is 0.

-ib_bth_opcode

Specifies the (BTH) Base Transport Header opcode value.

Dependency: -l4_protocol udp_rocev2

Possible values range from 0-255. The default value is 0.

-ib_bth_solicited_event

Indicates that an event should be generated by the responder or not.

Dependency: -l4_protocol udp_rocev2

Possible values are 0 (false) and 1 (true). The default value is 0.

-ib_bth_mig_req

Specifies to communicate migration state.

Dependency: -l4_protocol udp_rocev2

Possible values are 0 (false) and 1 (true). The default value is 0.

-ib_bth_pad_count

Specifies how many extra bytes are added to the payload to align to a 4-byte boundary.

Dependency: -l4_protocol udp_rocev2

Possible values range from 0-3. The default value is 0.

-ib_bth_transport_header_ver

Specifies the version of the IBA Transport Headers.

Dependency: -l4_protocol udp_rocev2

Possible values range from 0-15. The default value is 0.

-ib_bth_partition_key

Indicates which logical partition is associated with this packet.

Dependency: -l4_protocol udp_rocev2

Possible values range from 0-65535. The default value is 0.

-ib_bth_reserve8

Specifies BTH reserve8 value.

Dependency: -l4_protocol udp_rocev2

Possible values range from 0-355. The default value is 0.

-ib_bth_dst_qp

Indicates the Work Queue Pair (QP) Number at the destination.

Dependency: -l4_protocol udp_rocev2

Possible values range from 0-16777215. The default value is 0.

-ib_bth_ack_req

Used to indicate that an acknowledge (for this packet) should be scheduled by the responder.

Dependency: -l4_protocol udp_rocev2

Possible values are 0 (false) and 1 (true). The default value is 0.

-ib_bth_reserv7

Specifies BTH reserve7 value.

Dependency: -l4_protocol udp_rocev2

Possible values range from 0-127. The default value is 0.

-ib_bth_pkt_seq_num

Specifies to detect a missing or duplicate packet.

Dependency: -l4_protocol udp_rocev2

Possible values range from 0-4294967295. The default value is 1.

-ib_deth_queue_key

Specifies extended transport header (DETH) queue key value.

Dependency: -l4_protocol udp_rocev2

Possible values range from 0-4294967295. The default value is 0.

-ib_deth_reserv8

Specifies extended transport header (DETH) reserv8 value.

Dependency: -l4_protocol udp_rocev2

Possible values range from 0-355. The default value is 0.

-ib_deth_src_qp

Specifies the Work Queue Pair (QP) Number at the source.

Dependency: -l4_protocol udp_rocev2

Possible values range from 0-4294967295. The default value is 0.

-transmit_mode

Defines the mode of transmission of the packets (as a part of the stream). Possible values are continuous, continuous_burst, repetitions, multi_burst, single_burst, and single_pkt. The default is continuous. -port_handle is Mandatory when calling this argument. When calling this argument in either mode, the following arguments are mandatory:

1. -rate_bps, -rate_pps, or -rate_percent (if you do not
   specify one of these arguments, Spirent HLTAPI uses
   the Spirent HLTAPI default (10% line rate)
2. -length_mode
3. -l3_length or l3_length_min and l3_length_max
4. -pks_per_burst
5. -port_handle

Note

The -pkts_per_burst argument must be equal to 1 for continuous mode and greater than or equal to 1 for continuous_burst mode. For multi_burst mode, the -burst_loop_count argument is Mandatory . If you do not specify it, Spirent HLTAPI will use the default value which is 30. For single_burst mode, the -burst_loop_count argument always defaults to 1. For single_pkt mode, both the -burst_loop_count and -pkts_per_burst arguments always default to 1. Repetitions can be selected only when scheduling mode of the generator is configured as manual based.

-udp_checksum

Verifies that packets are not corrupted. Possible values are 0 (not corrupted) and 1 (corrupted). The default is 0. You must specify UDP in the -l4_protocol argument.

-udp_dst_port

Defines the destination UDP port number. Possible values range from 0 to 65535. The default is 80. You must specify UDP in the -l4_protocol argument.

-udp_src_port

Defines the source UDP port number. Possible values range from 0 to 65535. The default is 1024. You must specify UDP in the -l4_protocol argument.

-udp_src_port_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same value for the UDP source port. Possible values range from 0 to 65535. The default value is 1.

-udp_dst_port_repeat_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times to repeat the same value for the UDP destination port. Possible values range from 0 to 65535. The default value is 1.

-vci

The virtual circuit identifier for IP over ATM interfaces. Possible values range from 0 to 65535. The default is 32.

-vci_count

Specifies the number of VCIs to use for the emulation of clients over ATM interfaces. This argument is valid for ATM interfaces only. Possible values are 1 to 65536. The default is 1.

-vci_step

Specifies the increment to use when selecting the next VCI value to use for the emulation of clients over ATM interfaces. This argument is valid for ATM interfaces only. Possible values are 0 to 65535. The default is 1.

-vpi

The virtual path identifier for IP over ATM interfaces. Possible values range from 0 to 255. The default is 0.

-vpi_count

Specifies the number of VPIs to use for the emulation of clients over ATM interfaces. This argument is valid for ATM interfaces only. Possible values are 1 to 256. The default is 1.

-vpi_step

Specifies the increment to use when selecting the next VPI value to use for the emulation of clients over ATM interfaces. This argument is valid for ATM interfaces only. Possible values are 0 to 255. The default is 1. VPI values are incremented by addition modulo 256.

-vlan_cfi

Specifies whether the canonical format indicator (cfi) value is set for the VLAN header. Possible values are 0 or 1. You must set the -l2_encap argument to ethernet_ii_vlan.

-vlan_outer_cfi

Spirent Extension (for Spirent HLTAPI only).

Specifies whether the canonical format indicator (cfi) value is set for the VLAN outer header. Possible values are 0 or 1. You must set the -l2_encap argument to ethernet_ii_vlan.

-vlan_priority_mode

Specifies how Spirent HLTAPI assigns VLAN priority to packets in a particular stream. Possible values are:

fixed - The VLAN priority is the same for all packets.

increment - For all packets, the VLAN priorities increment by the
           step specified by -vlan_priority_step.

decrement - For all packets, the VLAN priorities decrement
           by the step specified by -vlan_priority_step.

random - For all packets, the VLAN priorities are in random order.

shuffle - For all packets, the VLAN priorities are in
       random order within a range that is determined by the
       values of -vlan_priority_count and -vlan_priority_step.

list  - For all packets, the VLAN priorities are a fixed
        set of values.
-vlan_priority_step

The amount by which to increment the specified VLAN priority (-vlan_user_priority) for subsequent packets. Possible values range from 0 to 4095. The default is 0. You must set the -l2_encap argument to ethernet_ii_vlan.

-vlan_priority_count

Specifies the number of VLAN priorities to generate for the stream. Possible values range from 1 to 4096. The default is 1. You must set the -vlan_id_mode argument to increment and the -l2_encap argument to ethernet_ii_vlan.

-vlan_id

Specifies the VLAN ID for a particular stream. Possible values range from 0 to 4094. You must set the -l2_encap argument to ethernet_ii_vlan.

-vlan_id_count

Specifies the number of VLAN tags to generate for the stream. Possible values range from 1 to 4096. The default is 1. You must set the -vlan_id_mode argument to increment and the -l2_encap argument to ethernet_ii_vlan.

-vlan_id_mode

Specifies how Spirent TestCenter will assign VLAN tags to packets in a particular stream. Possible values are:

fixed  -  The VLAN ID is the same for all packets.

increment - For all packets, the VLAN tag ID increments by
          the step specified in the -vlan_id_step argument.

decrement - For all packets, the VLAN tag ID decrements by
          the step specified in the -vlan_id_step argument.

random - For all packets, the VLAN tag IDs will be in random
          order.

shuffle - For all packets, the VLAN tag IDs are in random order
          within a range that is determined by the values of
          -vlan_id_count and -vlan_id_step.

list - For all packets, the VLAN tag IDs are a fixed set of values.
       You must specify a list of values for -vlan_id.
       In this mode, -vlan_id_step and -vlan_id_count are not
       effective for the traffic_config function.
       For example:

       -vlan_id_mode   list\
       -vlan_id        100 102 200 203\

You must set the -l2_encap argument to ethernet_ii_vlan.

-vlan_id_step

The amount by which to increment the specified VLAN ID (-vlan_id) for subsequent packets. Possible values range from 0 to 4095 (see below). The default is 0. You must set the -l2_encap argument to ethernet_ii_vlan.

-vlan_tpid

The type of VLAN in the frame header of traffic. Possible values range from 0 to 65535. The default is 33024.

-vlan_id_outer

Spirent Extension (for Spirent HLTAPI only).

Specifies the VLAN ID for a particular outer header. Possible values range from 0 to 4095. You must set the -l2_encap argument to ethernet_ii_vlan.

-vlan_id_outer_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of VLAN tags to generate for the outer header. Possible values range from 1 to 4096. The default is 1. You must set the -vlan_id_outer_mode argument to increment and the -l2_encap argument to ethernet_ii_vlan.

-vlan_id_outer_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent TestCenter will assign VLAN tags to packets in the specified outer header. Possible values are:

fixed - The outer VLAN ID is the same for all packets.

increment - For all packets, the outer VLAN tag ID
          increments by the step specified in the
          -vlan_id_outer_step argument.

decrement - For all packets, the outer VLAN tag ID
          decrements by the step specified in the
          -vlan_id_outer_step argument.

random - For all packets, the outer VLAN tag IDs will be in
          random order.

shuffle - For all packets, the outer VLAN tag IDs are in
          random order within a range that is determined by the
          values of -vlan_id_outer_count and
          -vlan_id_outer_step.

list -  For all packets, the outer VLAN tag IDs are a fixed set
        of values. You must specify a list of values for
        -vlan_id_outer. In this mode, -vlan_id_outer_step and
        -vlan_id_outer_count are not effective for the
        traffic_config function.

You must set the -l2_encap argument to ethernet_ii_vlan.

-vlan_id_outer_step

Spirent Extension (for Spirent HLTAPI only).

The amount by which to increment the specified outer VLAN ID (-vlan_id_outer) for subsequent packets. Possible values range from 0 to 4095 (see below). The default is 0. You must set the -l2_encap argument to ethernet_ii_vlan.

-vlan_outer_tpid

Spirent Extension (for Spirent HLTAPI only).

The type of outer VLAN in the frame header of traffic. Possible values range from 0 to 65535. The default is 33024.

-vlan_outer_user_priority

Spirent Extension (for Spirent HLTAPI only).

Specifies the VLAN priority to assign to the outer header. Possible values range from 0 to 7. You can also enter a list of priority values. The default is 0.

-vlan_priority_outer_mode

Specifies how Spirent HLTAPI assigns VLAN priority to packets in a particular stream. Possible values are:

fixed     - The VLAN priority is the same for all packets.

increment - For all packets, the VLAN priorities increment by the
            step specified by -vlan_priority_outer_step.

decrement - For all packets, the VLAN priorities decrement
            by the step specified by -vlan_priority_outer_step.

random    - For all packets, the VLAN priorities are in random order.

shuffle   - For all packets, the VLAN priorities are in
            random order within a range that is determined by the
            values of -vlan_priority_outer_count and
            -vlan_priority_outer_step.

list      - For all packets, the VLAN priorities are a fixed
            set of values.
-vlan_priority_outer_step

The amount by which to increment the specified VLAN priority (-vlan_outer_user_priority) for subsequent packets. Possible values range from 0 to 4095. The default is 0.

-vlan_priority_outer_count

Specifies the number of VLAN priorities to generate for the stream. Possible values range from 1 to 4096. The default is 1.

-vlan_user_priority

Specifies the VLAN priority to assign to the specified port, Possible values range from 0 to 7. You can also enter a list of priority values. The default is 1. You must set the -l2_encap argument to ethernet_ii_vlan.

-qinq_incr_mode

Determines which VLAN ID to increment first. Possible values are:

inner - increment the inner VLAN ID before the outer VLAN ID

outer - increment the outer VLAN ID before the inner VLAN ID

both - increment both the inner and outer VLAN ID at the
       same time.

The default is both. You must set the-l2_encap argument to ethernet_ii_vlan.

-fc_eof

Spirent Extension (for Spirent HLTAPI only).

Specifies the END-of-Frame (EOF) field in the FC frame. It is represented by an ordered set that immediately follows the CRC and will be transmitted on a word boundary. The following order sets are supported:

EOFt - Indicates that the sequence associated with the
       sequence ID is complete

EOFa - Indicates that the frame content is corrupted

EOFn - Identifies the end of frame when one of the other EOF
       ordered sets indicating valid frame content is not
       required

EOFni - Indicates that the frame is invalid

The default value is EOFt. You must specify fibre_channel in the -l2_encap argument.

-fc_sof

Spirent Extension (for Spirent HLTAPI only).

Specifies the Start-of-Frame (SOF) field in the FC frame. There are multiple SOF delimiters defined for sequence control. The following values are supported:

SOFi2 - SOF Initiate Class 2. Used on the first frame of a
      sequence for class 2 service

SOFi3 - SOF Initiate Class 3. Used on the first frame of a
      sequence for class 3 service

SOFn2 - SOF Normal Class 2. Used for all frames except the first
      frame of a Sequence for class 2 service

SOFn3 - SOF Normal Class 3. Used for all frames except the first
      frame of a Sequence for class 3 service.

SOFf  - SOF Fabric. Used to indicate when a PN_Port or Fx_Port
      receives a class F frame

The default value is SOFi3. You must specify fibre_channel in the -l2_encap argument.

-fc_cs_ctl

Spirent Extension (for Spirent HLTAPI only).

Specifies the Class Specific Control (CS_CTL) field that contains management information for the class of service identified by the SOF. Possible values range from 00 to FF. The default value is 00. You must specify fibre_channel in the -l2_encap argument.

-fc_data_field_control

Spirent Extension (for Spirent HLTAPI only).

Specifies the Data Field Control (DF_CTL) field, a one-byte field that specifies the presence of optional headers at the beginning of the Data field. Possible values range from 00 to FF. The default value is 00. You must specify fibre_channel in the -l2_encap argument.

-fc_dest_id

Spirent Extension (for Spirent HLTAPI only).

Specifies the Destination ID (D_ID) field, a three-byte field that contains the address identifier of the destination Nx_Port in the FC frame header. Possible values range from 000000 to FFFFFF. The default value is FFFFFD. You must specify fibre_channel in the -l2_encap argument.

-fc_dest_id_count

Specifies the number of the Destination ID (D_ID) field to generate for a particular stream. The default value is 1.

-fc_dest_id_mode
Specifies how Spirent HLTAPI will assign the Destination ID (D_ID) field
to a particular stream. Possible values are:
increment - For all packets, the Destination ID (D_ID) field increments
by the step specified in the fc_dest_id_step argument.
decrement - For all packets, the Destination ID (D_ID) field decrements by
the step specified in the fc_dest_id_step argument.
list - For all packets, the Destination ID (D_ID) field are the
values in the list.
random - For all packets, the value of the Destination ID (D_ID) fields are
in random order.
shuffle - For all packets, the value of the Destination ID (D_ID) fields are
in random order within a range that is determined by the values of -fc_dest_id_count and -fc_dest_id_step.
-fc_dest_id_repeat

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times one Destination ID (D_ID) field should be repeated, before the step (-fc_dest_id_step) is applied to the Destination ID (D_ID) field for incrementing. The default is 0.

-fc_dest_id_step

Spirent Extension (for Spirent HLTAPI only).

The amount by which to increment the specified Destination ID (D_ID) field (-fc_dest_id) for subsequent packets in Ethernet frames. Possible values range from 0 to 4095. The default is 0.

-fc_frame_control

Spirent Extension (for Spirent HLTAPI only).

Specifies the Frame Control (F_CTL) field in the FC frame header. It is a 24-bit field that contains the number of flags that are used to control flow of the sequence. Possible values range from 000000 to FFFFFF. The default value is 380000. You must specify fibre_channel in the -l2_encap argument.

-fc_orig_exchange_id

Spirent Extension (for Spirent HLTAPI only).

Specifies the Originator Exchange ID (OX_ID) field, a two-byte field in the FC frame header that identifies the exchange ID assigned by the originator of the exchange. Possible values range from 0000 to FFFF. The default value is 0000. You must specify fibre_channel in the -l2_encap argument.

-fc_parameter

Spirent Extension (for Spirent HLTAPI only).

Specifies the Parameter field in the FC frame header. Possible values range from 00000000 to FFFFFFFF. The default value is 00000000.

-fc_r_ctl

Spirent Extension (for Spirent HLTAPI only).

Specifies the Routing Control (R_CTL) field in the FC frame header. The R-CTL field is a one-byte field that contains routing bits and information bits to categorize the frame function. Possible values range from 00 to FF. The default value is 22. You must specify fibre_channel in the -l2_encap argument.

-fc_response_exchange_id

Spirent Extension (for Spirent HLTAPI only).

Specifies the Responder Exchanger ID (RX_ID) field, a two-byte field in the FC frame header that provides a unique, locally meaningful identifier at the responder for an exchange established by an originator and identified by an originator exchange ID. Possible values range from 0000 to FFFF. The default value is FFFF. You must specify fibre_channel in the -l2_encap argument.

-fc_seq_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the Sequencer Count (SEQ_CNT) field, a two-byte field that indicates the sequential order of a data frame transmission within a single sequence or multiple consecutive sequences for the same Exchange. Possible values range from 0000 to FFFF. The default value is 0000. You must specify fibre_channel in the -l2_encap argument.

-fc_seq_id

Spirent Extension (for Spirent HLTAPI only).

Specifies the Sequence ID (SEQ_ID) field, a one-byte field in the FC frame header assigned by the sequence initiator that is unique for a specific D_ID and S_ID pair while the sequence is open. Possible values range from 00 to FF. The default value is 00. You must specify fibre_channel in the -l2_encap argument.

-fc_source_id

Spirent Extension (for Spirent HLTAPI only).

Specifies the Source ID (S_ID) field, a three-byte field that contains the address identifier of the destination Nx_Port in the FC frame header. Possible values range from 000000 to FFFFFF. The default value is FFFFFD. You must specify fibre_channel in the -l2_encap argument.

-fc_source_id_count

Specifies the number of the Source ID (S_ID) field to generate for a particular stream. The default value is 1.

-fc_source_id_mode
Specifies how Spirent HLTAPI will assign the Source ID (S_ID) field
to a particular stream. Possible values are:
increment - For all packets, the Source ID (S_ID) field increments
by the step specified in the fc_dest_id_step argument.
decrement - For all packets, the Source ID (S_ID)) field decrements by
the step specified in the fc_dest_id_step argument.
list - For all packets, the Source ID (S_ID) fields are the
values in the list.
random - For all packets, the value of Source ID (D_ID) fields are
in random order.
shuffle - For all packets, the value of Source ID (D_ID) fields are
in random order within a range that is determined by the values of -fc_source_id_count and -fc_source_id_step.
-fc_source_id_repeat

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times one Source ID (S_ID) field should be repeated, before the step (-fc_source_id_step) is applied to the Source ID (D_ID) field for incrementing. The default is 0.

-fc_source_id_step

Spirent Extension (for Spirent HLTAPI only).

The amount by which to increment the specified Source ID (S_ID) field (-fc_source_id) for subsequent packets in Ethernet frames. Possible values range from 0 to 4095. The default is 0.

-fc_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Type field that defines the upper layer protocol carried in the payload of the FC frame. Possible values range from 00 to FF. The default value is 01. You must specify fibre_channel in the -l2_encap argument.

-tunnel_handle

Specifies the GRE tunnel handle, an array value, initialized by the emulation_gre_config command. The router sends traffic through this tunnel.

-vpls_source_handle

Specifies the emulation site or site pool handle for source of Virtual Private LAN Service (VPLS)/VPLS Pool traffic mesh, when VPLS site or pool emulation exists. Traffic streams can be established only between sites within the same VPN.

-vpls_destination_handle

Specifies the emulation site or site pool handle for the destination of Virtual Private LAN Service (VPLS) /VPLS Pool traffic mesh, when a VPLS site or pool emulation exists. Traffic streams can be established only between sites within the same VPN.

-enable_stream_only_gen

Spirent Extension (for Spirent HLTAPI only).

Disables or enables “stream only generation” option when creating traffic. When it is set to 1, Spirent TestCenter will generate a separate stream for each flow instead of generating the same stream for all flows. Possible values are 0 and 1. The default is 1.

-fill_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the fill pattern type to be used for payload. Possible values are constant, incr, decr and prbs. The default value is constant. The types are described below:

constant - Use fixed fill pattern.

incr - Use incrementing value to fill the rest of the frame.
       The step value is 1. The starting value is fixed.

decr - Use decrementing value to fill the rest of the frame.
       The step value is 1. The starting value is fixed.

prbs - Use a pseudo-random bit sequence to fill the rest of
       the frame. The prbs pattern is shared across streams that
       use the prbs as the fill pattern.
-vlan_id_repeat

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times an inner VLAN ID should be repeated, before the step (-vlan_id_step) is applied to the inner VLAN ID for incrementing. The default is 0.

-vlan_id_outer_repeat

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times an outer VLAN ID should be repeated, before the step (-vlan_id_outer_step) is applied to the outer VLAN ID for incrementing. The default is 0.

-enable_control_plane

Spirent Extension (for Spirent HLTAPI only).

This argument enables or disables control plane traffic, such as Ping and ARP. Possible values are 0 (disabled) and 1 (enabled). The default is 0.

-enable_custom_pfc

This argument enables or disables the custom PFC (Priority Flow Control) priority field. This option will be available when you are connected to a port that supports PFC and at least one stream block is configured on that port. Possible values are 0 (disabled) and 1 (enabled). The default is 0.

-custom_pfc_pri

Specifies the custom priority for the stream block. Spirent TestCenter pauses traffic on the stream block when PFC frames with the configured custom priority are received. This argument is available when enable_custom_pfc is set to true.

-high_speed_result_analysis

Spirent Extension (for Spirent HLTAPI only).

Enables or disables high speed result analysis for a stream block. Possible values are 0 (disabled) and 1 (enabled). The default is 1.

-name

Specifies the name for currently selected traffic stream.

-traffic_state

Turns the currently selected traffic stream on or off. Possible values are 0 (off) and 1 (on). The default value is 1.

-tcp_checksum

Specifies the TCP checksum value. Possible values range from 0 to 65535. The values must be integers. If you do not specify this argument, checksum will be automatically calculated.

-tcp_src_port_mode

Specifies how Spirent HLTAPI will assign the TCP source port for a particular stream. Possible values are described below:

increment - The TCP source port number increments
         by the step (-tcp_src_port_step) for all packets.
         This is the default.

decrement - The TCP source port number decrements by
         the step (-tcp_src_port_step) for all packets.

random - For all packets, the TCP source port number will be
         in random order.

shuffle - For all packets, the TCP source port number will be in
         random order within a range that is determined by the
         values of -tcp_src_port_count and -tcp_src_port_step.

list    - For all packets, the TCP source port number are a
          fixed set of values.
-tcp_src_port_count

Specifies the number of different values to generate for TCP source port. The values must be integers. Possible values range from 1 to 65535. The default value is 1.

-tcp_src_port_step

Specifies the amount by which to increment or decrement the specified TCP source port. Possible values range from 1 to 65535. The default value is 1.

-tcp_dst_port_mode

Specifies how Spirent HLTAPI will assign the TCP destination port for a particular stream. Possible values are described below:

increment - For all packets, the TCP destination port number
        increments by the step(-tcp_dst_port_step) argument.

decrement - For all packets, the TCP destination port number
         decrements by the step (-tcp_dst_port_step) argument.

random - For all packets, the TCP destination port number will
         be in random order.

shuffle - For all packets, the TCP destination port number will
         be in random order within a range that is determined by the
         values of -tcp_dst_port_count and -tcp_dst_port_step.

list    - For all packets, the TCP destination port number are a
          fixed set of values.

The default value is increment.

-tcp_dst_port_count

Specifies the number of different values to generate for TCP destination port. Possible values range from 1 to 65535. The default value is 1.

-tcp_dst_port_step

Specifies the amount by which to increment or decrement the specified TCP destination port. Possible values range from 1 to 65535. The default value is 1.

-udp_src_port_mode

Specifies how Spirent HLTAPI will assign the UDP source port for a particular stream. Possible values are described below:

increment - For all packets, the UDP source port number
     increments by the step specified in the -udp_src_port_step
     argument. This is the default.

decrement - For all packets, the UDP source port number
     decrements by the step (-udp_src_port_step).

random - For all packets, the UDP source port number will
     be in random order.

shuffle - For all packets, the UDP source port number will be in
     random order within a range that is determined by the
     values of -udp_src_port_count and -udp_src_port_step.

list    - For all packets, the UDP source port number are a
          fixed set of values.
-udp_src_port_count

Specifies the number of different values to generate for the UDP source port. Possible values are integers and range from 1 to 65535. The default value is 1.

-udp_src_port_step

Specifies the amount by which to increment or decrement the specified UDP source port. The values must be integers. Possible values range from 1 to 65535.

-udp_dst_port_mode

Specifies how Spirent HLTAPI will assign the UDP destination port for a particular stream. Possible values are described below:

increment - For all packets, the UDP destination port number
      increments by the step (-udp_dst_port_step). This is
      the default.

decrement - For all packets, the UDP destination port number
       decrements by the step (-udp_dst_port_step).

random - For all packets, the UDP destination port number
       will be in random order.

shuffle - For all packets, the UDP destination port number will
      be in random order within a range that is determined by the
      values of -udp_dst_port_count and -udp_dst_port_step.

list    - For all packets, the UDP destination port number are a
          fixed set of values.
-udp_dst_port_count

Specifies the number of different values to generate for the UDP destination port. The values of this argument must be integers. Possible values range from 1 to 65535. The default value is 1.

-udp_dst_port_step

Specifies the amount by which to increment or decrement the specified UDP destination port. The values of this argument must be integers. Possible values range from 1 to 65535.

-vxlan

Spirent Extension (for Spirent HLTAPI only).

Specifies whether to create the Virtual eXtensible Local Area Network (VXLAN) header. VXLAN encapsulates MAC frames in a UDP header to create a Layer 2 connection across an IP network between two vSphere hypervisor hosts. Possible values are 0 and 1. If you set -vxlan to 1, Spirent HLTAPI creates a VXLAN header, together with which the original Ethernet frame and IPv4 frame (if specified ) are encapsulated.

Note

The following arguments prefixed by -inner_*** are used to configure the inner Ethernet frame and inner IPv4 frame.

-vni

Spirent Extension (for Spirent HLTAPI only).

Specifies the VXLAN Network Identifier in the VXLAN header. Possible values range from 0 to 16777215. The default is 0. You must set -vxlan to 1.

-peer_vtep_ipv4_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the IPv4 address of the peer Virtual Tunnel Endpoints (VTEP) device. The default value is 0.0.0.0. You must set -vxlan to 1.

-ipv4_multicast_group_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the IPv4 multicast group address. The default value is 225.0.0.1. You must set -vxlan to 1.

-inner_l3_protocol

Spirent Extension (for Spirent HLTAPI only).

Specifies the Layer 3 protocol for the inner Ethernet frame. The supported values are ipv4 and ipv6. You must set -vxlan to 1.

-inner_ip_src_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the source IPv4 address for the inner IPv4 header of the first generated packet. The default is 0.0.0.0. You must set -vxlan to 1.

-inner_ip_dst_addr

Spirent Extension (for Spirent HLTAPI only).

Specifies the destination IPv4 address for the inner IPv4 header of the first generated packet. The default is 192.0.0.1. You must set -vxlan to 1.

-inner_ip_id

Spirent Extension (for Spirent HLTAPI only).

Specifies the identifying value used to help assemble the fragments of a datagram in the inner IPv4 header. Possible values range from 0 to 65535. The default is 0. You must set -vxlan to 1.

-inner_ip_checksum

Verifies that packets are not corrupted. Possible values are 0 (not corrupted) and 1 (corrupted). The default is 0. You must set -vxlan to 1.

-inner_ip_fragment_offset

Spirent Extension (for Spirent HLTAPI only).

The byte count from the start for the inner IPv4 header of the original sent packet. The fragment offset is measured in 8-octet increments (64 bits). Possible values range from 0 to 8191. The default is 0. You must set -vxlan to 1.

-inner_ip_dst_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign the IPv4 addresses for a particular stream. Possible values are:

increment - For all packets, the destination IP address
        increments by the step specified in the
        -inner_ip_dst_step argument.
decrement - For all packets, the destination IP address
        decrements by the step specified in the
        -inner_ip_dst_step argument.
random  - For all packets, the destination IP addresses are
        in random order.

shuffle - For all packets, the destination IP addresses are
        in random order within a range that is determined by the
        values of -inner_ip_dst_count and -inner_ip_dst_step.
fixed  - The destination IP address is the same for all
        packets.

list    - For all packets, the destination IP addresses are a
          fixed set of values.

You must set -vxlan to 1.

-inner_ip_dst_step

Spirent Extension (for Spirent HLTAPI only).

The amount by which to increment the specified inner IPv4 destination IP address (-inner_ip_dst_addr) for subsequent packets. The modifier must be in IPv4 format. You must set -vxlan to 1.

-inner_ip_dst_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of inner destination IPv4 addresses to generate for a stream. Possible values range from 1 to 2147483647. The default is 1.You must set -vxlan to 1.

-inner_ip_src_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign the inner IP addresses for a particular stream. Possible values are:

increment - For all packets, the source IP
          address increments by the step specified in the
          -inner_ip_src_step argument.
decrement - For all packets, the source
          IP address decrements by the step specified in the
          -inner_ip_src_step argument.

random - For of all packets, the source IP addresses are in
          random order.

shuffle - For all packets, the source
          IP addresses are in random order within a range that is
          determined by the values of -inner_ip_src_count and
          -inner_ip_src_step.
fixed - The source IP address is the same for all packets.

list    - For all packets, the source IP addresses are a
          fixed set of values.

You must set -vxlan to 1.

-inner_ip_src_step

Spirent Extension (for Spirent HLTAPI only).

The amount by which to increment the specified inner source IP address (-inner_ip_src_addr) for subsequent packets. The modifier must be in IPv4 format. You must set -vxlan to 1.

-inner_ip_src_count

Spirent Extension (for Spirent HLTAPI only).

The number of inner source IPv4 addresses to generate for a stream. Possible values range from 1 to 2147483647. The default is 1. You must set -vxlan to 1.

-inner_ip_src_seed

Spirent Extension (for Spirent HLTAPI only).

Specifies the seed value which is used for generating random numbers. The default value is 0. You must specify random in the -inner_ip_src_mode argument.

-inner_ip_src_mask

Spirent Extension (for Spirent HLTAPI only).

Specifies the data bytes to be modified in the source IP. The mask size must be the same size as the data. The default is 255.255.255.255.

-inner_ip_dst_seed

Spirent Extension (for Spirent HLTAPI only).

Specifies the seed value which is used for generating random numbers. The default value is 0. You must specify random in the -inner_ip_dst_mode argument.

-inner_ip_dst_mask

Spirent Extension (for Spirent HLTAPI only).

Specifies the data bytes to be modified in the destination IP. The mask size must be the same size as the data. The default is 255.255.255.255.

-inner_ip_gw

Spirent Extension (for Spirent HLTAPI only).

The starting gateway address for the inner IPv4 header. The value must be in IPv4 format. You must set -vxlan to 1.

-inner_ip_gw_step

Spirent Extension (for Spirent HLTAPI only).

Defines the increment used to generate inner IPv4 gateway addresses. The value must be in IPv4 format. The default value is 0.0.0.0. You must set -vxlan to 1.

-inner_ip_gw_count

Spirent Extension (for Spirent HLTAPI only).

Defines the number of gateway addresses for the streamblocks of inner Ethernet frames. You should specify this option when the stream is across different sub-interfaces. Possible values range from 1 to 2147483647. You must set -vxlan to 1.

-inner_ipv6_src_addr

Specifies the source IPv6 address of the first generated packet. The default is 2000::2. You must specify IPv6 in the -inner_l3_protocol argument. You must set -vxlan to 1.

-inner_ipv6_dst_addr

The destination IPv6 address of the first generated packet. The default is 2000::1. You must specify IPv6 in the -inner_l3_protocol argument. You must set -vxlan to 1.

-inner_ipv6_hop_limit

The hop limit field in the IPv6 header, which is an eight- bit field similar to TTL in IPv4. Possible values range from 0 to 255. The default is 64. You must specify IPv6 in the -inner_l3_protocol argument. You must set -vxlan to 1.

-inner_ipv6_traffic_class

The traffic class field in the IPv6 header, which is an eight-bit field that describes the packet’s priority. This value is used at the application layer. Possible values range from 0 to 255. The default is 0. You must specify IPv6 in the -inner_l3_protocol argument. You must set -vxlan to 1.

-inner_ipv6_next_header

The next header field in the IPv6 header. For datagrams with extension headers, this field specifies the identity of the first extension header, which is the next header in the datagram. Possible values range from 0 to 255. The default is 59. You must specify IPv6 in the -inner_l3_protocol argument. You must set -vxlan to 1.

-inner_ipv6_flow_label

The flow label value of the IPv6 stream, which is a twenty- bit field used for QoS management. Typical packets not associated with a particular flow, but which require special treatment are set to 0. Possible values range from 0 to 1048575. The default is 0. You must specify IPv6 in the -inner_l3_protocol argument. You must set -vxlan to 1.

-inner_ipv6_length

The two-byte payload length field in the IPv6 header. Possible values range from 0 to 65535. The default is 128. You must specify IPv6 in the -inner_l3_protocol argument. You must set -vxlan to 1.

-inner_ipv6_gateway_addr

Spirent Extension (for Spirent HLTAPI only).

Defines the number of gateway addresses for the streamblocks of inner Ethernet frames. The value must be in IPv6 format. You must specify IPv6 in the -inner_l3_protocol argument. You must set -vxlan to 1.

-inner_l2_encap

Spirent Extension (for Spirent HLTAPI only).

Identifies the type of Layer 2 encapsulation for the inner Ethernet frame. Possible values are ethernet_ii and ethernet_ii_vlan. The default value is ethernet_ii. You must set -vxlan to 1.

-inner_ether_type

Spirent Extension (for Spirent HLTAPI only).

Specifies the Ethernet protocol type for the inner Ethernet frame. Possible Values are described below:

Value   Description
0200    XEROX PUP
0201    PUP Addr Trans
0400    Nixdorf
0600    XEROX NS IDP
0660    DLOG
0661    DLOG2
0800    Internet IP
0801    X.75 Internet
0802    NBS Internet
0803    ECMA Internet
0804    Chaosnet
0805    X.25 Level 3
0806    ARP
0807    XNS Compatibility
0808    Frame Relay ARP
8035    RARP
86DD    IPv6
880B    PPP
8809    Slow Protocol
8847    MPLS Unicast
8848    MPLS Multicast
8863    PPPoE Discovery
8864    PPPoE Session
8906    FCoE
8914    FIP

You must set -vxlan to 1.

-inner_mac_dst

Spirent Extension (for Spirent HLTAPI only).

Specifies the inner destination MAC address defined in the inner Ethernet frame. The default is 00-00-00-00-00-00. You must set -vxlan to 1.

-inner_mac_src

Spirent Extension (for Spirent HLTAPI only).

Specifies the inner source MAC address defined in the inner Ethernet frame. The default value is 00-00-01-00-00-01. You must set -vxlan to 1.

-inner_mac_dst_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign inner destination MAC addresses for a particular stream. Possible values are:

fixed - The destination MAC address is the same for all
        packets.

increment - For all packets, the destination MAC address
        increments by the step specified in the
        -inner_mac_dst_step argument.

decrement - For all packets, the destination MAC address
        decrements by the step specified in the
        -inner_mac_dst_step argument

random  - For all packets, the MAC addresses are
        in random order.

shuffle - For all packets, the destination MAC addresses are in
        random order within a range that is determined by the
        values of -inner_mac_dst_count and -inner_mac_dst_step.

list    - For all packets, the destination MAC addresses are a
          fixed set of values.

This attribute is Mandatory for each stream. You must set -vxlan to 1.

-inner_mac_dst_step

Spirent Extension (for Spirent HLTAPI only).

The amount by which to increment the specified inner destination MAC address (-inner_mac_dst) for subsequent packets. Possible values range from 1 to 255, expressed as a power-of-two value (1,2,4,8,16…). The default is 1. You must set -vxlan to 1.

-inner_mac_dst_count

Spirent Extension (for Spirent HLTAPI only).

The number of inner destination MAC addresses to generate for a particular stream. Possible values are 1 to 2147483647. The default is 1. You must set -vxlan to 1.

-inner_mac_src_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI will assign the inner source MAC addresses for a particular stream. Possible values are:

fixed - The source MAC address is the same for all packets.
increment - For all packets, the source MAC address
        increments by the step specified in the -inner_mac_src_step
        argument.
decrement - For all packets, the source MAC address
        decrements by the step specified in the -inner_mac_src_step
        argument
random  - For all packets, the MAC addresses are
         in random order.
shuffle - For all packets, the source MAC addresses are in
      random order within a range that is determined by the values
      of -inner_mac_src_count and -inner_mac_src_step.

list    - For all packets, the source MAC addresses are a
          fixed set of values.

You must set -vxlan to 1.

-inner_mac_src_step

Spirent Extension (for Spirent HLTAPI only).

The amount by which to increment the specified inner source MAC address (-mac_src) for subsequent packets. Possible values range from 1 to 255, expressed as a power-of-two value (1,2,4,8,16…). The default is 1. You must set -vxlan to 1.

-inner_mac_src_count

Spirent Extension (for Spirent HLTAPI only).

The number of inner source MAC addresses to generate for a particular stream. Possible values range from 1 to 2147483647. The default is 1. You must set -vxlan to 1.

-inner_mac_src_seed

Spirent Extension (for Spirent HLTAPI only).

Specifies the seed value which is used for generating random numbers. The default value is 0. You must specify random in the -inner_mac_src_mode argument.

-inner_mac_src_mask

Spirent Extension (for Spirent HLTAPI only).

Specifies the data bytes to be modified in the source MAC. The mask size must be the same size as the data. The default is 00:00:FF:FF:FF:FF.

-inner_mac_dst_seed

Spirent Extension (for Spirent HLTAPI only).

Specifies the seed value which is used for generating random numbers. The default value is 0. You must specify random in the -inner_mac_dst_mode argument.

-inner_mac_dst_mask

Spirent Extension (for Spirent HLTAPI only).

Specifies the data bytes to be modified in the destination MAC. The mask size must be the same size as the data. The default is 00:00:FF:FF:FF:FF.

-inner_vlan_id

Spirent Extension (for Spirent HLTAPI only).

Specifies the VLAN ID for the inner Ethernet frame. Possible values range from 0 to 4094. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_cfi

Spirent Extension (for Spirent HLTAPI only).

Specifies whether the canonical format indicator (CFI) value is set for the inner VLAN header. Possible values are 0 or 1. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_user_priority

Spirent Extension (for Spirent HLTAPI only).

Specifies the VLAN priority to assign to the specified port. Possible values range from 0 to 7. You can also enter a list of priority values. The default is 1. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_id_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent TestCenter will assign VLAN tags to packets in a particular stream. Possible values are:

fixed - The VLAN ID is the same for all packets.

increment - For all packets, the VLAN tag ID increments by
         the step specified in the -inner_vlan_id_step argument.

decrement - For all packets, the VLAN tag ID decrements by
         the step specified in the -inner_vlan_id_step argument.

random - For all packets, the VLAN tag IDs will be in random
          order.

shuffle - For all packets, the VLAN tag IDs are in random
          order within a range that is determined by the values
          of -inner_vlan_id_count and -inner_vlan_id_step.

list    - For all packets, the VLAN tag IDs are a fixed
          set of values.

You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_id_step

Spirent Extension (for Spirent HLTAPI only).

The amount by which to increment the specified VLAN ID (-inner_vlan_id) for subsequent packets in inner Ethernet frames. Possible values range from 0 to 4095. The default is 0. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_id_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of VLAN tags to generate for the stream. Possible values range from 1 to 4096. The default is 1. You must set -vxlan to 1, -inner_vlan_id_mode to increment and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_id_repeat

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times an VLAN ID should be repeated, before the step (-inner_vlan_id_step) is applied to the VLAN ID for incrementing. The default is 0. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_priority_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent HLTAPI assigns VLAN priority to packets in In a particular stream. Possible values are:

fixed - The VLAN priority is the same for all packets.

increment - For all packets, the VLAN priorities increment by the
           step specified by -inner_vlan_priority_step.

decrement - For all packets, the VLAN priorities decrement
           by the step specified by -inner_vlan_priority_step.

random - For all packets, the VLAN priorities are in random order.

shuffle - For all packets, the VLAN priorities are in
       random order within a range that is determined by the
       values of -inner_vlan_priority_count and
       -inner_vlan_priority_step.

list  - For all packets, the VLAN priorities are a fixed
        set of values.

You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_priority_step

Spirent Extension (for Spirent HLTAPI only).

The amount by which to increment the specified VLAN priority (-inner_vlan_user_priority) for subsequent packets. Possible values range from 0 to 4095. The default is 0. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_priority_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of VLAN priorities to generate for the stream. Possible values range from 1 to 4096. The default is 1. You must set -vxlan to 1, -inner_vlan_id_mode to increment and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_tpid

Spirent Extension (for Spirent HLTAPI only).

The type of VLAN in the inner Ethernet frame header. Possible values range from 0 to 65535. The default is 33024. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_id_outer

Spirent Extension (for Spirent HLTAPI only).

Specifies the VLAN ID for a particular outer header in the inner Ethernet frame. Possible values range from 0 to 4095. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_outer_cfi

Spirent Extension (for Spirent HLTAPI only).

Specifies whether the CFI value is set for the VLAN outer header in the inner Ethernet frame. Possible values are 0 or 1. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_outer_user_priority

Spirent Extension (for Spirent HLTAPI only).

Specifies the VLAN priority to assign to the outer header in the inner Ethernet frame. Possible values range from 0 to 7. You can also enter a list of priority values. The default is 0. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_outer_user_priority_mode

Specifies how Spirent HLTAPI assigns VLAN priority to packets in a particular stream. Possible values are:

fixed     - The VLAN priority is the same for all packets.

increment - For all packets, the VLAN priorities increment by the
            step specified by -inner_vlan_outer_user_priority_step.

decrement - For all packets, the VLAN priorities decrement
            by the step specified by -inner_vlan_outer_user_priority_step.

random    - For all packets, the VLAN priorities are in random order.

shuffle   - For all packets, the VLAN priorities are in
            random order within a range that is determined by the
            values of -inner_vlan_outer_user_priority_count and
            -inner_vlan_outer_user_priority_step.

list      - For all packets, the VLAN priorities are a fixed
            set of values.
-inner_vlan_outer_user_priority_step

The amount by which to increment the specified VLAN priority (-inner_vlan_outer_user_priority) for subsequent packets. Possible values range from 0 to 4095. The default is 0.

-inner_vlan_outer_user_priority_count

Specifies the number of VLAN priorities to generate for the stream. Possible values range from 1 to 4096. The default is 1.

-inner_vlan_id_outer_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent TestCenter will assign VLAN tags to packets in the specified outer header. Possible values are:

fixed - The outer VLAN ID is the same for all packets.

increment - For all packets, the outer VLAN tag ID
          increments by the step specified in the
          -inner_vlan_id_outer_step argument.

decrement - For all packets, the outer VLAN tag ID
           decrements by the step specified in the
           -inner_vlan_id_outer_step argument.

random - For all packets, the outer VLAN tag IDs will be in
          random order.

shuffle - For all packets, the outer VLAN tag IDs are in
          random order within a range that is determined by the
          values of -inner_vlan_id_outer_count and
          -inner_vlan_id_outer_step.

list    - For all packets, the outer VLAN tag IDs are a
          fixed set of values.

You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_id_outer_step

Spirent Extension (for Spirent HLTAPI only).

The amount by which to increment the specified outer VLAN ID (-inner_vlan_id_outer) for subsequent packets. Possible values range from 0 to 4095 (see below). The default is 0. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_id_outer_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of VLAN tags to generate for the outer header. Possible values range from 1 to 4096. The default is 1. You must set -vxlan to 1, -vlan_id_outer_mode to increment and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_id_outer_repeat

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times an outer VLAN ID should be repeated, before the step (-inner_vlan_id_outer_step) is applied to the outer VLAN ID for incrementing. The default is 0. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_vlan_outer_tpid

Spirent Extension (for Spirent HLTAPI only).

The type of outer VLAN in the inner Ethernet frame header of traffic. Possible values range from 0 to 65535. The default is 33024. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

-inner_qinq_incr_mode

Spirent Extension (for Spirent HLTAPI only).

Determines which VLAN ID to increment first. Possible values are:

inner - Increment the inner VLAN ID before the outer VLAN ID

outer - Increment the outer VLAN ID before the inner VLAN ID
both - Increment both the inner and outer VLAN ID at the
       same time

The default is both. You must set -vxlan to 1 and -inner_l2_encap to ethernet_ii_vlan.

Use the following options to configure other VLAN ID headers outside the outer VLAN header. You must have already configured the outer VLANS.

-vlan_id_other

Spirent Extension (for Spirent HLTAPI only).

Specifies a list of starting VLAN IDs for other VLAN headers. Possible values range from 0 to 4095. The default value is 100.

-vlan_cfi_other

Spirent Extension (for Spirent HLTAPI only).

Specifies a list of CFI values for other VLAN headers of the emulated FCoE device. Possible values are 0 (Ethernet) and 1 (Token Ring). The default is 0. If it is set to 0, it indicates the network is Ethernet. If it is set to 1, it indicates that the network is Token Ring and packets are dropped by Ethernet ports. The default value is 0.

-vlan_user_priority_other

Spirent Extension (for Spirent HLTAPI only).

Specifies a list of VLAN priority values for other VLAN headers. Possible values range from 0 to 7. The default value is 0.

-vlan_id_other_mode

Spirent Extension (for Spirent HLTAPI only).

Specifies how Spirent TestCenter will assign VLAN tags for other VLAN headers across packets. Possible values are:

fixed       The other VLAN ID is the same for all packets

increment   For all packets, other VLAN tag IDs
            increment by the step specified in the
            -vlan_id_other_step argument.

decrement   For all packets, other VLAN tag IDs
            decrement by the step specified in the
            -vlan_id_other_step argument

random      For all packets, other VLAN tag IDs will be in
            random order

shuffle     For all packets, other VLAN tag IDs are in
            random order within a range determined by the values of
            -vlan_id_other_count and -vlan_id_other_step

list        For all packets, other VLAN tag IDs are a
            fixed set of values.
-vlan_id_other_step

Spirent Extension (for Spirent HLTAPI only).

Specifies the amount by which to increment the specified other VLAN ID (-vlan_id_other) for subsequent packets. Possible values range from 0 to 4095. The default value is 0.

-vlan_id_other_count

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of VLAN tags to generate for other VLAN headers. Possible values range from 1 to 4096. The default value is 1. You must set the -vlan_id_other_mode argument to increment.

-vlan_id_other_repeat

Spirent Extension (for Spirent HLTAPI only).

Specifies the number of times an other VLAN ID should be repeated, before the step (-vlan_id_other_step) is applied to it for incrementing. The default value is 0.

-vlan_tpid_other

Spirent Extension (for Spirent HLTAPI only).

Specifies the type of other VLAN in the frame header of traffic. Possible values range from 0 to 65535. The default value is 33024.

Note

  1. The number of other VLAN headers to be created is determined by the length of the longest option among -vlan_id_other, -vlan_tpid_other, -vlan_user_priority_other, and -vlan_cfi_other. The arguments with shorter lengths will be padded with default values by their length differences based on the longest list. For example:

    -vlan_id_other {100 150 200 400}
    -vlan_user_priority_other {7 3}
    

    The number of other VLAN headers to be created is 4, and the VLAN priority values will be 7, 3, 0, and 0.

  2. The number of modifiers to be created and their target other VLAN IDs are determined by the length of the longest option among -vlan_id_other_mode, -vlan_id_other_step, -vlan_id_other_repeat, and -vlan_id_other_count. The arguments with shorter lengths will be padded with default values by their length differences with the longest list. For example:

    -vlan_id_other                          {100 150 200 400}
    -vlan_user_priority_other               {7 3}
    -vlan_id_other_mode                     {increment decrement increment}
    -vlan_id_other_count                    {3 10}
    -vlan_id_other_step                     {1 2}
    

    -vlan_id_other_mode has the longest list. There are three modifiers, and the target other VLAN IDs are the first three: 100, 150, and 200.

-advanced_sequence_threshold

Spirent Extension (for Spirent HLTAPI only).

A 31-bit value in sequence number units. If Advanced Sequence Checker is used for the stream statistics group, this value would be used as the late threshold; otherwise, this value will be ignored. A packet is a late packet if its sequence number is smaller than the expected sequence number minus the late threshold. The default value is 1000.

-jumbo_frame_threshold

Spirent Extension (for Spirent HLTAPI only).

Specifies the jumbo frame threshold. Received frame sizes above this threshold will be counted as jumbo frames. The value you specify must be less than the oversized frame threshold. The value range is 12-16383 for 10/100/1000 Mbps Ethernet, 56-16383 for 10 Gigabit Ethernet, and 46-16383 for POS. The default value is 1518.

-oversize_frame_threshold

Spirent Extension (for Spirent HLTAPI only).

Specifies the oversize frame threshold. Received frame sizes above this threshold will be counted as oversized frames. The value range is 12-16383 for 10/100/1000 Mbps Ethernet, 56-16383 for 10 Gigabit Ethernet, and 46-16383 for POS. The default value is 9018.

-undersize_frame_threshold

Spirent Extension (for Spirent HLTAPI only).

Specifies the undersize frame threshold. Received frame sizes below this threshold will be counted as undersized frames. The value range is 12-16383 for 10/100/1000 Mbps Ethernet, 56-16383 for 10 Gigabit Ethernet, and 46-16383 for POS. The default value is 64.

-gtpv1_version

Specifies the version value of GPRS Tunneling Protocol. For GTPv1, this has a value of 1. The default value is 1.

-gtpv1_tunnel_endpoint_id

Specifies the tunnel endpoint identifier (TEID) value in the GTP packet. The GTP stack assigns a unique TEID to each GTP control connection to the peers. The GTP stack also assigns a unique TEID to each GTP user connection (bearer) to the peers. The default value is 0.

-gtpv1_seq_num_flag

Specifies the value that states whether there is a sequence number optional field. The default value is 0. Possible values are described below:

0    Sequence Number Flag off
1    Sequence Number Flag on
-gtpv1_reserved

Specifies the 1-bit reserved field. The default value is 0. Possible values are described below:

0    False
1    True
-gtpv1_protocol

Specifies the value that differentiates GTP from GTP’. The default value is 1. Possible values are described below:

0    GTP'
1    GTP
-gtpv1_npdu_num_flag

Specifies the value that states whether there is a N-PDU number optional field. The default value is 0. Possible values are described below:

0    N-PDU Number Flag off
1    N-PDU Number Flag on
-gtpv1_msg_type

Specifies the type of GTP message. Different types of messages are defined in 3GPP TS 29.060. The default value is 0.

-gtpv1_total_length

Specifies the length of the payload in bytes (rest of the packet following the Mandatory 8-byte GTP header). Includes the optional fields. The default value is 8.

-gtpv1_extended_header_flag

Specifies the value that states whether there is an extension header optional field. The default value is 0. Possible values are described below:

0    Extended Header Flag off
1    Extended Header Flag on
-gtpv1_ext_seq_num

Specifies the field that exists if any of the E, S, or PN bits are on. The field must be interpreted only if the S bit is on. The default value is 0.

-gtpv1_ext_npdu_num

Specifies the field that exists if any of the E, S, or PN bits are on. The field must be interpreted only if the PN bit is on. The default value is 0.

-gtpv1_ext_next_extension_header_type

Specifies the field that exists if any of the E, S, or PN bits are on. The field must be interpreted only if the E bit is on. The default value is 0.

-gtpv1_ext_extension_header_length

Specifies the value that states the length of this extension header. The default value is 1.

-gtpv1_ext_pattern

Specifies the extension header contents. The default value is 0000.

-gtpv1_opt_seq_num

Specifies the field that exists if any of the E, S, or PN bits are on. The field must be interpreted only if the S bit is on. The default value is 0.

-gtpv1_opt_npdu_num

Specifies the field that exists if any of the E, S, or PN bits are on. The field must be interpreted only if the PN bit is on. The default value is 0.

-gtpv1_opt_next_extension_header_type

Specifies the field that exists if any of the E, S, or PN bits are on. The field must be interpreted only if the E bit is on. The default value is 0.

-eth_pause_pfc_opCode

Specifies the Ethernet pause PFC frame operation code (Opcode).

Values: octet string

Default: 0101

-eth_pause_pfc_reserved

Specifies the reserved field of the Ethernet pause PFC header.

Values: octet string

Default: 0000000000000000000000000000000000000000000000000000

-eth_pause_pfc_time0

Specifies the pause timer for priority 0. The default value is 0.

-eth_pause_pfc_time1

Specifies the pause timer for priority 1. The default value is 0.

-eth_pause_pfc_time2

Specifies the pause timer for priority 2. The default value is 0.

-eth_pause_pfc_time3

Specifies the pause timer for priority 3. The default value is 0.

-eth_pause_pfc_time4

Specifies the pause timer for priority 4. The default value is 0.

-eth_pause_pfc_time5

Specifies the pause timer for priority 5. The default value is 0.

-eth_pause_pfc_time6

Specifies the pause timer for priority 6. The default value is 0.

-eth_pause_pfc_time7

Specifies the pause timer for priority 7. The default value is 0.

-class_enable_vector_lsoctet

Specifies the lsoctet value in the class enable vector field. The default value is 00000000.

-class_enable_vector_msoctet
Specifies the msoctet value in the class enable vector field. The default value is 00000000.
-pause_mac_control_opcode
 Specifies the opcode field of the Pause MAC Control header. The default value is 0001.
-pause_mac_control_pause_time
 Specifies the pause time field of the Pause MAC Control header. The default value is 0.
-pause_mac_control_reserved
 Specifies the reserved field of the Pause MAC Control header. The default value is 84 zeroes hexadecimal.

Arguments Unsupported by Save as HLTAPI

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

-ip_dst_block_count
-ip_dst_block_step
-qinq_incr_mode
-port_handle2
-bidirectional
-mac_dst2
-mac_src2
-mac_dst2_mode
-mac_dst2_step
-mac_dst2_count
-mac_src2_mode
-mac_src2_step
-mac_src2_count
-stream_id
-vpi
-vpi_step
-vpi_count
-vci
-vci_step
-vci_count

802.2 and SNAP Header
-ipx_header
-xns_header
-appletalk_header
-aarp_header
-decnet_header
-vines_header
-custom_llc

RTP Header
-rtp_csrc_count
-ssrc
-rtp_payload_type
-timestamp_initial_value
-timestamp_increment
-csrc_list

ISIS Header
-isis_pdu_header_len
-isis_version
-isis_system_id_len
-isis_pdu_type
-isis_version2
-isis_reserved
-isis_max_area_addr
-isis_reserved_circuit_type
-isis_source_id
-isis_holder_timer
-isis_pdu_len
-isis_reserved_bit
-isis_priorit
-isis_lan_id

ICMPv6 Header
Arguments prefixed by -icmpv6_***

VXLAN Header
-vxlan
-vni
-peer_vtep_ipv4_addr
-ipv4_multicast_group_addr
Arguments prefixed by -inner_***
  1. When configuring a streamblock that includes the GRE header in Spirent TestCenter, select GRE for the Protocol field in the IPv4 header (the IPv4 header before GRE) instead of using the default value, or you will have to manually configure the GRE header in the generated script.
  2. For header fields that are filled with <auto> + value in Spirent TestCenter, you need to manually edit that field instead of using the automatic value. This way the value will be reflected in the script generated by Save to High Level API.

Vendor Specific Arguments Processed by Spirent HLTAPI Wrapper

-data_pattern

Payload value in bytes. You can specify a custom payload pattern using -data_pattern. For example:

00 44 00 44
-integrity_signature

Data integrity signature for the stream.

-mpls_exp_bit

Specifies the experimental use bit. Possible values range from 0 to 7. If -mpls_exp_bit_mode is set to list, you can specify a list of values.

-mpls_exp_bit_count

Number of times -mpls_exp_bit is incremented or decremented when -mpls_exp_bit_mode is incr or decr. The default value is 1.

-mpls_exp_bit_mode

Configures the behavior for -mpls_exp_bit. Possible values are:

Value               Usage
fixed               Value is left unchanged for all packets

incr                Value is incremented as specified with
                    -mpls_exp_bit_step and -mpls_exp_bit_count

decr                Value is decremented as specified with
                    -mpls_exp_bit_step and -mpls_exp_bit_count

list                Parameter -mpls_exp_bit contains a list of
                    values. Each packet will use one of the
                    values from the list
-mpls_exp_bit_step

Step value used to modify -mpls_exp_bit when -mpls_exp_bit_mode is incr or decr. The default value is 1.

-mpls_label_mode

Configures the behavior for -mpls_labels. Possible values are:

fixed       Value is fixed for all packets.

incr        Value is incremented as specified with
            -mpls_labels_step and -mpls_labels_count

decr        Value is decremented as specified with
            -mpls_labels_step and -mpls_labels_count.

list        Parameter -mpls_labels contains a list of values. Each
            packet will use one of the values from the list.
-vlan_protocol_tag_id

The protocol ID field of the VLAN tag. It can be any 4-digit hex. Example: 8100, 9100, 9200. For stacked VLAN, this parameter will be provided as a list of values, each of which represents the protocol ID field of the VLAN tag.

-l2_length

Specifies the L2 frame size for the stream in bytes. Use this argument when -length_mode is set to fixed.

-l2_length_max

Specifies the maximum frame length. Use this argument when -length_mode is set to random, increment or decrement.

-l2_length_min

Specifies the minimum frame length. Use this argument when -length_mode is set to random, increment or decrement.

-l2_length_stepn

Specifies the step by which the frame size increments or decrements when -length_mode is set to increment or decrement.

-single_shot_traffic

Specifies the exact number of frames to send

-circuit_endpoint_type

Specifies the endpoint type that will be used to generate traffic. Possible values are:

Value                  Usage
atm                  Use this option if the endpoint supports
                     ATM
ethernet_vlan        Use this option if the endpoint supports
                     Ethernet/VLAN
ethernet_vlan_arp    Use this option if the endpoint supports
                     Ethernet/VLAN  and ARP
frame_relay          Use this option if the endpoint supports
                     Frame Relay
hdlc                 Use this option if the endpoint supports
                     HDLC/POS
ipv4                 Use this option if the endpoint supports
                     IPv4

ipv4_arp             Use this option if the endpoint supports
                     IPv4 and ARP

ipv4_application_traffic    Use this option if the endpoint
                       supports IPv4 application traffic generation
ipv6                   Use this option if the endpoint supports
                       IPv6

ipv6_application_traffic  Use this option if the endpoint supports
                          IPv6 application traffic generation.

ppp                 Use this option if the endpoint supports
                    PPP/POS

fcoe                Use this options if the endpoint supports
                    FCoE
fc                  Use this options if the endpoint supports FC

multicast_igmp      Use this option only if -emulation_src_handle or
                    -emulation_dst_handle is represented by
                    IP handles. For example:
                    20.0.1.2/50.0.1.5/0.0.0.1/3.
-enable_pgid

Enables or disables packet groups IDs in the stream. The packet group offset will be calculated automatically. Possible values are 0 (disable) and 1 (enable). The default value is 1.

-pgid_value

Unique value used to identify one packet group for another. Up to 57344 different packet groups may be defined. This parameter can take a list of values as follows:

when traffic is configured bidirectional and this parameter has one value, this value will be set on both streams. When this parameter has a list of two values, the first value will be assigned to the first stream and the second value to the second stream.

-inner_l4_protocol

Spirent Extension (for Spirent HLTAPI only).

Specifies the Layer 4 protocol for the inner Ethernet frame. The supported values are UDP and TCP. You must set -vxlan to 1.

-inner_udp_checksum

Verifies that packets are not corrupted. Possible values are 0 (not corrupted) and 1 (corrupted). The default is 0. You must specify UDP in the -inner_l4_protocol argument.

-inner_udp_dst_port

Defines the destination UDP port number. Possible values range from 0 to 65535. The default is 1024. You must specify UDP in the -inner_l4_protocol argument.

-inner_udp_src_port

Defines the source UDP port number. Possible values range from 0 to 65535. The default is 1024. You must specify UDP in the -inner_l4_protocol argument.

-inner_tcp_src_port

Specifies the port on the sending TCP module. Possible values range from 0 to 65535. The default is 1024. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_dst_port

Specifies the port on the receiving TCP module. Possible values range from 0 to 65535. The default is 80. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_checksum

Specifies the TCP checksum value. Possible values range from 0 to 65535. The values must be integers. If you do not specify this argument, checksum will be automatically calculated. The default is 1024. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_ack_num

Identifies the next expected TCP octet. Possible values are 0 to 4294967295. The default is 1. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_data_offset

Specifies the data offset field in the TCP header. Possible values range from 1 to 15. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_reserved

Reserves TCP bits. Possible values range from 0 to 63. The default is 0. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_seq_num

Identifies the position of the data within the data stream. Possible values are 1 to 2147483647. The default is 1. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_urgent_ptr

Specifies the position in the segment where urgent data ends. Possible values range from 0 to 65535. The default is 0. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_window

Specifies the number of bytes that can be sent simultaneously (within the window). In the TCP header, this field is used by the receiver to indicate to the sender the amount of data that it is able to accept. Possible values are 0 to 65535. The default is 4069. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_cwr_flag

Indicates whether transmit buffers are filling due to congestion. Possible values are 0 and 1. The default is 0. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_ecn_echo_flag

Indicates whether the other side of the TCP connection received an ECN notification from the network. Possible values are 0 and 1. The default is 0. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_ack_flag

Indicates whether the data identified by the sequence number has been received. Possible values are 0 and 1. The default is 1. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_fin_flag

Indicates whether a connection is terminated. Possible values are 0 and 1. The default is 0. Once the data transfer is complete, the host sends a packet with the FIN and ACK flags set. The FIN flag is then set to 1, while the ACK flag is set to 0. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_psh_flag

Indicates whether to ensure that the data is given the appropriate priority and is processed at the sending or receiving end. Possible values are 0 and 1. The default is 0. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_rst_flag

Resets the connection when a segment arrives that is not intended for the current connection. Possible values are 0 and 1. The default is 0. You must specify TCP in the -inner_l4_protocol argument.

-inner_tcp_syn_flag

Indicates whether the port is open for connection. Possible values are 0 and 1. A value of 1 indicates the port has established a connection. The default is 0. You must specify TCP in the -inner_l4_protocol argument

-inner_tcp_urg_flag

Identifies the incoming data as urgent, giving it priority over the other segments. Possible values are 0 and 1. The default is 0. You must specify TCP in the -inner_l4_protocol argument.

Vendor Specific Arguments Ignored by Spirent HLTAPI Wrapper

-adjust_rate
-data_integrity
-enable_auto_detect_instrumentation
-enable_data_integrity
-field_modifier_relation
-frame_sequencing
-hosts_per_net
-ip_dst_mask
-ip_src_mask
-linked_fields
-pgid_offset
-sequence_num_offset
-signature
-signature_offset
-track_by
-adjust_rate
-allow_self_destined
-circuit_type
-data_pattern_mode
-duration
-destination_filter
-enable_auto_detect_instrumentation
-enable_data_integrity
-enable_pgid
-enable_time_stamp
-enable_udf1
-frame_sequencing_offset
-endpointset_count
-enforce_min_gap
-frame_rate_distribution_port
-frame_rate_distribution_stream
-frame_sequencing
-frame_size_distribution
-global_dest_mac_retry_count
-global_dest_mac_retry_delay
-global_display_mpls_current_label_value
-global_enable_dest_mac_retry
-global_enable_mac_change_on_fly
-global_enable_min_frame_size
-global_enable_staggered_transmit
-global_enable_stream_ordering
-global_large_error_threshhold
-global_max_traffic_generation_queries
-global_mpls_label_learning_timeout
-global_refresh_learned_info_before_apply
-global_stream_control
-global_stream_control_iterations
-global_use_tx_rx_sync
-global_wait_time
-ip_cost_mode
-ip_cost_tracking
-hosts_per_net
-ip_cu
-ip_cu_mode
-ip_cu_tracking
-ip_delay
-ip_delay_mode
-ip_dst_tracking
-ip_id_tracking
-ip_id_mode
-ipv6_dst_mask
-ip_fragment_last
-ip_fragment_last_mode
-ip_fragment_last_tracking
-ip_fragment_mode
-ip_fragment_offset_mode
-ip_fragment_offset_tracking
-ip_fragment_tracking
-ip_precedence_tracking
-ip_reliability
-ip_reliability_mode
-ip_reserved
-ip_reserved_mode
-ip_src_tracking
-ip_throughput
-ip_throughput_mode
-ip_throughput_tracking
-ip_ttl_tracking
-ipv6_dst_mask
-mac_src_tracking
-ip_ttl_mode
-ip_reserved_tracking
-ip_reliability_tracking
-integrity_signature_offset
-ipv6_dst_mask
-ip_fragment_last
-frame_sequencing_offset
-ip_delay_tracking
-ip_cost
-enable_udf4
-egress_tracking
-ip_ttl_tracking
-ipv6_src_mask
-mac_src_tracking
-preamble_custom_size
-loop_count
-merge_destinations
-min_gap_bytes
-preamble_custom_size
-loop_count
-merge_destinations
-min_gap_bytes
-mpls
-mpls_bottom_stack_bit_tracking
-mpls_exp_bit_tracking
-mpls_labels_tracking
-mpls_ttl_tracking
-pgid_offset
-pgid_value
-route_mesh
-duration
-signature
-signature_offset
-source_filter
-src_dest_mesh
-tcp_data_offset_mode
-tx_delay_unit
-udf1_counter_init_value
-udf1_counter_mode
-udf1_counter_repeat_count
-destination_filter
-udf1_counter_step
-udf1_counter_type
-udf1_counter_up_down
-udf1_mode
-udf1_offset
-udf4_counter_init_value
-udf4_counter_repeat_count
-udf4_counter_step
-udf4_counter_type
-udf4_inner_repeat_count
-udf4_inner_repeat_value
-udf4_inner_step
-udf4_mode
-udf4_offset
-vlan
-ip_total_length_mode
-transmit_distribution
-tx_delay
-traffic_generator
-enable_udf1
-enable_udf4
-mpls_label_mode
-stream_gen_field
-udf1_counter_init_value
-udf1_counter_mode
-udf1_counter_repeat_count
-udf1_counter_step
-udf1_counter_type
-udf1_counter_up_down
-udf1_mode
-udf1_offset
-udf4_counter_init_value
-udf4_counter_repeat_count
-udf4_counter_step
-udf4_counter_type
-udf4_inner_repeat_count
-udf4_inner_repeat_value
-udf4_inner_step
-udf4_mode
-udf4_offset

Note

For more information about Spirent HLTAPI Wrapper, refer to Chapter 4 Spirent HLTAPI Wrapper in Spirent HLTAPI Programmer’s Reference.

Cisco-specific Arguments

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

-fcs
-inter_burst_gap
-inter_stream_gap
-ip_cu
-ip_dst_skip_broadcast
-ip_dst_skip_multicast
-ip_fragment_last
-ip_src_skip_broadcast
-ip_src_skip_multicast
-ipv6_checksum
-ipv6_frag_id
-ipv6_frag_more_flag
-ipv6_frag_next_header
-ipv6_frag_offset
-l3_gaus1_avg
-l3_gaus2_avg
-l3_gaus3_avg
-l3_gaus4_avg
-l3_gaus1_halfbw
-l3_gaus1_weight
-l3_gaus2_halfbw
-l3_gaus2_weight
-l3_gaus3_halfbw
-l3_gaus3_weight
-l3_gaus4_halfbw
-l3_gaus4_weight

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):

stream_id
                 The handle that identifies the traffic stream created by the
                 ``sth::traffic_config`` function.

stream_id.$port_handle
                 The stream identifier for traffic associated with
                $port_handle. This ID is returned only if you generated
                 bidirectional traffic.

stream_id.$port_handle2
                 The stream identifier for traffic associated with
                $port_handle2. This ID is returned only if you generated
                 bidirectional traffic.

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

Description

The sth::traffic_config function sets up a traffic stream block on a Spirent HLTAPI port. Use this function to create new stream blocks, modify existing stream blocks, remove or disable stream blocks, or reset traffic stream blocks. (Use the -mode argument to specify the type of operation, and see the Notes for this section for more information.)

When you create a stream block on a port, the Spirent HLTAPI generator uses that port to transmit traffic stream blocks. You can also use a single call to the sth::traffic_config function to configure bidirectional traffic between two ports. (See the description of the -bidirectional argument.)

To configure traffic, use the arguments of the sth::traffic_config function to specify values for fields of an IP datagram. When you start traffic during the test, Spirent HLTAPI generates packets containing protocol headers based on the argument values. The arguments provide information such as source address, destination address, ToS, Layer 3 protocol, Layer4 protocol, IP bit flags, and other datagram values.

For each traffic header:

  • You specify a source and destination. For Ethernet headers, you supply a MAC address; for IP protocols, you specify IPv4 or IPv6 addresses; for TCP and UDP headers, you supply port numbers; for ARP headers, you can specify the source and destination address as either a MAC address or an IP address, which depends on the type of ARP packets.
  • You can specify a count and an increment to use a range of addresses or port numbers for sources and destinations. When you use ranges, Spirent HLTAPI generates packets based on permutations of the address and port number sets. You are limited in the number of ranges that you can specify.

Spirent HLTAPI supports up to a maximum of 2000 streamBlocks. There is one stream under each streamBlock. Each stream has an adjustable frame length distribution and transmit rate setting.

Spirent HLTAPI includes the capability of stacking L3 headers in the stream block definition (-mode create). Currently, the HLTAPI supports two levels of stacking for L3:

  • The “inner” type, which is defined by the L3 protocol (see -l3_protocol and the arguments that apply to it),
  • The “outer” type, which is defined by the L3 outer protocol (see -l3_outer_protocol and the arguments that apply to it). The outer header definition is created from the arguments containing “outer” in their names.

Here is an example showing how to stack headers in a stream definition (-mode create) using both an inner and outer header:

sth::traffic_config
           -mode create \
           -port_handle $port1 \
           -enable_stacking true \
           -length_mode fixed \
           -l3_length 256 \
          # general switches end here
           -l2_encap Ethernet_ii \
          .
          ..
           -l3_protocol ipv4 \
           -ip_src_addr 1.1.1.1 \
           -ip_dst_addr 3.3.3.3 \
           -l3_outer_protocol ipv4 \
           -ip_dst_outer_addr "2.2.2.2" \
           -ip_outer_protocol 10 \
           -ip_hdr_outer_length 3 \
           -ip_outer_id 0 \
           -ip_outer_checksum 100 \
           -ip_outer_ttl 16 \
           -ip_fragment_outer_offset 12
          ...
           -l2_encap Ethernet_ii \
          ...

The example above creates two L3 headers under the stream block.

To modify attributes in a header (-mode modify), you must identify the specific attribute of the specific header that you added to the traffic stream during -mode create. Use the dot (“.”) notation to identify the attribute and header using one of the following two methods:

  • Append the dot to the attribute name to identify the header to modify. For example, to modify the second Layer 2 header, you can identify it as “l2_encap.2”. Likewise, to modify the third Layer 3 header, you can identify it as “l3_protocol.3”. Here is an example:

    sth::traffic_config
               -mode modify \
               -stream_id 50 \
               -l2_encap.2 ethernet_ii \
               -mac_src   aa.bb.cc.dd.ee.ff \ # the new value of source MAC address
               ...
               -l3_protocol.3 ipv4 \
               -src_ip_addr 10.10.1.1 \
              ...
    
  • Append the dot to the value of the attribute to identify the header to modify. For example, to modify the second Layer 2 header, you can identify it as “Ethernet_ii.2”. Likewise, to modify the third Layer 3 header, you can identify it as “ipv4.3”. Here is an example:

    sth::traffic_config
               -mode modify \
               -stream_id 50 \
               -l2_encap ethernet_ii.2 \
               -mac_src  aa.bb.cc.dd.ee.ff \ # the new value of source MAC address
               -l3_protocol  ipv4.3 \
               -src_ip_addr 10.10.1.1 \
    

For both PPPoX and DHCP bound traffic, for subsequent connects and disconnect you do not have to delete and re- create traffic when adding new sessions. To disconnect and re-connect multiple PPPoX or DHCP sessions, you must stop and then restart traffic AFTER all new sessions have connected so the traffic configuration can get the newly updated session information. If you do not stop traffic, the old session information will not be replaced by the new session information.

Examples

#### HLTAPI for Tcl ####

The following code fragment configures Ethernet traffic for a single port and checks the returned key list to determine the status. The call to traffic_config uses create mode to set up an Ethernet II header, supply source and destination MAC addresses, and generate a range of addresses for stream packets. The L2 encapsulation mode is ethernet_ii. Increment mode is used with a step value of 2, and a count of 3 to generate a stream containing packets with three unique source MAC addresses (0.0.0.0.0.1, 0.0.0.0.0.3, and 0.0.0.0.0.5). See below:

set returnKlist [sth::traffic_config -mode create \
           -port_handle $p0 \
           -l2_encap ethernet_ii \
           -mac_src 0.0.0.0.0.1 \
           -mac_dst 0.0.0.0.0.3 \
           -mac_src_mode increment \
           -mac_src_step 2 \
           -mac_src_count 3];

keylget returnKlist status iStatus;
if {$iStatus == 0} {
      keylget returnKlist log result;
      puts $result;
 } else {
      keylget returnKlist stream_id streamID;
      puts "stream handle 1 = $streamID";
 }

Sample Output:

# On success
 {stream_id 108} {status 1} {log {}}

# On failure::
 {status 0} {log {<errorMsg>}}

The following example creates a stream with only one Ethernet PDU:

sth::traffic_config -port_handle    $port1\
                     -mode           create \
                     -stream_id           1 \
                     -l2_encap       ethernet_ii\

Sample Output:

{status 1} {stream_id streamblock1}

The following example sends traffic from 1 source address to 100 destination addresses across 10 VLANs:

sth::traffic_config    -mode                 create \
                      -port_handle         port1 \
                      -rate_pps            1000 \
                      -l2_encap            ethernet_ii_vlan \
                      -l3_protocol         ipv4 \
                      -ip_src_addr         10.0.0.11 \
                      -ip_src_count        1 \
                      -ip_src_mode         fixed \
                      -mac_src             01:01:01:01:01 \
                      -mac_discovery_gw    10.0.0.1\
                      -ip_dst_addr         20.0.0.12 \
                      -ip_dst_count        100 \
                      -ip_dst_mode         increment \
                      -ip_dst_block_count  10 \
                      -ip_dst_block_step   0.0.1.0 \
                      -ip_dst_step         0.0.0.1 \
                      -l3_length           128 \
                       -length_mode         fixed \
                      -transmit_mode       continuous \
                      -enable_stream       0 \
                       -vlan_id             200 \
                       -vlan_id_count       10 \

Sample Output:

{stream_id streamblock1} {status 1}

The following example configures PPPoE traffic:

# Access PPPoE traffic example
# Configure PPPoX which will return the handle that will be used later to
# configure resolved traffic both destined for and generated from the PPPoX
#clients created below.

set pppox_rL [sth::pppox_config \
                -mode create
                -port_handle        port1 \
                -encap              ethernet_ii \
                -protocol           pppoe \
                -num_sessions       1 \
                -auth_mode          chap \
                -mac_addr           00:10:94:01:00:01 \
                -username           cisco \
                -password           cisco \
               ]

Sample Output:

{status 1} {port_handle port1} {handles host2} {pppoe_port
pppoxportconfig1} {pppoe_session pppoeclientblockconfig1} {procName
sth::pppox_config}

The following example configures traffic generated from IP address 22.23.0.100, destined for all connected PPPoX clients associated with the handle returned in “pppox_rL”:

# The following example assumes that the handle passed into
# -downstream_traffic_src_list was retrieved from a successful call to
# sth::pppox_config and that all PPPoE sessions are currently connected.

set traffic_config_rL [sth::traffic_config \
         -mode                           create \
         -port_handle                    port2 \
         -l2_encap                       ethernet_ii \
         -mac_src                        00:03:a0:10:92:AA \
         -mac_dst                        00:03:a0:10:92:78 \
         -rate_pps                       50 \
         -ppp_link                       1 \
         -downstream_traffic_src_list    [keylget pppox_rL handles] \
         -l3_protocol                    ipv4 \
         -l3_length                      256 \
         -length_mode                    fixed \
         -ip_src_addr                    22.23.0.100 \
         ]

Sample Output:

{status 1} {stream_id streamblock1}

Note

Access traffic requires that -ppp_link be set to 1 in order to use -downstream_traffic_src_list. The parameter -mac_dst is a Mandatory parameter for Access traffic from a static port running no PPPoE emulation and that will terminate at the PPPoX client.

To configure traffic generated from all connected PPPoX clients associated with the handle returned in “pppox_rL” and terminating at the IP address 22.23.0.100:

# The following example assumes that the handle passed into
# -ppp_link_traffic_src_list was retrieved from a successful call to
# sth::pppox_config and that all PPPoE sessions are currently connected::

  set traffic_config_rL [sth::traffic_config \
            -mode                           create \
            -port_handle                    port1 \
            -rate_pps                       1 \
            -l2_encap                       ethernet_ii_pppoe \
            -ppp_link                       1 \
            -ppp_link_traffic_src_list      [keylget pppox_rL handles] \
            -l3_protocol                    ipv4 \
            -l3_length                      256 \
            -length_mode                    fixed \
            -ip_dst_addr                    22.23.0.100 \
   ]

Sample Output:

{status 1} {stream_id streamblock2}

Note

Access traffic requires that -ppp_link be set to 1 in order to use -ppp_link_traffic_src_list.

The following example configures a 802.2 raw stream:

sth::traffic_config  -mode create\
-port_handle      $port1 \
-l2_encap         ethernet_8022 \
-rate_pps         1000 \
-mac_src         11:11:11:11:11:11 \
-mac_dst         22:22:22:22:22:22 \
-llc_dsap         FE \
-llc_ssap         FE \
-llc_control       02 \

Sample Output:

{status 1} {stream_id streamblock1}

The following example configures IP traffic over 802.2 frames across 3 VLANS:

sth::traffic_config           -mode create\
       -port_handle       $port1 \
       -l2_encap         ethernet_8022_vlan \
       -mac_src          11:11:11:11:11:11 \
       -mac_dst         22:22:22:22:22:22 \
       -transmit_mode    continuous \
       -rate_pps         1000\
       -l3_protocol       ipv4\
       -ip_src_addr      10.0.0.11\
       -ip_dst_addr      10.0.0.1 \
       -length_mode     fixed \
       -l3_length         180  \
       -vlan_id            1 \
       -vlan_id_count      3 \
       -vlan_id_step       1 \
       -vlan_user_priority  {1 2 3} \

Sample Output:

{status 1} {stream_id streamblock1}

The following example configures an IPX header over 802.2 frames:

sth::traffic_config  -mode  create\
      -port_handle      $port1 \
      -l2_encap        ethernet_8022 \
      -llc_dsap         E0 \
      -llc_ssap         E0 \
      -llc_control       03 \
      -ipx_header       123456789012345678 \
      -mac_src         11:11:11:11:11:11 \
      -mac_dst         22:22:22:22:22:22 \
      -transmit_mode   continuous \
      -rate_pps        500 \

Sample Output:

{status 1} {stream_id streamblock1}

The following example configures XNS header over 802.2 frames:

sth::traffic_config        -mode  create\
        -port_handle    $port1 \
        -l2_encap      ethernet_8022 \
        -llc_dsap       80 \
        -llc_ssap       80 \
        -llc_control     03 \
        -xns_header    123456789012345678 \
        -mac_src       11:11:11:11:11:11 \
        -mac_dst       22:22:22:22:22:22 \
        -transmit_mode    continuous \
        -rate_pps         500 \

Sample Output:

{status 1} {stream_id streamblock1}

To configure ICMPv6 Destination Unreachable message type in -mode create:

# [icmpv6_type 1] Destination Unreachable
set ret [sth::traffic_config \
        -mode                              create\
        -port_handle                       $hport1\
        -l2_encap                          ethernet_ii\
        -l3_protocol                       ipv6\
        -ipv6_src_addr                     2000::2\
        -ipv6_traffic_class                0\
        -ipv6_dst_addr                     2000::1\
        -ipv6_next_header                  58\
        -l4_protocol                       icmpv6\
        -icmpv6_type                       1\
        -icmpv6_code                    1\
        -icmpv6_checksum                   0\
        -icmpv6_unused                     3\
        -icmpv6_ip_data                    4321\
        -icmpv6_ip_src_addr                2002::15\
        -icmpv6_ip_dst_addr                2002::14\
        -icmpv6_ip_hop_limit               5\
        -icmpv6_ip_traffic_class           6\
        -icmpv6_ip_next_header             59\
        -icmpv6_ip_flow_label              3333\
        -icmpv6_ip_length                 0\
        -icmpv6_ip_gateway                 2003::44\
        -icmpv6_ip_version                 6]

To create one stream with the IGMPv3 Report header:

#Set -mode to create, and specify -port_handle to set the port under which the
#stream will be creaed. If -igmp_multicast_addr is not set, the default value is
#255.0.0.1. In the returned value, use igmpgrprec_handle to get the created group
#record in the IGMPv3 Report header.

set ret [sth::traffic_config -mode create\
        -port_handle port1\
        -name igmpv3_report_olist_scale1\
        -l4_protocol igmp \
        -igmp_msg_type report\
        -igmp_version 3\
        -igmp_multicast_src {196.168.1.10 196.168.1.11}\
        -igmp_multicast_addr 196.168.1.2 \
        -igmp_record_type 5]

Sample Output:

#if online, {igmpgrprec_handle grouprecord1} {stream_id streamblock1} {status 1}
#if offline, {igmpgrprec_handle grouprecord1} {stream_id streamblock1} {status 1}

To add one IGMPv3 Report’s group record to the created stream:

#Set -mode to modify, set -stream_id, but do not specify -igmpv3_grprechandle.
#If -igmp_multicast_addr is not specified, the default value is 255.0.0.1.
#In the returned value, use igmpgrprec_handle to get the
#created group record in igmpv3report header.

set ret [sth::traffic_config -mode modify\
       -stream_id $mystream\
       -l4_protocol igmp \
       -igmp_msg_type report\
       -igmp_version 3\
       -igmp_multicast_src {196.168.4.10 196.168.4.11}\
       -igmp_record_type 4]

Sample Output:

#if online, {igmpgrprec_handle grouprecord3_anon_1008} {status 1}
#if offline, {igmpgrprec_handle grouprecord3} {status 1}

To modify a specified IGMPv3 Report’s group record in one stream:

# Set -mode to modify, specify -stream_id, and set -igmpv3_grprechandle to the
# value returned earlier. If not specified, the value of -igmp_multicast_addr
# remains to be the one configured when you added the group record.

   set ret [sth::traffic_config -mode modify\
       -stream_id $mystream\
       -igmpv3_grprechandle $myhandlename \
       -l4_protocol igmp \
       -igmp_msg_type report\
       -igmp_version 3\
       -igmp_multicast_src {196.168.2.10}\
       -igmp_multicast_addr 196.168.22.2 \
       -igmp_record_type 3]

Sample Output:

{status 1}

To add one IGMPv3 query message to the created stream:

set streamblock_ret1 [::sth::traffic_config    \
    -mode                            create\
    -port_handle                     $port1\
    -l2_encap                        ethernet_ii\
    -l3_protocol                     ipv4\
    -l4_protocol                     igmp\
    -l3_length                       110\
    -name                            StreamBlock_1\
    -fill_type                       constant\
    -fcs_error                       0\
    -fill_value                      0\
    -traffic_state                   1\
    -high_speed_result_analysis      1\
    -length_mode                     fixed\
    -disable_signature               0\
    -enable_stream_only_gen          1\
    -igmp_s_flag                     1\
    -igmp_qqic                       0\
    -igmp_max_response_time          100\
    -igmp_version                    3\
    -igmp_type                       11\
    -igmp_msg_type                   query\
    -igmp_qrv                        0\
    -igmp_group_addr                 225.0.0.1\
    -igmp_multicast_src              {192.0.0.1 192.0.0.2 192.0.0.3} \

Sample Output:

{igmpgrprec_handle grouprecord1} {stream_id streamblock1} {status 1}

To modify the IGMPv3 query message just created:

keylget streamblock_ret1 stream_id mystream
keylget streamblock_ret1 igmpgrprec_handle myhandlename

set streamblock_ret2 [::sth::traffic_config    \
    -mode                      modify\
    -port_handle               $port1\
    -l4_protocol               igmp\
    -stream_id                   $mystream \
   -igmpv3_grprechandle       $myhandlename
    -igmp_msg_type             query\
    -igmp_version               3\
    -igmp_multicast_src        {192.0.0.6 192.0.0.7 192.0.0.8} \

Sample Output:

{status 1}

To configure a VXLAN header:

set traffic_results [sth::traffic_config\
               -mode                  create\
               -port_handle            $port2\
               -bidirectional          0\
               -l3_protocol            ipv4\
               -inner_l3_protocol      ipv4\
               -ip_src_addr            10.10.10.11\
               -ip_dst_addr            10.10.10.10\
               -inner_ip_src_addr      11.11.11.12 \
               -inner_ip_dst_addr      11.11.11.11\
               -inner_ip_gw            11.11.11.11\
               -l4_protocol            udp\
               -udp_src_port           456\
               -udp_dst_port           4789\
               -mac_src                40:01:02:03:04:05 \
               -mac_dst                30:01:02:03:04:05\
               -inner_mac_src          00:01:02:03:04:06\
               -inner_mac_dst          00:01:02:03:04:05 \
               -l2_encap               ethernet_ii_vlan \
               -vlan_id                11\
               -inner_vlan_id          10\
               -inner_l2_encap         ethernet_ii_vlan\
               -vxlan                  1\
               -vni                    2\
               -auto_select_udp_port   1\
               -ipv4_multicast_group_addr  225.0.0.1\
               -vlan_user_priority    2\
               -vlan_cfi               1\
               -inner_vlan_id_mode    increment\
               -inner_vlan_user_priority   4\
               -inner_vlan_cfi                 1\
               ]

To configure traffic with DHCP message headers:

set streamblock_ret1 [::sth::traffic_config    \
    -mode                                  create\
    -port_handle                           $port1\
    -l2_encap                              ethernet_ii\
    -l3_protocol                           ipv4\
    -l4_protocol                           udp_dhcp_msg\
    -udp_src_port                          67\
    -udp_dst_port                          1024\
    -ip_id                                 0\
    -ip_src_addr                           192.85.1.2\
    -ip_dst_addr                           192.0.0.1\
    -ip_ttl                                255\
    -ip_hdr_length                         5\
    -ip_protocol                           17\
    -ip_fragment_offset                    0\
    -ip_mbz                                0\
    -ip_precedence                         0\
    -ip_tos_field                          0\
    -mac_src                               00:10:94:00:00:02\
    -mac_dst                               00:00:01:00:00:01\
    -enable_control_plane                  0\
    -l3_length                             110\
    -name                                  StreamBlock_Test\
    -fill_type                             constant\
    -fcs_error                             0\
    -fill_value                            0\
    -frame_size                            512\
    -traffic_state                         1\
    -high_speed_result_analysis            1\
    -length_mode                           fixed\
    -tx_port_sending_traffic_to_self_en    false\
    -disable_signature                     0\
    -enable_stream_only_gen                1\
    -endpoint_map                          one_to_one\
    -pkts_per_burst                        1\
    -inter_stream_gap_unit                 bytes\
    -burst_loop_count                      30\
    -transmit_mode                         continuous\
    -inter_stream_gap                      12\
    -rate_percent                          10\
    -mac_discovery_gw                      192.85.1.1 \
    -enable_stream                         false\
    -dhcp_srv_msg_client_addr              2.2.2.2\
    -dhcp_srv_msg_xid                      2\
    -dhcp_srv_msg_client_mac               "00:00:01:00:00:05"\
    -dhcp_srv_msg_hostname                 "dhcp-server-msg"\
    -dhcp_srv_msg_relay_agent_addr         3.3.3.3\
    -dhcp_srv_msg_cli_hw_id_type           01\
    -dhcp_srv_msg_custom_length            01\
    -dhcp_srv_msg_host_length              06\
    -dhcp_srv_msg_lease_type               33\
    -dhcp_srv_msg_msg_length               01\
    -dhcp_srv_msg_size_length              02\
    -dhcp_srv_msg_type_length              01\
    -dhcp_srv_msg_msgtype_type             35\
    -dhcp_srv_msg_overload_length          01\
    -dhcp_srv_msg_req_list_length          04\
    -dhcp_srv_msg_req_addr_length          04\
    -dhcp_srv_msg_srv_id_length            04\
    -dhcp_srv_msg_end_type                 ff\
    -dhcp_srv_msg_header_hdr_seq          "cli_hw custom hostname lease msg\
                          msg_type msg_size overload req_list req_addr server_id end"\
    -udp_src_port_count                    10\
    -udp_src_port_repeat_count             0\
    -udp_src_port_step                     1\
    -udp_src_port_mode                     increment\
    -modifier_option                       {{dhcp_srv_msg_srv_id_length}\
                    {dhcp_srv_msg_cli_hw_id_type} {dhcp_srv_msg_lease_length}}\
    -modifier_mode                         "{{increment} {decrement} {list}}"\
    -modifier_count                        "{{10} {20} {}}"\
    -modifier_repeat_count                 "{{0} {0} {}}"\
    -modifier_step                         "{{1} {1} {}}"\
    -modifier_mask                         "{{FF} {FF} {}}"\
    -modifier_list_value                   "{{} {} {2 4 5}}"\
      ]

Sample Output:

{status 1} {stream_id streamblock1}

Note

To configure a streamblock with list src and dst handles across the list of port_handles you must specify input values as list format for the following options:

-port_handle
-port_handle2
-emulation_src_handle
-emulation_dst_handle

To configure a streamblock if port_handle as list and port_handle2 as single value:

set streamblock_ret1 [::sth::traffic_config\
    -mode                                  create\
    -port_handle                           "$port1 $port2"\
    -emulation_src_handle                  "{{$device1} {$device2}}"\
    -emulation_dst_handle                  "{{$device3} {$device3}}"\
    -l3_protocol                           ipv4\
    -name                                  StreamBlock4\
    -length_mode                           fixed\
    -l3_length                             128\
    -frame_size                            128\
    -rate_percent                          10\
    -mac_discovery_gw                      192.85.1.1\
    -bidirectional                         1\
    -port_handle2                          "$port3 $port3"\
      ]

Sample Output:

{stream_id {{port1 streamblock1} {port3 streamblock4} {port2 streamblock3}}} {status 1}

To configure a streamblock if port_handle as single value and port_handle2 as list:

set streamblock_ret1 [::sth::traffic_config\
    -mode                                  create\
    -port_handle                           "$port1 $port1"\
    -emulation_src_handle                  "{{$device1} {$device1}}"\
    -emulation_dst_handle                  "{{$device3} {$device4}}"\
    -l3_protocol                           ipv4\
    -name                                  StreamBlock4\
    -length_mode                           fixed\
    -l3_length                             128\
    -frame_size                            128\
    -rate_percent                          10\
    -mac_discovery_gw                      192.85.1.1\
    -bidirectional                         1\
    -port_handle2                          "$port3 $port4"\
      ]

Sample Output:

{stream_id {{port1 streamblock3} {port3 streamblock2} {port4 streamblock4}}} {status 1}

To configure a streamblock if one port_handle has mutltiple src and dst handles #For this case, you must specify emulation_src_handle and emulation_dst_handle #as a list of list values:

set streamblock_ret1 [::sth::traffic_config\
    -mode                                  create\
    -port_handle                           "$port1 $port2"\
    -emulation_src_handle                  "{{$device1 $device11} {$device2}}}"\
    -emulation_dst_handle                  "{{$device3 $device33} {$device4}"\
    -l3_protocol                           ipv4\
    -name                                  StreamBlock4\
    -length_mode                           fixed\
    -l3_length                             128\
    -frame_size                            128\
    -rate_percent                          10\
    -mac_discovery_gw                      192.85.1.1\
    -bidirectional                         1\
    -port_handle2                          "$port3 $port4"\
      ]

Sample Output:

{stream_id {{port1 streamblock1} {port3 streamblock2} {port2 streamblock3}
{port4 streamblock4}}} {status 1}

The following example configures a 802.3 MAC Control:

set streamblock_ret1 [::sth::traffic_config\
    -mode                                  create\
    -port_handle                           $port2 \
    -l2_encap                              ethernet_8023_mac_control \
    -l3_length                             256\
    -length_mode                           fixed \
    -mac_src                               55:55:55:55:55:11 \
    -mac_dst                               66:66:66:66:66:11 \
    -eth_pause_pfc_opCode                  0100 \
    -eth_pause_pfc_reserved                0001100000000000000000000000000000000000000000000011 \
    -eth_pause_pfc_time0                   1000 \
    -eth_pause_pfc_time1                   2000 \
    -eth_pause_pfc_time2                   3000 \
    -eth_pause_pfc_time3                   65521 \
    -eth_pause_pfc_time4                   60000 \
    -eth_pause_pfc_time5                   5000 \
    -eth_pause_pfc_time6                   4000 \
    -eth_pause_pfc_time7                   7654 \
    -class_enable_vector_lsoctet           00000011 \
    -class_enable_vector_msoctet           00011011 \
    -transmit_mode                         continuous \
    -rate_pps                              10 ]

Sample Output:

{status 1} {stream_id streamblock1}

The following example configures a Pause MAC Control header:

set streamblock_ret1 [::sth::traffic_config    \
    -mode                                  create\
    -port_handle                           $port1\
    -mac_src                               00:10:94:00:00:02\
    -mac_dst                               01:80:C2:00:00:01\
    -l2_encap                              ethernet_8023_mac_control \
    -eth_preamble                          55555555555555d6 \
    -enable_custom_pfc                     0\
    -enable_control_plane                  0\
    -pause_mac_control_opcode              0001\
    -pause_mac_control_pause_time          60000\
    -pause_mac_control_reserved            001000000000000000000000010000000000000000000000000000000000000000000000000000000011\
    -transmit_mode                         continuous \
    -rate_pps                              10 ]

Sample Output:

{status 1} {stream_id streamblock1}

The following example configures an existing IMIX frame in streamblock:

set streamblock_ret1 [::sth::traffic_config    \
      -mode                                    create\
      -port_handle                             $port1\
      -l2_encap                                ethernet_ii\
      -mac_src                                 00:10:94:00:00:02\
      -mac_dst                                 00:00:01:00:00:01\
      -enable_custom_pfc                       0\
      -enable_control_plane                    0\
      -name                                    StreamBlock_1\
      -length_mode                             imix\
      -frame_size_imix                         "Spirent"\
      -endpoint_map                            one_to_one\
      -traffic_pattern                         pair\
      -fill_type                               constant\
      -fill_value                              0\
      -enable_stream_only_gen                  1\
      -traffic_state                           1\
      -high_speed_result_analysis              1\
      -custom_pfc_pri                          0\
      -disable_signature                       0\
      -fcs_error                               0\
      -tx_port_sending_traffic_to_self_en      false\
      -inter_stream_gap                        12\
      -inter_stream_gap_unit                   bytes\
      -pkts_per_burst                          1\
      -burst_loop_count                        30\
      -transmit_mode                           continuous\
      -rate_percent                            10\
      -mac_discovery_gw                        192.85.1.1 ]

Sample Output:

{status 1} {stream_id streamblock1}

The following example configures a custom IMIX frame in streamblock:

set imix_ret [::sth::imix_config
-mode create
-name new_imix_set
-frame_size 256
-weight 8]
set streamblock_ret1 [::sth::traffic_config
-mode create
-port_handle $port1

-l2_encap ethernet_ii-mac_src 00:10:94:00:00:02-mac_dst 00:00:01:00:00:01-enable_custom_pfc 0-enable_control_plane 0-name StreamBlock_1-length_mode imix-frame_size_imix “new_imix_set”-endpoint_map one_to_one-traffic_pattern pair-fill_type constant-fill_value 0-enable_stream_only_gen 1-traffic_state 1-high_speed_result_analysis 1-custom_pfc_pri 0-disable_signature 0-fcs_error 0-tx_port_sending_traffic_to_self_en false-inter_stream_gap 12-inter_stream_gap_unit bytes-pkts_per_burst 1-burst_loop_count 30-transmit_mode continuous-rate_percent 10-mac_discovery_gw 192.85.1.1 ]

Sample Output:

{status 1} {stream_id streamblock1}

The following example configures customer Ethernet frames in streamblock:

set streamblock_ret1 [::sth::traffic_config    \
      -mode                                    create\
      -port_handle                             $port1\
      -l2_encap                                ethernet_customer \
      -customer_eth_mac_dst                    00:00:31:30:40:01 \
      -customer_eth_mac_src                    00:19:95:99:00:02\
      -customer_eth_preamble                   66665555555575e6 \
      -customer_eth_svlan_dei                  2 \
      -customer_eth_svlan_pcp                  7 \
      -customer_eth_svlan_vid                  2 \
      -customer_eth_cvlan_cfi                  "1 0 1"\
      -customer_eth_cvlan_pcp                  "222 200 201" \
      -customer_eth_cvlan_vid                  "234 101 100"\
      -name                                    Customer_Eth_Stream\
      -fcs_error                               0\
      -frame_size                              128\
      -traffic_state                           1\
      -length_mode                             fixed\

]

Sample Output:

{status 1} {stream_id streamblock1}

#### HLTAPI for Python ####

To create one Ethernet 802.3 with 802.2 and SNAP header:

streamblock_ret1 = sth.traffic_config (
       mode                = 'create',
       port_handle         = port_handle[0],
       l2_encap            = 'ethernet_8023_snap',
       l3_protocol         = 'ipv4',
       ip_id               = '0',
       ip_src_addr         = '192.85.1.2',
       ip_dst_addr         = '192.0.0.1',
       ip_ttl              = '255',
       ip_hdr_length       = '5',
       ip_protocol         = '253',
       ip_fragment_offset  = '0',
       ip_mbz              = '0',
       ip_precedence       = '0',
       ip_tos_field        = '0',
       mac_src             = '00:10:94:00:00:02',
       mac_dst             = '00:00:01:00:00:01',
       llc_control         = '03',
       llc_ssap            = 'AA',
       llc_dsap            = 'AA',
       snap_oui_id         = '00FFFF',
       snap_ether_type     = '88B5',
       enable_control_plane= '0',
       l3_length           = '128',
       name                = 'StreamBlock_83',
       fill_type           = 'constant',
       fcs_error           = '0',
       fill_value          = '0',
       traffic_state       = '1',
       high_speed_result_analysis= '1',
       length_mode         = 'fixed',
       disable_signature   = '0',
       enable_stream_only_gen= '1',
       pkts_per_burst      = '1',
       inter_stream_gap_unit= 'bytes',
       burst_loop_count    = '30',
       transmit_mode       = 'multi_burst',
       inter_stream_gap    = '12',
       rate_percent        = '10',
       mac_discovery_gw    = '192.85.1.1');

Sample Output:

{'status': '1', 'stream_id': 'streamblock1'}

# hlapiGen_streamblock_ipv6_extention_header:

streamblock_ret1 = sth.traffic_config (
        mode                = 'create',
        port_handle         = port_handle[0],
        l2_encap            = 'ethernet_ii',
        l3_protocol         = 'ipv6',
        ipv6_routing_res    = '006f',
        ipv6_auth_seq_num   = '1',
        ipv6_auth_payload_len= '0',
        ipv6_auth_string    = '0000abcd',
        ipv6_auth_spi       = '1',
        ipv6_frag_more_flag = '0',
        ipv6_frag_id        = '0',
        ipv6_frag_offset    = '1',
        ipv6_src_addr       = '2000::2',
        ipv6_traffic_class  = '0',
        ipv6_dst_addr       = '2000::2',
        ipv6_next_header    = '59',
        ipv6_length         = '0',
        ipv6_flow_label     = '7',
        ipv6_hop_limit      = '255',
        mac_src             = '00:10:94:00:00:01',
        ether_type          = '88B5',
        mac_dst             = '00:10:94:00:00:02',
        enable_control_plane= '0',
        l3_length           = '110',
        name                = 'StreamBlock_4-3',
        fill_type           = 'constant',
        fcs_error           = '0',
        fill_value          = '0',
        traffic_state       = '1',
        high_speed_result_analysis= '1',
        length_mode         = 'fixed',
        disable_signature   = '0',
        enable_stream_only_gen= '1',
        pkts_per_burst      = '1',
        inter_stream_gap_unit= 'bytes',
        burst_loop_count    = '30',
        transmit_mode       = 'continuous',
        inter_stream_gap    = '12',
        rate_percent        = '10',
        ipv6_hop_by_hop_options= ['type:','router_alert','length:2','alert_type:mld'],
        ipv6_destination_options= ['type:padn','length:1','value:ab'],
        ipv6_extension_header=['routing','authentication',
                             'fragment','hop_by_hop','destination'],
        mac_discovery_gw    = '::');

# hlapiGen_streamblock_vlan_pri_modifier_CR1800:

streamblock_ret1 = sth.traffic_config (
        mode                = 'create',
        port_handle         = port_handle[0],
        l2_encap            = 'ethernet_ii_vlan',
        l3_outer_protocol   = 'ipv4',
        l3_protocol         = 'ipv4',
        ip_outer_id         = '0',
        ip_outer_protocol   = '253',
        ip_fragment_outer_offset= '0',
        ip_dst_outer_addr   = '193.85.1.5',
        ip_hdr_outer_length = '5',
        ip_src_outer_addr   = '192.85.1.5',
        ip_outer_ttl        = '255',
        ip_id               = '0',
        ip_src_addr         = '192.85.1.2',
        ip_dst_addr         = '192.0.0.1',
        ip_ttl              = '255',
        ip_hdr_length       = '5',
        ip_protocol         = '253',
        ip_fragment_offset  = '0',
        ip_mbz              = '0',
        ip_precedence       = '0',
        ip_tos_field        = '0',
        vlan_priority_count = '10',
        vlan_priority_step  = '001',
        vlan_priority_mode  = 'increment',
        ip_src_outer_mode   = 'increment',
        ip_src_outer_count  = '1',
        ip_src_outer_step   = '0.0.0.1',
        vlan_id_repeat      = '0',
        vlan_id_mode        = 'increment',
        vlan_id_count       = '1',
        vlan_id_step        = '1',
        ip_dst_outer_count  = '1',
        ip_dst_outer_step   = '0.0.0.1',
        ip_dst_outer_mode   = 'increment',
        ip_src_count        = '1',
        ip_src_step         = '0.0.0.1',
        ip_src_mode         = 'increment',
        ip_dst_count        = '1',
        ip_dst_step         = '0.0.0.1',
        ip_dst_mode         = 'increment',
        ip_tos_count        = '1',
        ip_tos_step         = '0',
        ip_tos_mode         = 'increment',
        mac_src_count       = '1',
        mac_src_mode        = 'increment',
        mac_src_step        = '2',
        mac_src             = '00:10:94:00:00:05',
        ether_type          = '88B5',
        mac_dst             = '00:00:01:00:00:01',
        vlan_cfi            = '0',
        vlan_tpid           = '33024',
        vlan_id             = '100',
        vlan_user_priority  = '7',
        enable_control_plane= '0',
        l3_length           = '106',
        name                = 'StreamBlock_4-2',
        fill_type           = 'constant',
        fcs_error           = '0',
        fill_value          = '0',
        traffic_state       = '1',
        high_speed_result_analysis= '1',
        length_mode         = 'fixed',
        disable_signature   = '0',
        enable_stream_only_gen= '1',
        pkts_per_burst      = '1',
        inter_stream_gap_unit= 'bytes',
        inter_stream_gap    = '12',
        rate_percent        = '10',
        mac_discovery_gw    = '192.85.1.1',
        enable_stream       = 'false');

Sample Output for the examples above:

{'status': '1', 'stream_id': 'streamblock1'}

# hlapiGen_streamblock_igmpv3report:

streamblock_ret1 = sth.traffic_config (
    mode                = 'create',
    port_handle         = port_handle[0],
    l2_encap            = 'ethernet_ii',
    l4_protocol         = 'igmp',
    igmp_version        = '3',
    igmp_type           = '22',
    igmp_msg_type       = 'report',
    mac_src             = '00:10:94:00:00:02',
    ether_type          = '88B5',
    mac_dst             = '00:00:01:00:00:01',
    enable_control_plane= '0',
    l3_length           = '110',
    name                = 'igmpv3_report_olist_scale1',
    fill_type           = 'constant',
    fcs_error           = '0',
    fill_value          = '0',
    traffic_state       = '1',
    high_speed_result_analysis= '1',
    length_mode         = 'fixed',
    disable_signature   = '0',
    enable_stream_only_gen= '1',
    pkts_per_burst      = '1',
    inter_stream_gap_unit= 'bytes',
    burst_loop_count    = '30',
    transmit_mode       = 'continuous',
    inter_stream_gap    = '12',
    rate_percent        = '10',
    igmp_record_type    = ['5','6'],
    igmp_multicast_addr = ['255.0.0.1','255.0.0.1'],
    igmp_multicast_src  = ['196.168.1.10','196.168.2.11']);

Sample Output:

{'status': '1', 'stream_id': 'streamblock1',
'igmpgrprec_handle': 'grouprecord1_anon_1290 grouprecord2_anon_1294'}

#### HLTAPI for Perl ####

# hlapiGen_raw_stream_8023snap:

my %streamblock_ret1 = sth::traffic_config (
        mode                => 'create',
        port_handle         => "$hport[1]",
        l2_encap            => 'ethernet_8023_snap',
        l3_protocol         => 'ipv4',
        ip_id               => '0',
        ip_src_addr         => '192.85.1.2',
        ip_dst_addr         => '192.0.0.1',
        ip_ttl              => '255',
        ip_hdr_length       => '5',
        ip_protocol         => '253',
        ip_fragment_offset  => '0',
        ip_mbz              => '0',
        ip_precedence       => '0',
        ip_tos_field        => '0',
        mac_src             => '00:10:94:00:00:02',
        mac_dst             => '00:00:01:00:00:01',
        llc_control         => '03',
        llc_ssap            => 'AA',
        llc_dsap            => 'AA',
        snap_oui_id         => '00FFFF',
        snap_ether_type     => '88B5',
        enable_control_plane=> '0',
        l3_length           => '128',
        name                => 'StreamBlock_83',
        fill_type           => 'constant',
        fcs_error           => '0',
        fill_value          => '0',
        traffic_state       => '1',
        high_speed_result_analysis=> '1',
        length_mode         => 'fixed',
        disable_signature   => '0',
        enable_stream_only_gen=> '1',
        pkts_per_burst      => '1',
        inter_stream_gap_unit=> 'bytes',
        burst_loop_count    => '30',
        transmit_mode       => 'multi_burst',
        inter_stream_gap    => '12',
        rate_percent        => '10',
        mac_discovery_gw    => '192.85.1.1');

# hlapiGen_streamblock_igmpv3report:

my %streamblock_ret1 = sth::traffic_config (
        mode                => 'create',
        port_handle         => "$hport[1]",
        l2_encap            => 'ethernet_ii',
        l4_protocol         => 'igmp',
        igmp_version        => '3',
        igmp_type           => '22',
        igmp_msg_type       => 'report',
        mac_src             => '00:10:94:00:00:02',
        ether_type          => '88B5',
        mac_dst             => '00:00:01:00:00:01',
        enable_control_plane=> '0',
        l3_length           => '110',
        name                => 'igmpv3_report_olist_scale1',
        fill_type           => 'constant',
        fcs_error           => '0',
        fill_value          => '0',
        traffic_state       => '1',
        high_speed_result_analysis=> '1',
        length_mode         => 'fixed',
        disable_signature   => '0',
        enable_stream_only_gen=> '1',
        pkts_per_burst      => '1',
        inter_stream_gap_unit=> 'bytes',
        burst_loop_count    => '30',
        transmit_mode       => 'continuous',
        inter_stream_gap    => '12',
        rate_percent        => '10',
        igmp_record_type    => '5 6 ',
        igmp_multicast_addr => '255.0.0.1 255.0.0.1 ',
        igmp_multicast_src  => '196.168.1.10 196.168.2.11 ');

# hlapiGen_streamblock_ipv6_extention_header:

my %streamblock_ret1 = sth::traffic_config (
        mode                => 'create',
        port_handle         => "$hport[1]",
        l2_encap            => 'ethernet_ii',
        l3_protocol         => 'ipv6',
        ipv6_routing_res    => '006f',
        ipv6_auth_seq_num   => '1',
        ipv6_auth_payload_len=> '0',
        ipv6_auth_string    => '0000abcd',
        ipv6_auth_spi       => '1',
        ipv6_frag_more_flag => '0',
        ipv6_frag_id        => '0',
        ipv6_frag_offset    => '1',
        ipv6_src_addr       => '2000::2',
        ipv6_traffic_class  => '0',
        ipv6_dst_addr       => '2000::2',
        ipv6_next_header    => '59',
        ipv6_length         => '0',
        ipv6_flow_label     => '7',
        ipv6_hop_limit      => '255',
        mac_src             => '00:10:94:00:00:01',
        ether_type          => '88B5',
        mac_dst             => '00:10:94:00:00:02',
        enable_control_plane=> '0',
        l3_length           => '110',
        name                => 'StreamBlock_4-3',
        fill_type           => 'constant',
        fcs_error           => '0',
        fill_value          => '0',
        traffic_state       => '1',
        high_speed_result_analysis=> '1',
        length_mode         => 'fixed',
        disable_signature   => '0',
        enable_stream_only_gen=> '1',
        pkts_per_burst      => '1',
        inter_stream_gap_unit=> 'bytes',
        burst_loop_count    => '30',
        transmit_mode       => 'continuous',
        inter_stream_gap    => '12',
        rate_percent        => '10',
        ipv6_hop_by_hop_options=> 'type: router_alert length:2 alert_type:mld ',
        ipv6_destination_options=> 'type:padn length:1 value:ab ',
        ipv6_extension_header=> 'routing authentication fragment hop_by_hop destination ',
        mac_discovery_gw    => '::');

# hlapiGen_streamblock_vlan_pri_modifier_CR1800:

my %streamblock_ret1 = sth::traffic_config (
        mode                => 'create',
        port_handle         => "$hport[1]",
        l2_encap            => 'ethernet_ii_vlan',
        l3_outer_protocol   => 'ipv4',
        l3_protocol         => 'ipv4',
        ip_outer_id         => '0',
        ip_outer_protocol   => '253',
        ip_fragment_outer_offset=> '0',
        ip_dst_outer_addr   => '193.85.1.5',
        ip_hdr_outer_length => '5',
        ip_src_outer_addr   => '192.85.1.5',
        ip_outer_ttl        => '255',
        ip_id               => '0',
        ip_src_addr         => '192.85.1.2',
        ip_dst_addr         => '192.0.0.1',
        ip_ttl              => '255',
        ip_hdr_length       => '5',
        ip_protocol         => '253',
        ip_fragment_offset  => '0',
        ip_mbz              => '0',
        ip_precedence       => '0',
        ip_tos_field        => '0',
        vlan_priority_count => '10',
        vlan_priority_step  => '001',
        vlan_priority_mode  => 'increment',
        ip_src_outer_mode   => 'increment',
        ip_src_outer_count  => '1',
        ip_src_outer_step   => '0.0.0.1',
        vlan_id_repeat      => '0',
        vlan_id_mode        => 'increment',
        vlan_id_count       => '1',
        vlan_id_step        => '1',
        ip_dst_outer_count  => '1',
        ip_dst_outer_step   => '0.0.0.1',
        ip_dst_outer_mode   => 'increment',
        ip_src_count        => '1',
        ip_src_step         => '0.0.0.1',
        ip_src_mode         => 'increment',
        ip_dst_count        => '1',
        ip_dst_step         => '0.0.0.1',
        ip_dst_mode         => 'increment',
        ip_tos_count        => '1',
        ip_tos_step         => '0',
        ip_tos_mode         => 'increment',
        mac_src_count       => '1',
        mac_src_mode        => 'increment',
        mac_src_step        => '2',
        mac_src             => '00:10:94:00:00:05',
        ether_type          => '88B5',
        mac_dst             => '00:00:01:00:00:01',
        vlan_cfi            => '0',
        vlan_tpid           => '33024',
        vlan_id             => '100',
        vlan_user_priority  => '7',
        enable_control_plane=> '0',
        l3_length           => '106',
        name                => 'StreamBlock_4-2',
        fill_type           => 'constant',
        fcs_error           => '0',
        fill_value          => '0',
        traffic_state       => '1',
        high_speed_result_analysis=> '1',
        length_mode         => 'fixed',
        disable_signature   => '0',
        enable_stream_only_gen=> '1',
        pkts_per_burst      => '1',
        inter_stream_gap_unit=> 'bytes',
        inter_stream_gap    => '12',
        rate_percent        => '10',
        mac_discovery_gw    => '192.85.1.1',
        enable_stream       => 'false');

Sample Output for the examples above:

$VAR1 = 'status';
$VAR2 = '1';
$VAR3 = 'stream_id';
$VAR4 = 'streamblock1';

# hlapiGen_streamblock_igmpv3report:

my %streamblock_ret1 = sth::traffic_config (
        mode                => 'create',
        port_handle         => "$hport[1]",
        l2_encap            => 'ethernet_ii',
        l4_protocol         => 'igmp',
        igmp_version        => '3',
        igmp_type           => '22',
        igmp_msg_type       => 'report',
        mac_src             => '00:10:94:00:00:02',
        ether_type          => '88B5',
        mac_dst             => '00:00:01:00:00:01',
        enable_control_plane=> '0',
        l3_length           => '110',
        name                => 'igmpv3_report_olist_scale1',
        fill_type           => 'constant',
        fcs_error           => '0',
        fill_value          => '0',
        traffic_state       => '1',
        high_speed_result_analysis=> '1',
        length_mode         => 'fixed',
        disable_signature   => '0',
        enable_stream_only_gen=> '1',
        pkts_per_burst      => '1',
        inter_stream_gap_unit=> 'bytes',
        burst_loop_count    => '30',
        transmit_mode       => 'continuous',
        inter_stream_gap    => '12',
        rate_percent        => '10',
        igmp_record_type    => '5 6 ',
        igmp_multicast_addr => '255.0.0.1 255.0.0.1 ',
        igmp_multicast_src  => '196.168.1.10 196.168.2.11 ');

Sample Output:

$VAR1 = 'status';
$VAR2 = '1';
$VAR3 = 'igmpgrprec_handle';
$VAR4 = 'grouprecord1_anon_1489 grouprecord2_anon_1493';
$VAR5 = 'stream_id';
$VAR6 = 'streamblock1';
  1. When you set the mode to remove, the Mandatory argument -stream_id <integer> specifies the stream id to remove from the traffic generator, existing streams are left intact.
  2. For functions that use the control plane to resolve data plane packet block information, it is assumed that the control plane has been successfully established prior to issuing the sth::traffic_config function.

End of Procedure Header

sth::traffic_config_ospf

Purpose

Configures OSPF headers under a streamblock. It must be used after the traffic_config function is configured.

Synopsis

Note

M indicates that the argument is Mandatory .

sth::traffic_config_ospf
    [-mode {create|modify|delete}  M]
    [-stream_id  <stream_handle>  M]
    [-type {packets update_router_lsa_link|update_router_lsa_tos|
            update_summary_lsa_tos|update_asexternal_lsa_tos}  M]
    [-ospf_type {dd|hello|req|ack|unknown|update}  M]
      [-handle <handle>]
      [-ospf_router_id <a.b.c.d>]
      [-ospf_area_id <a.b.c.d>]
      [-ospf_checksum <hexadecimal>]
      [-ospf_auth_type <integer>]
      [-ospf_auth_value1 <integer>]
      [-ospf_auth_value2 <integer>]

      [-ospf_lsa_num <integer>]
      [-ospf_lsa_age <integer>]
      [-ospf_lsa_header_options <binary string>]
      [-ospf_ls_type <integer>]
      [-ospf_ls_link_state_id <a.b.c.d>]
      [-ospf_ls_ad_router <a.b.c.d>]
      [-ospf_ls_seq_number <hex>]

      [-ospf_interface_mtu  <integer>
      [-ospf_packets_options <binary string>
      [-ospf_dd_options <binary string>
      [-ospf_dd_seq_number  <hex>]

      [-ospf_network_mask <a.b.c.d>]
      [-ospf_hello_interval <integer>]
      [-ospf_router_priority <integer>]
      [-ospf_router_dead_interval <integer>]
      [-ospf_designated_router <a.b.c.d>]
      [-ospf_bk_designated_router <a.b.c.d>]
      [-ospf_neighbor_id <a.b.c.d>]

      [-ospf_req_lsa_num <integer>]
      [-ospf_req_ls_type <integer>]
      [-ospf_req_link_state_id <a.b.c.d>]
      [-ospf_req_ad_router <a.b.c.d>]

      [-ospf_num_of_lsas <integer>]
      [-ospf_router_lsa_num <integer>]
      [-ospf_router_lsa_age <integer>]
      [-ospf_router_lsa_header_options <binary string>]
      [-ospf_router_lsa_type <integer>]
      [-ospf_router_lsa_link_state_id <a.b.c.d>]
      [-ospf_router_lsa_ad_router <a.b.c.d>]
       [-ospf_router_lsa_seq_number    <hex>
      [-ospf_router_lsa_options <binary string>]
      [-ospf_router_lsa_reserved <integer>]
      [-ospf_router_lsa_num_of_linklist <integer>]
         [-ospf_router_lsa_link_num <integer>]
         [-ospf_router_lsa_link_id <a.b.c.d>]
         [-ospf_router_lsa_link_data  <a.b.c.d>]
         [-ospf_router_lsa_link_type  <integer>]
         [-ospf_router_lsa_tos_metric_num <integer>]
         [-ospf_router_lsa_link_metric <integer>]
             [-ospf_router_lsa_tos_num <integer>]
             [-ospf_router_lsa_tos_type <integer>]
             [-ospf_router_lsa_tos_reserved <integer>]
             [-ospf_router_lsa_tos_metric <integer>]

      [-ospf_network_lsa_num <integer>]
      [-ospf_network_lsa_age <integer>]
      [-ospf_network_lsa_header_options <binary string>]
      [-ospf_network_lsa_type <integer>]
      [-ospf_network_lsa_link_state_id <a.b.c.d>]
      [-ospf_network_lsa_ad_router <a.b.c.d>]
      [-ospf_network_lsa_seq_number   <hex>
      [-ospf_network_lsa_network_mask <a.b.c.d>]
      [-ospf_network_lsa_attached_router_id <list of a.b.c.d>]

      [-ospf_summary_lsa_num <integer>]
      [-ospf_summary_lsa_age <integer>]
      [-ospf_summary_lsa_header_options <binary string>]
      [-ospf_summary_lsa_type <integer>]
      [-ospf_summary_lsa_link_state_id <a.b.c.d>]
      [-ospf_summary_lsa_ad_router <a.b.c.d>]
      [-ospf_summary_lsa_seq_number   <hex>
      [-ospf_summary_lsa_network_mask <a.b.c.d>]
      [-ospf_summary_lsa_reserved  <integer>]
      [-ospf_summary_lsa_metric  <integer>]
         [-ospf_summary_lsa_tos_num <integer>]
         [-ospf_summary_lsa_tos_reserved  <integer>]
         [-ospf_summary_lsa_tos_metric  <integer>]

      [-ospf_summaryasbr_lsa_num  <integer>]
      [-ospf_summaryasbr_lsa_age  <integer>]
      [-ospf_summaryasbr_lsa_header_options <binary string>]
      [-ospf_summaryasbr_lsa_type  <integer>]
      [-ospf_summaryasbr_lsa_link_state_id <a.b.c.d>]
      [-ospf_summaryasbr_lsa_ad_router <a.b.c.d>]
      [-ospf_summaryasbr_lsa_seq_number   <hex>
      [-ospf_summaryasbr_lsa_network_mask  <a.b.c.d>]
      [-ospf_summaryasbr_lsa_reserved  <integer>]
      [-ospf_summaryasbr_lsa_metric  <integer>]

      [-ospf_asexternal_lsa_num  <integer>]
      [-ospf_asexternal_lsa_age  <integer>]
      [-ospf_asexternal_lsa_header_options <binary string>]
      [-ospf_asexternal_lsa_type  <integer>]
      [-ospf_asexternal_lsa_link_state_id <a.b.c.d>]
      [-ospf_asexternal_lsa_ad_router <a.b.c.d>]
      [-ospf_asexternal_lsa_seq_number  <hex>]
      [-ospf_asexternal_lsa_network_mask <a.b.c.d>]
      [-ospf_asexternal_lsa_route_metric  <integer>]
      [-ospf_asexternal_lsa_forwarding_addr <a.b.c.d>]
      [-ospf_asexternal_lsa_route_tag  <integer>]
      [-ospf_asexternal_lsa_option_ebit {0|1}]
      [-ospf_asexternal_lsa_option_reserved  <integer>]
          [-ospf_asexternal_lsa_tos_num  <integer>]
          [-ospf_asexternal_lsa_tos_ebit {0|1}]
          [-ospf_asexternal_lsa_tos_type  <integer>]
          [-ospf_asexternal_lsa_tos_metric  <integer>]
          [-ospf_asexternal_lsa_tos_forwarding_addr <a.b.c.d>]

Arguments

-type

Specifies the header type to create/modify. Possible values are described below:

Value                    Header Type

packets                   OSPF packets

update_router_lsa_link     Router LSA link header under
                          update router LSA header

update_router_lsa_tos      Router LSA TOS header under
                          update router LSA link header

update_summary_lsa_tos     Summary LSA TOS header under
                          update summary LSA header

update_asexternal_lsa_tos  AS-external LSA TOS header under
                          update AS-external LSA header

This argument is Mandatory .

-handle

Specifies the handle to modify. This argument can only be used in mode modify. The value can be an OSPF header handle, an LSA link header handle or an LSA TOS header handle.

-mode

Specifies the action to take in configuring OSPF. This argument is mandatory. Possible values are:

create - Creates an OSPF header for the specified streamblock,
         or a router LSA link header/router LSA TOS metric
         header/summary LSA TOS metric header/ASBR-summary LSA TOS
         metric header for the specified LSA header. This mode
         returns different handles depending on the configurations
         of -type and -ospf_type. Please see Return Values for
         more information. For example::

           traffic_config_ospf -mode create -type packets\
                           -ospf_type hello\
                           -stream_id $strHdl

modify - Modifies the existing header. For example::

           traffic_config_ospf -mode modify
                           -type  packets\
                           -ospf_type hello\
                           -handle $hdl
                           -stream_id $strHdl

delete -  Deletes all of the existing handles. For example::

               traffic_config -mode delete\
                           -type packets\
                           -ospf_type hello\
                           -handle $hdl#
                           -stream_id $strHdl
-phandle

Specifies the handle under which the LSA link or LSA TOS is created. This argument is only used when -type is not packets in mode create. The value can be an OSPF header handle or an LSA link header handle.

-stream_id

Specifies the streamblock handle on which to create or modify the OSPF header. This argument is only valid when -type is packets in mode create.

-ospf_type

Specifies the OSPF packet type to configure. This argument is Mandatory when -type is set to packets. This parameter does not work for mode modify. If you want to modify an OSPF type, delete the created OSPF packet header using delete mode and create a new OSPF type. Possible value are:

dd      - OSPFv2 Database Description packet
ack     - OSPFv2 Link State Acknowledge packet
hello   - OSPFv2 Link State Hello packet
req     -  OSPFv2 Link State Request packet
unknown -  OSPFv2 Unknown packet
-ospf_router_id

Specifies the router ID of the OSPF packet header. The value must be in IPv4 format. The default value is 1.1.1.1. You must set -type to packets.

-ospf_area_id

Specifies the area ID of the OSPF packet header. The value must be in IPv4 format. The default value is 0.0.0.0. You must set -type to packets.

-ospf_checksum

Specifies the checksum field of the OSPF packet header. The value must be a 4-digit HEX. The default value is 0000. You must set -type to packets.

-ospf_auth_type

Specifies the authentication type field of the OSPF packet header. Possible value are none, password, md5, and userdefined. The default value is none. You must set -type to packets.

-ospf_auth_value1

Specifies the authentication type field of the OSPF packet header. The default value is 0. You must set -type to packets.

-ospf_auth_value2

Specifies the checksum field of the OSPF packet header. The default value is 0. You must set -type to packets.

-ospf_interface_mtu

Specifies the interface MTU of the OSPFv2 Database Description packet. The default value is 4096. You must set -type to packets and -ospf_type to dd.

-ospf_packets_options

Specifies the options field of the OSPFv2 Database Description packet. The value must be an 8-digit binary string. The default value is 00000000. You must set -type to packets and -ospf_type to dd.

-ospf_dd_options

Specifies the special option field of the OSPFv2 Database Description packet. The value must be an 8-digit binary string. The default value is 00000000. You must set -type to packets and -ospf_type to dd.

-ospf_dd_seq_number

Specifies the sequence number of the OSPFv2 Database Description packet. The default value is 0. You must set -type to packets and -ospf_type to dd.

-ospf_lsa_num

Specifies the number of LSA headers in the OSPFv2 Database Description packet or OSPFv2 Acknowledge packet. A list of LSAs will be created if this parameter is specified. The default value is 0. You must set -type to packets and -ospf_type to dd or ack.

-ospf_lsa_age

Specifies the LSA age of LSA header in the OSPFv2 Database Description packet or OSPFv2 Acknowledge packet. The value can be a list, the length of which can be equal to or less than -ospf_lsa_num. If the length is less than -ospf_lsa_num, the default value, 0, will be used. You must set -type to packets and -ospf_type to dd or ack.

-ospf_lsa_header_options

Specifies the LSA header options of the LSA header in the OSPFv2 Database Description packet or OSPFv2 Acknowledge packet. The value can be a list of 8-digit binary strings, the length of which can be equal to or less than the -ospf_lsa_num. If the length is less than -ospf_lsa_num, the default value, 00000000, will be used. You must set -type to packets and -ospf_type to dd or ack.

-ospf_ls_type

Specifies the link state type of the LSA header for the OSPFv2 Database Description packet or OSPFv2 Acknowledge packet. Possible values are described below:

Value Description
  1   Router
  2   Network
  3   Summary
  4   Summary-ASBR
  5   AS-External Type-5
  7   AS-External Type-7

This argument can be a list, the length of which can be equal to or less than the -ospf_lsa_num. If the length is less than -ospf_lsa_num, the default value, 1, will be used. You must set -type to packets and -ospf_type to dd or ack.

Specifies the link state ID of the LSA header in the OSPFv2 Database Description packet or OSPFv2 Acknowledge packet. The value must be in IPv4 format. This argument can be a list, the length of which can be equal to or less than the -ospf_lsa_num. If the length is less than -ospf_lsa_num, the default value, 1.1.1.1., will be used. You must set -type to packets and -ospf_type to dd or ack.

-ospf_ls_ad_router

Specifies the advertising router of the LSA header for the OSPFv2 Database Description packet or OSPFv2 Acknowledge packet. The value must be in IPv4 format. This argument can be a list, the length of which can be equal to or less than the -ospf_lsa_num. If the length is less than -ospf_lsa_num, the default value, 1.1.1.1, will be used. You must set -type to packets and -ospf_type to dd or ack.

-ospf_ls_seq_number

Specifies the link state sequence number of the LSA header for the OSPFv2 Database Description packet or OSPFv2 Acknowledge packet. The value must be a 8-digit HEX. This argument can be a list, the length of which can be equal to or less than the -ospf_lsa_num. If the length is less than -ospf_lsa_num, the default value, 80000001, will be used. You must set -type to packets and -ospf_type to dd or ack.

-ospf_network_mask

Specifies the network mask of the OSPFv2 Hello packet. The value must be in IPv4 format. The default value is 255.255.255.0. You must set -type to packets and -ospf_type to hello.

-ospf_hello_interval

Specifies the Hello interval of the OSPFv2 Hello packet. The default value is 10. You must set -type to packets and -ospf_type to hello.

-ospf_router_priority

Specifies the router priority of the OSPFv2 Hello packet. The default value is 0. You must set -type to packets and -ospf_type to hello.

-ospf_router_dead_interval

Specifies the router dead interval of the OSPFv2 Hello packet. The default value is 40. You must set -type to packets and -ospf_type to hello.

-ospf_designated_router

Specifies the designated router of the OSPFv2 Hello packet. The value must be in IPv4 format. The default value is 1.1.1.1. You must set -type to packets and -ospf_type to hello.

-ospf_bk_designated_router

Specifies the backup designated router of the OSPFv2 Hello packet. The value must be in IPv4 format. The default value is 2.2.2.2. You must set -type to packets and -ospf_type to hello.

-ospf_neighbor_id

Specifies the neighbor ID list of the OSPFv2 Hello packet. The value must be in IPv4 format. The default value is 1.1.1.1. You must set -type to packets and -ospf_type to hello.

-ospf_req_lsa_num

Specifies the number of the requested LSA headers of the OSPFv2 Link State Request packet. The default value is 0. You must set -type to packets and -ospf_type to req.

-ospf_req_ls_type

Specifies the link state type of the LSA header of the OSPFv2 Link State Request packet. Possible values are described below:

Value Description
  1   Router
  2   Network
  3   Summary
  4   Summary-ASBR
  5   AS-External Type-5
  7   AS-External Type-7

This argument can be a list, the length of which can be equal to or less than the -ospf_req_lsa_num. If the length is less than -ospf_req_lsa_num, the default value, 1, will be used. You must set -type to packets and -ospf_type to req.

Specifies the link state ID of the requested LSA list in the OSPFv2 Link State Request packet. The value must be in IPv4 format. This value can be a list, the length of which can be equal to or less than -ospf_req_lsa_num. If the length is less than -ospf_req_lsa_num, the default value, 1.1.1.1, will be used. You must set -type to packets and -ospf_type to req.

-ospf_req_ad_router

Specifies the advertising router ID of the requested LSA list in the OSPFv2 Link State Request packet. The value must be in IPv4 format. This value can be a list, the length of which can be equal to or less than -ospf_req_lsa_num. If the length is less than -ospf_req_lsa_num, the default value, 1.1.1.1, will be used. You must set -type to packets and -ospf_type to req.

-ospf_num_of_lsas

Specifies the number of LSAs for the OSPFv2 Link State Update packet. The default value is 0. You must set -type to packets and -ospf_type to update.

The following arguments configure the OSPFv2 router LSA under the created OSPFv2 Link State Update packet. The values for all OSPFv2 router LSA arguments (except -ospf_router_lsa_num) can be a list, the length can be equal to or less than the -ospf_router_lsa_num. If the length is less than -ospf_router_lsa_num, the default value will be used. You must set -type to packets and -ospf_type to update.

-ospf_router_lsa_num

Specifies the number of router LSA headers to include in the list. If this parameter is specified, the router LSA list will be created. The default value is 0.

-ospf_router_lsa_age

Specifies the router LSA age for the OSPFv2 Link State Update packet. The default value is 0.

-ospf_router_lsa_header_options

Specifies the header options of the router LSA header. The value must be a 8-digit binary string. The default is 00000000.

-ospf_router_lsa_type

Specifies the link state type of the router LSA header. Possible values are described below:

Value Description
  1   Router
  2   Network
  3   Summary
  4   Summary-ASBR
  5   AS-External Type-5
  7   AS-External Type-7

The default value is 1.

Specifies the link state ID of the router LSA header. The value must be in IPv4 format. The default value is 1.1.1.1.

-ospf_router_lsa_ad_router

Specifies the LSA advertising router of the router LSA header. The value must be in IPv4 format. The default value is 1.1.1.1.

-ospf_router_lsa_seq_number

Specifies the LSA sequence number of the router LSA header. The value must be an 8-digit HEX. The default value is 80000001.

-ospf_router_lsa_options

Specifies the LSA options field of the router LSA header. The value must be an 8-digit binary string. The default value is 00000000.

-ospf_router_lsa_reserved

Specifies the LSA reserved field of the router LSA header. The default value is 0.

Specifies the number of link lists of the router LSA header. The default value is 0.

When type is update_router_lsa_link, the following arguments are available to configure the router LSA link header under the created router LSA header. To create a router LSA link header, you must specify -ospf_router_lsa_link_num and configure -phandle with the created router LSA handle in mode create. To modify an existing router LSA link header, configure -handle with the router LSA link handle returned from mode create. The values for all router LSA link arguments (except -ospf_router_lsa_link_num) can be a list, the length of which can be equal to or less than -ospf_router_lsa_link_num. If the length is less than -ospf_router_lsa_link_num, the default value will be used.

Specifies the number of router LSA link headers to include in the list. The default value is 0.

Specifies the link ID of the router LSA link header Update packet. The value must be in IPv4 format. The default value is 1.1.1.1.

Specifies the link data of the router LSA link header. The value must be in IPv4 format. The default value is 1.1.1.1.

Specifies the link type of the router LSA link header. Possible values are described below:

Type Description

1   Point-to-Point
2   Transit
3   Stub
4   Virtual

The default value is 3.

-ospf_router_lsa_tos_metric_num

Specifies the number of TOS metrics in the router LSA link header. The default value is 0.

Specifies the router LSA link metric field of the router LSA link header. The default value is 0.

When type is update_router_lsa_tos, the following arguments are available to configure the router LSA TOS metric header under a created router LSA link header for OSPFv2 Link State Update packet. To create a router LSA TOS metric header, you must specify ospf_router_lsa_tos_num and configure -phandle with the created router LSA link handle in mode create. To modify an existing router LSA TOS metric header, configure -handle with the router LSA tos metric header handle returned from mode create. The values for all router LSA TOS metric arguments (except -ospf_router_lsa_tos_num) can be a list, the length of which can be equal to or less than -ospf_router_lsa_tos_num. If the length is less than -ospf_router_lsa_tos_num, the default value will be used.

-ospf_router_lsa_tos_num

Specifies the number of TOS metric headers in the list. The default value is 0.

-ospf_router_lsa_tos_type

Specifies the LSA TOS type for the router LSA TOS metric header. Possible values are described below:

Value Description
1       Point-to-Point
2       Transit
3       Stub
4       Virtual

The default value is 1.

-ospf_router_lsa_tos_reserved

Specifies the LSA TOS reserved field for the router LSA TOS metric header. The default value is 0.

-ospf_router_lsa_tos_metric

Specifies the router TOS link metric for the router LSA TOS metric header. The default value is 0.

The following arguments configure the OSPFv2 network LSA header of OSPFv2 Link State Update packet. The values of these arguments (except -ospf_network_lsa_num) can be a list, the length of which can be equal to or less than the -ospf_network_lsa_num. If the length is less than -ospf_network_lsa_num, the default value will be used. You must set -type to packets and -ospf_type to update.

-ospf_network_lsa_num

Specifies the number of network LSA headers to include in the list. The default value is 0.

-ospf_network_lsa_age

Specifies the network LSA age. The default value is 0.

-ospf_network_lsa_header_options

Specifies the header options field of the network LSA header. The value must be a 8-digit binary string. The default is 00000000.

-ospf_network_lsa_type

Specifies the link state type of the network LSA header. Possible values are described below:

Value  Description
  1   Router
  2   Network
  3   Summary
  4   Summary-ASBR
  5   AS-External Type-5
  7   AS-External Type-7

The default value is 1.

Specifies the link state ID of the network LSA header. The value must be in IPv4 format. The default value is 1.1.1.1.

-ospf_network_lsa_ad_router

Specifies the advertising router of the network LSA header. The value must be in IPv4 format. The default value is 1.1.1.1.

-ospf_network_lsa_seq_number

Specifies the LSA sequence number of the network LSA header. The value must be an 8-digit HEX. The default value is 80000001.

-ospf_network_lsa_network_mask

Specifies the LSA network mask of the network LSA header. The value must be in IPv4 format. The default value is 255.255.255.0.

-ospf_network_lsa_attached_router_id

Specifies the attached router ID of the network LSA header. Each element of the list can be a list. The value must be in IPv4 format. The default value is 1.1.1.1.

The following arguments configure the OSPFv2 summary-LSA header of the OSPFv2 Link State Update packet. The values of these arguments (except -ospf_summary_lsa_num) can be a list, the length of which can be equal to or less than the -ospf_summary_lsa_num. If the length is less than -ospf_summary_lsa_num, the default value will be used. You must set -type to packets and -ospf_type to update.

-ospf_summary_lsa_num

Specifies the number of summary LSA headers to include in the list. The default value is 0.

-ospf_summary_lsa_age

Specifies the summary LSA age of the OSPFv2 summary LSA header. The default value is 0.

-ospf_summary_lsa_header_options

Specifies the header options field of the OSPFv2 summary LSA header. The value must be a 8-digit binary string. The default is 00000000.

-ospf_summary_lsa_type

Specifies the link state type of the OSPFv2 summary LSA header. Possible values are described below:

Value  Description
  1   Router
  2   Network
  3   Summary
  4   Summary-ASBR
  5   AS-External Type-5
  7   AS-External Type-7

The default value is 1.

Specifies the link state ID of the OSPFv2 summary LSA header. The value must be in IPv4 format. The default value is 1.1.1.1.

-ospf_summary_lsa_ad_router

Specifies the advertising router of the OSPFv2 summary LSA header. The value must be in IPv4 format. The default value is 1.1.1.1.

-ospf_summary_lsa_seq_number

Specifies the LSA sequence number of summary LSA of the OSPFv2 summary LSA header. The value must be an 8-digit HEX. The default value is 80000001.

-ospf_summary_lsa_network_mask

Specifies the LSA network mask of the OSPFv2 summary LSA header. The value must be in IPv4 format. The default value is 255.255.255.0.

-ospf_summary_lsa_reserved

Specifies the LSA reserved field of the OSPFv2 summary LSA header. The default value is 0.

-ospf_summary_lsa_metric

Specifies the LSA metric field of the OSPFv2 summary LSA header. The default value is 0.

When type is update_summary_lsa_tos, the following arguments are available to configure the summary LSA TOS metric header under the created OSPFv2 summary/ASBR-summary LSA in the OSPFv2 Link State Update packet. To create a summary LSA TOS metric header, you must specify -ospf_summary_lsa_tos_num and configure -phandle with the created summary LSA/ASBR-summary LSA handle in mode create. To modify an existing summary LSA TOS metric header, configure -handle with the summary LSA TOS metric header handle returned from mode create. The values for all router LSA link arguments (except -ospf_summary_lsa_tos_num) can be a list, the length of which can be equal to or less than -ospf_summary_lsa_tos_num. If the length is less than -ospf_summary_lsa_tos_num, the default value will be used.

-ospf_summary_lsa_tos_num

Specifies the number of summary LSA TOS metric headers to include in the list. The default value is 0.

-ospf_summary_lsa_tos_reserved

Specifies the reserved field of the OSPFv2 summary LSA header. The default value is 0.

-ospf_summary_lsa_tos_metric

Specifies the summary TOS metric field of the OSPFv2 summary LSA header. The default is 0.

The following arguments configure the OSPFv2 ASBR-summary-LSA for the OSPFv2 Link State Update packet. The values of these arguments (except -ospf_summaryasbr_lsa_age) can be a list, the length of which can be equal to or less than -ospf_summaryasbr_lsa_age. If the length is less than -ospf_summaryasbr_lsa_age, the default value will be used. You must set -type to packets and -ospf_type to update.

-ospf_summaryasbr_lsa_num

Specifies the number of ASBR-summary LSA headers to include in the list. The default is 0.

-ospf_summaryasbr_lsa_age

Specifies the ASBR-summary LSA age. The default value is 0.

-ospf_summaryasbr_lsa_header_options

Specifies the header options field for the ASBR-summary LSA header. The value must be an 8-digit binary string. The default is 00000000.

-ospf_summaryasbr_lsa_type

Specifies the link state type of the ASBR-summary LSA header. Possible values are described below:

Value  Description
  1   Router
  2   Network
  3   Summary
  4   Summary-ASBR
  5   AS-External Type-5
  7   AS-External Type-7

The default value is 1.

Specifies the link state ID of the ASBR-summary LSA header. The value must be in IPv4 format. The default value is 1.1.1.1.

-ospf_summaryasbr_lsa_ad_router

Specifies the LSA advertising router ID of the ASBR-summary LSA header. The value must be in IPv4 format. The default value is 1.1.1.1.

-ospf_summaryasbr_lsa_seq_number

Specifies the LSA sequence number of the ASBR-summary LSA for the OSPFv2 Link State Update packet. The value must be an 8-digit HEX. The default value is 80000001.

-ospf_summaryasbr_lsa_network_mask

Specifies the LSA network mask for the ASBR-summary LSA header. The value must be an HEX.

-ospf_summaryasbr_lsa_reserved

Specifies the LSA reserved field of the ASBR-summary LSA header. The default value is 0.

-ospf_summaryasbr_lsa_metric

Specifies LSA metric field of the ASBR-summary LSA header. The default value is 0.

The following arguments configure OSPFv2 AS-external LSA header of the OSPFv2 Link State Update packet. The values of these arguments (except -ospf_asexternal_lsa_num) can be a list, the length of which can be equal to or less than -ospf_asexternal_lsa_num. If the length is less than -ospf_asexternal_lsa_num, the default value will be used. You must set -type to packets and -ospf_type to update.

-ospf_asexternal_lsa_num

Specifies the number of AS-external LSA headers to include in the list. The default value is 0.

-ospf_asexternal_lsa_route_metric

Specifies the router metric of the AS-external LSA header.

-ospf_asexternal_lsa_age

Specifies the AS-external LSA age. The default value is 0.

-ospf_asexternal_lsa_header_options

Specifies the header options field of the AS-external LSA header. The value must be an 8-digit binary string. The default value is 00000000.

-ospf_asexternal_lsa_type

Specifies the link state type of the AS-external LSA header. Possible values are described below:

Value Description
  1   Router
  2   Network
  3   Summary
  4   Summary-ASBR
  5   AS-External Type-5
  7   AS-External Type-7

The default value is 1.

Specifies the link state ID of the AS-external LSA header. The value must be in IPv4 format. The default value is 1.1.1.1.

-ospf_asexternal_lsa_ad_router

Specifies the advertising router ID of the AS-external LSA header. The value must be in IPv4 format. The default value is 1.1.1.1.

-ospf_asexternal_lsa_seq_number

Specifies the LSA sequence number of the AS-external LSA header. The value must be an 8-digit HEX. The default value is 80000001.

-ospf_asexternal_lsa_network_mask

Specifies the LSA network mask of the AS-external LSA header. The value must be in IPv4 format. The default value is 255.255.255.0.

-ospf_asexternal_lsa_option_reserved

Specifies the reserved field of the AS-external LSA header. The default value is 0.

-ospf_summary_lsa_metric

Specifies the LSA metric of the AS-external LSA header. The default value is 0.

-ospf_asexternal_lsa_forwarding_addr

Specifies the forwarding address of the AS-external LSA header. The value must be in IPv4 format. The default value is 1.1.1.1.

-ospf_asexternal_lsa_route_tag

Specifies the external route tag of the AS-external LSA header. The default value is 0.

-ospf_asexternal_lsa_option_ebit

Specifies the option E-bit field of the AS-external LSA header. Possible values are 0 and 1. The default value is 0.

When type is update_asexternal_lsa_tos, the following arguments are available to configure the AS-external LSA TOS metric header under the created OSPFv2 AS-external LSA in the OSPFv2 Link State Update packet. To create an AS-external LSA TOS metric header, you must specify -ospf_asexternal_lsa_tos_num and configure -phandle with the created AS-external LSA handle in mode create. To modify an existing AS-external LSA TOS metric header, configure -handle with the AS-external LSA TOS metric header handle returned from mode create. The values for all AS-external LSA TOS metric arguments (except -ospf_asexternal_lsa_tos_num) can be a list, the length of which can be equal to or less than -ospf_asexternal_lsa_tos_num. If the length is less than -ospf_asexternal_lsa_tos_num, the default value will be used.

-ospf_asexternal_lsa_tos_num

Specifies the number of AS-external LSA TOS metric headers to include in the list. The default value is 0.

-ospf_asexternal_lsa_tos_ebit

Specifies the E-bit of the AS-external LSA TOS metric header. Possible values are 0 and 1. The default value is 0.

-ospf_asexternal_lsa_tos_type

Specifies the router TOS of the AS-external LSA TOS metric header. Possible values are described below:

Value   Description
0       Normal
2       Minimize Monetary Cost
4       Maximize Monetary Cost
6
8       Maximize Throughput
10
12
14
16      Minimize Delay
18
20
22
24
26
28
30

The default value is 0.

-ospf_asexternal_lsa_tos_metric

Specifies the TOS metric of the AS-external LSA TOS metric header. The default value is 0.

-ospf_asexternal_lsa_tos_forwarding_addr

Specifies the forwarding address of the router of the AS-external LSA TOS metric list. The value must be in IPv4 format. The default value is 1.1.1.1.

Arguments Unsupported by Save as HLTAPI

None.

Return Values

The sth::traffic_config_ospf function returns a keyed list of handles that identify the OSPF packet header/router LSA link header/router LSA TOS metric header/summary LSA TOS metric header/ AS-external LSA TOS metric header created by the sth::traffic_config_ospf function.

The handles returned vary by the values of -type and -ospf_type as below:

Type            ospf_type           Returned Keys for handle

packets         dd                  ospf_handle, dd_lsa_handle

packets         ack                 ospf_handle, ack_lsa_handle

packets         hello/unknown       ospf_handle

packets         req                 ospf_handle, req_lsa_handle

packets         update              ospf_handle, update_router_lsa,
                                    update_network_lsa, update_summary_lsa,
                                    update_summaryasbr_lsa,
                                    update_asexternal_lsa
                                    (Note: The handle can only be configured
                                    after the corresponding LSA header is
                                    created)

update_router_lsa_link              router_lsa_link_handle

update_router_lsa_tos               router_lsa_tos_handle

update_summary_lsa_tos              summary_lsa_tos_handle

update_asexternal_lsa_tos           asexternal_lsa_tos_handle


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

log       An error message (if the operation failed).

Description

The sth::traffic_config_ospf function creates, modifies, deletes the OSPF packets header/router LSA link header/router LSA TOS metric header/summary LSA TOS metric header/ AS-external LSA TOS metric header on the specified streamblock. Use the -mode argument to specify the action to perform. (See the -mode argument description for information about the actions.)

To create an OSPF packet header, use the -stream_id argument to specify the Spirent HLTAPI streamblock on which the OSPF header will be created.

To create a router LSA link header, use the -phandle to specify the router LSA on which the header will be created, and use the -ospf_router_lsa_link_num argument to specify the number of the headers to create. To create a router LSA TOS metric header, you must specify the type to update_router_lsa_tos, in addition to using the -phandle argument to specify the router LSA link header on which the header will be created, and using the ospf_router_lsa_tos_num argument to specify the number of router LSA TOS metric headers to create.

Note

  1. Configurations for other header types under the OSPFv2 link state update packet are similar to the router LSA link header and the LSA TOS metric header.
  2. The Stream ID value is contained in the keyed list returned by the sth::traffic_config function.

To create a summary/ASBR-summary/AS-external LSA TOS metric header, use the -phandle argument to specify the summary/ASBR-summary/AS-external LSA of the OSPFv2 link state update packet on which the TOS metric header will be created.

If the performed action fails, Spirent HLTAPI returns an error message. For example, if the user tries to configure a non-existing session handle under modify mode, an error message will be returned.

Examples

#### HLTAPI for Tcl ####

The following example creates an OSPFv2 Database Description packet header with two LSA headers:

# A stream ID handle: strHdl must already exist
   set RStatus [   sth::traffic_config_ospf -mode create\
                 -type   packets\
                 -ospf_type dd\
                 -stream_id $strHdl\
                 -ospf_router_id 0.0.0.4\
                 -ospf_auth_type password \
                 -ospf_auth_value1 2\
                 -ospf_interface_mtu 8192\
                 -ospf_dd_options "10000000"\
                 -ospf_lsa_num 2\
                 -ospf_lsa_age "5 6"\
                 -ospf_lsa_header_options "10000001"\
                 -ospf_ls_type "3 4"\
                 -ospf_ls_seq_number "80000002 80000003"]

                set ospfHdl [keylget RStatus ospf_handle]
                set lsaHdlList [keylget RStatus dd_lsa_handle]
                set lsaHdl [lindex $lsaHdlList 0]

The following example modifies the created OSPFv2 Database Description packet header:

set RStatus [   sth::traffic_config_ospf -mode modify\
       -stream_id $strHdl\
       -handle $ospfHdl\
       -type   packets\
       -ospf_type dd\
       -ospf_router_id 0.0.0.5\
       -ospf_auth_type userdefined \
       -ospf_auth_value1 3\
       -ospf_interface_mtu 8191]

The following example modifies the first LSA header which is already created:

set RStatus [ sth::traffic_config_ospf -mode modify
-stream_id $strHdl-handle $lsaHdl-type packets-ospf_type dd-ospf_lsa_age “1”-ospf_lsa_header_options “10000011”-ospf_ls_seq_number “80000010”]

The following example deletes the first LSA header which is already created:

set RStatus [    sth::traffic_config_ospf -mode delete\
        -stream_id $strHdl\
        -handle $lsaHdl\
        -type   packets\
        -ospf_type dd]

The following example creates an OSPFv2 link state update packet header with two router LSA headers:

# A stream ID handle: strHdl must already exist.
   set RStatus [    sth::traffic_config_ospf -mode create\
          -type packets\
          -ospf_type   update\
          -stream_id  $strHdl\
          -ospf_router_id 0.0.0.4\
          -ospf_auth_type password \
          -ospf_auth_value1 2\
          -ospf_router_lsa_num 2\
          -ospf_router_lsa_age "5 6"\
          -ospf_router_lsa_header_options "10000001 10000111"\
          -ospf_router_lsa_num_of_linklist "4 6"]

    set ospfHdl [keylget RStatus ospf_handle]
    set routerLsaHdl [lindex [keylget RStatus update_router_lsa] 0]

The following example creates two router LSA link headers of the router LSA for the OSPFv2 link state update packet header:

# A router LSA handle routerLsaHdl  must already exist.
 set RStatus [    sth::traffic_config_ospf -mode create\
     -stream_id $strHdl\
     -type   update_router_lsa_link\
     -phandle $routerLsaHdl\
     -ospf_router_lsa_link_num 2\
     -ospf_router_lsa_link_type "1 4"]

 set LsaLink [keylget RStatus router_lsa_link_handle]
 set lsaLinkHdl [lindex $LsaLink 0]

The following example modifies a router LSA link header of the router LSA for the OSPFv2 link state update packet header:

set RStatus [    sth::traffic_config_ospf -mode modify\
      -stream_id $strHdl\
      -type   update_router_lsa_link\
      -handle $lsaLinkHdl\
      -ospf_router_lsa_link_type "3"\
      -ospf_router_lsa_link_data 1.1.1.2]

The following example creates/modifies the router LSA TOS metric header of the router LSA link for the OSPFv2 link state update packet header:

# A router LSA link handle lsaLinkHdl must already exist.
   set RStatus [    sth::traffic_config_ospf -mode create\
         -type   update_router_lsa_tos\
         -stream_id $strHdl\
         -phandle $lsaLinkHdl\
         -ospf_router_lsa_tos_num 2\
         -ospf_router_lsa_tos_type "1 3"]

  set LsaTosHdl [lindex [keylget RStatus router_lsa_tos_handle] 0]

  set RStatus [    sth::traffic_config_ospf -mode modify\
         -type   update_router_lsa_tos\
         -stream_id $strHdl\
         -handle $LsaTosHdl\
         -ospf_router_lsa_tos_type "2"\
         -ospf_router_lsa_tos_reserved 12\
         -ospf_router_lsa_tos_metric 11]

The following example creates an LSA TOS metric header of the summary LSA and ABSR-summary LSA for the OSPFv2 link state update packet header:

# A summary/ABSR-summary LSA link handle  summaryLsaHdl/summaryasbrLsaHdl must
# already exist.
     set RStatus [    sth::traffic_config_ospf -mode create\
          -stream_id $strHdl\
          -type   update_summary_lsa_tos\
          -phandle $summaryLsaHdl\
          -ospf_summary_lsa_tos_num 3\
          -ospf_summary_lsa_tos_reserved "1 2 3"\
          -ospf_summary_lsa_tos_metric "10 11 12"]

  set tosHdl [lindex [keylget RStatus summary_lsa_tos_handle] 1]

  set RStatus [    sth::traffic_config_ospf -mode create\
              -stream_id $strHdl\
              -type   update_summary_lsa_tos\
              -phandle $summaryasbrLsaHdl\
              -ospf_summary_lsa_tos_num 3\
              -ospf_summary_lsa_tos_reserved "1 2 3"\
              -ospf_summary_lsa_tos_metric "10 11 12"]
  set AsbrtosHdl [lindex [keylget RStatus summary_lsa_tos_handle] 1]

#### HLTAPI for Python ####

To create an OSPFv2 Database Description packet header with two LSA headers:

# A stream ID handle must already exist
 streamblock_ospf_ret = sth.traffic_config_ospf (
              mode                = 'create',
              stream_id           = stream_id,
              type                = 'packets',
              ospf_type           = 'dd',
              ospf_dd_options     = '11111000',
              ospf_auth_type      = 'md5',
              ospf_checksum       = '0000',
              ospf_router_id      = '1.1.1.2',
              ospf_interface_mtu  = '4096',
              ospf_auth_value1    = '3',
              ospf_auth_value2    = '4',
              ospf_ls_ad_router   = ['1.1.1.1','1.1.2.3'],
              ospf_lsa_header_options= ['00000001','00000000'],
              ospf_lsa_age        = ['5','6'],
              ospf_area_id        = '0.0.0.1',
              ospf_packets_options= '10101010',
              ospf_lsa_num        = '2',
              ospf_ls_seq_number  = ['80000001','80000021'],
              ospf_dd_seq_number  = '2',
              ospf_ls_link_state_id= ['1.1.1.1','1.1.2.2'],
              ospf_ls_type        = ['1','3']);
Sample Output::
{‘status’: ‘1’, ‘ospf_handle’:’ospfv2:ospfv2databasedescription1_ospfv2_1291’, ‘dd_lsa_handle’: ‘ospfv2lsaheader1_anon_1496’}

#### HLTAPI for Perl ####

To create an OSPFv2 Database Description packet header with two LSA headers:

# A stream ID handle must already exist
 my %streamblock_ospf_ret = sth::traffic_config_ospf (
              mode                => 'create',
              stream_id           => "$stream_id",
              type                => 'packets',
              ospf_type           => 'dd',
              ospf_dd_options     => '11111000',
              ospf_auth_type      => 'md5',
              ospf_checksum       => '0000',
              ospf_router_id      => '1.1.1.2',
              ospf_interface_mtu  => '4096',
              ospf_auth_value1    => '3',
              ospf_auth_value2    => '4',
              ospf_ls_ad_router   => '1.1.1.1 1.1.2.3 ',
              ospf_lsa_header_options=> '00000001 00000000 ',
              ospf_lsa_age        => '5 6 ',
              ospf_area_id        => '0.0.0.1',
              ospf_packets_options=> '10101010',
              ospf_lsa_num        => '2',
              ospf_ls_seq_number  => '80000001 80000021 ',
              ospf_dd_seq_number  => '2',
              ospf_ls_link_state_id=> '1.1.1.1 1.1.2.2 ',
              ospf_ls_type        => '1 3 ');

Sample Output:

$VAR1 = 'status';
$VAR2 = '1';
$VAR3 = 'dd_lsa_handle';
$VAR4 = 'ospfv2lsaheader1_anon_1496',;
$VAR5 = 'ospf_handle';
$VAR6 = 'ospfv2:ospfv2databasedescription1_ospfv2_1291';

End of Procedure Header

sth::imix_config

Purpose

This function is a Spirent Extension used to create an Internet Mix (iMIX) frame size distribution profile and adds iMIX frame size definitions to the specified iMIX profile. iMIX traffic (iMIX for Internet mix) uses multiple frame sizes. You can use it to simulate real-world traffic. There can be up to 16 iMIX frame size definitions under one iMIX profile.

Synopsis

Note

M indicates that the argument is Mandatory .

sth::imix_config
    [-mode {create|add}  M]
    [-handle <iMIX profile handle>]
    [-name <string>]
    [-seed <integer>]
    [-frame_size <integer>]
    [-frame_length_mode {fixed | random}]
    [-min_frame_size <integer>]
    [-max_frame_size <integer>]
    [-weight <integer>]

Arguments

-mode

Specifies the action to perform. This argument is Mandatory . Possible values are:

create - Create an iMIX distribution profile, and a default iMIX
         frame size definition will be created at the same time.

add -  Add iMIX frame size definitions to the specified iMIX
        profile. You must specify -handle.
-handle

The handle of the created iMIX profile under which you want to add the iMIX frame size definition. It is Mandatory for -mode add.

-name

The name of the iMIX profile to create.

-seed

Used to change the sequence of transmitted frame sizes. If you change the value of the seed, frame sizes will be transmitted in a different sequence. The default value is 10900842.

-frame_size

Specifies the size of the frame length when -frame_length_mode is set to fixed. The default value is 128.

-frame_length_mode

Specifies how Spirent HLTAPI assigns the frame length to a specified frame size definition. Possible values are:

fixed  -  Use the frame length specified by -frame_size.

random - Spirent HLTAPI assigns a random frame length that ranges
         between -min_frame_size and -max_frame_size.

The default value is fixed.

-min_frame_size

Specify the minimum size of the frame length when -frame_length_mode is set to random. The default value is 128.

-max_frame_size

Specifies the maximum size of the frame length when -frame_length_mode is set to random. The default value is 128.

-weight

Specifies the weight of the iMIX frame size definition. A higher weight value for this frame size definition, in relation to the weight values of other frame size definitions, means more traffic of this size will be transmitted. The default value is 1.

Description

The sth::imix_config function creates an iMIX frame size distribution profile and adds iMIX frame size definitions to the specified iMIX profile. Use the -mode argument to specify the action to perform. (See the -mode argument description for information about the actions.)

The function returns the handle and the name for the created iMIX profile, which you can use to define -frame_size_imix when you specify -frame_size_mode imix in the sth::test_rfc2544_config function. (See sth::test_rfc2544_config for more information.)

Note that the value for argument -name must be unique for each iMIX profile created.

Arguments Unsupported by Save as HLTAPI

This function is currently not 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          The handle of the iMIX profile when you create an
                iMIX profile using -mode create

name            The name of the iMIX profile when you create an
                iMIX profile using -mode create

log             An error message (if the operation failed)

Examples

To create an iMIX profile:

set imix_ret [::sth::imix_config \
               -mode           create\
               -name           imix1\
               -frame_size     256\
               -weight         8]

Sample Output:

{status 1} {handle framelengthdistribution1} {name imix1}

To add a frame size definition to the specified iMIX file:

set imix [keylget imix_ret handle]
set imix_ret [::sth::imix_config \
              -mode               add\
              -handle             $imix\
              -frame_length_mode  random\
              -min_frame_size     128\
              -max_frame_size     256\
              -weight             10]

Sample Output:

{status 1}

End of Procedure Header

sth::traffic_control

Purpose

Controls traffic generation on the specified test ports.

Synopsis

Note

M indicates that the argument is Mandatory .

sth::traffic_control
   [-action {run|stop|reset|destroy|clear_stats|poll}  M]
   [-enable_arp {1|0}]
   [-elapsed_time {0|1}]
   [-db_file {1|0}]
   [-get {tos|dscp|vlan_pri|vlan_pri_inner|vlan_id|vlan_id_inner|vlan_cfi_inner|vlan_cfi}]
   [-latency_bins {integer} ]
   [-latency_values {list of numbers} ]
   [-duration <seconds>]
   [-wait_for_duration {0|1}]
   [-port_handle <list of port handles>]
   [-reset_streams <streamblock_handles>]
   [-stream_handle <list of stream handles>]
   [-traffic_start_mode {sync|async}]
   [-bucket_size_unit {ten_nanoseconds|microseconds|milliseconds|seconds}]

Arguments

-action

Specifies the action to take on the specified port handles. This argument is mandatory. Possible values are:

run       - Starts traffic on all specified test ports.
stop      - Stops traffic generation on all specified test
           ports.
reset     - Clears all statistics and deletes all streams.
destroy   - Deletes all streams. (Same as using
           -traffic_configure -mode remove.)
clear_stats - Clears all statistics (transmitted and
             received counters) related to streams.

poll -      Polls the generators to determine whether they are
            stopped or are running.
-enable_arp

Spirent Extension (for Spirent HLTAPI only).

Enables or disables ARP on streamblocks, RIP routers, PPPoE clients/servers or other hosts. Possible values are 1 and 0. If it is set to 1, ARP will be enabled. The default value is 1.

-elapsed_time

Spirent Extension (for Spirent HLTAPI only).

Determines whether to return key elapsed_time when you get results using the sth::traffic_stats function. Possible values are 0 and 1. When you set -elapsed_time to 0, Spirent HLTAPI will not return elapsed_time in the traffic results. The default value is 0.

-db_file

Determines whether to create the Data Base (DB) file to store the End of Testing (EOT) results. Possible values are 1 and 0. If it is set to 1, a DB file will be created. The default value is 1.

There is one Environment variable HLTAPI_DISABLE_SAVE_DBFILE,

If set HLTAPI_DISABLE_SAVE_DBFILE 0, to enable saving db_file (working same as -db_file 1). If set HLTAPI_DISABLE_SAVE_DBFILE 1, to disable saving db_file (working same as -db_file 0).

If you use sth::traffic_control -db_file 1/0 with this ENV variable defined in the system, the value of this ENV variable will take effect, and the value of -db_file passed in sth::traffic_control will be ignored.

-duration

Amount of time in seconds for a continuous test to run. Tests run continuously for the number of seconds specified. You must set sth::traffic_config -transmit_mode to continuous.

-wait_for_duration

To wait for the amount of the time specified in the -duration argument. You must set sth::traffic_config -transmit_mode to continuous. Possible values are 0 (disable wait time) and 1 (enable wait time). The default value is 0.

-get

Spirent Extension (for Spirent HLTAPI only).

Specifies one or more filter types to use during a test. View the filter results in the sth::traffic_stats function. Possible values are described below:

Type              Description/Output Keys      Maximum Assignments/Test

tos               Adds a filter for IPv4 ToS               1
                  Output as keys tos and prec in results

dscp              Adds a filter for IPv4 DSCP              2
                  Output as key dscp in results

vlan_pri          Adds a filter for VLAN priority          1
                  Output as key vlan_pri in results

vlan_pri_inner    Adds a filter for inner VLAN priority    1
                  Output as key vlan_pri_inner in
                  results

vlan_id           Adds a filter for VLAN ID                1
                  Output as key vlan in results

vlan_id_inner     Adds a filter for inner VLAN ID          1
                  Output as key vlan_inner in results

vlan_cfi           Adds a filter for VLAN CFI              1
                  Output as key cfi in results

vlan_cfi_inner     Adds a filter for inner VLAN CFI        1
                  Output as key vlan_inner in results

For example:

[::sth::traffic_control -port_handle "$port1 $port2"\
                     -action run -get "vlan_id tos"]

Note

  1. The total number of specified filters cannot be greater than 4.
  2. tos and dscp cannot be specified at the same time.
  3. When one and only one filter type of vlan_pri, vlan_pri_inner and dscp is specified, the corresponding output key will be a general “qos” instead of its own name as indicated in the description.

This option also supports different headers with the new format shown in this example.

For example:

[sth::traffic_control -port_handle   "$portlist"\
                   -action        run\
                   -db_file       0 \
                   -get           "eth_header.ipv4_header.source_addr \
                                  eth_header.ipv4_header.dest_addr"]

You must specify the frame stack using the options listed below. View the filtered results by using the sth::traffic_stats function under mode aggregate and detailed_streams. Possible supported headers are described below:

Header Name                    Keys

eth_header                     src_mac, dst_mac

ipv4_header                    dest_addr, source_addr, total_length,
                               frag_offset, version, identification,
                               header_length, ttl, protocol,
                               control_flag_df_bit, control_flag_mf_bit,
                               control_flag_reserved, tos, dscp

ipv6_header                    dest_addr, source_addr, hop_limit,
                               payload_length, flow_label, traffic_class,
                               version, next_header

udp_header                     source_port, dest_port, length, checksum

dhcp_server_msg                message_type, hardware_type, haddr_len,
                               hops, xid, elapsed, bootpflags,
                               client_addr, your_addr, nextserv_addr,
                               relayagent_addr, client_mac, client_hw_pad,
                               magiccookie, dhcp_srv_msg_type_length,
                               dhcp_srv_msg_type_code,
                               dhcp_srv_msg_msgtype_type,
                               dhcp_srv_msg_size_length,
                               dhcp_srv_msg_size_type,
                               dhcp_srv_msg_size_value,
                               dhcp_srv_msg_cli_hw_id_type,
                               dhcp_srv_msg_cli_hw_type,
                               dhcp_srv_msg_cli_hw_client_hwa,
                               dhcp_srv_msg_cli_hw_option_length,
                               dhcp_srv_msg_cli_non_hw_id_type,
                               dhcp_srv_msg_cli_non_hw_type,
                               dhcp_srv_msg_cli_non_hw_value,
                               dhcp_srv_msg_cli_non_hw_option_length,
                               dhcp_srv_msg_srv_id_length,
                               dhcp_srv_msg_srv_id_type,
                               dhcp_srv_msg_srv_id_req_addr,
                               dhcp_srv_msg_lease_type,
                               dhcp_srv_msg_lease_length,
                               dhcp_srv_msg_lease_time,
                               dhcp_srv_msg_msg_length,
                               dhcp_srv_msg_msg_type,
                               dhcp_srv_msg_msg_value,
                               dhcp_srv_msg_host_length,
                               dhcp_srv_msg_host_type,
                               dhcp_srv_msg_host_value,
                               dhcp_srv_msg_overload_length,
                               dhcp_srv_msg_overload_type,
                               dhcp_srv_msg_overload,
                               dhcp_srv_msg_req_list_length,
                               dhcp_srv_msg_req_list_type,
                               dhcp_srv_msg_req_list_value,
                               dhcp_srv_msg_req_addr_length,
                               dhcp_srv_msg_req_addr_type,
                               dhcp_srv_msg_req_addr,
                               dhcp_srv_msg_custom_length,
                               dhcp_srv_msg_custom_type,
                               dhcp_srv_msg_custom_value,
                               dhcp_srv_msg_end_type

dhcp_client_msg                message_type, hardware_type, haddr_len,
                               hops, xid, elapsed, bootpflags,
                               client_addr, your_addr, nextserv_addr,
                               relayagent_addr, client_mac, client_hw_pad,
                               magiccookie, dhcp_cli_msg_type_length,
                               dhcp_cli_msg_type_code,
                               dhcp_cli_msg_msgtype_type,
                               dhcp_cli_msg_size_length,
                               dhcp_cli_msg_size_type,
                               dhcp_cli_msg_size_value,
                               dhcp_cli_msg_cli_hw_id_type,
                               dhcp_cli_msg_cli_hw_type,
                               dhcp_cli_msg_cli_hw_client_hwa,
                               dhcp_cli_msg_cli_hw_option_length,
                               dhcp_cli_msg_cli_non_hw_id_type,
                               dhcp_cli_msg_cli_non_hw_type,
                               dhcp_cli_msg_cli_non_hw_value,
                               dhcp_cli_msg_cli_non_hw_option_length,
                               dhcp_cli_msg_srv_id_length,
                               dhcp_cli_msg_srv_id_type,
                               dhcp_cli_msg_srv_id_req_addr,
                               dhcp_cli_msg_lease_type,
                               dhcp_cli_msg_lease_length,
                               dhcp_cli_msg_lease_time,
                               dhcp_cli_msg_msg_length,
                               dhcp_cli_msg_msg_type,
                               dhcp_cli_msg_msg_value,
                               dhcp_cli_msg_host_length,
                               dhcp_cli_msg_host_type,
                               dhcp_cli_msg_host_value,
                               dhcp_cli_msg_overload_length,
                               dhcp_cli_msg_overload_type,
                               dhcp_cli_msg_overload,
                               dhcp_cli_msg_req_list_length,
                               dhcp_cli_msg_req_list_type,
                               dhcp_cli_msg_req_list_value,
                               dhcp_cli_msg_req_addr_length,
                               dhcp_cli_msg_req_addr_type,
                               dhcp_cli_msg_req_addr,
                               dhcp_cli_msg_custom_length,
                               dhcp_cli_msg_custom_type,
                               dhcp_cli_msg_custom_value,
                               dhcp_cli_msg_end_type

ospfv2_hello                   backup_designated_router,
                               designated_router, hello_interval,
                               network_mask, router_dead_interval,
                               router_priority, version,
                               packet_type, packet_length, router_id,
                               area_id, checksum, dc_bit, ea_bit, e_bit,
                               mc_bit, np_bit, reserved_0, reserved_6,
                               reserved_7, user_auth_type,
                               user_auth_value_1, user_auth_value_2,
                               none_auth_type, none_auth_value_1,
                               none_auth_value_2, pass_auth_type,
                               pass_auth_value_1, pass_auth_value_2,
                               crypto_auth_type, crypto_auth_value_1,
                               crypto_auth_value_2

ospfv2_database_description    interface_mtu, sequence_number,
                               ospf_db_desc_version,
                               ospf_db_desc_packet_type,
                               ospf_db_desc_packet_length,
                               ospf_db_desc_router_id,
                               ospf_db_desc_area_id,
                               ospf_db_desc_checksum, pkt_optn_dc_bit,
                               pkt_optn_ea_bit, pkt_optn_e_bit,
                               pkt_optn_mc_bit, pkt_optn_np_bit,
                               pkt_optn_reserved_0, pkt_optn_reserved_6,
                               pkt_optn_reserved_7, dd_optn_ibit,
                               dd_optn_mbit, dd_optn_msbit,
                               dd_optn_reserved3, dd_optn_reserved4,
                               dd_optn_reserved5, dd_optn_reserved6,
                               dd_optn_reserved7, dd_user_auth_type,
                               dd_user_auth_value_1, dd_user_auth_value_2,
                               dd_none_auth_type, dd_none_auth_value_1,
                               dd_none_auth_value_2, dd_pass_auth_type,
                               dd_pass_auth_value_1, dd_pass_auth_value_2,
                               dd_crypto_auth_type, dd_crypto_auth_value_1,
                               dd_crypto_auth_value_2

ospfv2_linkstate_ack           ls_ack_version, ls_ack_packet_type,
                               ls_ack_packet_length, ls_ack_router_id,
                               ls_ack_area_id, ls_ack_checksum,
                               ls_ack_user_auth_type,
                               ls_ack_user_auth_value_1,
                               ls_ack_user_auth_value_2,
                               ls_ack_none_auth_type,
                               ls_ack_none_auth_value_1,
                               ls_ack_none_auth_value_2,
                               ls_ack_pass_auth_type,
                               ls_ack_pass_auth_value_1,
                               ls_ack_pass_auth_value_2,
                               ls_ack_crypto_auth_type,
                               ls_ack_crypto_auth_value_1,
                               ls_ack_crypto_auth_value_2

ospfv2_linkstate_req           ls_req_version, ls_req_packet_type,
                               ls_req_packet_length, ls_req_router_id,
                               ls_req_area_id, ls_req_checksum,
                               ls_req_user_auth_type,
                               ls_req_user_auth_value_1,
                               ls_req_user_auth_value_2,
                               ls_req_none_auth_type,
                               ls_req_none_auth_value_1,
                               ls_req_none_auth_value_2,
                               ls_req_pass_auth_type,
                               ls_req_pass_auth_value_1,
                               ls_req_pass_auth_value_2,
                               ls_req_crypto_auth_type,
                               ls_req_crypto_auth_value_1,
                               ls_req_crypto_auth_value_2

ospfv2_linkstate_update        no_of_lsa, ls_upd_version,
                               ls_upd_packet_type, ls_upd_packet_length,
                               ls_upd_router_id, ls_upd_area_id,
                               ls_upd_checksum, ls_upd_user_auth_type,
                               ls_upd_user_auth_value_1,
                               ls_upd_user_auth_value_2,
                               ls_upd_none_auth_type,
                               ls_upd_none_auth_value_1,
                               ls_upd_none_auth_value_2,
                               ls_upd_pass_auth_type,
                               ls_upd_pass_auth_value_1,
                               ls_upd_pass_auth_value_2,
                               ls_upd_crypto_auth_type,
                               ls_upd_crypto_auth_value_1,
                               ls_upd_crypto_auth_value_2

ospfv2_unknown                 ospf_unknown_version,
                               ospf_unknown_packet_type,
                               ospf_unknown_packet_length,
                               ospf_unknown_router_id,
                               ospf_unknown_area_id,
                               ospf_unknown_checksum,
                               ospf_unknown_user_auth_type,
                               ospf_unknown_user_auth_value_1,
                               ospf_unknown_user_auth_value_2,
                               ospf_unknown_none_auth_type,
                               ospf_unknown_none_auth_value_1,
                               ospf_unknown_none_auth_value_2,
                               ospf_unknown_pass_auth_type,
                               ospf_unknown_pass_auth_value_1,
                               ospf_unknown_pass_auth_value_2,
                               ospf_unknown_crypto_auth_type,
                               ospf_unknown_crypto_auth_value_1,
                               ospf_unknown_crypto_auth_value_2

igmp_v1                        igmp_version, igmp_unused,
                               igmp_message_type, igmp_group_address,
                               igmp_checksum

igmp_v2_query                  igmpv2_query_max_resp_time,
                               igmpv2_query_message_type,
                               igmpv2_query_group_address,
                               igmpv2_query_checksum

igmp_v2_report                 igmpv2_report_checksum,
                               igmpv2_report_grpaddr,
                               igmpv2_report_max_resp_time,
                               igmpv2__report_message_type

igmp_v3_query                  igmpv3_query_max_resp_time,
                               igmpv3_query_message_type,
                               igmpv3_query_group_address,
                               igmpv3_query_checksum,
                               igmpv3_query_suppress_flag,
                               igmpv3_query_no_of_srcs,
                               igmpv3_query_reserved, igmpv3_query_qrv,
                               igmpv3_query_qqic, igmpv3_ipv4_addr

igmp_v3_report                 igmpv3_report_message_type,
                               igmpv3_report_message_checksum,
                               igmpv3_report_no_of_grp_record,
                               igmpv3_report_reserved1,
                               igmpv3_report_reserved2

rip_ng                         ripng_version, ripng_command,
                               ripng_ip_addr, ripng_metric,
                               ripng_pref_len, ripng_route_tag

ripv1                          ripv1_version, ripv1_command,
                               ripv1_ip_addr, ripv1_metric

ripv2                          ripv2_version, ripv2_command,
                               ripv2_reserved, ripv2_ip_addr,
                               ripv2_addr_family_idn, ripv2_metric,
                               ripv2_next_hop, ripv2_route_tag,
                               ripv2_subnet_mask

tcp_header                     tcp_src_port, tcp_dest_port, tcp_checksum,
                               tcp_seq_no, tcp_ack_no, tcp_reserved_bit,
                               tcp_cngstn_window_red, tcp_ecn_echo,
                               tcp_urgent_ptr_bit, tcp_urgent_ptr,
                               tcp_ack_bit, tcp_push_func, tcp_reset_conn,
                               tcp_sync_bit, tcp_window_size,
                               tcp_header_length, tcp_no_more_data
-port_handle

Specifies the handle(s) of the port(s) on which to control traffic. A port_handle is a value that uniquely identifies a port on a chassis. To apply the function to all ports, specify all instead of one handle (for example, -port_handle all).

-latency_bins

Specifies the number of latency bins. Always choose the first n number of preset buckets.

-latency_values

Specifies the latency bucket values. You can enter a maximum of 15 values. For example, if you specify the following arguments:

sth::traffic_control -latency_bins 3 \
                 -latency_values 0.1 0.2 0.3 0.4 0.5 0.6

Then the following values are sent to Spirent HLTAPI:

0.1 0.2 0.3 0.4
-reset_streams

Specifies a list of streamblock handles of which the statistics are to be cleared from memory. Use all to specify all streamblocks under the ports specified by -port_handle. This argument takes effect only when -action is set to clear_stats and -delete_inactive_streams_from_memory in the sth::system_settings function is set to true.

-stream_handle

Specifies the stream handle(s) by which to start or stop the specified streamblock(s). You can specify this argument only when -action is set to run or stop. If -port_handle and -stream_handle are both specified, -port_handle will take effect.

-traffic_start_mode

Spirent Extension (for Spirent HLTAPI only).

Controls how the ports start or stop sending traffic. Possible values are described below:

sync   Starts or stops traffic on all ports at the same
       time after a short delay. The delay is needed to synchronize
       the ports.

async  Starts or stops traffic on all ports immediately.
       The ports might not start or stop at the same time.

If -action is run or stop, and -port_handle is all, the default
value is synchronous.

If -action is run or stop, and -port_handle is not all (list of
specific port handles), the default value is asynchronous.
-bucket_size_unit

Specifies the unit for the bucket size.

Default: TEN_NANOSECONDS

Possible Values:

Value                  Description
TEN_NANOSECONDS        Size unit in nanoseconds.
MICROSECONDS           Size unit in microseconds.
MILLISECONDS           Size unit in milliseconds.
SECONDS                Size unit in seconds.

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):

stopped        Stopped (1) or Running (0)
status         Success (1) or failure (0) of the operation.
log            An error message (if the operation failed).
results_db_file Absolute path of results db file, if -db_file is specified
                as 1, results_db_file will be returned.

Description

The traffic_control function manages streams of traffic on the specified test ports. You use this function to perform the following actions:

  • Start and stop traffic
  • Start and stop the specified streamblock
  • Synchronize traffic generation
  • Determine status
  • Reset the traffic generators and result counters

When you are running interactive tests, note that if you configure one port and start traffic on that port, and then wait a while before configuring another port and starting traffic on it, all of the port counters will be reset at the moment you start traffic on the second port.

Examples

#### HLTAPI for Tcl ####

The following example starts all the traffic on the specified port:

set returnCtrlKlist [sth::traffic_control -action run -port_handle 84];

keylget returnCtrlKlist status iStatus;
if {$iStatus == 0} {
      keylget returnCtrlKlist log result;
      puts $result;
 }

The following example starts the specified streamblock:

sth::traffic_control -stream_handle streamHandle \
                 -action run  \
                 -duration 5 \

The following example stops the specified streamblock:

sth::traffic_control -stream_handle streamHandle \
                 -action stop \

The following example starts traffic on all ports for 200 seconds:

set returnedString [sth::traffic_control -action run
                    -duration 200]

The following example clears the statistics on all ports:

set returnedString [sth::traffic_control -port_handle all
                    -action clear_stats]

The following example polls states of generators on all ports:

set returnedString [sth::traffic_control -port_handle all
                  -action poll]

The following example starts traffic on all ports immediately:

set traffic_ctrl_ret [::sth::traffic_control    \
         -action                 run\
         -traffic_start_mode     async\
         -port_handle            all\

      ]

The following example clears statistics of all streamblocks from all ports:

set returnedString [sth::system_settings\
          -delete_inactive_streams_from_memory  true\
     ]

set clear_stats [sth::traffic_control \
   -db_file 0 \
   -port_handle all \
   -action clear_stats \
   -reset_streams all\
   ]

Sample Output:

# On success
 {status 1} {log {}}

# On failure
 {status 0} {log {<errorMsg>}}

#### HLTAPI for Python ####

The following example starts the specified ports:

traffic_ctrl_ret = sth.traffic_control (
         port_handle         = [port_handle[0],port_handle[1]],
         action              = 'run');

Sample Output:

{'status': '1'}

#### HLTAPI for Perl ####

The following example starts the specified ports:

my %traffic_ctrl_ret = sth::traffic_control (
         port_handle         => "$hport[1] $hport[2] ",
         action              => 'run');

Sample Output:

$VAR1 = 'status';
$VAR2 = '1';

Note

The traffic_control function is non-blocking; it starts the action and then returns control to the Tcl shell environment immediately. To determine if an action has completed, use the “poll” action.

End of Procedure Header

sth::traffic_stats

Purpose

Retrieves statistical information about traffic streams.

Synopsis

Note

M indicates that the argument is Mandatory .

sth::traffic_stats
   [-mode {aggregate|out_of_filter|get_name|all|-mode streams|detailed_streams}  M]
   [-port_handle <port_handle>]
   [-streams <list of stream IDs>]
   [-rx_port_handle <handle>]
   [-scale_mode {0|1}]
   [-detailed_rx_stats {0|1}]
   [-properties <property_list>]
   [-records_per_page <numeric>]

Arguments

-port_handle

Specifies one or more ports from which to gather transmitted (tx) and received (rx) statistics.

-mode

Specifies the type of statistics to collect:

aggregate -         Collect all transmitted (tx) and
                    received (rx) packets

out_of_filter -     Collect received (rx) packets that do
                    not match the filter

detailed_streams -  Collect detailed statistics for individual streams

streams -           Collect detailed test stream statistics

get_name  -         Get the name of the traffic stream identified
                    by -streams or -port_handle. If both are
                    provided, -streams will take effect.

all -               Collect all statistics

This argument is Mandatory .

-scale_mode

Spirent Extension (for Spirent HLTAPI only).

When enabled, Spirent HLTAPI will get streamblock statistics directly from Streamblock Result objects (TxStreamBlockResults/RxStreamBlockResults). Possible values are 0 (disable) and 1 (enable).

-streams

Specifies a stream ID for which to gather statistics. If -streams is not specified, then this function retrieves statistics for all streams under the specified port(s). If -streams and -port_handle are both specified, the statistics for the specific stream(s) will be retrieved, even if the stream is not created on the specified port.

-rx_port_handle

Retrieves real-time or EOT steam results from the receiving port. You can specify this argument only when -mode is set to streams.

-detailed_rx_stats

Spirent Extension (for Spirent HLTAPI only).

Determines whether to include the rx stream statistics per port. Possible values are 0 and 1. When it is set to 0, only the aggregate rx statistics on all rx ports will be displayed. When it is set to 1, the rx statistics for each rx port will be included in the keyed list of the port handle on which the streamblock is created. The default is 0.

-properties

Spirent Extension (for Spirent HLTAPI only).

Specifies a set of analyzer/generator attributes for which you want the results. You can use the -db_file argument with the corresponding action in the sth::traffic_control function to determine whether to return EOT or run-time results. If no property is specified, all properties will be returned. This argument is only available for -mode aggregate or stream. The available properties are listed below: :

For -mode aggregate (EOT and run-time):

rx.total_pkt_bytes                     tx.total_pkt_bytes
rx.fcoe_frame_rate                     tx.total_pkts
rx.udp_pkts                            tx.raw_pkt_count
rx.tcp_checksum_errors                 tx.pkt_bit_rate
rx.total_pkts                          tx.pkt_byte_count
rx.pfc_frame_rate                      tx.pkt_rate
rx.fcoe_frame_count                    tx.pfc_frame_count
rx.tcp_pkts                            tx.raw_pkt_rate
rx.pkt_bit_rate                        tx.total_pkt_rate
rx.raw_pkt_count                       tx.pkt_count
rx.pkt_byte_count                      tx.ipv4_pkts (Returns when
                                                    -scale_mode is 1)
rx.pkt_rate                            tx.ipv6_pkts (Returns when
                                                    -scale_mode is 1)
rx.pfc_frame_count                     tx.vlan_pkts_count
rx.total_pkt_rate                      tx.vlan_pkts_rate
rx.pkt_count
rx.vlan_pkts_count
rx.vlan_pkts_rate
rx.oversize_count
rx.oversize_rate
rx.undersize_count
rx.undersize_rate
rx.ipv4_pkts (Returns when -scale_mode is 1)
rx.ipv6_pkts (Returns when -scale_mode is 1)

Note

Not applicable for ip_pkts and elapsed_time

For -mode stream (EOT and run-time):

rx.misinserted_pkts                         tx.total_pkt_bytes
rx.total_pkt_bytes                          tx.total_pkt_rate
rx.prbs_bit_errors                          tx.total_pkts
rx.ipv4_outer_present                       tx.ipv4_outer_present
rx.min_delay                                tx.udp_present
rx.ipv6_outer_present                       tx.ipv6_present
rx.max_delay                                tx.total_pkt_bit_rate
rx.avg_delay                                tx.ipv6_outer_present
rx.duplicate_pkts                           tx.tcp_present
rx.out_of_sequence_pkts                     tx.ipv4_present
rx.total_pkts                               tx.l1_bit_count
rx.dropped_pkts (not supported when -detailed_rx_stats is 1)
rx.first_tstamp                             tx.l1_bit_rate
rx.udp_present
rx.total_pkt_bit_rate
rx.ipv4_present
rx.min_pkt_length
rx.last_tstamp
rx.total_pkt_rate
rx.ipv6_present
rx.max_pkt_length
rx.rx_port
rx.rx_sig_count
rx.rx_sig_rate
rx.l1_bit_count
rx.l1_bit_rate

Note

Not applicable for elapsed_time.

-records_per_page

Specifies the number of records per page.

Default: 100

Vendor Specific Arguments Processed by Spirent HLTAPI Wrapper

None

Vendor Specific Arguments Ignored by Spirent HLTAPI Wrapper

-field_type
-packet_group_id

Note

For more information about Spirent HLTAPI Wrapper, refer to Chapter 4 Spirent HLTAPI Wrapper in Spirent HLTAPI Programmer’s Reference.

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):

<port_handle>  The handle(s) of the port(s) on which to retrieve
               statistics
<mode>         The type of statistics to collect
<stream_name>  A list of names of the streams identified by -port_handle or -streams
<tx | rx>      Indicates if the value refers to a transmitted (tx) or
               received (rx) statistic
<attribute>    The name of the attribute to which the statistic applies
status         Success (1) or failure (0) of the operation.
log            An error message (if the operation failed).

Note

With EOT results, after you stop the traffic, all rates are set to 0; therefore, they are not returned in the keyed list.

Following is a keyed list showing the types of keys returned based on the mode you specified:

 *** aggregate statistics ***
 <port handle>.aggregate.<tx|rx>.pkt_count
 <port handle>.aggregate.<tx|rx>.pkt_byte_count
 <port handle>.aggregate.<tx|rx>.pkt_rate
 <port handle>.aggregate.<tx|rx>.total_pkts
 <port handle>.aggregate.<tx|rx>.total_pkt_bytes
 <port handle>.aggregate.<tx|rx>.total_pkt_rate
 <port handle>.aggregate.<tx|rx>.ip_pkts
 <port handle>.aggregate.<tx|rx>.pfc_frame_count
 <port handle>.aggregate.rx.pfc_frame_rate
 <port handle>.aggregate.rx.fcoe_frame_rate
 <port handle>.aggregate.rx.fcoe_frame_count
 <port handle>.aggregate.<tx|rx>.tcp_pkts
 <port handle>.aggregate.<tx|rx>.tcp_checksum_errors
 <port handle>.aggregate.<tx|rx>.udp_pkts
 <port handle>.aggregate.<tx|rx>.pkt_bit_rate
 <port handle>.aggregate.<tx|rx>.raw_pkt_count
 <port handle>.aggregate.tx.raw_pkt_rate
 <port handle>.aggregate.<tx|rx>.vlan_pkts_count
 <port handle>.aggregate.<tx|rx>.vlan_pkts_rate
 <port handle>.aggregate.rx.oversize_count
 <port handle>.aggregate.rx.oversize_rate
 <port handle>.aggregate.rx.undersize_count
 <port handle>.aggregate.rx.undersize_rate
 <port handle>.aggregate.<tx|rx>.ipv4_pkts (Returns when -scale_mode is 1)
 <port handle>.aggregate.<tx|rx>.ipv6_pkts (Returns when -scale_mode is 1)

 TOS Stats
 <porthandle>.aggregate.rx.tos.<value>.count
 <porthandle>.aggregate.rx.tos.<value>.rate_pps
 <porthandle>.aggregate.rx.tos.<value>.rate_bps
 ("tos.<value>" is used to filter "dBit tBit rbit mBit";
 tx.tos stats are not supported.)

 <porthandle>.aggregate.rx.prec.<value>.count
 <porthandle>.aggregate.rx.prec.<value>.rate_pps
 <porthandle>.aggregate.rx.prec.<value>.rate_bps
 ( "prec.<value>" is used to filter precedence field.)

 Filtered VLAN Stats (you must set -get in sth::traffic_control to vlan_id to
 filter by VLAN.)
 <porthandle>.aggregate.rx.vlan.<value>.count
 <porthandle>.aggregate.rx.vlan.<value>.rate_pps
 <porthandle>.aggregate.rx.vlan.<value>.rate_bps

 Filtered Inner VLAN Stats (you must set -get in sth::traffic_control to vlan_id_inner to
 filter by inner VLAN.)
 <porthandle>.aggregate.rx. vlan_inner.<value>.count
 <porthandle>.aggregate.rx. vlan_inner.<value>.rate_pps
 <porthandle>.aggregate.rx. vlan_inner.<value>.rate_bps

 Filtered VLAN CFI Statistics (you must set -get in sth::traffic_control to vlan_cfi to
 filter by VLAN.)
 <porthandle>.aggregate.rx.cfi.<value>.count
 <porthandle>.aggregate.rx.cfi.<value>.rate_pps
 <porthandle>.aggregate.rx.cfi.<value>.rate_bps

 Filtered Inner VLAN CFI Statistics (you must set -get in sth::traffic_control to vlan_cfi_inner to
 filter by inner VLAN.)
 <porthandle>.aggregate.rx. vlan_cfi_inner.<value>.count
 <porthandle>.aggregate.rx. vlan_cfi_inner.<value>.rate_pps
 <porthandle>.aggregate.rx. vlan_cfi_inner.<value>.rate_bps

*** Stream statistics ***

 <port handle>.stream.<id>.ipv4_present
 <port handle>.stream.<id>.ipv6_present
 <port handle>.stream.<id>.ipv4_outer_present
 <port handle>.stream.<id>.ipv6_outer_present
 <port handle>.stream.<id>.tcp_present
 <port handle>.stream.<id>.udp_present
 <port handle>.stream.<id>.<rx|tx>.total_pkts
 <port handle>.stream.<id>.<rx|tx>.total_pkt_bytes
 <port handle>.stream.<id>.<rx|tx>.total_pkt_rate
 <port handle>.stream.<id>.<rx|tx>.total_pkt_bit_rate
 <port handle>.stream.<id>.<rx|tx>.min_pkt_length
 <port handle>.stream.<id>.<rx|tx>.max_pkt_length
 <port handle>.stream.<id>.<rx|tx>.avg_delay
 <port handle>.stream.<id>.<rx|tx>.min_delay
 <port handle>.stream.<id>.<rx|tx>.max_delay
 <port handle>.stream.<id>.<rx|tx>.misinserted_pkts
 <port handle>.stream.<id>.<rx|tx>.out_of_sequence_pkts
 <port handle>.stream.<id>.<rx|tx>.misinserted_pkt_rate
 <port handle>.stream.<id>.<rx|tx>.prbs_bit_error_rate
 <port handle>.stream.<id>.<rx|tx>.prbs_bit_errors
 <port handle>.stream.<id>.<rx|tx>.first_tstamp
 <port handle>.stream.<id>.<rx|tx>.last_tstamp
 <port handle>.stream.<id>.<rx|tx>.Max
 <port handle>.stream.<id>.<rx|tx>.Min
 <port handle>.stream.<id>.<rx|tx>.pkt_byte_rate
 <port handle>.stream.<id>.rx.latency_bin.<bin number>.pkt_byte_rate
 <port handle>.stream.<id>.rx.rx_port
 <port handle>.stream.<id>.rx.rx_port_list
        <port handle>.stream.<id>.rx.rx_port_handle_list
 <port handle>.stream.<id>.rx.rx_sig_count
 <port handle>.stream.<id>.rx.rx_sig_rate
 <port handle>.stream.<id>.rx.latency_bin.<bin number>.total_pkts
 <port handle>.stream.<id>.rx. duplicate_pkts
       :orange:`Spirent Extension (for Spirent HLTAPI only).`

 <port handle>.stream.<id>.rx. dropped_pkts
       :orange:`Spirent Extension (for Spirent HLTAPI only).`

<port handle>.stream.<id>.tx.name
<port handle>.stream.<id>.<rx|tx>.l1_bit_count
<port handle>.stream.<id>.<rx|tx>.l1_bit_rate

Note

When -scale_mode is set to 1 for statistics from Streamblock Result objects, the following keys will always be set to 0 if they are returned:

tcp_present
ipv6_outer_present
udp_present
ipv4_outer_present
ipv4_present
ipv6_present
elapsed_time
rx_sig_rate
min_pkt_length
max_pkt_length
min
max

Description

Depending on the configuration of -db_file with the corresponding action in the sth::traffic_stats function returns EOT results (by accessing the database file) or run-time results (by subscription of result objects) of the traffic transmitted and received at the specified port(s). You can direct Spirent HLTAPI analyzer to retrieve various combinations of statistics:

  • All transmitted and received packets, identified by port
  • Statistics organized by stream
  • All statistics

The function returns the requested type of 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.

You can also retrieve a desired set of analyzer/generator attributes for which you want results by specifying the -properties argument.

The key values to access the data returned from the traffic_stats function are:

<port_handle>.<mode>.<tx|rx>.<attribute>

<port_handle>    Identifies a port on the chassis, specified as an integer.
<mode>           Indicates the type of statistics to collect.
<tx | rx>        Specifies whether the statistic was transmitted or received.
<attribute>      Specifies the name of the attribute to which the statistic
                 applies such as avg_pkt_length, pkt_count, and pkt_rate,

status           The key "status" retrieves a value indicating the success (1) or
                 failure (0) of the operation.

log              The key "log" retrieves a message describing the last error that
                 occurred during the operation. If the operation was
                 successful - {status 1} - the log value is null.

Examples

#### HLTAPI for Tcl ####

1/5/4.aggregate.rx.tos.5.count

The count statistic indicates the count of packets received with the TOS values displayed in packets per second, as well as, bits per second.

The rate statistic indicates the average rate of packets received with the TOS values in packets per second, as well as bits per second.

The vendor equipment should be able to collect and calculate the rate in a one time instance and over an average rate of the full run time. See the sample example below:

 set vlanPriority 3
 set chassis 192.168.2.1
 set txport 192.168.2.1/1/1
 set rxport 192.168.2.1/1/2
 set connectList [ <vendor>::connect -device $chassis -port_list { $txport $rxport } ]
 set txportHandle [ keylget $chassis port_handle.$chassis.$txport ]
 set rxportHandle [ keylget $chassis port_handle.$chassis.$rxport ]
 set trafficHandle [ <vendor>::traffic_config -port_handle $txportHandle \
          -l2_encap ethernet_ii \
          -vlan_id 1 \
          -vlan_user_priority $vlanPriority \
          -transmit_mode continuous -rate_pps 10000\
          -length_mode fixed -l3_length 50 \
          -l3_protocol ipv4 \
          -ip_src_addr $ipsrc.1.1.1 \
          -ip_dst_addr $ipdst.1.1.1 \
          -ip_dst_step 0.0.1.0 \
          -mac_src $macsrc.10.10.10.10.10 \
          -mac_dst $macdst.10.10.10.10.10 ]
  <vendor>::traffic_control -port_handle  $rxportHandle -action run
  <vendor>::traffic_control -port_handle  $txportHandle -action run

 after 3000

 <vendor>::traffic_control -port_handle $rxportHandle  \
         -get  <streams  aggregate  tos  vlan_pri  latency>\
         -mode  run
#(The -get above is only there as a method for the vendor to know what type
# of filter to setup if they need it)

 <vendor>::traffic_control -port_handle  $txportHandle -action stop
 <vendor>::traffic_control -port_handle  $rxportHandle -action stop
 set trafficStats [ <vendor>::traffic_stats -port_handle $rxportHandle -mode\
 aggregate ]
 set tosStat [ keylget $trafficStats
 -$rxportHandle.aggregate.rx.tos.$vlanPriority.count ]

The following example retrieves traffic results from the specified receiving port:

sth::traffic_stats -port_handle port1 -mode streams -rx_port_handle port2

Sample Output:

{port2 {{stream {{streamblock1 {{rx {{total_pkt_bytes 21935848}
{ipv6_outer_present 0}{max_delay 0.1} {total_pkts 161293} {dropped_pkts 0}
{min_pkt_length 136}{prbs_bit_errors 0} {duplicate_pkts 0} {first_tstamp 0}
{udp_present 0}{total_pkt_rate 1000} {ipv4_outer_present 0} {min_delay 0.09}
{avg_delay 0.096}{out_of_sequence_pkts 0} {misinserted_pkt_rate 0}
{prbs_bit_error_rate 0}{ipv4_present 1} {ipv6_present 0} {pkt_byte_rate 135999}
{out_of_pkt_frame_rate 0}{misinserted_pkts 0} {total_pkt_bit_rate 1087992}
{last_tstamp 0}{Min 136}{max_pkt_length 136} {Max 136} {tcp_present 0}}}}}}}}}
{port1 {{stream {{streamblock1
{{tx {{name BOUND_STREAMBLOCK_1} {total_pkt_bytes 21907288} {ipv4_outer_present 0} {ipv6_outer_present 0}
{total_pkts 161083} {udp_present 0} {total_pkt_bit_rate 1087776} {ipv4_present 1}
{elapsed_time 161} {total_pkt_rate 1000} {ipv6_present 0}
{tcp_present 0}}}}}}}}}{status 1}

The following example retrieves traffic results from all streams under the specified ports:

sth::traffic_stats -port_handle $hport1 $hport2 -mode streams

Sample Output:

{port1 {{stream {{streamblock1 {{tx {{name StreamBlock_1} {total_pkt_bytes 670021120}
{ipv4_outer_present 0} {l1_bit_count 1902728064} {ipv6_outer_present 0} {total_pkts
5234540} {udp_present 0} {total_pkt_bit_rate 67811656} {ipv4_present 1} {elapsed_time 0}
{total_pkt_rate 66224} {ipv6_present 0} {l1_bit_rate 78407209} {tcp_present 0}}} {rx {
{total_pkt_bytes 554097152} {l1_bit_count 830431360} {ipv6_outer_present 0} {max_delay
14934.55} {total_pkts 4328884} {dropped_pkts 825445} {min_pkt_length 128} {l1_bit_rate
75001519} {rx_port_handle_list port2} {rx_port_list 10.109.127.147/1/1} {rx_port
{10.109.127.147-1-1 //10.109.127.147/1/1}} {prbs_bit_errors 0} {duplicate_pkts 0}
{first_tstamp 0} {udp_present 0} {total_pkt_rate 63344} {ipv4_outer_present 0} {min_delay
16.4} {rx_sig_count 4328884} {avg_delay 60.752} {out_of_sequence_pkts 0} {rx_sig_rate 63344}
{misinserted_pkt_rate 0} {prbs_bit_error_rate 0} {ipv4_present 1} {ipv6_present 0}
{pkt_byte_rate 8108273} {dropped_pkts_percent 15.981} {out_of_pkt_frame_rate 0}
{misinserted_pkts 0} {total_pkt_bit_rate 64866184} {last_tstamp 0} {Min 128} {max_pkt_length
128} {Max 128} {tcp_present 0}}}}}}}}} {port2 {{stream {{streamblock2 {{tx {{name StreamBlock_1}
{total_pkt_bytes 782976512} {ipv4_outer_present 0} {l1_bit_count -1347401856} {ipv6_outer_present
0} {total_pkts 6117004} {udp_present 0} {total_pkt_bit_rate 86506360} {ipv4_present 1}
{elapsed_time 0} {total_pkt_rate 84482} {ipv6_present 0} {l1_bit_rate 100022952} {tcp_present
0}}} {rx {{total_pkt_bytes 776973440} {l1_bit_count -1402930272} {ipv6_outer_present 0}
{max_delay 16866.6} {total_pkts 6070105} {dropped_pkts 635} {min_pkt_length 128} {l1_bit_rate
100562322} {rx_port_handle_list port1} {rx_port_list 10.109.127.133/1/1} {rx_port
{10.109.127.133-1-1 //10.109.127.133/1/1}} {prbs_bit_errors 0} {duplicate_pkts 0} {first_tstamp
0} {udp_present 0} {total_pkt_rate 84930} {ipv4_outer_present 0} {min_delay -20.47} {rx_sig_count
6070105} {avg_delay 30.875} {out_of_sequence_pkts 0} {rx_sig_rate 84930} {misinserted_pkt_rate 0}
{prbs_bit_error_rate 0} {ipv4_present 1} {ipv6_present 0} {pkt_byte_rate 10871602}
{dropped_pkts_percent 0.01} {out_of_pkt_frame_rate 0} {misinserted_pkts 0} {total_pkt_bit_rate
86972816} {last_tstamp 0} {Min 128} {max_pkt_length 128} {Max 128} {tcp_present 0}}}}}}}}} {status 1}

The following examples retrieve names for specified streams:

set ret1 [sth::traffic_stats \
           -mode get_name \
           -port_handle port1\
]

# Return names of all streams under port1
puts $ret1

set ret2 [sth::traffic_stats \
              -mode get_name \
              -port_handle port1\
              -streams "streamblock4 streamblock5"\
]

# Return the name for a specific stream
puts $ret2

Sample Output:

Name list 1: {status 1} {stream_name streamblockA streamblokcB streamblockC}

Name list 2: {status 1} {stream_name streamblockD streamblokcE}

Sample Input:

set statsKeyList [sth::traffic_stats -mode aggregate -port_handle 60];

keylget statsKeyList status iStatus;
if {$iStatus == 0} {
     keylget statsKeyList log result;
     puts $result;
}

Sample Output:

#On success
{status 1} {log {}}

#On failure
{status 0} {log {<errorMsg>}}

The following example retrieves a desired set of aggregate results using -properties:

set rtn [sth::traffic_stats \
       -port_handle $portHndList \
       -properties "rx.total_pkt_bytes tx.total_pkt_bytes"\
       -mode aggregate]

Sample Output:

{port1 {{aggregate {{rx {{total_pkt_bytes 960}}} {tx {{total_pkt_bytes
246410112}}}}}}} {port2 {{aggregate {{rx {{total_pkt_bytes 245020480}}}
{tx {{total_pkt_bytes 640}}}}}}} {status 1}

The following example retrieves a desired set of attributes in -mode streams:

set rtn [sth::traffic_stats \
       -port_handle $portList \
       -mode streams\
       -properties "rx.total_pkt_bytes tx.total_pkt_bytes"\
       -streams "$s1 $s2"]

Sample Output:

{port1 {{stream {{streamblock1 {{rx {{total_pkt_bytes 257354402}}} {tx
{{total_pkt_bytes 48258}}}}} {streamblock2 {{rx {{total_pkt_bytes 39650432}}} {tx
{{total_pkt_bytes 41528192}}}}}}}}} {status 1}

The following example retrieves statistics based on the filters specified in the sth::traffic_control function:

# Set filters
set traffic_ctrl_ret [::sth::traffic_control -port_handle "$port1 $port2"\
                        -action run\
                        -get "vlan_id tos"]

# Return aggregate statistics
set agg_1 [sth::traffic_stats -mode aggregate -port_handle "$port1 $port2"]

# Return detailed statistics
set detailed_streams_1 [sth::traffic_stats -port_handle "$port1 $port2"\
                        -mode detailed_streams]

Sample Output:

# Aggregate statistics
{port1 {{aggregate {{rx {{total_pkt_bytes 331403136} {undersize_count 0}
{oversize_rate 0} {fcoe_frame_rate 0} {udp_pkts 0} {tcp_checksum_errors 0}
{total_pkts 2589107} {pfc_frame_rate null} {oversize_count 0} {fcoe_frame_count 0}
{tcp_pkts 0} {pkt_bit_rate 85482144} {raw_pkt_count 2589107} {vlan_pkts_count 2589107}
{pkt_byte_count 331403136} {pkt_rate 83479} {pfc_frame_count null} {undersize_rate 0}
{vlan_pkts_rate 83479} {total_pkt_rate 83479} {pkt_count 2589067} {ip_pkts 2589067}
{qos {{20 {{ipv4_pkts 1294548} {rx_ipv4_frame_rate 41496} {diffserv {DSCP 5}}
{ipv6_pkts 0} {Ecn Not-ECT} {ip_precedence {0 - Routine - DR}} {rx_ipv6_frame_rate 0}
{qos_binary 00010100b}}} {24 {{ipv4_pkts 1294547} {rx_ipv4_frame_rate 41496}
{diffserv {DSCP 6}} {ipv6_pkts 0} {Ecn Not-ECT} {ip_precedence {0 - Routine - DT}}
{rx_ipv6_frame_rate 0} {qos_binary 00011000b}}}}}}} {tx {{total_pkt_bytes 624638464}
{total_pkts 4880028} {raw_pkt_count 4880028} {pkt_bit_rate 163322880} {vlan_pkts_count
4879948} {pkt_byte_count 624638464} {pkt_rate 159495} {pfc_frame_count null} {raw_pkt_rate
159495} {vlan_pkts_rate 159495} {total_pkt_rate 159495} {pkt_count 4879948} {ip_pkts
4879948}}}}}}} {port2 {{aggregate {{rx {{total_pkt_bytes 571533056} {undersize_count 0}
{oversize_rate 0} {fcoe_frame_rate 0} {udp_pkts 0} {tcp_checksum_errors 0} {total_pkts
4465142} {pfc_frame_rate null} {oversize_count 0} {fcoe_frame_count 0} {tcp_pkts 0}
{pkt_bit_rate 132350632} {raw_pkt_count 4465142} {vlan_pkts_count 4465142} {pkt_byte_count
571533056} {pkt_rate 129249} {pfc_frame_count null} {undersize_rate 0} {vlan_pkts_rate
129249} {total_pkt_rate 129249} {pkt_count 4465062} {ip_pkts 4465062} {qos {{20 {{ipv4_pkts
2232392} {rx_ipv4_frame_rate 67004} {diffserv {DSCP 5}} {ipv6_pkts 0} {Ecn Not-ECT}
{ip_precedence {0 - Routine - DR}} {rx_ipv6_frame_rate 0} {qos_binary 00010100b}}} {24 {{
ipv4_pkts 2232835} {rx_ipv4_frame_rate 67029} {diffserv {DSCP 6}} {ipv6_pkts 0} {Ecn Not-ECT}
{ip_precedence {0 - Routine - DT}} {rx_ipv6_frame_rate 0} {qos_binary 00011000b}}}}}}} {tx
{{total_pkt_bytes 360781056} {total_pkts 2818622} {raw_pkt_count 2818622} {pkt_bit_rate 85802984}
{vlan_pkts_count 2818582} {pkt_byte_count 360781056} {pkt_rate 83792} {pfc_frame_count null}
{raw_pkt_rate 83792} {vlan_pkts_rate 83792} {total_pkt_rate 83792} {pkt_count 2818582} {ip_pkts
2818582}}}}}}} {status 1}

# Detailed statistics for the specified filters
{port1 {{stream {{streamblock1 {{rx {{0 {{misinserted_pkts 0} {total_pkt_bytes 65037824}
{prbs_bit_errors 0} {ipv4_outer_present 0} {min_delay 16.74} {ipv6_outer_present 0}
{max_delay 15251.74} {avg_delay 60.17} {duplicate_pkts 0} {out_of_sequence_pkts 0}
{total_pkts 508108} {dropped_pkts 83466} {first_tstamp 0} {udp_present 0} {total_pkt_bit_rate 0}
{ipv4_present 1} {min_pkt_length 128} {last_tstamp 0} {total_pkt_rate 0} {ipv6_present 0}
{max_pkt_length 128} {rx_port_handle_list port2} {rx_port_list 10.109.127.147/1/1} {rx_port
{10.109.127.147-1-1 //10.109.127.147/1/1}} {tcp_present 0} {rx_sig_count 508108} {rx_sig_rate 0}
{dropped_pkts_percent 14.1091393469}}}}} {tx {{0 {{total_pkt_bytes 75721472} {total_pkt_rate 0}
{total_pkts 591574} {ipv4_outer_present 0} {udp_present 0} {ipv6_present 0} {total_pkt_bit_rate 0}
{ipv6_outer_present 0} {tcp_present 0} {ipv4_present 1}}}}}}}}}}} {port2 {{stream {{streamblock2
{{rx {{0 {{misinserted_pkts 0} {total_pkt_bytes 85939328} {prbs_bit_errors 0} {ipv4_outer_present 0}
{min_delay -20.59} {ipv6_outer_present 0} {max_delay 16866.87} {avg_delay 30.601} {duplicate_pkts 0}
{out_of_sequence_pkts 0} {total_pkts 671401} {dropped_pkts 64} {first_tstamp 0} {udp_present 0}
{total_pkt_bit_rate 0} {ipv4_present 1} {min_pkt_length 128} {last_tstamp 0} {total_pkt_rate 0}
{ipv6_present 0} {max_pkt_length 128} {rx_port_handle_list port1} {rx_port_list 10.109.127.133/1/1}
{rx_port {10.109.127.133-1-1 //10.109.127.133/1/1}} {tcp_present 0} {rx_sig_count 671401}
{rx_sig_rate 0} {dropped_pkts_percent 0.00953139776459}}}}} {tx {{0 {{total_pkt_bytes 85947520}
{total_pkt_rate 0} {total_pkts 671465} {ipv4_outer_present 0} {udp_present 0} {ipv6_present 0}
{total_pkt_bit_rate 0} {ipv6_outer_present 0} {tcp_present 0} {ipv4_present 1}}}}}}}}}}} {status 1}

The following example retrieves statistics based on the filters specified in the sth::traffic_control function:

# Set filters
set traffic_ctrl_ret [::sth::traffic_control -port_handle "$port2"\
                        -action run\
                        -get "vlan_cfi_inner vlan_id_inner vlan_cfi vlan_id"]

# Return aggregate statistics
set agg_1 [sth::traffic_stats -mode aggregate -port_handle "$port1 $port2"]

Sample Output:

# Aggregate statistics
{port2 {{aggregate {{rx {{total_pkt_bytes 505839050} {undersize_count 0}
{oversize_rate 0} {fcoe_frame_rate 0} {udp_pkts 0} {tcp_checksum_errors 0}
{total_pkts 3951869} {pfc_frame_rate null} {oversize_count 0} {fcoe_frame_count
0} {tcp_pkts 0} {pkt_bit_rate 84782360} {raw_pkt_count 3951869} {vlan_pkts_count
3951868} {pkt_byte_count 505839050} {pkt_rate 82795} {pfc_frame_count null}
{undersize_rate 0} {vlan_pkts_rate 82795} {total_pkt_rate 82795} {pkt_count 3951866}
{ip_pkts 3951867} {vlan_cfi_inner {{1 {{count 3836528} {rate_pps 82176} {rate_bps
84148128}}}}} {vlan_inner {{100 {{count 3836528} {rate_pps 82176} {rate_bps 84148128}
}}}} {cfi {{0 {{count 3836528} {rate_pps 82176} {rate_bps 84148128}}}}} {vlan {{1234
{{count 3836528} {rate_pps 82176} {rate_bps 84148128}}}}} {qos {{0 {{ipv4_pkts 3951867}
{rx_ipv4_frame_rate 82781} {diffserv {Default - DSCP 0}} {ipv6_pkts 1} {Ecn Not-ECT}
{ip_precedence {0 - Routine}} {rx_ipv6_frame_rate 0} {qos_binary 00000000b}}}}}}} {tx
{{total_pkt_bytes 431198976} {total_pkts 3368743} {raw_pkt_count 3368743} {pkt_bit_rate
80369232} {vlan_pkts_count 3368741} {pkt_byte_count 431198976} {pkt_rate 78486}
{pfc_frame_count null} {raw_pkt_rate 78486} {vlan_pkts_rate 78486} {total_pkt_rate 78486}
{pkt_count 3368741} {ip_pkts 3368741}}}}}}} {port1 {{aggregate {{rx {{total_pkt_bytes
517909322} {undersize_count 0} {oversize_rate 0} {fcoe_frame_rate 0} {udp_pkts 0}
{tcp_checksum_errors 0} {total_pkts 4046168} {pfc_frame_rate null} {oversize_count 0}
{fcoe_frame_count 0} {tcp_pkts 0} {pkt_bit_rate 82982656} {raw_pkt_count 4046168}
{vlan_pkts_count 4046167} {pkt_byte_count 517909322} {pkt_rate 81038} {pfc_frame_count null}
{undersize_rate 0} {vlan_pkts_rate 81038} {total_pkt_rate 81038} {pkt_count 4046165} {ip_pkts
4046166} {qos {{0 {{ipv4_pkts 4046344} {rx_ipv4_frame_rate 80645} {diffserv {Default - DSCP 0}}
{ipv6_pkts 1} {Ecn Not-ECT} {ip_precedence {0 - Routine}} {rx_ipv6_frame_rate 0} {qos_binary
00000000b}}}}}}} {tx {{total_pkt_bytes 620132352} {total_pkts 4844785} {raw_pkt_count 4844785}
{pkt_bit_rate 83951376} {vlan_pkts_count 4844783} {pkt_byte_count 620132352} {pkt_rate 81984}
{pfc_frame_count null} {raw_pkt_rate 81984} {vlan_pkts_rate 81984} {total_pkt_rate 81984} {pkt_count
4844783} {ip_pkts 4844783}}}}}}} {status 1}

# Detailed statistics for the specified filters
{port2 {{stream {{streamblock1 {{rx {{0 {{total_pkt_bytes 277951360} {l1_bit_count 2571050080}
{ipv6_outer_present 0} {max_delay 12584.02} {total_pkts 2171495} {dropped_pkts 0} {min_pkt_length 128}
{l1_bit_rate 91433301} {prbs_bit_errors 0} {duplicate_pkts 0} {first_tstamp 0} {udp_present 0}
{total_pkt_rate 77224} {ipv4_outer_present 0} {min_delay -4.99} {rx_sig_count 2171495} {avg_delay 11.972}
{out_of_sequence_pkts 0} {rx_sig_rate 77224} {misinserted_pkt_rate 0} {prbs_bit_error_rate 0} {ipv4_present
1} {ipv6_present 0} {pkt_byte_rate 9884681} {dropped_pkts_percent 0} {out_of_pkt_frame_rate 0}
{misinserted_pkts 0} {total_pkt_bit_rate 79077448} {last_tstamp 0} {Min 128} {max_pkt_length 128} {Max 128}
{tcp_present 0} {rx_port_handle_list port1} {rx_port_list 10.109.113.238/1/1} {rx_port {10.109.113.238-1-1
//10.109.113.238/1/1}}}}}} {tx {{0 {{total_pkt_bytes 274102016} {ipv4_outer_present 0} {l1_bit_count 2535443648}
{ipv6_outer_present 0} {total_pkts 2141422} {udp_present 0} {total_pkt_bit_rate 77286072} {ipv4_present 1}
{elapsed_time 0} {total_pkt_rate 75475} {ipv6_present 0} {l1_bit_rate 89362013} {tcp_present 0}}}}}}}}}}}
{port1 {{stream {{streamblock2 {{rx {{0 {{total_pkt_bytes 406095616} {l1_bit_count 3756384448} {ipv6_outer_present
0} {max_delay 145795.68} {total_pkts 3172622} {dropped_pkts 66315} {min_pkt_length 128} {l1_bit_rate 0}
{prbs_bit_errors 0} {duplicate_pkts 0} {first_tstamp 0} {udp_present 0} {total_pkt_rate 0} {ipv4_outer_present
0} {min_delay 0.13} {rx_sig_count 3172622} {avg_delay 72.4} {out_of_sequence_pkts 0} {rx_sig_rate 0}
{misinserted_pkt_rate 0} {prbs_bit_error_rate 0} {ipv4_present 1} {ipv6_present 0} {pkt_byte_rate 0}
{dropped_pkts_percent 2.047} {out_of_pkt_frame_rate 0} {misinserted_pkts 0} {total_pkt_bit_rate 0} {last_tstamp
0} {Min 128} {max_pkt_length 128} {Max 128} {tcp_present 0} {rx_port_handle_list port2} {rx_port_list
10.109.113.220/1/1} {rx_port {10.109.113.220-1-1 //10.109.113.220/1/1}} {vlan_inner 100} {vlan 1234} {vlan_cfi_inner
1} {cfi 0}}}}} {tx {{0 {{total_pkt_bytes 431150720} {ipv4_outer_present 0} {l1_bit_count 3988144160}
{ipv6_outer_present 0} {total_pkts 3368365} {udp_present 0} {total_pkt_bit_rate 85002080} {ipv4_present 1}
{elapsed_time 0} {total_pkt_rate 83010} {ipv6_present 0} {l1_bit_rate 98283655} {tcp_present 0}}}}}}}}}}} {status 1}

The following example retrieves a desired set of attributes in -mode detailed_streams:

set rtn [sth::traffic_stats \
        -port_handle "$port1 $port2"\
        -mode detailed_streams \
        -properties "tx.tcp_present rx.total_pkt_bytes \
        -streams "$s1 $s2" \
          ]

Sample Output:

{port1 {{stream {{streamblock1 {{rx {{0 {{total_pkt_bytes 662230784}}} {1
{{total_pkt_bytes 662230784}}}}} {tx {{0 {{tcp_present 0}}} {1 {{tcp_present
0}}}}}}}}}}} {port2 {{stream {{streamblock2 {{rx {{0 {{total_pkt_bytes
662230784}}} {1 {{total_pkt_bytes 662230784}}}}} {tx {{0 {{tcp_present 0}}} {1
{{tcp_present 0}}}}}}}}}}} {status 1}

The following example retrieves statistics from Streamblock Result objects:

set traffic_results_ret [::sth::traffic_stats    \
     -port_handle            "$port1 $port2 "\
     -mode                   streams\
     -scale_mode             1\
     -properties             "rx.total_pkt_bytes tx.total_pkt_bytes \
                              tx.total_pkt_bit_rate rx.total_pkt_bit_rate"\
]

Sample Output:

{port1 {{stream {{streamblock1 {{tx {{total_pkt_bytes 29214208}
{total_pkt_bit_rate 1693352}}} {rx {{total_pkt_bytes 29213696}
{total_pkt_bit_rate 1692016}}}}}}}}}
{port2 {{stream {{streamblock2 {{tx {{total_pkt_bytes 548874112}
{total_pkt_bit_rate 36705624}}} {rx {{total_pkt_bytes 360975616}
{total_pkt_bit_rate 24812496}}}}}}}}} {status 1}

#### HLTAPI for Python ####

The following example retrieves traffic results from all streams under the specified ports:

sth.traffic_stats (
             port_handle         = [port_handle[0],port_handle[1]],
             mode                = 'all');

Sample Output:

{'status': '1', 'port2': {'aggregate': {'rx': {'pfc_frame_count': '0',
'pkt_bit_rate': '0', 'pfc_frame_rate': '0', 'pkt_byte_count': '4352',
'tcp_checksum_errors': '0', 'fcoe_frame_count': '0', 'tcp_pkts': '0',
'pkt_rate': '0', 'total_pkt_rate': '0', 'ip_pkts': '0', 'fcoe_frame_rate': '0',
'udp_pkts': '0', 'total_pkt_bytes': '4352', 'total_pkts': '38', 'vlan_pkts_count':
'179292', 'vlan_pkts_rate': '30431', 'pkt_count': '30'}, 'tx': {'pfc_frame_count':
'0', 'pkt_bit_rate': '0', 'pkt_count': '0', 'pkt_rate': '0', 'elapsed_time': '0',
'total_pkt_rate': '0', 'ip_pkts': '0', 'total_pkt_bytes': '512', 'vlan_pkts_rate':
'28987','total_pkts': '8', 'vlan_pkts_count': '84839', 'pkt_byte_count': '512'}},
'stream': {'unknown': {'rx': {'min_pkt_length': '64', 'good_pkt_bit_rate': '0',
'max_pkt_length': '64', 'total_pkt_rate': '0', 'total_pkt_bytes': '512',
'total_pkts': '8'}}}}, 'port1': {'aggregate': {'rx': {'pfc_frame_count': '0',
'pkt_bit_rate': '0', 'pfc_frame_rate': '0', 'pkt_byte_count': '512',
'tcp_checksum_errors': '0', 'fcoe_frame_count': '0', 'tcp_pkts': '0',
'pkt_rate': '0', 'total_pkt_rate': '0', 'ip_pkts': '0', 'fcoe_frame_rate': '0',
'udp_pkts': '0', 'total_pkt_bytes': '512', 'vlan_pkts_rate': '28987', 'total_pkts':
'8', 'pkt_count': '84839', 'vlan_pkts_count': '84839'}, 'tx': {'pfc_frame_count': '0',
'pkt_bit_rate': '0', 'pkt_count': '30', 'pkt_rate': '0', 'elapsed_time': '0',
'total_pkt_rate': '0', 'ip_pkts': '30', 'total_pkt_bytes': '4352', 'vlan_pkts_count':
'179292', 'vlan_pkts_rate': '30431', 'total_pkts': '38', 'pkt_byte_count': '4352'}},
'stream': {'unknown': {'rx': {'min_pkt_length': '64', 'good_pkt_bit_rate': '0',
'max_pkt_length': '64', 'total_pkt_rate': '0', 'total_pkt_bytes': '512',
'total_pkts': '8'}}, 'block1': {'rx': {'prbs_bit_errors': '0', 'dropped_pkts': '0',
'out_of_sequence_pkts': '0', 'min_pkt_length': '128', 'ipv4_present': '1',
'duplicate_pkts': '0', 'total_pkt_bit_rate': '0', 'max_pkt_length': '128',
'total_pkt_rate': '0', 'misinserted_pkts': '0', 'prbs_bit_error_rate': '0',
'total_pkts': '30', 'tcp_present': '0', 'pkt_byte_rate': '0', 'avg_delay'::
'0.12', 'ipv6_present': '0', 'last_tstamp': '0', 'Max': '128', 'Min': '128',
'ipv4_outer_present': '0', 'max_delay': '0.12', '_port': '10.61.44.2-6-4 //6/4',
'ipv6_outer_present': '0', 'udp_present': '0', 'total_pkt_bytes': '3840',
'out_of_pkt_frame_rate': '0', 'first_tstamp': '0', 'min_delay': '0.12',
'misinserted_pkt_rate': '0'}, 'tx': {'ipv4_present': '1', 'ipv6_present': '0',
'total_pkt_bit_rate': '0', 'elapsed_time': '0', 'total_pkt_rate': '0',
'total_pkts': '30', 'ipv6_outer_present': '0', 'udp_present': '0',
'total_pkt_bytes': '3840', 'tcp_present': '0', 'ipv4_outer_present': '0'}}}}}

#### HLTAPI for Perl ####

The following example retrieves traffic results from all streams under the specified ports:

my %traffic_results_ret = sth::traffic_stats (
             port_handle         => "$hport[1] $hport[2] ",
             mode                => 'all');

Sample Output:

$VAR1 = 'port2';
$VAR2 = {
          'stream' => {
                        'unknown' => {
                                       'rx' => {
                                                 'total_pkt_rate' => '0',
                                                 'min_pkt_length' => '64',
                                                 'total_pkts' => '8',
                                                 'total_pkt_bytes' => '512',
                                                 'max_pkt_length' => '64',
                                                 'good_pkt_bit_rate' => '0'
                                               }
                                     }
                      },
          'aggregate' => {
                           'tx' => {
                                     'pkt_bit_rate' => '0',
                                     'total_pkts' => '8',
                                     'elapsed_time' => '0',
                                     'total_pkt_rate' => '0',
                                     'ip_pkts' => '0',
                                     'pkt_rate' => '0',
                                     'total_pkt_bytes' => '512',
                                     'pkt_count' => '0',
                                     'pkt_byte_count' => '512',
                                     'pfc_frame_count' => '0'
                                   },
                           'rx' => {
                                     'pkt_bit_rate' => '0',
                                     'tcp_pkts' => '0',
                                     'total_pkts' => '38',
                                     'tcp_checksum_errors' => '0',
                                     'pfc_frame_rate' => '0',
                                     'fcoe_frame_rate' => '0',
                                     'fcoe_frame_count' => '0',
                                     'total_pkt_rate' => '0',
                                     'ip_pkts' => '0',
                                     'pkt_rate' => '0',
                                     'total_pkt_bytes' => '4352',
                                     'pkt_count' => '30',
                                     'pfc_frame_count' => '0',
                                     'pkt_byte_count' => '4352',
                                     'udp_pkts' => '0'
                                   }
                         }
        };
$VAR3 = 'status';
$VAR4 = '1';
        ...
  1. Do not reset the analyzer (if the stream statistics are Mandatory . because this will clear the filters.
  2. Elapsed time is returned only if the analyzer is receiving any data.

End of Procedure Header

sth::drv_stats

Purpose

Spirent Extension (for Spirent HLTAPI only).

This function is a Spirent Extension to return the statistics for the test using Dynamic Result View (DRV). DRV allows you to define custom results view properties that are based on pre-defined counters and/or configuration parameters. Custom properties are displayed in the results view.

Synopsis

Note

M indicates that the argument is Mandatory .

sth::drv_stats
    [-drv_name <string>]
    [-disable_autogroup {true | false}]
    [-force_load {1|0}]
    [-query_from <object_list>]
    [-group_by <condition_list>]
    [-handle <handle>]
    [-properties <predefined_ID_list>]
    [-size <integer>]
    [-sort_by <properties_list>]
    [-drv_xml <drv_xml_file_name>]
    [-where <condition_list>]
    [-unsubscribe_result_view {true | false}]

Arguments

-disable_autogroup

Determines whether to turn off automatic grouping in the results display. Possible values are true and false. When it is set to true, automatic grouping will be turned off. The default value is false.

-drv_xml

The name of the saved XML file. You can save the DRV configuration file from the Spirent TestCenter GUI and use it in the script. If you specify -drv_xml, there is no need to specify other arguments in this function.

-drv_name

The name of the dynamic result view. The default value is custom_drv.

-force_load

Determines whether to re-subscribe to the results view according to parameter changes such as port and size. Possible values are true and false. The default is false. When -force_load is set to false, the related parameter changes will not take effect.

-query_from

A list of objects to indicate the scope of results. All the objects in the list must belong to the same type.

-group_by

A list of conditions to indicate how the results will be grouped. This argument is only valid for configuration properties specified by -properties.

-handle

The handle of the dynamic result view returned from the procedure. You must specify -handle when you want to refresh the DRV results.

-properties

A list of property names to indicate the target properties to view. You can get the name of the properties on the Spirent TestCenter GUI. For example, Streamblock.RxFrameCount and Streamblock.TxFrameCount. See Appendix C: Spirent TestCenter Properties Available for DRV for a full list of the available properties.

-size

The maximum number of result records allowed to be returned. The default value is 50.

-sort_by

A list of properties to indicate the order of results. Each property will be in DESC (descending) or ASC (ascending) order. See the example below:

-sort_by "{Streamblock.RxFrameCount DESC}"

This argument is only valid for properties specified by -properties.

-where

A list of conditions to indicate the filter for the result. The supported operators are relational operators (>, >=, !=, =, <, and <=) and logic operators (AND and OR). The condition pattern is:

<property> <condition sign> <value>
<value> could be a specified integer value or another property.

For example, -where “Streamblock.RxFrameCount > 0”. This argument is only valid for properties specified by -properties.

-unsubscribe_result_view

Determines whether to unsubscribe from the DRV results view. Possible values are true and false. When set to true, it unsubscribes from the DRV results view. The default value is false

Arguments Unsupported by Save as HLTAPI

This function is currently not 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

log             An error message (if the operation failed)


handle          The DRV handle, which can be used to create a Comma-Separated
                Values (CSV) result file or refresh the DRV results

result_count       The number of the results

A keyed list of the results

Description

The sth::drv_stats function returns the requested data for specific properties 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, with property names as keys. For readability purposes, the dot delimiter within each property is removed in the keyed list. Use the TclX function keylget to retrieve data from the keyed list.

Besides the DRV configuration with Spirent HLTAPI arguments, you can also use a saved XML configuration file of DRV in the script by specifying -drv_xml. If you do so, there is no need to specify other arguments in this function.

The key values to access the data returned from the drv_stats function are:

status              Retrieves a value indicating the success (1) or failure
                    (0) of the operation.

log                 Retrieves a message describing the last error that occurred
                    during the operation. If the operation was
                    successful - {status 1} - the log value is null.

result_count        The number of the results

<item$i>.<property-key>

<item$i>        The entry number starting from 0
<property-key>  The property keyed list that is embedded in the primary keyed
                list returned by this function

Examples

To retrieve specified properties from port objects:

set drv_stats [::sth::drv_stats        \
        -query_from        "$port1 $port2" \
        -drv_name    "drv1"\
        -properties  "Port.Name Port.RxTotalFrameCount Port.TxTotalFrameCount"\
        -group_by    "Port.Name"\

Sample Output:

{result_count 2} {item0 {{PortName {10.62.224.8-1-1 //1/1}}
{PortRxTotalFrameCount 3185148} {PortTxTotalFrameCount 76826}}} {item1
{{PortName {10.62.2 24.8-1-2 //1/2}} {PortRxTotalFrameCount 3253222}
{PortTxTotalFrameCount 130984}}} {handle dynamicresultview1} {status 1}

To retrieve specified properties from streamblock objects:

set drv_stats [::sth::drv_stats   \
      -query_from       "$str1 $str2 $str3 $str4"\
      -drv_name   "drv2"\
      -properties "Streamblock.PortName Streamblock.Name\
                  Streamblock.RxFrameCount Streamblock.TxFrameCount"\
      -where      "Streamblock.RxFrameCount != Streamblock.TxFrameCount"\
  ]

Sample Output:

{result_count 4} {item0 {{StreamblockPortName {10.62.224.8-1-1 //1/1}}
{StreamblockName {StreamBlock 1}} {StreamblockRxFrameCount 154211}
{Streamblock TxFrameCount 108613}}} {item1 {{StreamblockPortName
{10.62.224.8-1-1 //1/1}} {StreamblockName {StreamBlock 3}}
{StreamblockRxFrameCount 148172} {Strea mblockTxFrameCount 108613}}}
{item2 {{StreamblockPortName {10.62.224.8-1-2//1/2}}
{StreamblockName {StreamBlock 2}} {StreamblockRxFrameCount 176701}
{StreamblockTxFrameCount 156804}}} {item3
{{StreamblockPortName {10.62.224.8-1-2
//1/2}} {StreamblockName {StreamBlock 4}} {StreamblockRxFrameCount 17 6708}
{StreamblockTxFrameCount 156808}}} {handle dynamicresultview2} {status 1}

To refresh the DRV results:

set drv_stats [::sth::drv_stats    \
       -handle     $drv_handle\
          ]

Sample Output:

{result_count 4} {item0 {{StreamblockPortName {10.62.224.8-1-1 //1/1}}
{StreamblockName {StreamBlock 1}} {StreamblockRxFrameCount 368067}
{Streamblock TxFrameCount 306270}}} {item1 {{StreamblockPortName
{10.62.224.8-1-1 //1/1}} {StreamblockName {StreamBlock 3}}
{StreamblockRxFrameCount 362032} {Strea mblockTxFrameCount 306270}}} {item2
{{StreamblockPortName {10.62.224.8-1-2 //1/2}} {StreamblockName {StreamBlock
2}} {StreamblockRxFrameCount 389928} {StreamblockTxFrameCount 358786}}}
{item3 {{StreamblockPortName {10.62.224.8-1-2 //1/2}} {StreamblockName
{StreamBlock 4}} {StreamblockRxFrameCount 38 9935} {StreamblockTxFrameCount
358786}}} {handle dynamicresultview2} {status 1}

The following example uses -sort_by to define the order for the DRV results:

set traffic_results_drv [::sth::drv_stats    \
     -query_from            "$port1 $port2" \
     -drv_name        "drv1" \
     -properties       "Streamblock.RxFrameCount Streamblock.TxFrameCount\
                      Streamblock.Name StreamBlock.StreamCount" \
     -sort_by         "{Streamblock.RxFrameCount DESC} {Streamblock.Name ASC}"\
     -group_by          "Streamblock.Name"\
      ]

Sample Output:

{result_count 4}
{item0 {{StreamblockRxFrameCount 61695} {StreamblockTxFrameCount 61696}
{StreamblockName StreamBlock_1} {StreamBlockStreamCount 10}}}
{item1 {{StreamblockRxFrameCount 61690} {StreamblockTxFrameCount 61690}
{StreamblockName StreamBlock_2} {StreamBlockStreamCount 10}}}
{item2 {{StreamblockRxFrameCount 61690} {StreamblockTxFrameCount 61690}
{StreamblockName StreamBlock_3} {StreamBlockStreamCount 10}}}
{item3 {{StreamblockRxFrameCount 61690} {StreamblockTxFrameCount 61690}
{StreamblockName StreamBlock_4} {StreamBlockStreamCount 10}}} {handle
dynamicresultview1} {status 1}

To use the DRV XML file instead of configuring DRV properties in the script:

set traffic_results_drv [::sth::drv_stats    \
        -drv_xml   "D:/HLTAPI/Test/drv_xml_name.xml" \
    ]

sth::create_csv_file

Purpose

Spirent Extension (for Spirent HLTAPI only).

Saves the port level, stream level, or streamblock level results to a .csv file.

Synopsis

Note

M indicates that the argument is Mandatory .

sth::create_csv_file
    [-result_view_handle <result_view_handle>  M]
    [-column_style {display | property}]
    [-file_name <string>]
    [-write_mode {append | overwrite}]

Arguments

-column_style

Specifies the style for column heading names. Possible values are:

display      Use the GUI display name for column headings

property     Use the property name for column headings

The default value is display.

-file_name

Specifies the name of the result file to be saved. The default value is results.

-result_view_handle

Handle of the result view to export. It can either be a result data set handle or a DRV handle that is returned from the sth::drv_stats function. This argument is Mandatory .

-write_mode

Specifies the result writing mode. Possible values are:

append        Append results to the end of the existing file

overwrite    Overwrite the existing file

The default value is overwrite.

Description

The sth::create_csv_file function saves the port level, stream level, or streamblock level results to a .csv file. You must specify a result view handle using the -result_view_handle argument.

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

log        An error message (if the operation failed)

Examples

To save the specified DRV results to a .csv file:

set create_csv_ret [sth::create_csv_file \
       -result_view_handle $drv_handle \
       -file_name "drv_results"\
       -write_mode overwrite]

Sample Output:

{status 1}