Remote Desktop Protocol Performance Improvements - Virtual-Q

0 downloads 152 Views 878KB Size Report
Remote Desktop Connection Settings . .... hardware as well as networking, the scenarios, and Office applications have al
MICROSOFT

Remote Desktop Protocol Performance Improvements in Windows Server 2008 R2 and Windows 7 Microsoft Corporation January 2010

Copyright This document is provided “as-is”. Information and views expressed in this document, including URL and other Internet Web site references, may change without notice. You bear the risk of using it. This document does not provide you with any legal rights to any intellectual property in any Microsoft product. You may copy and use this document for your internal, reference purposes. This document is confidential and proprietary to Microsoft. It is disclosed and can be used only pursuant to a nondisclosure agreement. © 2010 Microsoft. All rights reserved. Microsoft, Aero, ClearType, Internet Explorer, PowerPoint, Silverlight, Windows, Windows Media, Windows Server, and Windows Vista are trademarks of the Microsoft group of companies. All other trademarks are property of their respective owners.

Contents Copyright ....................................................................................................................................................... 2 Contents ........................................................................................................................................................ 3 Overview ....................................................................................................................................................... 4 User Scenarios............................................................................................................................................... 5 Test Setup ..................................................................................................................................................... 6 Remote Desktop Connection Settings ...................................................................................................... 6 Presentation Virtualization ........................................................................................................................... 8 Color Depth ............................................................................................................................................... 8 ClearType Virtualization (a.k.a. Font Smoothing) ................................................................................... 10 Desktop Composition .............................................................................................................................. 11 Embedded Multi-Media Performance .................................................................................................... 12 Multi-Media Redirection ......................................................................................................................... 14 Effects of Latency on Broadband Remoting Performance...................................................................... 15 Conclusion ................................................................................................................................................... 16 Appendices.................................................................................................................................................. 17 Appendix A. Hardware Configuration ..................................................................................................... 17 Appendix B. Understanding Network Traffic Profiles ............................................................................. 18

Overview With the release of the Windows Server®°2008 R2 and Windows®°7 operating systems, Remote Desktop Protocol (RDP) is more feature rich, enabling new presentation and remote-oriented functionality such as accelerated bitmap rendering, multi-media redirection streaming, and network topology awareness. In short, RDP is better able to support today’s ever increasingly complex and rich multi-media environment. As these features become integrated in the enterprise environment, it is important to analyze and understand their impact on your current network infrastructure and the end-user experience. This paper details different RDP features and the potential improvements to usability and quality of the end user remoting experience as well as system deployment metrics. It also includes performance considerations for individual features that can help guide your decisions when modifying your deployment configuration to improve performance or tune it to the specific needs of your end users. To test the impact of different features and compare RDP 7.0 to the previous RDP 6.1 version, we performed a variety of tests by using automated and simulation tools to demonstrate the user scenarios outlined in this white paper. These tests are broken down into two broad groups: a set that simulated a user working with actual Microsoft® Office applications at realistic speeds, and a set of multi-media scenarios that simulated a rich media environment commonly expected by today’s and tomorrow’s users. In addition, some of the scenarios have been run at increased network latencies to demonstrate the viability of using RDP in distributed environments, such as in Branch offices or telecommuting scenarios where broadband capabilities exist. Comparisons of previous versions of RDP are covered in previous white papers. However, their results cannot be directly compared to the results presented in this white paper because the test server/client hardware as well as networking, the scenarios, and Office applications have all been updated to reflect current industry expectations. For example, the display sizes used have been updated to reflect higher desktop resolutions.

User Scenarios Five different user scenarios were used to measure the performance of the Remote Desktop Connection (RDC) client. 













