27 Nov 2007 12:00 AM EST

In my conversations with customers at our iForum App Delivery Expo in Las Vegas a few weeks ago, the topic of Adobe Flash came up several times. It became apparent to me that many Citrix system administrators are looking for guidance on how best to configure Presentation Server to support access to web sites with Flash content, and they're wondering what future enhancements Citrix has on our technology roadmap. So here is the first in a series of blog posts about optimizing Flash performance.

Flash is indeed a key focus area for the Citrix Multimedia Virtualization Initiative. Over the past few years we introduced various enhancements and tweaks to Presentation Server to help customers optimize the user experience when viewing Flash animations and videos. We also offer NetScaler to dramatically accelerate the delivery of web applications, including apps with Flash content. And there's more to come...

The reason for this continued attention to Flash is the growing prevalence of Flash-based content. Based on input I received from two leading Content Delivery Network vendors, it looks like Adobe Flash has now captured at least 10% of the enterprise market and is enjoying rapid growth. And a Forrester survey ("Enterprise Browser and Desktop Trends") of over 2,000 large enterprises found the Adobe Flash player installed on 98% of desktops.

The obvious starting point in our discussion of Flash performance is the SpeedScreen Flash Acceleration feature ("SpeedFlash" for short) introduced in Presentation Server 3.0. You can enable SpeedFlash to be on at all times or just over low bandwidth connections (less than 150Kbps). SpeedFlash automatically adjusts the Flash player to use simpler graphics (for example, no smoothing or anti-aliasing). These simpler graphics can be more effectively compressed, thereby reducing bandwidth consumption. CPU usage is reduced, too, which translates into higher scalability (more concurrent users per server).

SpeedFlash looks for specific binary file names. Here's where things can go wrong. The SpeedFlash code in Presentation Server 4.0 looks for flash.ocx and won't do its trick unless it finds that file. You may be running a version of the Flash player with a different binary file name. Presentation Server 4.5 was updated to also accept flash8.ocx, flash8b.ocx or flash9.ocx. But what do you do if you're still running Presentation Server 4.0?

There's a hotfix for PS 4.0 [NOTE: this hotfix is for Windows Server 2003] that adds support for Adobe Flash versions 7a, 8, 8b, 9, 9c, and 9d. You'll find the details at http://support.citrix.com/article/CTX115426 (login required). [NOTE: If you have trouble with this link even after logging in, just do a search for CTX115426. I've noticed that the link can take a long time to resolve. An approved support contract is required to access limited release hotfixes and hotfix articles.] The hotfix number is PSE400R03W2K3091. And I expect there will be future hotfixes as new versions of Flash are introduced that have a different binary file name or require new SpeedFlash code to achieve the task of adjusting the Flash player to use simpler graphics.

[UPDATE: A hotfix for PS 4.0 with HRP04 on Windows Server 2000 was made available on March 10th. Customers with an approved support contract can find the article describing this hotfix at CTX115555. The hotfix number is PSE400R04W2K012. This hotfix adds support for Adobe Flash versions 7a, 8, 8b, 9, 9c, and 9d.]

So, does it work? Obviously the current SpeedScreen Flash Acceleration technology is not as advanced as SpeedScreen Multimedia Acceleration, which leverages client-side resources to greatly improve server scalability and provide a just-like-local user experience for a long list of media types that can be decoded with a DirectShow codec. Yet the measurements I've seen for SpeedFlash show an impressive 22% average reduction in bandwidth consumption (the actual figure will vary according to the content).

If your users will be accessing Flash videos, I recommend setting SpeedFlash to be always on, rather than limiting it to just low bandwidth (dial-up) connections.

Audio settings are also important to consider since if you're watching a Flash video it more than likely has an audio track, too. I recommend Presentation Server's Medium Quality setting as the best compromise between sound quality and bandwidth consumption. The Low Quality setting does not make for a very good user experience, and the High Quality setting uses up a lot of bandwidth (roughly 1 Mbps). Improvements to audio support are another part of the Citrix Multimedia Virtualization Initiative (see "Now playing - The Ulysses Audio Codec").

I'll have some more "secrets" for optimizing Flash performance in a subsequent blog post.

Derek Thorslund
Product Strategist, Multimedia Virtualization

Permalink | Comments (17) |

I would like to download and test PSE400R03W2K3091 however even after I am logged in to MyCitrix I am requested to log in to download this hotfix. There is also a discussion on the Citrix forums about the problem of downloading this hotfix http://support.citrix.com/forums/thread.jspa?forumID=75&threadID=97299&tstart=0

When will this hotfix be made available?

Posted by Anonymous at Jan 18, 2008 08:16 | Reply To This

The article at http://support.citrix.com/article/CTX115426 about hotfix PSE400R03W2K3091 describes it as a "limited release" and advises customers: "Obtain the hotfix package from your Citrix technical support representative." Meanwhile, our Engineering team is busy looking into a more generic solution to the issue of Flash file name changes / version updates.

The hotfix is here.  Use at your own risk.

* * * link removed * * *

