Packeteer Home Page Choose a PacketGuide version   

 Feedback

 Search

 Index

 Contents

What's New?
 
 

   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   


 Tasks

 Reference
 



Accelerate Traffic — Enabling and Tuning Compression

Instructions to increase WAN-link capacity and to tune compression options to optimize performance gains

Packeteer's Xpress increases WAN-link throughput without imposing cumbersome administrative overhead. It makes it seem as if your WAN link offers more bandwidth than it really does. Specifically, Xpress:

  • Compresses traffic to squeeze more data through a limited WAN link without losing quality or data
  • Accelerates application performance by getting fewer bits across the WAN faster.
  • Removes the administrative burden of having to define, configure, and maintain compression tunnels (the mechanism used to shrink, transfer, and restore traffic)
  • Assesses real-time performance and latency data to adjust compression and bandwidth allocation to ensure optimal performance of critical applications

For more background, see PacketGuide's Compression Overview and the white paper titled "Accelerating Throughput."

Enable Compression

  1. Compression has several prerequisites including a Packeteer Xpress compression software key. See the section titled Requirements in the Compression Overview.

  2. No complicated setup or configuration is required to enable compression. Once enabled, PacketWise automatically creates, configures, and maintains compression tunnels for you.

  3. Examine the results you get from your compression.

Tuning Compression for Optimal Results

Because Xpress acceleration configures compression tunnels for you, no explicit action is required from you to use compression and get its bandwidth-saving benefits. You can continue with the default configuration indefinitely.

But if you are not getting the gains from compression that you expected, or if you'd like to see if you can get even better gains, consider tuning compression's configuration for optimal results. There are several tuning tasks you can try, or you can try them all.

Consider Policy and Partition Settings

Application performance is achieved through a combination of appropriate shaping policies and effective compression configurations. Xpress is designed to optimize compression gains based on policies or partitions that are already in place. Therefore, it is typically not necessary to adjust shaping policies for newly compressed traffic.

Use the following guidelines when configuring shaping with PacketShaper Xpress:

Policies allocate bandwidth on a pre-compression basis. Use the same rates in policies whether or not you have compression.

  • Rate policy example
    Suppose Citrix flows require 10 Kbps of uncompressed traffic to perform well, and their rate policy is set accordingly. In addition, suppose Xpress typically compresses the 10 Kbps down to 4 Kbps. It is not necessary, recommended, or advantageous to adjust the Citrix rate policy's guaranteed rate down as well.

Partitions allocate bandwidth on a post-compression basis. Definitely leave your partition sizes that are in percentage formats as they are. You can leave your explicit minimum and maximum partition sizes alone and get more throughput from your same bandwidth, or you can adjust the sizes to take anticipated gains into account.

  • Partition example
    Suppose HTTP traffic is limited to 150 Kbps with a fixed partition. If Xpress delivers a 2:1 compression ratio, 300 Kbps is compressed into the 150 Kbps partition. Without changing any settings, you send twice the HTTP traffic in the same bandwidth. Alternatively, if you really do want to contain HTTP traffic to 150 Kbps of original, non-compressed content, and you have gotten consistent 2:1 results over time, you could choose to reduce the partition size to 75 Kbps.

Give a Large, Critical Traffic Class its own Dictionary, Size, and/or Algorithm

By adjusting the rules and settings Xpress uses for compression, you can influence the results it gets. With each change, there are tradeoffs, so it's best to learn a little about compression algorithms and their dictionaries so that you can make judicious changes. Then examine the following steps to implement changes.

  1. Make sure your traffic tree is sufficiently granular to identify your critical applications. In addition, make sure your traffic tree identifies your bursty, high-volume traffic. For example, separate web-based SAP or Oracle traffic from other HTTP traffic.

    For help, see PacketGuide instructions for Classify Network Traffic, Identify Mysterious Traffic, and/or Classification Hints and Examples.

  2. Select your top three critical outbound applications with the highest volume.

    Only outbound traffic benefits from compression. If you have an inbound traffic class you want compressed, you must configure the Xpress units on the opposite end of the compression tunnel where the traffic originates — the traffic will show in an outbound class there.

    To help, you can display the top ten pie chart or list the top ten traffic classes, or examine the list of top-ten-style graphs available.

  3. Assign each of your selected classes its own compression algorithm and dictionary, and optionally increase the dictionaries' sizes. Access the CLI and then use the class compress on command.

    For example, you could enter:
    class compress outbound/Oracle on override Pred2-1M 1
    to give your outbound Oracle traffic its own compression dictionary of 1 MB using the most effective compression algorithm. The "1" is the ID for the new dictionary. You would use "2" and then "3" for your subsequent traffic classes.

    You can, of course, choose different settings, according to your goals and the background information about algorithms and their dictionaries that you read earlier. For example, if you want very quick compression with high compressed throughput but smaller compression gains, try out the Pred1 algorithm, wait for some time, and then assess compression results. Or, if you have a traffic class with mostly text-based content, you could try one of the Zlib algorithms (Zlib7 offers a nice tradeoff of results and timing).

    If you have two outbound classes that have similar traffic content and compression needs, then you can assign the second traffic class to the same dictionary by using a repeated dictionary ID parameter. For example, suppose you have two Oracle traffic classes for your sales department's traffic, one for Oracle traffic using the WestUS database and one for Oracle traffic using the EastUS database. You might want to enter the following two CLI commands:
    class compress outbound/Oracle/SalesWest on override Pred2-1M 5
    class compress outbound/Oracle/SalesEast on override Pred2-1M 5

    If you want to verify your changes, try the class show <classname> CLI command.

  4. Let some traffic pass that will be classified into your special traffic classes. Your dictionary will be initialized and used. After that, you can start to see results by creating the graphs for some of the compression-related graphs.


  5. Consider if you want to apply the same compression configuration changes to the same classes on Xpress units at both ends of compression tunnels.

    If the traffic tends to be the same in both inbound and outbound directions, then you might want to apply changes on both ends. However, if only one end of the compression tunnel has voluminous outbound traffic, then changing just the one end is fine.

Adjust Packing Settings

Packet packing is the act of selectively bundling or concatenating smaller packets into a single larger packet. Packing reduces overhead, such as headers and acknowledgments, and can improve the gains attained in compression.

When traffic is heavy, PacketWise does not have to wait for additional packets to pass in order to have the multiple packets required for packing. But when traffic is light, PacketWise waits for a short amount of time to see if any more traffic comes along that could be added before forwarding a skimpy packet. This waiting time can add latency to pending packets. In this case, you are giving up the speediest possible response times for the benefit of more compression and lower traffic volumes. Xpress does adapt waiting times according to the application. If an application is particularly latency sensitive (such as all applications' connection acknowledgments), a shorter packing time is used.

You can choose whether PacketWise does packet packing at all, and if so, the maximum amount of time it can delay a pending packet while waiting for additional traffic to bundle:

PacketGuide™ for PacketWise® Version 6.0