I’ve been spending quite a bit of time digging into the topic of how to optimize the performance of Adobe Flash content (animations and videos) when using a web browser hosted on Citrix XenApp (see Parts 1, 2, 3 and 4 of this series). Here’s a secret for optimizing Flash performance that will seem totally counterintuitive. Actually, this one took me by complete surprise…
From my blog post on SpeedScreen Browser Acceleration (“SpeedBrowse” for short), you might have picked up on the fact that there is an incompatibility between this feature and Flash content. Delving into this, I recently learned that if Internet Explorer running on XenApp will be used to access a web app or web site(s) with Flash content, it is best to turn SpeedBrowse off. Why?
When Internet Explorer encounters Flash content, it switches to an off-screen rendering and compositing mode. In this mode, SpeedBrowse is prevented from tracking how images get drawn onto the off-screen surface and then to the real display surface (bit block transfers). From then on, JPEG and non-transparent GIF images will be sent over the wire twice; over the SpeedBrowse virtual channel (but never used) and over ThinWire to draw them. As a result, more bandwidth is consumed than necessary.
To avoid this interaction issue, I recommend that you review how your organization uses Internet Explorer on XenApp. On servers where IE is used only to access specific web apps that don’t utilize Flash, you’ll want to keep SpeedBrowse enabled. But if you’re publishing Internet Explorer for general web browsing or to access web applications with Flash content, I recommend turning SpeedBrowse off. This can be done at the server or farm level.
As you would expect, a mitigating hotfix is now in the works (in fact, it has already been incorporated into XenDesktop 2.0). I’ll keep you posted as we make further progress on this issue.
Another option to consider (dare I go there?) is to turn Flash off. Again, you’ll want to carefully consider how Internet Explorer is used in your organization before making this choice. If IE on XenApp is intended to be used just to access specific web sites, you may determine that the Flash content on those sites is not particularly important. Or, like MSN.com, the site may be designed to provide alternative content if Flash isn’t available. You could then choose to turn Flash off in order to maintain the benefits of SpeedScreen Browser Acceleration. There is an article in the Citrix Knowledge Center that provides instructions for disabling Flash (document ID CTX110407).
If you have any feedback on this blog post or the others in this series, please share your comments! If you are able to measure a change in bandwidth consumption after following my recommendations above, please share your results. And I’d love to hear your views on the importance of further optimizing Flash performance and your use cases for published web browsers.
Product Strategist, Multimedia Virtualization