Microsoft Demos Remote Desktop 7 Enhancements in Windows 7 and Server 2008 R2, including HD Movie Support
Last night a friend of mine, Alex Danilychev, shared with me the Microsoft PDC 2008 presentation titled, "Windows 7 Presentation Virtualization: Graphics Remoting ( RDP) Today and Tomorrow". In this presentation, Nadim Abdo, Principal Development Manger and Gaurav Daga, Senior Program Manager Lead at Microsoft discussed some of the new features and enhancements coming to Windows 7 and Windows Server 2008 R2 Remote Desktop Services (Terminal Services) via Remote Desktop Protocol 7 (RDP).
The upcoming RDP 7 enhancements discussed are as follows:
- Windows 7 Aero support
- Direct 2D & Direct 3D 10.1 application support
- True multi-monitor support
- RDP Core Performance Improvements
- Multimedia enhancements
- Media Foundation support
- DirectShow support
- Low Latency audio playback support
- Bi-directional audio support
After discussing the current state of the Remote Desktop Protocol and giving a brief overview of what’s new in RDP 7, Nadim Abdo turned the presentation over to Gaurav Daga for the actual demo. The following are the times for the key sections of the demo along with a bit about each demo shown:
16:50 – Demo starts
19:00 – Direct X and Direct 2D graphics application demo starts.
Besides the obvious Direct 2D demo application demo Gaurav discussed a new feature of RDP 7 called "10 on 9". This allows applications that are running on servers that do not have a Direct X 10 card installed to use Direct X 9 along with the "10 on 9" feature to allow the application to render the graphics. From what they showed off in the video it works very well.
20:48 – Direct X and Direct X 3D
21:51 – Multimedia and audio video sync capabilities
This part of the demo is priceless to anyone who has been doing server-based computing, remoting, terminal services, Citrix or whatever you want to call it for any period of time. In this portion of the demo, they show a 1080p high definition (HD) video being remoted from a Windows Server 2008 R2 Terminal Services.
WOW, is all I can say! I was left speechless. It was beautiful, not a single skip or hiccup, and it was beautiful. Microsoft accomplishes this not through virtual GPUs or server-side GPUs but by sending commands (code) from the server to the client. The commands are then executed on the local client’s graphics cards vs. the servers which Microsoft calls this, "RDP Client Rendering".
The following image is a screen shot from the HD movie played over RDP 7. You will notice the resolution is very high and rich, now imagine it running in full motion with the audio synced. I never thought I would see the day.
Through RDP Client Rendering the amount of server-side resources are cut drastically. This eliminates the classic problem where one or two users running a graphics application at any given time renders the Terminal Servers box unusable. Not anymore. As the HD movie played, Gaurav showed us that both the server’s CPU and the network bandwidth utilization were running around 1%. Again, WOW is all I can say!
In the following image you will you will notice the Windows Task Manager’s CPU Usage and Memory Usage are very low considering a HD move is being remoted. Heck, mouse movements almost add more CPU… 😉
Once they were done wooing us with the amazing eye candy in the demo, Nadim Abdo came back to discuss RDP Graphics Internals, the RDP graphics architecture, and which RDP rendering method was used by which applications.
As mentioned earlier, in Windows 7 and RDP 7 Microsoft has added the ability for the server to send commands to the Remote Desktop Client and have those commands executed by the local client’s graphics card vs. being required to have them rendered on the server, thus gaining the benefits we talked about above. But this is not always the case, and it was pointed out in the presentation where applications that run through and/or somehow embed Windows Media Player will take advantage of client -side rendering, called RDP Client Rendering, but that all others methods will not. For example, Flash media. We all know there are tons of Flash videos and banners all over the web today. Even DABCC.com has Flash. Microsoft commented that in the future we might see other graphics version move from a host rendering solution to a client rendering model.
The following chart shows the media types and whether they are rendered on the server and/or the client:
33:00 – RDP 7 Graphics: Bringing it All Together
In the finial demo of the presentation, Gaurav Daga revisits the Direct X 2D and Direct X 3D applications shown earlier in the presentation, but this time he runs them both at the same time, side by side on the screen.
You will also notice the full Aero glass effect is present and running over RDP 7, notice the translucencies? Gaurav even showed off the eye candy "Flip 3D" support and it all worked flawlessly over a remote desktop session. Yes, a RDP session…
Virtual Desktop Support
One of the more interesting points Gaurav Daga made, which I found very compelling, was around virtual desktops. He made the point that today most virtual graphics adapters found on virtual desktops do not support truly rich DirectX and Direct 2D / 3D applications but with Windows 7, Windows Server 2008 R2, and RDP7, it won’t matter due to the fact the features are built into the operating system (Windows 7) and do not require heavy use of the server side graphics driver. This also means it does not matter what hypervisor Windows 7 runs on. All you need is a virtual Windows 7 desktop along with the Desktop Client for RDP7 and the user experience will be all that and a bag of chips.
This makes me think. VMware and a slew of other desktop virtualization venders use RDP as the remoting protocol for their VDI solutions so in theory they will be able to take advantage of these upcoming features. But the problem is solutions such as VMware View (formally known as Virtual Desktop Manager (VDM)) have a custom client. This being said, the VDI brokers will be required to update their current clients to support the upcoming RDP 7 enhancements. Only the upcoming Microsoft Desktop Services connection broker will be able to take advantage of these features by default.
What Clients will be supported?
At launch time and I can only expect for some time afterwards, the following clients will support all the new graphics and multimedia enhancements:
- Windows 7
- Windows Vista (Direct X remoting will not work)
The Bottom Line:
The bottom line is that Microsoft is stepping up the game with Windows 7, Windows Server 2008 R2 Remote Desktop Services, and RDP 7. The enhancements discussed and shown in the demos will go a long way to enhance the "user experience" in both Presentation Virtualization and Virtual Desktop worlds thus allowing wider adoption due to less pushback from users. (We all know user pushback matters…and delivering an amazing user experience is the key to overcoming user pushback.)
The only big drawback I saw was the fact that Microsoft is still using host rendering for a slew of common formats. For example, Flash. Needless to say Flash tends to be everywhere and typically does not perform well on my TS boxes… 🙂 These new features will not directly benefit Flash video and the other formats of videos still using host based rendering.
Although at the end of the day for me it is simple….. when I can get my hands on this I will be retiring my MacBook Pro notebook and will be replacing it with a laptop running Windows 7! Sorry Apple… Put that in one in an upcoming "PC vs. Mac" commercial because "I’m a PC"!
Written by: Douglas A. Brown, MVP, CTP