Advertisment

Taking User Interface to the Next Level With RemoteFX

author-image
PCQ Bureau
New Update


Advertisment

Advertisment

Sandeep Patnaik, Program Manager, Server and Cloud Division, Microsoft India Development Center

Microsoft RemoteFX enables the delivery of a full Windows user experience to a range of client devices including rich clients, thin clients, and ultrathin clients. RemoteFX delivers a rich user experience for Virtual Desktop Infrastructure (VDI) by providing a 3D virtual adapter, intelligent codecs, and the ability to redirect USB devices in virtual machines. RemoteFX is integrated with the RDP protocol, which enables shared encryption, authentication, management, and device support.



Architecture

Advertisment

Snapshot

Applies to: Remote Desktop Administrators, VDI administrators



USP: Get a full-fidelity user experience for Virtual Desktop Infrastructure (VDI) by using a 3D virtual adapter, intelligent CODECs, and the ability to redirect USB devices in virtual machines.



Primary Links: VDI: It Saves Millions of Dollars For You! http://bit.ly/ybHdVE



Search engine keywords: RemoteFX, Windows Server 2008 R2 SP1



At the heart of RemoteFX is a virtual graphics processing unit (the vGPU), which abstracts the relationship between guest OS virtual machines (virtual desktops) and physical GPUs to optimally share GPU resources in a hosted multi-user environment. RemoteFX supports full-fidelity video as well as rich media, and 3D graphics helps close the gap between the user experience of a local user sitting at their physical desktop and that of a remote user connected to a virtual desktop. Users stay productive working in familiar virtual desktop environments, using the same applications designed for Windows 7. Any graphics application programmed for DirectX or GDI on Windows 7 can take full advantage of RemoteFX without modification. RemoteFX supports 3D business applications (such as Bing 3D), portable graphics content (HTML5, Silverlight, and Flash), Windows Aero, Microsoft Office, Media player or Internet applications, a range of graphics-intensive applications.



RemoteFX delivers a rich user experience for Virtual Desktop Infrastructure (VDI) by providing a 3D virtual adapter, intelligent codecs, and the ability to redirect USB devices in virtual machines. For instance, the Microsoft RemoteFX enables the delivery of a full Windows user experience to a range of client devices including rich clients, thin clients, and ultrathin clients. With support for USB redirection at USB request block level, no device drivers are needed on the client device. It provides a universal interface that works with any USB device on any of the supported platforms. Devices including audio in/out devices, storage devices, HID devices (tablets, keyboards, etc.), and printers and scanners can all be redirected.

Advertisment



Benefits of RemoteFX



There are a number of benefits to this host-based architecture. Let's have a look:



1. Network agnostic: Any standard IP network can be used across the same established RDP security ports and policies. Networking security remains consistent with RDP.

Advertisment



2. Client agnostic: RDP 7.1 supports a wide range of clients with various hardware and software decoding options.



3. Payload-optimized: RemoteFX provisions and transports only relevant delta changes through an innovative differencing algorithm. This is similar to network-based deduplication and compression techniques.



4. Frame-rate optimized: Payloads can be controlled through Group Policy in Active Directory and based on network conditions, such as availability.

Advertisment



5. Device-transparent: The decoding process is transparent to the user and device. While the output to the client depends on client type, the payload decision is processed on the server. For example, a regular computer might receive one format while a light thin client would receive a bitmap.



Functionality



The new functionality that is provided by RemoteFX is described in the following sections:

Advertisment



1. Host side rendering: Host side rendering allows graphics to be rendered on the host device instead of on the client device. This enables support for all graphics types by sending highly compressed bitmap images to the endpoint device in an adaptive manner. This also allows the applications to run at full speed on the host computer by taking advantage of the GPU and the CPU, which provides an experience that is similar to a local computer.



2. GPU Virtualization: GPU Virtualization is a technology that exposes a virtual graphics device to a virtual machine. RemoteFX exposes a WDDM driver with the virtual desktop, and it allows multiple virtual desktops to share a single GPU on a Hyper-V server. Why is this important? Enterprise customers who have consolidated their desktops on to a Hyper-V server can take advantage of this technology. GPU Virtualization in RemoteFX enables end users to run graphical applications on a virtual machine. It also enables administrators to share physical graphics devices across multiple knowledge workers with virtual machines running on a Hyper-V server.





3. Intelligent Screen Capture: Intelligent Screen Capture is responsible for checking screen content changes between frames and transmitting the changed bits for encoding. Intelligent Screen Capture tracks network speed and then dynamically adjusts according to the available bandwidth. Why is this important? Intelligent Screen Capture understands the network capability between the client and host devices with regards to rendering and compression. The virtual GPU renders the applications, and Intelligent Screen Capture understands which part of the screen has changed and then compresses and transmits those changes. If the network connection is degraded on the client device, Intelligent Screen Capture sends fewer frames across the Internet to avoid network congestion. Intelligent Screen Capture is designed to support fast networks, in which case it can send more frames to ensure a good user experience.



