L2TPv3 Functions

sth::l2tpv3_config

Purpose

This is a Spirent Extension created to configure, modify, or delete emulated L2TPv3 sessions or tunnels on the specified test port of a Spirent HLTAPI chassis.

Synopsis

Note

  1. M indicates that the argument is Mandatory .
  2. S indicates the argument is for scaling scenarios.
sth::l2tpv3_config
   [-mode  {create|modify|activate}  M]
   [-port_handle  {port_handle}  M]
   [-handle  {device_handle}]
   [-avp_hide <list of integers>]
   [-connect_rate <1-1000>]
   [-disconnect_rate <1-1000>]
   [-force_lcp_renegotiation {1|0|true|false}]
   [-ipv4_tos <0-255>]
   [-ip_encap  {ipv4|ipv6}]
   [-pseudowire_type {frame_relay|ethernet_vlan|ethernet|hdlc|ppp}]
   [-l2tp_node_type {lac|lns}]
   [-l2_encap {ethernet_ii|ethernet_ii_vlan|ethernet_ii_qinq|atm_snap|atm_vc_mux }]
   [-l2tpv3_src_addr <a.b.c.d> ]
   [-l2tpv3_src_count <1-112> ]
   [-l2tpv3_src_step <a.b.c.d>]
   [-l2tpv3_dst_addr <a.b.c.d> ]
   [-l2tpv3_dst_count <1-112> ]
   [-l2tpv3_dst_step <a.b.c.d>]
   [-l2tpv3_mac_addr <aa:bb:cc:dd:ee:ff>]
   [-l2tpv3_mac_step <aa:bb:cc:dd:ee:ff>]
   [-lcp_proxy_mode {none|authentication|lcponly}]
   [-pseudo_wire_capabilities {frame_relay|ethernet_vlan|ethernet|hdlc|ppp}]
   [-remote_end_id_start <1-65535>]
   [-remote_end_id_step <1-65535>]
   [-rx_window_size <1-65535>]
   [-retry_max <1-255>]
   [-retry_timeout <1-255>]
   [-retry_enable {1|0|true|false}]
   [-session_count <1-65535>]
   [-seq_type {sequential|parallel}]
   [-session_out_standing <2-65535>]
   [-secret {string}]
   [-tun_auth {1|0|true|false}]
   [-tunnel_connect_rate <1-1000>]
   [-tunnel_id_start <1-65535>]
   [-hello_interval <1-1024>]
   [-hello_req {1|0|true|false}]
   [-hostname {host_name}]
   [-num_tunnels <1-32000>]
   [-session_id_start <1-65535>]
   [-use_gateway_as_remote_ipv4addr {1|0|true|false}]
   [-use_gateway_as_remote_ipv6addr {1|0|true|false}]
   [-udp_src_port  <1-65535>]
   [-vlan_id <1-4095>]
   [-vlan_count <1-4095>]
   [-vlan_id_step <0-4095>]
   [-vlan_user_priority <0-7>]
   [-vlan_id_outer <1-4096>]
   [-vlan_count_outer <integer>]
   [-vlan_id_step_outer <0-4095>]
   [-vlan_user_priority_outer <0-7>]
   [-expand {true|false} S]
   [-enable_authentication {true|false}]
   [-remote_ipv6_addr <IPV6>]
   [-remote_ipv4_addr <IPV4>]
   [-tunnels_per_l2tp_node <1-65535>]
   [-tunnel_password <ANY>]
   [-remote_ipv4_addr_step_per_l2tp_node <IPV4>]
   [-remote_ipv6_addr_step_per_l2tp_node <IPV6>]

Arguments

-mode

Specifies the action to perform. This argument is Mandatory . The modes are described below:

create -  Creates one or more emulated host L2TP Access
          Concentrators (LAC) or L2TP Network Servers (LNS)

modify - Changes the configuration for the emulated host
         identified by the -handle argument.