Executive/Complex PowerPoint Scenario. This scenario emulates a user presenting 43 highfidelity slides by using Microsoft Office PowerPoint® 2007. The slides contain images, transitions, and backgrounds with color gradient. The user spends a minimum of 20 seconds viewing each slide. Simple PowerPoint Scenario. This scenario emulates a user presenting content by using PowerPoint 2007. The slides in this scenario are more text-intensive than those in the executive PowerPoint scenario and have plainer backgrounds and simpler images in the form of black diagrams. Typing and Scrolling Scenario. This scenario emulates a user that is using Microsoft Office Word 2007. First the user opens a document and resizes its window and then highlights and changes the font (to Arial 10 point). Then the user opens a 17-page document (the RDP 5.1 compared to RDP 6.0 comparison white paper) and then resizes this document two times before starting to scroll through this document at around 2 pages per minute (at a minimum of 800 milliseconds per line of text). After completing the scrolling, a new document is opened and 1068 lines of text consisting of 7059 words is typed into it at a maximum rate of four characters per second, which equates to an average user typing at 35 words per minute. Internet Explorer Scenario. This scenario emulates a user browsing the Web by using Windows Internet Explorer® 8. The user browses and scrolls through multiple Web pages that contain a mix of text, natural images, and some schematic diagrams. The rate of scrolling is one line every 200 milliseconds, and this Web page takes around ten minutes to scroll through. The Web pages are stored on the local disk drive of the Remote Desktop Session Host (RD Session Host) server to avoid errors due to varying load times. Multi-Media Sample 1. This scenario contains a short variable bit-rate Adobe Flash-encoded video embedded in a Web page that is stored on the local hard drive of the RD Session Host server. The video is played within Internet Explorer 8 by an embedded player plug-in. This scenario emulates users viewing rich content Web pages containing multi-media. The resolution of the Adobe Flash video is 1152 by 688 pixels. Multi-Media Sample 2. This scenario contains a short fixed bit-rate Silverlight®-encoded video embedded in a Web page that is stored on the local hard drive of the RD Session Host server. The video is played within Internet Explorer 8 by an embedded player plug-in. This scenario emulates users viewing rich content Web pages containing multi-media. The resolution of the Silverlight video is 1024 by 576 pixels, its total data rate is 5000 kilobits per second (Kbps), and it renders at 29 frames per second (fps) with 64 Kbps mono auto. Multi-Media Sample 3. This scenario contains a thirty-second Windows Media® (WMV)encoded video at 29 frames per second at a resolution of 1280 by 720 pixels with a 192 Kbps audio track. This scenario is used to test multi-media redirection.

Test Setup The tests were conducted in a private lab to avoid external network interference. The results in this white paper are the average of three to five test runs depending on the standard deviation between the individual runs. Details of the server and client systems used can be found in the Appendices together with additional details of how certain measurements were taken, and how they should be interpreted.

Remote Desktop Connection Settings Tests were run by using the following range of Remote Desktop Connection client settings. As the RDP 6.1 client and RDP 7.0 client vary in their interfaces slightly, both are fully detailed. All test results indicate the setting combinations used for testing when a one-to-one direct mapping did not exist.  

  

Color depth: High Color (16-bit) and Highest Quality (32-bit) Connection speed setting on the Experience tab: a. Windows Vista® with Service Pack 1 client  Default: Modem - 56 kilobits per second (Kbps)  LAN: 10 megabits per second (Mbps) or higher b. Windows 7 client:  Default: Low-speed broadband - 256 Kbps to 2 Mbps  LAN: 10 Mbps or higher  WAN: 10 Mbps or higher with high latency Default bulk compression and persistent bitmap caching settings Font smoothing (ClearType®): On or Off Desktop composition (Aero®Glass): On or Off

Chart 1 shows all the different client configuration options used in this report and their default settings. RDP version

Client connection setting

6.1

Default

Desktop background

Font smoothing

Desktop composition

Modem 56 Kbps

6.1

LAN

7.0

Default



 

Low-speed broadband

Show contents while dragging

Menu and window animation

Visual styles/themes

Persistent bitmap caching





  







7.0

LAN



 

  



7.0

WAN



 

  



Chart 1: Client configuration options used in this report and their default settings

Presentation Virtualization Color Depth In previous versions of RDP, 16-bit color depth always reduced the networking resource requirements of deployment compared to the 32-bit color depth introduced with Windows Vista in RDP 6.1. In Windows Server 2008 R2, RDP 7.0 utilizes an improved bitmap compressor so that, for the first time, the higher fidelity of 32-bit color is obtainable at lower bit rates than 16-bit color for many common scenarios. Note: The 8-bit color depth is no longer supported in Windows Server 2008 R2 for Remote Desktop Services. True Color (24-bit) support was retired in Terminal Services in Windows Server 2008. The only valid options for Windows Server 2008 R2 are High Color (16-bit) and Highest Quality (32-bit).

Table 1 and Chart 2 compare the total bandwidth (in bytes) consumed by a user scenario that uses different color-depth settings. The tests were conducted by using the default connection settings (56Kbps modem connection setting in RDP 6.1 and the low-speed broadband setting in Windows 7) with the default bulk compression settings.

Scenario Complex PowerPoint Simple PowerPoint Word Scroll and Type Internet Explorer 8 Scrolling