4. RemoteFX Encoder: The RemoteFX Encoder allows encoding on the processor, on the GPU, or on dedicated hardware. After the screen data is compressed, it sends the data to the virtual desktop, which transfers the bitmaps by using Remote Desktop Connection (RDC) client computers.Why is this change important? This flexible encoding process provides high fidelity and scalability. In computers where the processors are consistently busy, the dedicated hardware ensures that the user experience is not affected.



5. RemoteFX Decoder: The RemoteFX Decoder decodes bitmaps that have transferred from the virtual desktop to the client computer. RemoteFX Decoder decodes the bitmaps on the client computer by using software in the GPU or processor, or by using a hardware decoder. Why is this change important? The RemoteFX Decoder enables low cost, easily manageable client devices. The flexibility to use the processor, GPU, or a hardware decoder helps provide a RemoteFX experience to a wide variety of client devices ranging from low complexity devices to rich clients.



6. RemoteFX for Remote Desktop Session Host: RemoteFX enables access to the RD Session Host server from rich clients, thin clients, and ultrathin clients. It also ensures lower bandwidth usage as compared to Windows Server 2008 R2 when transferring rich graphics applications. A GPU is not required when using RemoteFX for Remote Desktop Session Host.



7. RemoteFX USB Redirection: RemoteFX USB Redirection allows many devices to be redirected to an RD Virtualization Host server at the USB level. Advantages of this solution include that no device drivers are required on the client computer, and a universal interface is provided that works with any USB device on any platform where RemoteFX USB Redirection is supported. This solution redirects many types of devices, including audio devices, storage devices, human interface devices, all-in-one printers, and scanners.



8. RDP 7.1 Client and Graphics Rendering Pipeline: Once an encoded payload is ready to leave the Hyper-V host, RDP streams the optimized output across virtual channels, a form of connection within RDP. Virtual channels are software extensions that can be used to extend RDP (for example, support for special types of hardware and audio). The RDP protocol provides multiplexed management of multiple virtual channels. A virtual channel application has two parts, a client module and a server module. The server module is an executable program running on the Remote Desktop Session Host (RD Session Host) server. The client module is a DLL that must be loaded into memory on the client computer when the Remote Desktop Connection (RDC) client program runs.RemoteFX uses a special graphics virtual channel to distribute screen information to clients (and other channels for audio, device input, etc.). Through this virtual channel in RDP, data is sent to a client-side RemoteFX decoding abstraction layer where data is decompressed.



Who shall be interested?

  • Knowledge workers who work on the applications that are available on virtual desktops. These applications may include Silverlight and Flash applications, 3D applications built on DirectX, USB devices that are used on a virtual machine, Microsoft Office applications, Media player applications, Applications that are hosted on the Internet, Line-of-business applications.
  • Server administrators who are responsible for managing groups of server and client virtual machines running on a Hyper-V server.
  • Server administrators who are responsible for managing Remote Desktop Session Host servers.
  • Client computer administrators who are responsible for managing devices like thin clients that are running an embedded operating system, such as Windows Embedded, legacy personal computers, and client computers running Windows Vista and Windows 7.



Desktop administrators who are looking at desktop virtualization as a set of technologies that enable the migration of Windows 7.



Technical requirements



To take advantage of RemoteFX functionality when connecting to virtual desktops, a Hyper-V server must meet the hardware requirements listed in the Windows Server Technical Library.



Software Requirements

  • RD Virtualization Host Physical System: Windows Server 2008 R2 SP1 Remote Desktop Services Virtualization Host (RD Virtualization Host).Windows 7 with SP1-Enterprise or Ultimate Editions.32-bit and 64-bit versions as Guest OS.
  • RD Session Host Physical System: Windows Server 2008 R2 SP1 Remote Desktop Services Virtualization Host (RD Session Host).
  • RDP Client: Host-optimized RDP clients using RemoteFX: any device supporting RDP 7.1 or later.



Summary



RemoteFX enables rich, local-like user experiences for remotely hosted virtual desktops running media-rich Windows 7 applications. Users experience their virtual workspace in full fidelity, harnessing the graphics processing power of RemoteFX on Hyper-V, projected across a diverse array of partner client devices, designed for RDP 7.1.



RemoteFX takes advantage of industry-standard Graphics Processing Units (GPUs) and SLAT-enabled processors-installed on Hyper-V host systems. Graphics are efficiently rendered, captured, encoded, and optimally streamed and decoded-through an ecosystem of innovative software and hardware-offload partner device solutions.



This approach complements traditional graphics processing solutions, building on industry-standard USB to achieve compatibility with a broad array of end-point devices. These include new ultra-light low-power thin clients, traditional thin clients, and fully-functional computer workstations. The RemoteFX graphics virtualization architecture enables customers to better enjoy the benefits of client-side computing and host-side computing through a flexible, familiar approach to VDI.

Advertisment