activate - Used for ``Scaling`` scenarios.
           1. Enables L2TPv3 devices and configures L2TPv3 parameters
              for the devices created via the sth::emulation_device_config
              function. This mode requires the value of param_handle
              as the input to the -handle option. Use this mode for
              ``Scaling`` scenarios. Refer to -count and -expand options
              under the ``sth::emulation_L2TPv3_config`` function for more
              information. For this mode, only the following set of
              options are valid::

                enable_authentication
                hostname
                l2tp_node_type
                pseudo_wire_capabilities
                pseudowire_type
                remote_ipv6_addr
                remote_ipv4_addr
                remote_ipv4_addr_step_per_l2tp_node
                remote_ipv6_addr_step_per_l2tp_node
                tunnels_per_l2tp_node
                tunnel_password
                use_gateway_as_remote_ipv4addr
                use_gateway_as_remote_ipv6addr

         2. Creates devices and enables L2TPv3 protocol.
            Requires -port_handle and -block_mode options.
            For this mode, the following options are required/supported
            along with the options specified above::

              -count
              -block_mode
              -block_name_index
              -name
              -vlan_id
              -vlan_outer_id
              -vlan_user_pri
              -vlan_id_count
              -vlan_id_repeatmode
              -vlan_outer_id_count
              -vlan_outer_user_pri
              -vlan_outer_id_repeatmode
              -router_id
              -router_id_step
              -router_id_ipv6
              -router_id_ipv6_step
              -intf_ip_addr
              -intf_ip_addr_step
              -intf_prefix_len
              -gateway_ip_addr
              -gateway_ip_addr_step
              -mac_addr
              -mac_addr_step
              -link_local_ipv6_addr
              -link_local_ipv6_addr_step
              -intf_ipv6_addr
              -intf_ipv6_addr_step
              -intf_ipv6_prefix_len
              -link_local_ipv6_prefix_len
              -gateway_ipv6_addr
              -gateway_ipv6_addr_step
              -mac_addr_step_per_port
              -mac_addr_step_per_vlan
              -ip_step_per_port
              -ip_step_per_vlan
              -ipv6_step_per_vlan
              -ipv6_step_per_port
              -link_local_ipv6_step_per_port
              -link_local_ipv6_step_per_vlan

            .. note:: Please refer to the emulation_device_config documentation.
-port_handle

Specifies the handle of the port on which to create L2TPv3 sessions and tunnels. This argument is Mandatory . This port handle is returned by the sth::connect function.

-handle

Specifies the L2TPv3 session handle to modify. This argument is Mandatory for -mode modify.

-avp_hide

A list of integers corresponding to AVP. The default value is 0.

-connect_rate

Specifies the time interval, in seconds, that Spirent HLTAPI attempts to bring up sessions or connect to tunnels. Possible values range from 1 to 1000. The default value is 100.

-disconnect_rate

Specifies the time interval, in seconds, that Spirent HLTAPI attempts to tear down sessions or disconnect from tunnels. Possible values range from 1 to 1000. The default value is 100.

-hello_interval

Specifies the time interval between sending of hello messages. This argument is available when -hello_req is set to 1. Possible values range from 1 to 65535. The default value is 60.

-hello_req

Enables or disables sending of Hello messages. Possible values are 1 (true) and 0 (false). The default value is 0 .

-hostname

Specifies the name of the host to use during the tunnel setup. The default is server.spirent.com.

-ip_encap

Specifies the IP encapsulation mode. Possible values are ipv4 and ipv6. The default value is ipv4.

-ipv4_tos

IPv4 TOS value. Possible values range from 0 to 255. The default value is 192.

-l2tp_node_type

Specifies whether to create an LNS or LAC device. Possible values are lns and lac. The default value is lac.

-l2_encap

Identifies the type of Layer 2 encapsulation to use for a stream. Possible values are ethernet_ii, ethernet_ii_vlan, ethernet_ii_qinq, atm_snap, and atm_vc_mux.

The ethernet_ii_vlan and ethernet_ii_qinq options support VLAN tagging on Ethernet networks; ethernet_ii does not. The atm_snap and atm_vc_mux options support ATM networks. If you use the -vlan_* arguments to define a VLAN interface, you must set the L2 encapsulation type to ethernet_ii_vlan. If you use the -vlan_outer_* arguments to define a Q-in-Q interface, you must set the L2 encapsulation type to ethernet_ii_qinq. If you use the -vci_* and -vpi_* arguments to define an ATM interface, you must set the L2 encapsulation type to atm_vc_mux or atm_snap.

