![]()
The virtual desktop revolution is here! XenDesktop 4 further widens Citrix's competitive lead with FlexCast™ technology to deliver the best Windows desktop for everyone in the organization, from task worker to power user. And XenDesktop 4 is an HDX-focused release that provides the best "high definition" user experience in the desktop virtualization market, with better reliability and higher availability than a traditional PC.
From the more than 70 new features in this release, allow me to introduce you to some key new capabilities of XenDesktop 4:
- HDX MediaStream for Flash (client-side rendering). While server-side rendering remains Citrix's foundational approach for delivering multimedia content of all sorts, HDX MediaStream for Flash provides an outstanding optimization for Windows online plug-in (client) users on low latency network connections. Leveraging the user device for direct content fetching and rendering, it delivers a high definition user experience and improves server scalability and network bandwidth efficiency by an order of magnitude. This technology supports Flash animations, videos (including HD), and IE-based Flex apps, even video conferencing applications. Citrix competitors do not offer a client-side rendering option for Flash.
- HDX MediaStream enhanced delivery of server-rendered video. New dynamic frame rate adjustment works in conjunction with bandwidth estimation to optimize video and graphics delivery over WAN and Internet connections. Where bandwidth is plentiful, full frame rate (30 fps) server-rendered video delivery is now available by modifying a registry key [new default is about 24 fps]. When compared to competitors' server-side rendering, XenDesktop 4 uses significantly less bandwidth to deliver equivalent quality.
- Enhancements to HDX Adaptive Orchestration. SmartRendering has been enhanced with more intelligence to dynamically select between server-side and client-side video rendering. SmartRendering now considers not only user device type and codec availability but also the real-time bandwidth and latency of the network connection.
- FlexCast™ desktop delivery technology. Different types of workers across the enterprise need different types of desktops. Some require simplicity and standardization, while others need performance and personalization. With FlexCast™ delivery technology, IT can deliver the best desktop for every user, every time. XenDesktop 4 is much more than just a VDI solution. For task workers where personalization is not needed or desired, XenDesktop 4 supports Hosted Shared Desktops, providing a locked down, streamlined and standardized environment with the lowest cost per user. For design engineers and other power users, HDX 3D for Professional Graphics delivers GPU-enabled desktops hosted on blade or rack workstations.
- Expanded USB support, including webcams. HDX Plug-n-Play now supports isochronous USB remoting, enabling LAN-connected users to plug in a webcam and enjoy HDX RealTime video conferencing with popular applications such as Microsoft Office Communicator and Skype. This release also supports specialized keyboards (in particular, the Bloomberg keyboard) and dictation devices such as the Philips SpeechMike.
- Media Foundation support for HDX MediaStream client-side rendering. Media Foundation (MF) is Microsoft's new framework for digital media, used by Windows Media Player for certain media types on Windows Vista and Windows 7. With XenDesktop 4, multimedia rendering through Media Foundation can, depending on network latency and packet loss, be offloaded from the XenDesktop VDA server onto the user's Windows or Linux device, greatly improving server scalability. Media Foundation support extends our HDX MediaStream competitive advantage to the latest Windows platforms.
- New audio codec technology. With the new "Optimized for speech" codec, HDX RealTime delivers clear audio quality to softphone and voice chat users with very modest bandwidth consumption (less than 20 Kbps). HDX MediaStream server-rendered video and music playback benefits from the new "High definition" codec which provides CD-like sound quality. These enhancements leverage version 11.2 of the Citrix online plug-in for Windows.
- HDX Plug-n-Play flexible multi-monitor support. Application compatibility with multi-monitor configurations has been improved and users now have greater control via the Desktop Viewer toolbar. Supported multi-monitor configurations include special arrangements such as U, L, T, reverse L and inverse T. Screens can be of different sizes, resolutions and orientations.
- Expanded OS support, including Windows 7. The XenDesktop 4 VDA platform introduces support for Windows 7 (non-Aero) 32-bit and 64-bit, Windows Vista 64-bit and Windows XP 64-bit. With XenDesktop 4, migrating to Windows 7 is as fast and simple as configuring a single master image and assigning users. In addition, the new Citrix online plug-in 11.2 and Web Interface 5.2 releases both support user devices running Windows 7. Smartcard support has been added for Windows 7 and Windows Vista, for Windows online plug-in users.
- HDX IntelliCache with Citrix Branch Repeater provides tokenized compression and data de-duplication, dramatically reducing bandwidth requirements and improving performance for users at branch office locations. XenDesktop 4 Platinum Edition has been tested with Branch Repeater 5.5. Our measurements indicate a 25 times reduction in bandwidth when using HDX IntelliCache with HDX MediaStream to deliver videos to branch offices.
- Single sign-on and password control are now included with XenDesktop 4 Platinum Edition, powered by Citrix Password Manager 4.6 SP1, increasing application security while providing users with fast, automated logon to Web, Windows and host-based applications.
- Service level monitoring and reporting. XenDesktop 4 Platinum Edition offers enhanced EdgeSight technology to monitor, alert, troubleshoot, and report on the Citrix XenDesktop infrastructure. Administrators can quickly determine where a problem may exist and take action to deliver higher service levels. New summary reports now make it easier than ever to manage a XenDesktop implementation.
- New EasyCall™ features. With EasyCall call forwarding, users can make and receive voice calls when they're out of the office, using the office telephone system. EasyCall reduces telephone expenses while providing users the convenience of click-to-call dialing right from their virtual desktop. A new portal, accessible from browsers and iPhones, empowers users to add EasyCall conferences to their calendar and manage call forwarding to multiple telephone numbers.
- Active Directory multi-forest support enables virtual desktops to be delivered to users located in different Active Directory forests from that in which the XenDesktop infrastructure servers are registered.
- Site Failover provides a disaster recovery, high availability solution in conjunction with Citrix NetScaler™. Web Interface now supports configuration of a list of disaster recovery farms. When none of the farms in the normal farm list can be reached, Web Interface will automatically try the farms in the disaster recovery list.
- Site Roaming enables a user to travel to a site served by a different data center, logon at a Citrix Ready thin client, and connect to his or her own virtual desktop even though it is not hosted at that site. Users can always access their own virtual desktops and data, regardless of where they connect from.
- RDP support. XenDesktop 4 enables users on a locked-down device where they cannot install the Citrix Receiver or online plug-in to access their virtual desktop using RDP. This capability also simplifies moving up to XenDesktop from other desktop virtualization solutions.
- Extended SDK. The Citrix WFAPI SDK is a collection of APIs allowing software developers and system administrators to access specific features of XenDesktop. It has been extended to add several new functions requested by the development community.
No doubt about it, with XenDesktop 4 the desktop virtualization revolution has begun! Find out more at www.citrix.com/xendesktop4.
Derek Thorslund
Citrix Product Strategist, HDX
Learn more about Citrix XenDesktop 4
- Official Press Release - http://citrix.com/xd4/pressrelease
- XenDesktop 4 Virtual Launch Event - http://citrix.com/citrixlive
- XenDesktop 4 Web Site - http://citrix.com/xd4
- XenDesktop 4 Executive Video - http://citrix.com/xd4/video
- XenDesktop Developer Network - http://community.citrix.com/cdn/xd
- XenDesktop 4 Blogs- http://citrix.com/xd4/blogs
- XenDesktop Product Page - http://citrix.com/xendesktop/
Follow XenDesktop on http://twitter.com/xendesktop 
Are you using Wyse V class thin clients? Then I think you'll be interested in this new Tech Preview release from Wyse.
TCX Flash Redirection is a complementary solution to HDX MediaStream for Flash that enables users of Wyse thin clients to experience improved Flash performance. How does it compare with HDX MediaStream for Flash? Whereas HDX MediaStream for Flash is currently just for Windows-based PCs and thin clients, TCX Flash Redirection supports Wyse Thin OS (WTOS) 6.3.0.
TCX Flash Redirection doesn't actually redirect the native Flash media stream to the client; the Flash Player still runs server-side. So I wouldn't expect any substantial improvement in server scalability. But the resulting images are "redirected" over a separate virtual channel, allowing for greater control of frame rate and compression, thereby delivering an improved user experience. Also, TCX Flash Redirection works together with TCX Rich Sound to provide high quality audio.
You can see TCX Flash Redirection in action on YouTube at www.youtube.com/watch?v=M4rPs84-FgY.
The solution works both with XenDesktop (Windows XP Pro and Vista VMs) and with XenApp (Windows Server 2003).
Here's some early feedback from a customer in Australia: "I am using [Wyse] V10L 6.3.0 on Citrix [XenApp] PS 4.5 and the Flash stuff is GREAT!"
Param Desai, Director of Product Management at Wyse, informs me that the Tech Preview is publicly available for customers via Wyse systems engineers and sales managers. So try it out and let us know what you think!
Derek Thorslund
Product Strategist, HDX Multimedia Virtualization
The senior architect at a major bank recently told me how they use Wyse TCX USB Virtualizer to deliver the Cisco IP Communicator softphone from XenDesktop to LAN-connected users. The Wyse V10L thin clients are equipped with Netcom GN 2000 USB headsets. He reports that the audio quality over USB is "excellent" and bandwidth consumption appears to be minimal. Sounds like a great solution for delivering potentially any softphone from XenDesktop to Wyse thin clients and desktop appliances!
So what about users who don't have a Wyse thin client? As part of the expansion of our HDX RealTime technologies, Citrix is near to completing the development of an enhanced audio subsystem for XenDesktop, comparable to what we have in XenApp 5 for Windows Server 2008. The HDX RealTime audio subsystem will provide broad compatibility with softphones and the "voice chat" feature of Unified Communications applications. And later this year, look for news of further enhancements to HDX RealTime with the Ulysses audio codec technology that I blogged about some time ago, designed to provide outstanding audio quality with minimal bandwidth consumption. These enhancements are aimed at improving the multimedia virtual desktop experience for on-premises users while establishing a foundation for future support of VoIP for remote workers.
Derek Thorslund
Product Strategist, Multimedia Virtualization
Interested in Multimedia Virtualization? Here are some new capabilities that we are now announcing:
- HDX MediaStream for XenDesktop. HDX is a set of technologies designed to deliver a high-definition user experience for virtual desktops and applications. HDX MediaStream accelerates the delivery of a variety of multimedia formats including WMV (and WMV HD), WMA, MP3, and MPEG-4. This is done by leveraging the power of the endpoint device to render the multimedia content. HDX Adaptive Orchestration (see my SmartRendering blog post) provides for automatic fallback to server-side rendering if the client is not equipped for local rendering.
- HDX MediaStream for Linux. Version 11.0 of the Linux client will soon be available for download, introducing multimedia acceleration just as in our Win32 and WinCE plug-ins. This client supports both XenDesktop and XenApp.
Also, the new 11.1 version of the Citrix Desktop Receiver, introduced in conjunction with XenDesktop 3, offers improved performance for LAN users by making better use of available network bandwidth. This enhancement, part of HDX Broadcast, is especially valuable when working with graphics and multimedia.
And there's more to come . . . I just need more time to blog!
Derek Thorslund
Product Strategist, Multimedia Virtualization
A key strategic concept that guides the Citrix Multimedia Virtualization Initiative (project Apollo) is "SmartRendering". This term describes the intelligent, automated combination of server-side and client-side rendering of graphics and media streams. SmartRendering considers such factors as the attributes of the application, the capabilities of the client and the server, and the characteristics of the network, to ensure an optimal user experience and the most efficient use of computing resources.
Many exciting new developments lie ahead as we extend SmartRendering to how we will deliver Aero desktops (introduced in Vista and enhanced in Microsoft's upcoming Windows 7 release with "Aero Peek"), next generation applications (such as data visualization applications built on Windows Presentation Foundation), Flash videos (including HD videos rendered with Adobe's H.264 codec) and 3D professional graphics (OpenGL and DirectX).
Although SmartRendering is a technology with lots of innovation and evolution still to come, it already plays an important part in how XenApp and XenDesktop deliver multimedia/graphics content in our currently shipping releases. Our software continually monitors the network and dynamically adjusts how it sends data to the client. And it constantly makes decisions about how best to render the GDI/GDI+ graphics used in most applications today. Often, SmartRendering will send GDI commands over the wire to be rendered by the graphics processor (GPU) on the client device, offloading the server to maximize scalability. In other cases, SmartRendering will determine that it is more efficient to render the graphics on the server and send a compressed bitmap image over the wire, with SuperCaching to eliminate redundant transmissions.
SpeedScreen Multimedia Acceleration, based on Citrix's RAVE technology and included with XenApp since Presentation Server 3.0 (introduced in 2004), also employs SmartRendering. If the user's device is capable of decoding a video using its own resources, SpeedScreen Multimedia Acceleration leverages the client's CPU and the appropriate codec, with automatic fallback to server-side rendering when needed. The result is a high definition user experience and outstanding server scalability. Very soon, you'll see this feature in XenDesktop, too, and supported by our Linux plugin (client) for both XenApp and XenDesktop.
Other vendors are starting to implement similar techniques. Wyse offers TCX Multimedia and has announced its Collaborative Processing Architecture which "intelligently divides the workload between the server and client, reducing the need for larger servers". And Microsoft's upcoming Windows Server 2008 R2 release will deliver multimedia content "by redirecting multimedia files and streams so that audio and video content is sent in its original format from the server to the (Windows 7) client and rendered using the client's local media playback capabilities."
In an upcoming blog post, I plan to show you a video demonstration of a new SmartRendering capability now under development at Citrix that leverages a DirectX 9 or better graphics processor on the endpoint for client-side rendering of the full Aero desktop experience. And it doesn't require Vista or Windows 7 on the user's device. So stay tuned because SmartRendering is going to get even more powerful!
Derek Thorslund
Product Strategist, Multimedia Virtualization
Remember the impressive demo that David Stone gave at Synergy in Houston showing how Citrix's RAVE technology is being adapted to improve the delivery of Adobe Flash content? Perhaps you caught the video on Synergy Underground. David showed a graphics-intensive 3D Flash animation of a shark and fish swimming in the ocean. It was far beyond the typical Flash animations found on corporate web pages yet the quality was "just like local". Since then, the Apollo Multimedia Virtualization team has continued to make excellent progress enhancing SpeedScreen Flash Acceleration with our RAVE technology. I met with Dave recently and we recorded this video to show how RAVE can deliver a high definition Flash movie complete with HD audio. The user experience is amazing and server CPU consumption is extremely low. Sorry, no dates have yet been announced for beta trials or general availability. But I think you'll be amazed at what the Apollo team has already achieved. RAVE (Remote Audio & Video Extension) is a strategic technology for Citrix and a key piece of our SmartRendering vision - the intelligent combination of server-side and client-side rendering based on factors such as the particulars of the application, the capabilities of the client and the server, and the characteristics of the network connection. RAVE is already used in XenApp's SpeedScreen Multimedia Acceleration feature, which is now being ported to XenDesktop, to deliver high quality video and audio from hosted media players based on DirectShow, DMO or Media Foundation technology. Many customers have been asking Citrix to enhance SpeedScreen Flash Acceleration with RAVE to improve the delivery of Flash-based eLearning applications and corporate communications videos. So take a look and let us know what you think. How will this technology help your organization? What are your most important "use cases" for delivering Flash content using XenApp or XenDesktop?
Derek Thorslund
Product Strategist, Multimedia Virtualization
In a previous post
I posed the question "If you could wave a magic wand and have any one single feature in the next release of Citrix XenApp, what would it be?".
It is clear many of you would like to wave that magic wand. There have been just over 650 votes and 26 comments so far. This post has been in the Top 5 in total post views since it was posted. Clearly there is a lot of interest in this topic.
I guaranteed you in that post I would share the results with the XenApp product team and I have done that. I also promised to follow up on the feature requests.
I am still working on getting a high level developer or software architect to talk about "live migration of individual sessions". I do have some further info on "Speed Screen Multimedia across all client platforms", the second most popular option in our poll.
Derek Thorslund, our Multimedia Virtualization Strategist, has written numerous posts about SpeedScreen Multimedia and related technologies. According to Derek, support for SpeedScreen Multimedia Acceleration on the Linux client is currently being developed. Derek was not able to give me a definitive time line for the general release of this capability, but I think they can see the light at the end of the tunnel. In fact, our Technology Licensing Partners now have access to a Technology Preview of SpeedScreen MultiMedia Acceleration for the Linux client. I will keep prodding Derek to provide more info as this project reaches completion.
In case you are not aware, SpeedScreen Multimedia Acceleration is currently available for the Win32 Client and the Windows CE WBT client (according to the client matrix). You can see in that document that Image Acceleration, Flash Acceleration and Browser acceleration are all support on multiple clients beyond Win32 and Win CE CBT.
Here are a few relevant blog posts on this topic in case you have not seen them -
SpeedScreenMultiMedaiAcceleration and Rave Video
How Do I Know if RAVE is Working?
What is SpeedScreen Image Acceleration?
Secrets of Optimizing Flash Part 1
Secrets of Optimizing Flash Part 2
Secrets for Optimizing Flash Part 3
Secrets for Optimizing Flash Part 4
Secrets for Optimizing Flash Part 5
New HRP Enhances Flash Support
SpeedScreen Progressive Display Delivers PACS Images
For deeper background technical information, here are some Knowledgebase articles on this topic
Troubleshooting the SpeedScreen Multimedia Acceleration Feature
Windows Media Player Cannot Play the file\
And finally, here is a technical video (narrated by Brian Madden) I found on the SpeedScreen topic -
Deep Dive into Citrix XenApp SpeedScreen Technologies