RDP 6.1– 16 bpp 87507102 42680431 2245601 4017795

RDP 6.1 – 32 bpp 87698437 42600992

9579862 15436909

RDP 7.0 – 16 bpp 73456182 36172121 2846335 4356808

RDP 7.0 – 32 bpp 65661943 32873438 6782496 10991610

Table 1: Color depth comparison for different knowledge worker scenarios

Scenario Complex PowerPoint Simple PowerPoint Word Scroll and Type Internet Explorer 8 Scrolling

RDP 6.1 to RDP 7.0 – 16 bpp -16% -15% 27% 8%

RDP 6.1 to RDP 7.0 – 32 bpp -25% -23% -29% -29%

Table 2: Network traffic of RDP 7.0 compared to RDP 6.1 by scenario and color bit depth. Less is better.

Chart 2: Color depth comparison for different scenarios

Chart 3: Network traffic of RDP 7.0 compared to RDP 6.1 by scenario and color bit depth. Less is better.

Tables 1 & 2 and Charts 2 & 3 show that RDP 7.0 is more efficient at remoting bitmap-rich content by reducing between 15% to 29% the total network traffic generated for 32-bit color depth displays. 16-bit color depth is less effective with reduction in bandwidth for PowerPoint, Web browsing, and Word scrolling and typing.

ClearType Virtualization (a.k.a. Font Smoothing) ClearType® display technology is a Microsoft font smoothing technique that improves the readability of text on LCD screens. With the proliferation of LCD screens and the release of Windows°Vista, Windows 7, and Office 2007, ClearType has become very important. Most of the fonts available in Windows°Vista and Office 2007 are tuned for ClearType and look unattractive when it is turned off. Due to these reasons, Remote Desktop Services decided to give the user the option to turn on ClearType. You can get ClearType in the Remote Desktop Connection (RDC) 7.0 client by going to the Experience tab and selecting Font smoothing. However, the high fidelity of ClearType comes at a cost. Normally (with Font smoothing disabled) fonts are transmitted as glyphs. Remote Desktop Protocol transmits glyphs efficiently and caches them to reduce bandwidth consumption. With ClearType enabled, fonts are transmitted as bitmaps and not as glyphs; transmitting these bitmaps to the client results in increased bandwidth consumption. From our initial internal testing, we found that enabling ClearType for text scrolling and typing scenarios resulted in an increase in bandwidth consumption that was 79% to 83% greater than when the scenario was run with ClearType disabled (in contrast to RDP 6.1 where enabling ClearType cost between 1x and 2x of extra bandwidth). In RDP 7.0, ClearType can be enabled in many instances without significant impact in bandwidth compared to RDP 6.1. Table 3 and Chart 4 show the total bandwidth consumption (in Bytes) for user scenarios running at 16and 32-bit color depths with the LAN connection setting + ClearType or Font smoothing explicitly turned off or on. RDP version RDP 6.1 - 16bpp

Font smoothing enabled 5039496

Font smoothing disabled 2441593

Bandwidth increase using font smoothing 106%

RDP 6.1 - 32bpp

30295938

9579862

216%

RDP 7.0 - 16bpp

5465492

3059905

79%

RDP 7.0 - 32bpp

12371554

6771320

83%

Table 3: Total bandwidth consumption for ClearType text versus Normal text

Chart 4: Bandwidth consumption for Font smoothing On and Off

Font smoothing is disabled by default on the RDC client, and can be enabled on the Experience tab either explicitly by selecting the Font smoothing check box or by setting a faster connection type setting such as LAN or WAN. The RemoteApp Wizard enables font smoothing by default. In Windows Server°2008 R2, to provide a mechanism to control this setting for all RDP 7.0 remote clients, you can apply a Group Policy setting to disable font smoothing.

Desktop Composition The Desktop composition feature fundamentally changes the way applications display pixels on the screen. When Desktop composition is enabled, individual windows no longer draw directly to the screen or primary display device as they did in earlier versions of Windows. Instead, their drawing is redirected to off-screen surfaces in video memory, which are then rendered into a desktop image and presented on the display. Desktop composition is performed by the Desktop Window Manager (DWM), a new component introduced in Windows Vista. Through desktop composition, DWM enables visual effects on the desktop as well as in various features, such as glass window frames, 3-D window transition animations, Windows Flip, and Windows Flip 3D. Remote Desktop Protocol was extended to support desktop composition remoting (or, composed mode RDP). This is achieved by transmitting composition commands from DWM on the server to the RDC client. The client interprets these commands and renders the desktop. The composition commands can lead to increased bandwidth consumption, but provide the distinguishable look and feel of the