-l2tpv3_src_addr

Specifies the base IP address to use for the local IP interface on the port. The default value is 192.85.1.3.

-l2tpv3_src_count

Specifies the number of source IP addresses to simulate on the port. Possible values range from 1 to 65535.

When the -mode argument is set to lac, the value of this option represents the number of the L2TPv3 clients; then if the value of -l2_encap is set to ethernet_ii_vlan, the value of this option must be divided evenly by the value of -vlan_count. If the value of -l2_encap is set to ethernet_ii_qinq, the value of this option must be divided evenly by the least common multiple of vlan_count and vlan_count_outer. Likewise, if the value of -l2_encap is set to atm_snap or atm_vc_mux, then the value of this option must be divided evenly by the least common multiple of vpi_count and vci_count.

-l2tpv3_src_step

Specifies the step value for the L2TPv3 source address to generate multiple source addresses. The value must be in IPv4 format. The default is 0.0.0.1.

-l2tpv3_dst_addr

Specifies the base destination IP address to use for setting up tunnels. The default value is 192.85.1.3.

-l2tpv3_dst_count

Specifies the number of destination IP addresses to simulate on the port. Possible values range from 1 to 65535. When the -mode argument is set to lns, the value of this option represents the number of the L2TPv3 client. If -l2_encap is set to ethernet_ii_vlan, then the value of this option must be divided evenly by the value of -vlan_count. If the value of -l2_encap is set to ethernet_ii_qinq, then the value of this option must be divided evenly by the least common multiple of vlan_count and vlan_count_outer. Likewise, if the value of -l2_encap is set to atm_snap or atm_vc_mux, then the value of this option must be divided evenly by the least common multiple of vpi_count and vci_count.

-l2tpv3_dst_step

Specifies the step value by which to generate multiple L2TPv3 destination addresses. The value must be in IPv4 format. The default value is 0.0.0.1 .

-l2tpv3_mac_addr

Specifies the MAC address of the L2TPv3 device (LNS or LAC). The default value is 00:10:94:00:00:02.

-l2tpv3_mac_step

Specifies the step value by which to generate MAC addresses for multiple L2TPv3 devices. The default value is 00:00:00:00:00:01.

-num_tunnels

Specifies the number of tunnels to configure on the port. Possible values range from 1 to 32000. The default value is 1.

-pseudo_wire_capabilities

Specifies one or more pseudowire capabilities. Use “|” to specify multiple values. Possible values are

frame_relay         Frame Relay
ethernet_vlan       Ethernet VLAN
ethernet            Ethernet
hdlc                HDLC
ppp                 PPP

The default value is ethernet.

-pseudowire_type

Specifies the pseudowire type for L2TPv3 sessions. Possible values are:

frame_relay         Frame Relay
ethernet_vlan       Ethernet VLAN
ethernet            Ethernet
hdlc                HDLC
ppp                 PPP

The default value is ethernet.

-remote_end_id_step

Specifies the step value by which to generate subsequent remote End IDs for the L2TPv3 session block. Possible values range from 1 to 65535. The default value is 1.

-retry_max

Specifies the maximum number of retry attempts to createing tunnels. Possible values range from 1 to 255. The default value is 1.

-retry_timeout

Specifies the initial timeout value, in seconds, for the first retry to create tunnels. Possible values range from 1 to 255. The default value is 1.

-retry_enable

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

-rx_window_size

Specifies the maximum number of outstanding control messages. Possible values range from 1 to 65535. The default value is 1.

-secret

The password for the outgoing tunnel. The default value is “spirent” .

-seq_type

Specifies the port-level sequence type that determines in what order tunnels are attempted. Possible values are:

sequential    Attempt tunnels sequentially across host blocks under
              the port

parallel      Attempt tunnels in parallel across host blocks
              under the port

The default value is sequential.

-session_count

Specifies the number of L2TPv3 sessions per each block. Possible values range from 1 to 4294967295. The default value is 1.

-session_out_standing

Specifies the maximum number of outstanding L2TPv3 sessions. Possible values range from 2 to 65535. The default value is 100.

-session_id_start

Specifies the starting session ID to be used as the local call ID. Possible values range from 1 to 65535. The default value is 1.

