L7 Latency Thresholding

The L7 latency thresholding feature in HDX Insight actively detects end-to-end network latency issues at the application level and takes proactive actions. The L7 latency thresholding feature performs live latency monitoring to detect the spikes and sends out notifications to the Insight Center if the latency exceeds the minimum observed latency.

Previously, average client side and server side L7 latency values were sent every 60 sec to the Insight Center. Any spikes seen within this interval were averaged out and hence remained undetected. Also, there was no live latency monitoring to detect these spikes.

How L7 latency is different from L4 latency

Network latencies are captured and displayed at the L4 level as well. These latencies are calculated from the TCP layer and do not require parsing of the ICA traffic. Therefore, they are relatively easy to obtain and are less CPU intensive. However, the major drawback of L4 latency is understanding end-to-end latency. If there are TCP proxies in the path, the L4 latency captures only the latency from the Citrix ADC to the TCP proxy. This might result in incomplete information and hence result in difficulties in debugging the issue.

L7 latency is calculated by parsing ICA traffic. L7 latency calculation is done at the ICA layer, and therefore intermediate proxies do not result in incomplete latency values. Thus, provides end-to-end latency detection.

The following figures display a deployment type with and without TCP proxies.

localized image

localized image

Difference between ICA RTT and L7 latency calculations

ICA RTT represents the total round trip time from the Citrix Workspace App to virtual desktop agent (VDA). L7 latency provides granular details regarding latencies on the client side as well as the server side. L7 client latency is the latency between Citrix Workspace App to Citrix Gateway. L7 Server latency is the latency between Citrix Gateway to VDA.

Note Server side L7 latency calculation for the server is supported only for the Citrix Virtual Apps and Desktops versions 7.13 and later.

Configure L7 latency thresholding using the CLI

1. Add an ICA latency profile.

add ica latencyprofile <name> [-l7LatencyMonitoring ( ENABLED | DISABLED )] [-l7LatencyThresholdFactor <positive_integer>] [-l7LatencyWaitTime <positive_integer>] [-l7LatencyNotifyInterval <positive_integer>] [-l7LatencyMaxNotifyCount <positive_integer>]

2. Add an ICA action.

add ica action <name> [-latencyprofileName <string>]

3. Add an ICA policy.

add ica policy <name> -rule <expression> -action <string> [-comment<string>] [-logAction <string>

4. Bind ICA policy to the VPN server or to ICA global bind point.

bind ica global -policyName <string> -priority <positive_integer> [-gotoPriorityExpression <expression>] [-type ( ICA_REQ_OVERRIDE | ICA_REQ_DEFAULT )]

Or

bind vpn vserver <name> -policy <string>  [-priority <positive_integer>]

Or

bind cr vserver <name> -policy <string> [-priority <positive _integer>]

Arguments

  • Latency Monitoring: Parameter to enable or disable L7 threshold monitoring. When this parameter is enabled, notifications are sent to the Insight Center when the set conditions are met.

    Default value: DISABLED

  • LatencyThresholdFactor: Factor by which the active latency must be greater than the minimum observed latency to conclude that the threshold is exceeded and therefore notification must be sent to the Insight Center.

    Default value: 4

    Minimum value: 2

    Maximum value: 65535

  • LatencyWaitTime: Time in seconds for the appliance to wait after the latency threshold is exceeded to send notification to the Insight Center.

    Default value: 20

    Minimum value: 1

    Maximum value: 65535

  • LatencyNotifyInterval: Time interval in seconds for the appliance to send subsequent notifications to the Insight Center after the wait time has passed.

    Default value: 20

    Minimum value: 1

    Maximum value: 65535

  • LatencyMaxNotifyCount: Maximum number of notifications that can be sent to the Insight Center within an interval where the latency is above the threshold.

    Default value: 5

Configure L7 latency thresholding using the GUI

1. Navigate to Configuration > NetScaler Gateway > Policies > ICA.

2. Select ICA Latency Profiles tab and click Add.

3. In the Create ICA Latency Profile page, perform the following.

localized image

  • Select L7 Latency Monitoring to enable L7 Threshold monitoring.
  • In L7 Threshold Factor, enter the value by which the active latency should exceed the minimum observed latency to send notification to the Insight Center.
  • In L7 Latency Wait Time, enter the time in seconds for the appliance to wait after the threshold is exceeded to send out notification to the Insight Center.
  • In L7 Latency Notification Interval, enter the time in seconds for the appliance to send subsequent notifications to the Insight Center after the wait time has passed.
  • In L7 Latency Maximum Notify Count, enter the maximum number of notifications that can be sent to the Insight Center within an interval where the latency is above the threshold.

    Note The L7 latency maximum notify count is applicable once the threshold is exceeded and is reset when the active latency falls below the threshold. Periodicity of these notifications is governed by the notification interval.

4. Click Create.

L7 Latency measurement model versus L7 latency threshold reporting model

L7 Latency measurement model

In L7 latency measurement module, average client side and server side L7 latency values are sent to the Insight Center every 60 seconds. As a result, spikes seen within this interval are averaged out and hence remain undetected. Also, L7 latency measurement module does not have the live latency monitoring capability.

The following figure illustrates a sample L7 latency measurement model.

localized image

L7 latency threshold reporting model

The L7 latency threshold reporting model has the live latency monitoring capability to detect spikes. Notifications are sent to the Insight Center if the latency exceeds the minimum observed latency.

Whenever a threshold factor is exceeded, latency increase is detected. After the configured threshold wait time expires, a notification is sent to the Insight Center. A subsequent notification is sent to the Insight Center after the wait time has expired and the threshold factor is still exceeded. In case the latency value falls below the threshold factor before the wait time expires, no notification is sent to the Insight Center.

The following figure illustrates a sample L7 latency threshold reporting model.

localized image

The following parameters can be configured at run time:

  • Threshold monitoring (ON/OFF)
  • Threshold factor
  • Threshold wait time
  • Notification interval
  • Maximum notification count