Product Documentation

Traffic Shaping Policies

Jul 03, 2013

Every service class definition specifies a traffic-shaping policy, which sets parameters for traffic of the associated service class. The following figure shows the page on which you create a traffic-shaping policy.

Figure 1. Creating a New Traffic-Shaping Policy

A traffic-shaping policy consists of the following parameters:
  • Name—The name of the policy.
  • Weighted Priority (1-256)—Traffic with a higher weighted priority gets more bandwidth. A service class with a weighted priority of 256 is entitled to 256 times the bandwidth of a connection with a weighted priority of 1. (In practice, these bandwidth ratios are seen only in bulk-transfer traffic for which the traffic shaper is the dominant bottleneck. Protocols that are RTT-limited, interactive, or contain their own bandwidth managers—Citrix XenApp falls into all three categories—show different ratios, because factors other than the traffic shaper also affect the traffic.)
  • ICA priorities—Usually used only in the Citrix policy, to declare a mapping between the four XenApp/XenDesktop priority bits and traffic-shaper weighted priorities. Creating an ICA Traffic-Shaping Policy That Specifies Per-Priority DSCP Values shows the Traffic Shaping Policies: Create Policy page with the Set ICA Priorities section expanded.
  • Optimize for Voice—Handle with care. This option gives the traffic a weighted priority of infinity, so it monopolizes the link if there is enough traffic to do so.
  • Use only for VoIP data traffic (not VoIP control traffic).
  • Always use a maximum bandwidth policy with this feature, such as “75% of link speed.”
  • Never use this feature for TCP traffic.
  • Set Diffserv/TOS—Sets the DSCP bits on output packets to the selected value. Used to control downstream routers. For ICA (XenApp/XenDesktop) traffic, each of the four ICA priority values can be tagged with a different DSCP value. This capability is particularly valuable with the new Multistream ICA feature, in which the XenApp or XenDesktop client uses different connections for different priority levels.
  • Limit Bandwidth—Prevents the traffic using this policy from exceeding the specified bandwidth, stated either as a percentage of link speed or as an absolute value. Citrix recommends specifying a percentage, so that the same definition can apply to links of different speeds. This feature can leave bandwidth unused. For example, a policy set to 50% of link speed does not allow the affected traffic to use more than 50% of the link, even if the link is otherwise idle. Throttling traffic in this way is inconsistent with maximum performance, so this feature is rarely used, except with VoIP traffic with the Maximize for Voice setting.

A CloudBridge appliance ships with factory-default policies that span a broad range of priorities, with each policy separated from its neighbors by a factor of two in priority. These policies are listed on the Configuration: Traffic Shaping Policies page. Note that, with the exception of “Default Policy,” at the bottom of the traffic shaping policies list, the factory-default policies cannot be edited or deleted. The reason is to ensure that they have the same meaning on all appliances. To make changes, create a new traffic-shaping policy with the new parameters and change the appropriate service-class definitions to refer to the new traffic-shaping policy.

Figure 2. Creating an ICA Traffic-Shaping Policy That Specifies Per-Priority DSCP Values

You can assign different traffic-shaping priorities to different values of the two-bit ICA priority field (a bit field in the Citrix ICA and CGP protocols used by XenApp and XenDesktop).

Note: The controls for ICA priorities are hidden by default on the Configuration: Traffic Shaping Policies: Create Policy page. Press the Show All Advanced Options button to show them.

The advanced options support both single-connection and multi-connection ICA/CGP streams. In single-connection streams (the traditional ICA/CGP implementation) all four priorities are multiplexed in a single connection, and the ICA priority field of the connection changes with the kind of date being sent. The CloudBridge appliance changes its traffic-shaping priority to match. The newer multi-connection option uses different connections for different priority levels, with a static ICA priority for each connection.

ICA priorities can be mapped to Differentiated Services Code Point (DSCP) values in the IP header, informing the downstream routers about the kind of handling that each packet requires.

Note that, if you clear the Set ICA Priorities check box for a traffic-shaping policy, existing connections governed by that policy are reclassified as Other TCP traffic for the rest of their lifetimes. They cannot be transferred from one ICA traffic-shaping state to another.