-tunnel_connect_rate

Specifies the tunnel connection rate, in tunnels per second. Possible values range from 1 to 1000. The default value is 100.

-tunnel_id_start

Specifies the starting tunnel ID to be used as the local tunnel ID. Possible values range from 1 to 65535. The default value is 1.

-tun_auth

Enables or disables tunnel authentication during tunnel setup. Possible values are true (enable) and false (disable). The default value is false.

-remote_end_id_start

Specifies the starting remote end ID. Possible values range from 1 to 65535. The default value is 1.

-force_lcp_renegotiation

When enabled, Spirent HLTAPI will force LCP renegotiation when bringing up the PPPoL2TP session. Possible values are true (enable) and false (disable). The default value is false.

-lcp_proxy_mode

Determines proxy LCP and authentication settings. Possible values are:

none                    None
lcponly                 Proxy LCP
authentication          Proxy LCP and Authentication

The default value is none.

-use_gateway_as_remote_ipv4addr

Once enabled, the gateway IP address will be used as the remote IP address. This argument is available for LAC nodes. Possible values are 1 (true) and 0 (false). The default value is 1.

-use_gateway_as_remote_ipv6addr

Once enabled, the gateway IPv6 address will be used as the remote IPv6 address. This argument is available for LAC nodes. Possible values are 1 (true) and 0 (false). The default value is 1 .

-udp_src_port

Specifies the source UDP port to use for setting up tunnels. Possible values range from 1 to 65535. The default value is 1701.

-vlan_count

Sets the number of VLAN IDs to use when generating L2TPv3 sessions or tunnels. Possible values range from 1 to 4095. The default is 1.

-vlan_id

Specifies the VLAN ID of the first VLAN sub-interface. Possible values range from 1 to 4095. The default value is 1.

-vlan_id_step

Specifies the step value by which to increment the VLAN ID for subsequent packets. Possible values range from 0 to 4095. The default value is 0.

-vlan_user_priority

Specifies the VLAN user priority assigned to the emulated L2TPv3 nodes. Possible values range from 0 to 7. The default value is 0.

-vlan_count_outer

Specifies the number of outer VLAN IDs to use when generating L2TPv3 clients. Possible values range from 0 to 4096. The default value is 1.

-vlan_id_outer

Specifies the outer VLAN ID of the VLAN sub-interface. Possible values range from 1 to 4096. The default value is 1. When you use -vlan_id_outer, you must specify -vlan_id.

-vlan_id_step_outer

Specifies the step value by which to increment the outer VLAN ID for subsequent packets. Possible values range from 0 to 4095. You must specify this step when you specify the -qinq_incr_mode argument.

-vlan_user_priority_outer

Specifies the VLAN priority to assign to the outer header. Possible values range from 0 to 7. The default value is 0.

-expand

Spirent Extension (for Spirent HLTAPI only).

Determines whether to expand the specified L2TPv3 device parameters into emulated L2TPv3 device objects. It is used in Scaling test scenarios.

When set to true, a list of emulated device handles (handle_list) with enabled L2TPv3 device configurations is created.

When set to false, only L2TPv3 parameters are configured with no handle returned.

-remote_ipv4_addr_step_per_l2tp_node

Specifies the remote IPv4 address step per L2TP node. The default is 0.0.0.0

-enable_authentication

Specifies to enable/disable authentication. Possible values are true and false. The default is false.

-remote_ipv6_addr

Specifies the remote IPv6 Address. The default is ::

-remote_ipv4_addr

Specifies the remote IPv6 Address. The default is 0.0.0.0

-tunnels_per_l2tp_node

Specifies the tunnels per L2TP node. The default is 1

-tunnel_password

Specifies the tunnel password. The default is spirent

-remote_ipv6_addr_step_per_l2tp_node

Specifies the remote IPv6 address step per L2TP node. The default is ::

Arguments Unsupported by Save as HLTAPI

None

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):

handles            A list of L2TPv3 handles that identify the sessions and
                    tunnels created by the ``sth::l2tp_config`` function

handle_list        The list of emulated device handles with enabled L2TPv3 configuration
                    when expand is set true.

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

log                An error message (if the operation failed)

Description