The removed link was for Hotfix PSE400R04W2K3012 (http://support.citrix.com/article/CTX115277). Limited Release Hotfixes are not available for download from http://support.citrix.com/. Please contact Citrix technical support to acquire Limited Release Hotfixes.

I wish I could put my hands on the actual article though.

Posted by Anonymous at Jan 22, 2008 19:21Updated by Greg Anth | Reply To This

* * * content removed * * *

Limited Release Hotfix articles are only available to customers with approved support contracts. For a list of support programs, please visit:
http://citrix.com/English/ss/supportSecond.asp?slID=25635

Please contact customer service if you have any questions regarding your current contract.
http://citrix.com/English/SS/supportThird.asp?slID=11553&tlID=11610

Posted by Anonymous at Jan 23, 2008 08:03Updated by Greg Anth | Reply To This

delete the " " characters from the end of the above link.

Posted by Anonymous at Jan 22, 2008 19:25 | Reply To This

Derek,

is this also applicable for XenApp 4.5 x64?
If so, where can I find the patch?
Thanks for the feedback.

Chris

Hi Chris,

I'll have to check into that. I know that XenApp Presentation Server 4.5 was updated to accept flash8.ocx, flash8b.ocx and flash9.ocx. Since the hotfixes for newer versions of Flash are designated as "limited release" for customers with an active Preferred Support Services contract, you will need to contact Citrix Support to obtain them.

Meanwhile, Engineering has designed an enhancement to gracefully handle Flash updates, and that enhancement is now working its way through development and test. It is expected to eliminate the need for specific hotfixes for each new Flash release.

Derek

Chris,

There is a limited release hotfix available for XenApp PS 4.5 for W2K3 64-bit that adds support for Adobe Flash versions 7a, 8, 8b, 9, 9c and 9d. The Knowledge Base article number is CTX115564. The hotfix number is PSE450R01W2K3X64024. Customers with an active Preferred Support Services contract can obtain the hotfix from Citrix Tech Support.

Derek

Also, hotfix PSE450R01W2K3X64024 is included in Hotfix Rollup Pack 2 (PSE450W2K3X64R02) for XenApp Presentation Server 4.5 for Windows Server 2003 64-Bit Edition.

To recap, here are the most current hotfixes, handling Flash versions up to 9d:

  • HRP2 for XenApp Presentation Server 4.5 for Windows Server 2003 32-bit Edition: PSE450W2K3R02 (see KB article CTX116289)
  • HRP2 for XenApp Presentation Server 4.5 for Windows Server 2003 64-bit Edition: PSE450W2K3X64R02 (see KB article CTX116294)
  • HRP4 for Presentation Server 4.0 for Windows Server 2003: PSE400W2K3R04 (KB article CTX113484)
  • Limited release hotfix PSE400R04W2K012 for Presentation Server 4.0 for Windows 200 Server (KB article CTX115555)

Support for Flash 9e is in the works (see Secrets for Optimizing Flash Performance - Part 3).

Posted by Anonymous at Apr 09, 2008 11:01 | Reply To This

Derek,

It is now May 3rd, 2008...general hotfix or rollup (Flash) for CPS 4.0 for Windows 2000 coming soon? 

By the way...sometimes can't decipher the security word within "Please type the word appearing in the picture." box.

Ryon Brubaker

Posted by Anonymous at May 03, 2008 20:56 | Reply To This

I have good news... Yes, it is coming very soon, in the form of Hotfix Rollup Pack 5 (HRP05). And it will include support for Flash 9f.

Before or after Memorial Day?  LOL. 

Posted by Anonymous at May 05, 2008 15:33 | Reply To This

Where can I download Adobe Flash Player 9d? I can only find the latest version from the Adobe website but this is no use with XenApp 4.5 x64 HRP02.

 David.

Posted by Anonymous at Jun 25, 2008 09:49 | Reply To This

Flash 9d is Flash 9.0.47. Hopefully that key piece of information will help you locate a Flash 9d download site. Be careful, some sites claim to offer 9.0.47 but redirect you to the Adobe site which will give you Flash 9f (9.0.124), which is not supported by XenApp PS 4.5 HRP02.  

I also encourage you to let our Technical Support department know that you would like to have Flash 9f support for XenApp PS 4.5 64-bit. A hotfix has been developed for this and is in the queue for Test, after which it will become available as a private hotfix for customers with compatible configurations and valid support contracts, and then it will go into a public hotfix rollup pack (HRP03).

Derek

Just in case anyone missed my May 23rd post, HRP05 for PS 4.0 is now available.

Thanks for your previous response Derek. I managed to download Flash Player 9.0.47 from the Adobe site (they offer an archive file which contains all previous versions of Flash Player). I have installed this version onto a XenApp PS 4.5 x64 server with HRP02 but I haven't really noticed any reduction on CPU usage compared to my XenApp PS 4.0 x64 servers which aren't using speedscreen due to them using Flash Player 9f.

Speedscreen Flash Acceleration is enabled at farm level for all connections. Is there something I'm missing, or is it because the farm is currently in mixed mode between 4.0 x64 and 4.5 x64? Any help would be greatly appreciated. Thanks. 

David.

Posted by Anonymous at Jul 02, 2008 06:53 | Reply To This

Glad to hear you were successful in obtaining Flash 9d. Remember that our current (pre-RAVE) implementation of SpeedScreen Flash Acceleration works by automatically adjusting the Flash player to use its "Low Quality" setting. This reduces the frame rate and turns off smoothing and anti-aliasing, resulting in simpler graphics which can be compressed more easily (less CPU) and more compactly (less bandwidth). So the way to check if SpeedFlash is working is to go to a site like YouTube and right-click on some Flash content, which usually brings up a pop-up window where one of the entries is Quality. If the Quality is set to Low, SpeedFlash is working.

I've had reports that SpeedFlash reduces bandwidth consumption for Flash animations by about 22% on average.