Windows 7 desktop experience. Multiple features of the Windows 7 desktop took advantage of the desktop composition technology. In RDP 7.0, desktop composition has a higher impact on the Word typing and scrolling scenario than on the PowerPoint scenarios. Desktop composition remoting is only available when connecting from a Windows Vista computer to another Windows Vista computer or Windows 7 computer, and between a Windows 7 computer and a server running Windows Server 2008 R2. Scenario Desktop composition ON Desktop Composition OFF Complex PowerPoint 66770232 66043451 Simple PowerPoint 35498220 32873438 Word Scroll and Type 12542409 6788096 Table 4: Total server to client network bandwidth used varies by desktop composition

Chart 5: Total server to client network bandwidth used varies by desktop composition

Embedded Multi-Media Performance High fidelity video playback is a new and potentially very taxing scenario for desktop remoting. In a later section of this report we show a new technology for streaming video to the remote client for local rendering. In cases where this is not possible, such as for training materials or banner advertisements embedded in Web-pages, two technologies that are commonly used are Adobe Flash and Microsoft Silverlight. In this section, we examine RDP performance when remoting such content.

Note: All runs had Remote Desktop Audio Redirection enabled. For information about the rendering rate calculations used, see Appendix B. RDP 7 display color depth Flash-IE8 16 bpp 791425873 32 bpp 986870751 Table 5: Total bytes sent from server to client at default settings

Silverlight-IE8 895101286 1148268703

RDP 7 display color depth Flash-IE8 Silverlight-IE8 16 bpp 41.6 46.4 32 bpp 50.2 60.1 Table 6: Bandwidth usage in megabits per second (Mbps) from server to client at default settings

Chart 6: Bandwidth usage from server to client in megabits per second (Mbps) for embedded multimedia presenting using client default settings To achieve a better visual update rate, RDP 7.0 is sending more data between the server and client even though we have already previously noted that it is more efficient at compressing and transmitting bitmap data than RDP 6.1. The following tables and charts measure the amount of graphical data rendered at the remote client; this is in effect how much of the remote user’s screen has been updated. A higher value here indicates a higher visual update rate and thus a much richer and smoother multimedia user experience.

RDP 7 display color depth Flash-IE8 16 bpp 9.3 32 bpp 11.7 Table 7: Effective frames per second client rendering rates

Silverlight-IE8 13 17.3

Chart 7: Effective frames per second client rendering rates

Multi-Media Redirection Multimedia redirection functionality was introduced with RDP 7.0 and allows using the rendering capability of the client to play video files. When a client and a server support the same set of codec, the video file without decompressing is sent to the client for rendering and playing. In contrast, RDP 6.1 clients always rendered the video files on the server and sent them as a set of bitmaps to the client to present. The video quality was poor, and is represented in the data set with very low frame rate (less than 5 frames per second with 400 KB on the wire). The issue with playing back fastmoving multimedia content in RDP 6.1 was related to the fact that each frame had to be treated as a distinct bitmap image, and was compressed inefficiently. The original compression format of the image is a much more efficient compression for the nature of multi-frame video content, and beginning with RDP 7.0, we are keeping the video in this efficient format as it reaches the bottleneck of the system – the network. We also don’t waste any additional CPU cycles on the server by decompressing and then recompressing and encoding the multimedia data to send to the clients. Display bit depth

Avg bandwidth/sec wildlife media

FrameRate

16 bpp

1212169

29 fps

32 bpp

1224795

29 fps

Table 8: Average bandwidth and frame rate for media redirection in RDP 7.0

Effects of Latency on Broadband Remoting Performance Both the Branch Office and Telecommuter usage scenarios are affected by limited bandwidth and increased latencies between the remote users’ client computers and the data center/central computer facilities they are actually utilizing. For non multi-media applications, such as common knowledge worker scenarios, the main limitation affecting users is that of medium to higher latency networks, which might or might not have sufficient bandwidth. As both broadband speed and their availability increases, higher latency networks will become a more common situation faced by remote desktop users. Although bandwidth limits are increasing, in many cases round trip latencies are already reaching their combined network infrastructure switching and speed-of-light limits. For testing these scenarios, we have assumed sufficient bandwidth exists for the test scenarios and then set the round trip latency to 100 milliseconds (i.e. 50 msec each way) by using a specialized Wide Area Network (WAN) simulator. 100 msec is typical of coast-to-coast networking delays. We have tested both knowledge worker and media-rich scenarios. In many Windows GDI-based knowledge worker applications, the remote server-based application completes roughly the same amount of drawing onto the remote users’ screen no matter how fast the network or client system can render the data stream generated. This is contrary to many video encoding systems that ‘drop’ frames of screen data when the downstream systems (such as network or decoders) cannot keep up with the expected frame/data rate. If the remoting protocol is unable to efficiently handle a particular set of network characteristics such as higher latencies, its effective bandwidth usage will drop; however, as it still renders the same graphical data, the users’ experience will degrade as graphical data is delivered more slowly than it is actually produced at the remote server. To demonstrate these effects, we measured the total time an application took to run on the server as well as how much network data it produced.