The sth::l2tp_config function creates or modifies an emulated L2TPv3 session or tunnel on the specified test port of a Spirent HLTAPI chassis. Use the -mode argument to specify the action to perform, and the -l2tp_node_type argument to specify whether the port will be acting as an LAC or LNS.

If the operation fails, Spirent HLTAPI returns an error message. For example, if you try to configure a non-existing session handle using the modify mode, an error message is returned.

Examples

The following example creates an LAC:

set returnedString [sth::l2tpv3_config   \
         -port_handle        $hltLACPort  \
         -l2tp_node_type     lac \
         -mode             create \
         -l2tpv3_src_addr      5.5.5.60 \
         -l2tpv3_dst_addr      5.5.5.50 \
         -tun_auth            1 \
         -hostname           spirent \
         -hostname_wc        1 \
         -secret              spirent_1]
keylget returnedString handles LAC

Sample Output:

{handles host3} {handle host3} {status 1}

The following example modifies the L2TPv3 LAC specified by -handles:

set device_ret0 [sth::l2tpv3_config\
          -mode                        modify \
          -handle                      $lac_handle \
          -avp_hide                    {9 4 14}\
          -hello_interval               60\
          -hello_req                    1\
          -seq_type                                   parallel \
          -pseudo_wire_capabilities     ethernet \
          -num_tunnels                 2 \
          ]

Sample Output:

{handles host3} {handle host3} {status 1}

The following example uses the function in Scaling mode (-mode activate) with -port_handle and -block_mode:

set l2tpv3_ret [sth::l2tpv3_config\
            -mode                                            activate \
            -port_handle                                     $port1\
            -count                                           2 \
            -block_mode                                      ONE_DEVICE_PER_BLOCK\
            -block_name_index                                1\
            -vlan_id                                         444 \
            -vlan_outer_id                                   333 \
            -router_id                                       11.111.11.11 \
            -router_id_step                                  0.0.0.2\
            -mac_addr                                        00:11:11:11:11:11 \
            -mac_addr_step                                   00:00:00:00:00:02 \
            -mac_addr_step_per_port                          00:00:00:00:01:01 \
            -mac_addr_step_per_vlan                          {"" 00:00:00:00:00:01} \
            -ip_step_per_port                                0.0.0.5 \
            -ip_step_per_vlan                                {0.1.0.0 0.0.1.1} \
            -intf_ipv6_prefix_len                            65 \
            -ipv6_step_per_vlan                              {::1 ::4} \
            -ipv6_step_per_port                              ::9 \
            -intf_prefix_len                                 22 \
            -link_local_ipv6_step_per_port                   ::4 \
            -link_local_ipv6_step_per_vlan                   {::1 ::2} \
            -name                                            DEVICE_BLOCK_L2TPV3 \
            -vlan_user_pri                                   3 \
            -vlan_id_count                                   2 \
            -vlan_id_repeatmode                              REPEAT_ACROSS_PORT\
            -vlan_outer_id_count                             1 \
            -vlan_outer_user_pri                             4 \
            -vlan_outer_id_repeatmode                        REPEAT_ACROSS_PORT\
            -router_id_ipv6                                  0101::011 \
            -router_id_ipv6_step                             ::1 \
            -intf_ip_addr                                    11.111.11.11 \
            -gateway_ip_addr                                 11.111.11.1 \
            -link_local_ipv6_addr                            2000::2 \
            -link_local_ipv6_addr_step                        ::1 \
            -intf_ipv6_addr                                  1111::3e9 \
            -intf_ipv6_addr_step                             ::1 \
            -link_local_ipv6_prefix_len                      64 \
            -gateway_ipv6_addr                               1111::1 \
            -gateway_ipv6_addr_step                          ::1 \
            -expand                                          true \
            -enable_authentication                           true\
            -hostname                                        l2tp\
            -l2tp_node_type                                  lac\
            -pseudo_wire_capabilities                        ethernet\
            -pseudowire_type                                 ethernet\
            -remote_ipv6_addr                                2000::11\
            -remote_ipv4_addr                                10.1.1.1\
            -remote_ipv4_addr_step_per_l2tp_node             0.0.0.1\
            -remote_ipv6_addr_step_per_l2tp_node             ::\
            -tunnels_per_l2tp_node                          1\
            -tunnel_password                                spirent\
            -use_gateway_as_remote_ipv4addr                 0\
            -use_gateway_as_remote_ipv6addr                 0]