(47 minute video)
Now that the first Citrix Delivery Center Podcast
I am trying out a new third party poll (PollDaddy - flash required) that allows for multiple choice votes.
UPDATE:I have added three new options based on emails I have received. "How to Speed Up XenApp Logons", "Provisioning Server Deep Dive" and "Using WorkFlow Studio".
Sit back and listen in as I speak with Doug Brown, Citrix Technology Professional and Microsoft MVP, about the Citrix Multimedia Virtualization Initiative and the new technologies being developed by the project Apollo team in this DABCC Radio podcast...
Derek Thorslund
Product Strategist, Multimedia Virtualization
As I noted in my first blog post about optimizing Flash performance on XenApp, SpeedScreen Flash Acceleration currently checks for specific binary file names such as flash8b.ocx or flash9.ocx. Therefore, new versions of Flash require the creation of hotfixes to accommodate different binary file names. After reviewing this issue, I challenged our Engineering team to come up with an improved design. They devised a creative new solution that they predict will gracefully handle Flash updates and thus eliminate the time lag between new releases of Flash and the development of new XenApp hotfixes. That enhancement is now working its way through development and test.
In the meantime, we still need hotfixes that will look for newer Flash file names. I previously highlighted that a limited release hotfix (PSE400R03W2K3091) is available for customers with active Preferred Support Services contracts who are running XenApp Presentation Server 4.0 on Windows Server 2003 (see KB article CTX115426, login with appropriate access privileges required). Subsequently, our Support department received requests for a solution for XenApp Presentation Server 4.0 on Windows Server 2000. In response, the Life Cycle Maintenance (LCM) team has created and released hotfix PSE400R04W2K012 for PS 4.0 with HRP04 on Windows Server 2000. This limited release hotfix adds support for Adobe Flash versions 7a, 8, 8b, 9, 9c and 9d. Customers with an approved support contract can obtain the Knowledge Base article describing this new hotfix by visiting our Support web site at http://support.citrix.com/article/CTX115555 (login required) or by searching for CTX115555.
Meanwhile, Adobe has released Flash 9e (9.0.115.0). I wish I could tell you that the new hotfix handles 9e but, as Aaron Parker has already identified in his blog post on stealthpuppy.com, it doesn't. However, the wheels are in motion to create a hotfix that will handle 9e. If all goes well, this might be the one that introduces Engineering's new generic solution that isn't tied to specific binary file names. Stay tuned to this blog for further updates.
Derek Thorslund
Product Strategist, Multimedia Virtualization
Recently I published a video blog post about RAVE (Remote Audio & Video Extensions), the technology behind SpeedScreen Multimedia Acceleration. RAVE supports high quality playback of media streams that can be decoded by a media player that uses DirectShow or DirectX Media Objects (DMO). A question came in from the field asking how a customer can determine whether SpeedScreen Multimedia Acceleration is functioning. So here are some handy tips for verifying whether RAVE is working or not. In addition, you'll find a helpful troubleshooting article in our Knowledge Center.
The quick answer is that you can probably tell by the quality of the video playback since RAVE delivers a user experience on par with running the media player locally. But here are some other telltales. When RAVE is working, a black rectangle will quickly flash by as the video begins to play. Server CPU usage will be much lower than if the video were being rendered on the server (for comparison, you can disable SpeedScreen Multimedia Acceleration on the console and try playing the same video). Searching for "FilterInt" in ProcessExplorer will show that DLL loaded by the media player's process.
Are there any enhancements that you would like to see to make it easier to discover that an additional codec needs to be installed on the client (or even on the server to support server-side rendering as a fallback)? For example, one possible enhancement would be for SpeedScreen Multimedia Acceleration to record RAVE events in the Windows Event Log.
Derek Thorslund
Product Strategist, Multimedia Virtualization
Scott Guthrie, a VP at Microsoft, recently blogged about a new release of Silverlight that will soon be ready for beta trial. Silverlight 1 introduced a new browser-based video player supporting a JavaScript/AJAX programming model. Silverlight 2 focuses on enabling the development of Rich Internet Applications (RIAs). An important point about RIAs is that they aren't just for the Internet. Silverlight 2 will enable "rich desktop Windows applications" for the enterprise, so it is of great interest to all of us involved with the Citrix Multimedia Virtualization Initiative. Although not offering the full 3D graphics capabilities of WPF (Windows Presentation Foundation), Silverlight is a strong subset of WPF that supports "2.5D" graphics effects including transparency. The UI framework provides support for animation, layout management, controls, data binding, and more.
Visual Studio 2008 will support Silverlight 2, as it does WPF, making it very easy for ISVs and other application developers -- even non-professionals -- to create rich client applications in their choice of programming language (C#, Visual Basic, JavaScript, etc.).
The beta release is just 4.3MB and installs in less than 10 seconds. Unlike WPF, Silverlight 2 does not require the .NET framework to be installed on the client. Silverlight applications run within a browser (Internet Explorer, Firefox or Safari) but can be migrated to standalone desktop applications using WPF and the .NET framework.
No doubt Silverlight 2 will be a big topic at Microsoft's upcoming sold-out MIX08 conference in Las Vegas!
Derek Thorslund
Product Strategist, Multimedia Virtualization
Our project Apollo technology for remoting Vista Aero and any multimedia application that can run on Vista just keeps getting better. This video gives you a sneak peek at the latest version of Apollo, demonstrated by Juan Rivera (Citrix Development Manager) in the Tech Lab at Citrix Summit 2008 in Orlando.
Recently, I blogged about three ways of delivering telephony functions to Citrix Presentation Server users. A reader commented: "I currently use the Avaya Softphone via Citrix for Remote Call Center agents, allowing complete in-the-office phone features that allow us to not rent office space." You can learn more about publishing the Avaya IP Softphone in the following document on Avaya's web site: http://support.avaya.com/elmodocs2/ip_agent/R7.0/125772.pdf
Derek Thorslund
Product Strategist, Multimedia Virtualization
Whereas Citrix NetScaler is all about delivering web applications with outstanding performance, availability and security, the SpeedScreen Browser Acceleration feature of Citrix Presentation Server is focused on optimizing the performance of the web browser used to access those applications. Many Citrix customers deliver Internet Explorer and/or Mozilla Firefox to their users through Presentation Server for reasons well articulated by Brian Mirrotto and Rob Patterson in their iForum 2005 presentation Take Control of Your Users' Web Browser; in particular, easier management, better performance and improved security (see also Resolve Web browser security and compatibility issues). SpeedScreen Browser Acceleration ("SpeedBrowse" for short) improves the usability of Internet Explorer when accessing web pages that contain JPEG and non-transparent GIF images, two very common digital image file formats. (SpeedScreen Image Acceleration takes over for photographs and other high detail images.) It also optimizes the performance of Outlook and Outlook Express when viewing HTML-based email.
SpeedBrowse actually consists of several sub-features that work in tandem to improve browser responsiveness and reduce bandwidth consumption. Here's a high-level summary of the most important pieces that make up the SpeedBrowse feature:
- Optional automatic disabling of GIF animations. By default, SpeedBrowse disables Internet Explorer's "Play animations in web pages" option. This setting reduces bandwidth consumption and enables the resulting static GIF images to be delivered over the SpeedBrowse virtual channel.
- High-level browser hooking. SpeedBrowse uses high level hooks into Internet Explorer to intercept JPEG and GIF images before they are decompressed. Images can be sent to the client in their native compressed form, minimizing bandwidth consumption.
- Dynamic JPEG image recompression. JPEG offers multiple levels of compression. By recompressing a JPEG image at a higher, more "lossy" level of compression, bandwidth consumption can be further reduced, at the expense of image quality. Presentation Server Enterprise Edition and Platinum Edition offer a "Determine when to compress" option that dynamically evaluates image size and available network bandwidth to automatically decide how much compression to apply.
- Background image delivery. SpeedBrowse sends compressed images in chunks over a separate SpeedBrowse virtual channel so as not to block the Thinwire command protocol. The user can scroll and use the Back and Stop buttons of the browser with excellent responsiveness as images are downloaded at lower priority in the background.
- Client-side image caching. SpeedBrowse caches compressed image chunks on the client. If the server detects that a chunk is already in the client's image store, it will not resend that chunk. It only needs to send an identifier. By caching image chunks on the client, web pages that are revisited display much faster and bandwidth consumption is reduced because the server does not need to retransmit previously sent images. Furthermore, decompressed images are added to the client's cache as bitmaps so that these images don't need to be decompressed each time they are drawn. This provides a significant performance boost when a web page is scrolled because scrolling generates multiple drawing operations for each image on the page.
Of course, there are some limitations, too. SpeedBrowse is not compatible with web pages that include Adobe Flash content. And it would be nice to see an enhancement to handle PNG images, which offer more vibrant color than GIFs.
When you look at the multiple facets of SpeedScreen Browser Acceleration, you can see why it adds up to a tremendous feature for accelerating web browser performance. A study by Doculabs (click for summary press release or full report) published shortly after SpeedBrowse was introduced concluded that Presentation Server provides "200% to 250% more efficient network bandwidth utilization than locally installed browsers (depending on the configuration and tuning options selected)" and "may provide users with a two-fold or greater increase in page loading performance" on low bandwidth connections. This testing was done against a set of 99 web pages including commercial sites such as Google, Yahoo and Microsoft.com. 50% of the pages were graphically intense (over 95% of the total page download coming from image loading). Using a browser delivered via Citrix Presentation Server resulted in a transfer of 55% less data than when browsing with a locally installed browser, resulting in noticeably faster response times. The SpeedBrowse feature is a big contributor to this outstanding performance.
In the time since the Doculabs report was written, we've witnessed the emergence of numerous Javascript-enabled web sites (Gmail, for example). These days, there's a lot more data getting sent down to the browser, which now is becoming a pseudo operating system executing all these applications. It's often a lot less network intensive to send the image representation of the web page through ICA rather than downloading the entire page to the client. This is especially important if the client is at the end of a limited bandwidth pipe.
Derek Thorslund
Product Strategist, Multimedia Virtualization
We recently conducted some tests to confirm that Office Communications Server 2007 can be delivered via Citrix Presentation Server 4.5. While these are not "official" test results, I thought many of you might appreciate an early look at what we found in case you're considering rolling out OCS 2007.
Office Communications Server, the successor to Microsoft Live Communications Server 2005, is Microsoft's entry in the Unified Communications space. It brings together Voice-over-IP (VoIP), Instant Messaging (IM), audio and video conferencing, and integration with Microsoft Office. OCS includes presence information so you can see at a glance whether someone is available to receive your phone call or instant message.
We didn't test video conferencing. That would require USB webcam support on Presentation Server. Our focus was on the Instant Messaging and Microsoft Office integration features of OCS 2007.
We published the Office Communicator client on Presentation Server and successfully used its Instant Messaging and presence functions. OCS integrates presence information from multiple sources including the Outlook calendar and Out-of-Office Assistant. From an e-mail message in Outlook, you can view the presence information for each addressee and then initiate real-time communications from within the message without switching applications.
Office Communicator can also be used to control a physical telephone set. For example, you can instruct Office Communicator to place a call in your behalf and, leveraging your telephone system, it will ring your phone (office, home, or mobile) and then call the other party and bridge the connections. You can't yet use Office Communicator on Presentation Server as a pure softphone with voice-over-ICA; one of the reasons is that softphones need to open the audio driver more than once (ringtone/busytone, voice) and the current audio driver in PS 4.5 FP1 doesn't support that. (We previewed an enhanced audio driver for softphone support and voice-over-ICA in the Tech Lab at iForum in October and I'll blog on various aspects of voice-over-IP in the new year.)
If you have any experiences running Office Communicator on Presentation Server that you'd like to share, please write a comment on this blog post. And I'll keep you informed as we learn more about delivering Unified Communications via Presentation Server and XenDesktop.
Derek Thorslund
Product Strategist, Multimedia Virtualization
I'm back from my 7-day Eastern Caribbean cruise and of course the first thing on my mind is my Multimedia Virtualization blog! We've just migrated the Citrix blog site to an updated system so I had a few transitional issues to work through, but now I'm ready to share with you Part 2 of my series on optimizing Adobe Flash performance on Citrix Presentation Server. (Click here to read Part 1.)
There's definitely more to optimizing Adobe Flash than configuring SpeedScreen Flash Acceleration ("SpeedFlash") and making sure you have any required hotfixes to handle newer versions of Flash. One of the features of Presentation Server that can have a very substantial positive impact on Flash performance (animations and video) is Queuing & Tossing. This feature shows up in the management console as "Discard queued images which are replaced by other images" or "Discard redundant graphics operations", depending on which version of Presentation Server you're running.
The Queuing & Tossing feature of Thinwire briefly queues GDI draw commands and, before sending them over ICA, inspects the stack in reverse order (LIFO) to allow tossing of obsolete commands (those which have been overwritten by subsequent commands). The queuing period is short enough (30ms) that it doesn't degrade the responsiveness of the application; in fact, performance is significantly improved because draw commands that are logically redundant are discarded.
The tossing algorithm was enhanced in Presentation Server 4.5 (Ohio) to look for more graphics constructs. The tossing algorithm now uses a 1-bit-per-pixel map of the session screen. And it can detect complete self-contained 'frames'. As a result, Thinwire will either send the entire frame to the client as a self-contained entity or toss it completely. These improvements to the tossing algorithm further reduce the amount of data that needs to be sent over the wire. Along with reduced network bandwidth consumption, network efficiency (data bytes per frame) is increased. And the user experience is better because the entire frame gets updated at once rather than in pieces.
So, just how big a difference does all of this make? I recently spoke with one of our engineers who has been taking performance measurements with Flash videos. In his testing, he found that enabling Queuing & Tossing reduced bandwidth consumption by more than 3 times!
In addition to the new framing behavior of Queuing & Tossing in PS 4.5, just-in-time output behavior has further improved Flash performance. Flash video playback with PS 4.5 is noticeably smoother. And CPU consumption is lower, which increases server scalability (number of simultaneous Flash users per server).
There's still quite a bit more to tell you about Adobe Flash performance optimization, so stay tuned for my next installment on this topic.
Derek Thorslund
Product Strategist, Multimedia Virtualization
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
It's great to see the major desktop appliance (thin client) vendors, including HP/Neoware and Wyse, rallying around the Citrix Multimedia Virtualization Initiative. A notable example of how our ecosystem partners add value is TCX Multimedia 2.0 from Wyse, a streaming media solution (think training videos and corporate broadcasts accessed in an ICA session). At iForum 07 - The App Delivery Expo - Wyse and Citrix announced that TCX Multimedia 2.0 has achieved Citrix Ready status (see the press release from Wyse).
TCX Multimedia provides an intriguing complement to SpeedScreen Multimedia Acceleration (one of several technologies explained in Brian Madden's video on SpeedScreen). As with SpeedScreen Multimedia Acceleration, the media player runs on Presentation Server but the multimedia (video and audio) data stream is decoded and played locally on the client with a virtual channel being used for start/pause/stop and other controls. And both technologies deliver a great user experience by leveraging the processing power of the client device while maintaining the advantages of a centralized application delivery model. The key difference with TCX Multimedia is that the multimedia stream can be delivered directly to the user desktop appliance from a local media server instead of going through the data center. TCX Multimedia attempts to establish a direct path from the source to the client. This isn't always possible and the solution will fall back to obtaining the media stream through ICA when necessary to traverse firewalls, but when it is possible it has the benefit of consuming less network bandwidth and reducing the load on Presentation Server, which is good for performance and scalability (number of concurrent users per server). The beauty of the TCX Multimedia software is that it can intelligently and dynamically decide when to redirect the multimedia stream.
Another noteworthy feature of TCX Multimedia is its multicast support (limited to MPEG-1). Multicast provides a very efficient way of delivering the same multimedia stream to many users at the same time. Suppose your CEO is addressing the troops for a quarterly state-of-the-business update. Potentially a large number of people want to watch the videocast simultaneously, in real time. With multicasting, each individual packet can be sent to many endpoints simultaneously, consuming much less network bandwidth than if the media stream had to be replicated for every user. And multicast uses UDP/RTP. UDP (User Datagram Protocol) is better suited to live videocasts than TCP/IP because it is a "best efforts" protocol that doesn't get stuck doing retransmissions if some packets are lost; timeliness is more important than completeness. RTP (Real-Time Protocol) adds timestamps and other controls to help keep the audio and video in sync.
TCX Multimedia supports a broad set of media formats: MPEG-1, MPEG-2, MPEG-4 part 2, WMV (Windows Media Video), WMA (Windows Media Audio), AC-3 (Dolby Digital) and MP3. The notable omission at this time is Adobe Flash.
What next? Wyse notes that support for Linux is "coming soon".
Derek Thorslund
Product Strategist, Multimedia Virtualization
Finding the optimal balance between audio quality and bandwidth consumption has never been easy. Most Citrix customers today choose our Medium Quality audio setting to obtain the best compromise for the majority of use cases. But in the Citrix R&D labs in Fort Lauderdale, our computer scientists are cooking up something much better. View my interview of Modesto Tabares, one of the lead engineers working on Citrix's Multimedia Virtualization Initiative, to learn about a new voice codec codenamed Ulysses that offers a win-win proposition.
Derek Thorslund
Product Strategist, Multimedia Virtualization