Total application time in seconds RDP version, color depth and client connection type setting

Complex PowerPoint – Local no delay

Complex PowerPoint – 100 msec RTT

902.6 993.6 RDP 6.1 – 16 bpp - default 899.8 993.5 RDP 6.1 – 32 bpp - default 900.7 992.2 RDP 6.1 – 16 bpp - LAN 900.7 994.5 RDP 6.1 – 32 bpp - LAN 901.4 989.9 RDP 7.0 – 16 bpp - default 901.3 952.4 RDP 7.0 – 32 bpp - default 901.9 933.9 RDP 7.0 – 16 bpp - WAN 902.2 925.8 RDP 7.0 – 32 bpp - WAN Table 9: Application execution time when using a higher latency network

Extra delay compared to no extra latency

10% 10% 10% 10% 10% 6% 4% 3%

Chart 8: Extra delay experienced by remote users when running the complex PowerPoint scenario with WAN simulators Table 9 shows that RDP 7.0 32 bpp encoding, which reduced bandwidth needs, also helps with higher latency networks. More importantly, RDP 7.0 has been made more network-aware, and when the user indicates to RDP that it needs to better handle higher latency links by setting the client connection type to the WAN setting, RDP 7.0 is able to reduce the negative effects of higher latency on the end-user experience. As the bandwidth requirements of the remote scenario increase, so do the benefits of this new RDP 7.0 feature.

Conclusion The test results, and more importantly, the actual end user experience, demonstrate that the performance of Remote Desktop Protocol 7.0 in Windows Server 2008 R2 and Windows 7 is substantially better than earlier RDP versions. Highlights include an improved user experience with color depth and font smoothing, lower network bandwidth usage while being able to tolerate higher latency network conditions, and redirection of Windows Media, allowing the possibility of full frame rate remoting of high quality media on LANs on a par with playing multi-media locally.

Appendices Appendix A. Hardware Configuration 

Server: Dual Core AMD 2.4-GHz opteron processor in 1U server with 4 GB of RAM and dual SATA Disks



Client computer and Network Capture computer: HP5150SFF Single Core AMD64 2.2-GHz desktop computers with single 80-GB SATA Disks and ATI Graphics



Network switches: Netgear GS108 & FS108-gigabit Ethernet switches



WAN simulator: Intel 3.4-GHz P4HT Desktop with three Intel Pro gigabit PCI network cards



The logical networking layout shown in Diagram 1.

Dual-Boot Server Windows

Windows

Network

Server 2008

Server 2008

Capture

R2

Machine Identical Client Machines Server traffic is mirrored at GigaBit Ethernet

Windows 7

Vista with

Ethernet frame level

SP1

Managed Switch

WAN

GigaBit Ethernet

Simulator

Switch

. Diagram 1: Logical networking layout

Windows

Appendix B. Understanding Network Traffic Profiles The network monitoring infrastructure records at a small granularity based on a timestamp for each Ethernet packet received. Over the time a test is executed, we can measure the total amount of bandwidth consumed by the server to client traffic. In many cases the total bandwidth consumed is enough to indicate how well a protocol is working compared to a previous version. In some cases network engineers need to know the average bandwidth consumed per user session over the time the session is performing useful work. We calculated this based on average mean bandwidth consumed (i.e. the total bandwidth consumed divided by the total time for the network measurement). The last important measurement is that of how uniform the network traffic bandwidth distribution is. For this we used the peak bandwidth consumed over a fixed small time period, in this case a one-second interval. This peak number can be used to act as additional guidance in provisioning of a network. Peak BW Measured over a Small Interval of Time Instantaneous Bandwidth Used Average BW Measured Over Total Time

Total BW used for test = ∑ of all instantaneous BW measurements

Time Small Time Interval

Total Measurement Run Time Diagram 2: Details of network measurements