Sample Output:

{param_handle emulateddevicegenparams1} {status 1} {handle_list {emulateddevice1
emulateddevice2 emulateddevice3 emulateddevice4 emulateddevice5 emulateddevice6
emulateddevice7 emulateddevice8}} {handle {}} {handles {emulateddevice1
emulateddevice2 emulateddevice3 emulateddevice4 emulateddevice5 emulateddevice6
emulateddevice7 emulateddevice8}}

End of Procedure Header

sth::l2tpv3_control

Purpose

A Spirent Extension created to start, pause, resume, or tear down the L2TPv3 sessions or tunnels

Synopsis

Note

M indicates that the argument is Mandatory .

sth::l2tpv3_control
   [-handle <l2tpv3_handle_list>  M]
   [-action {connect|disconnect|pause|resume}  M]

Arguments

-handle

Specifies a list of handles of L2TPv3 sessions or tunnels to be controlled. This argument is Mandatory .

-mode

Specifies the action to be taken. This argument is mandatory. Possible values are:

connect       Starts the configured sessions and tunnels
disconnect    Tears down established sessions and tunnels
pause         Pauses all sessions
resume        Resumes all sessions

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)

Description

The sth::l2tp_control function starts, pauses, resumes, or tears down the L2TPv3 sessions or tunnels. When you call the sth::l2tp_control function, you specify a handle. Spirent HLTAPI applies the specified action to the specified L2TPv3 session or tunnel.

Examples

The following example starts the specified LNS:

set returnedString [sth::l2tpv3_control -handle $LNS -action connect]

Sample Output:

{status 1}

End of Procedure Header

sth::l2tpv3_stats

Purpose

A Spirent Extension to retrieve information about the L2TPv3 sessions or tunnels configured on the specified test port.

Synopsis

Note

M indicates that the argument is Mandatory .

sth::l2tpv3_stats
    [-handle <l2tpv3_handle>  M]
    [-mode {aggregate|session|tunnel}   M]

Arguments

-handle

The L2TPv3 session or tunnel for which you want information. This argument is Mandatory .

-mode

Specifies the kind of information you want to see. Possible values are:

aggregate  Returns transmitted and received statistics for
           all configured L2TPv3 sessions associated with the
           specified port and a status value (1 for success).

session    Returns transmitted and received statistics for only
           the L2TPv3 sessions specified with -handle.

tunnel    Returns transmitted and received statistics for only
          the L2TPv3 tunnels specified by -handle.

Note

Session statistics are only valid after the L2TP sessions are established. They will not be returned nor accessible until you are connected.

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)

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

*** Aggregate stats ***
aggregate.atm_mode......Specifies whether the port is in ATM mode
                                 (currently not supported)
aggregate.avg_setup_time........Average time :mandatory:`Mandatory` to bring a session
                                 up
aggregate.chap_auth_rsp_tx......Number of CHAP messages sent
aggregate.chap_auth_chal_rx.....The number of CHAP messages received*
aggregate.chap_auth_succ_rx......The number of CHAP messages received*
aggregate.chap_auth_fail_rx......The number of CHAP messages received*

aggregate.connecting............PPPoE clients that are connecting. If
                                 aggregate.connecting is 1, then there are
                                 sessions connecting on the port.

aggregate.connected.............All sessions that have finished with NCP
                                 negotiation. If aggregate.connected is 1,
                                 then PPPoX has finished attempting all
                                 configured PPPoX sessions.

aggregate.idle..................The sessions have been disconnected or
                                 terminated. If aggregate.idle is 1, then
                                 the port state is idle.

aggregate.disconnecting.........If aggregate.disconnecting is 1, then L2TP
                                 sessions are disconnecting.

aggregate.connect_attempts......Number of sessions attempted
aggregate.connect_success.......Number of sessions that connected
                                 successfully
aggregate.disconnect_failed.....Number of sessions that failed to
                                 disconnect
aggregate.disconnect_success....Number of sessions that disconnected
                                 successfully
aggregate.echo_req_rx...........Number of Echo Requests received
aggregate.echo_rsp_tx...........Number of Echo Replies sent

aggregate.lcp_cfg_req_rx........Number of LCP Configure-Request messages
                                 received
aggregate.lcp_cfg_req_tx........Number of LCP Configure-Request messages
                                 sent
aggregate.lcp_cfg_rej_rx........Number of LCP Configure-Reject messages
                                 received
aggregate.lcp_cfg_rej_tx........Number of LCP Configure-Reject messages
                                 sent
aggregate.lcp_cfg_ack_rx........Number of LCP Configure-ACK messages
                                 received
aggregate.lcp_cfg_ack_tx........Number of LCP Configure-ACK messages
                                 sent
aggregate.lcp_cfg_nak_rx........Number of LCP Configure-NAK messages
                                 received
aggregate.lcp_cfg_nak_tx........Number of LCP Configure-NAK messages sent
aggregate.max_setup_time........Maximum time to bring a session up
aggregate.min_setup_time........Minimum time to bring a session up
aggregate.num_sessions..........Number of sessions configured
aggregate.sessions_up...........Number of sessions currently active
aggregate.sessions_down.........Number of sessions that failed to connect
aggregate.success_setup_rate....Number of sessions per second that have
                                 been established
aggregate.term_ack_rx...........Number of LCP Terminate-ACK messages
                                 received
aggregate.term_ack_tx...........Number of LCP Terminate-ACK messages
                                 sent
aggregate.term_req_rx...........Number of LCP Terminate-Request messages
                                 received
aggregate.term_req_tx...........Number of LCP Terminate-Request messages
                                 sent
aggregate.zlb_tx............... Number of Zero-Length Body (ZLB) Messages sent.
aggregate.sccrq_tx..............Number of Start-Control-Connection-Request
                                 (SCCRQ) packets transmitted.
aggregate.scccn_tx..............Number of Start-Control-Connection-
                                 Connected (SCCCN) packets transmitted.
aggregate.sccrp_tx..............Number of Start-Control-Connection-Reply
                                 (SCCRP) packets transmitted.
aggregate.stopccn_tx............Number of Stop-Control-Connection-
                                 Notification (StopCCN)
                                 packets transmitted.
aggregate.hello_tx..............Number of Hello packets transmitted
aggregate.icrq_tx...............Number of Incoming-Call-Request (ICRQ)
                                 packets transmitted
aggregate.icrp_tx...............Number of Incoming-Call-Reply (ICRP)
                                 packets transmitted
aggregate.iccn_tx...............Number of Incoming-Call-Connected (ICCN)
                                 packets transmitted
aggregate.cdn_tx................Number of Call-Disconnect-Notify (CDN)
                                 packets transmitted
aggregate.wen_tx............... Number of WAN-Error-Notify (WEN) packets
                                 transmitted
aggregate.sli_tx................Number of Set-Link-Info (SLI) packets
                                 transmitted
aggregate.zlb_rx................ Number of Zero-Length Body (ZLB) Messages
                               received
aggregate.sccrp_rx..............Number of Start-Control-Connection-Reply
                                 (SCCRP) packets received
aggregate.scccn_rx..............Number of Start-Control-Connection-
                                 Connected (SCCCN) packets received
aggregate.sccrq_rx..............Number of Start-Control-Connection-Request
                                 (SCCRQ) packets received
aggregate.stopccn_rx............Number of Stop-Control-Connection-
                                 Notification (StopCCN) packets received
aggregate.hello_rx..............Number of Hello packets received
aggregate.icrq_rx...............Number of Incoming-Call-Request (ICRQ)
                                 packets received
aggregate.icrp_rx...............Number of Incoming-Call-Reply (ICRP)
                                 packets received.
aggregate.iccn_rx...............Number of Incoming-Call-Connected (ICCN)
                                 packets received
aggregate.cdn_rx................Number of Call-Disconnect-Notify (CDN)
                                 packets received
aggregate.wen_rx................Number of WAN-Error-Notify (WEN) packets
                                 received.
aggregate.sli_rx................Number of Set-Link-Info (SLI) packets
                                 received.
aggregate.tx_pkt_acked......... Number of ACK packets received.
aggregate.tunnels_up........... Number of tunnels on this port that are in
                                 the established state

The following keys are returned when you specify -mode session:

session.<session ID>.icrq_tx....
                                 Number of Incoming-Call-Request (ICRQ)
                                 packets transmitted
session.<session ID>.icrp_tx.....
                                 Number of Incoming-Call-Reply (ICRP)
                                 packets transmitted
session.<session ID>.iccn_tx...............
                                 Number of Incoming-Call-Connected (ICCN)
                                 packets transmitted
session.<session ID>.cdn_tx................
                                 Number of Call-Disconnect-Notify (CDN)
                                 packets transmitted
session.<session ID>.icrq_rx...............
                                 Number of Incoming-Call-Request (ICRQ)
                                 packets received
session.<session ID>.icrp_rx...............
                                 Number of Incoming-Call-Reply (ICRP)
                                 packets received
session.<session ID>.iccn_rx...............
                                 Number of Incoming-Call-Connected (ICCN)
                                 packets received
session.<session ID>.cdn_rx................
                                 Number of Call-Disconnect-Notify (CDN)
                                 packets received

The following keys are returned when you specify -mode tunnel:

tunnel.<tunnel ID>.scccn_tx.....
                                 Number of Start-Control-Connection-
                                 Connected (SCCCN) packets transmitted.
tunnel.<tunnel ID>.sccrp_tx.....
                                 Number of Start-Control-Connection-Reply
                                 (SCCRP) packets transmitted.
tunnel.<tunnel ID>.stopccn_tx............
                                 Number of Stop-Control-Connection-
                                 Notification (StopCCN) packets transmitted.
tunnel.<tunnel ID>.hello_tx..............
                                 Number of Hello packets transmitted
tunnel.<tunnel ID>.wen_tx...............
                                 Number of WAN-Error-Notify (WEN) packets
                                 transmitted
tunnel.<tunnel ID>.sli_tx................
                                 Number of Set-Link-Info (SLI) packets
                                 transmitted
tunnel.<tunnel ID>.sccrp_rx..............
                                 Number of Start-Control-Connection-Reply
                                 (SCCRP) packets received
tunnel.<tunnel ID>.scccn_rx..............
                                 Number of Start-Control-Connection-
                                 Connected (SCCCN) packets received
tunnel.<tunnel ID>.sccrq_rx..............
                                 Number of Start-Control-Connection-Request
                                 (SCCRQ) packets received
tunnel.<tunnel ID>.stopccn_rx............
                                 Number of Stop-Control-Connection-
                                 Notification (StopCCN) packets received
tunnel.<tunnel ID>.hello_rx..............
                                 Number of Hello packets received
tunnel.<tunnel ID>.wen_rx................
                                 Number of WAN-Error-Notify (WEN) packets
                                 received.
tunnel.<tunnel ID>.sli_rx................
                                 Number of Set-Link-Info (SLI) packets
                                 received.

tunnel.<tunnel ID>.tx_pkt_acked..Number of ACK packets received.

Description

Use the sth::l2tpv3_stats function to specify statistics retrieval mode as either aggregate for all configured sessions, on a per session (call) basis, or on a per tunnel basis. When specifying per session stats, the session ID is the local call assigned by the local node. Similarly, when specifying per tunnel stats, the tunnel ID is the local tunnel ID assigned by the local node.

Examples

The following example returns aggregate results:

sth::l2tpv3_stats -handle $lnsSessionHandle -mode aggregate

Output:

{procName l2tpv3_stats} {status 1} {handles host1} {aggregate {{iccn_tx 0}
{sli_rx 0} {zlb_rx 0} {icrp_tx 0} {scccn_rx 0} {sli_tx 0} {zlb_tx 0} {sccrp_rx
0} {hello_rx 0} {scccn_tx 0} {cdn_rx 0} {sccrp_tx 0} {hello_tx 0} {icrq_rx 0}
{cdn_tx 0} {tx_pkt_acked 0} {icrq_tx 0} {wen_rx 0} {stopccn_rx 0} {s ccrq_rx 0}
{wen_tx 0} {stopccn_tx 0} {iccn_rx 0} {icrp_rx 0} {sccrq_tx 0} {connecting 0}
{connected 0} {disconnecting 0} {idle 0}}}