Infosys delivers concept-to-market software engineering services across the engineering value chain. Our blog will discuss the latest trends in software product engineering, outsourcing, technologies, and address business challenges.

« July 2009 | Main | November 2009 »

September 07, 2009

RemoteApp feature in Microsoft® Windows Server 2008

(Disclaimer: (Remote Application Features in Microsoft® Windows Server 2008) is an independent (publication) and is not affiliated with, nor has it been authorized, sponsored, or otherwise approved by Microsoft ® Corporation.)

The advent of Microsoft® Windows Server 2008 has resulted in a wide range of applications and features which have revolutionized desktop computing technology. This article is about the RemoteApp feature supported by Microsoft® Windows Server 2008 which has been used as the basis of an industry-level solution that I have proposed.
Let’s assume a Deployment Scenario where Terminal Server is used with the help of below diagram:
ENVIRONMENT
As described in the figure, we have big Terminal Server environment where a large number of users access a common set of applications (such as Microsoft® Office Word, Microsoft® Office Excel, Microsoft® Office etc. on a TS server). In order to use each of these applications, it is not necessary to have a complete desktop to be visible on the client side.
In a common scenario, if a particular application is present on client’s desktop for use but since user is in a remote session (TS session) he opens up the instance of the application that is being hosted inside the server. This results in applications on the server side not being used optimally; such scenarios consume memory on the server side resulting in possible performance implications.
 To overcome such issues, server administrator is forced to apply the policies on the server which restrict the user group from using the particular application(s) on the server.
Microsoft® Windows Server 2008 provides a new feature known as TS RemoteApp Manager which helps overcoming issues mentioned above.
I will be explaining RemoteApp feature of Microsoft® Windows Server 2008 covering them in following points:
1. What is RemoteApp?
2. How is it implemented?
3. Advantages and usage of the feature.
4. Limitations.
 

What is Remote App?
 

RemoteApp are programs that are accessed remotely through Terminal Services and in appearance looks as if they are running on the end user's local computer. RemoteApp program is integrated with client’s desktop, running in its resizable window with its entry in the taskbar. Before starting the explanation of this feature, I would like to make sure that we are not confusing RemoteApp with Application Virtualization (App-V).
Application virtualization is purely related to allowing local-execution by streaming or not streaming an application from server. This is a completely different topic
TS RemoteApp simply implies running an application that is made available on a Microsoft® Windows Server 2008 Terminal Server.  With TS RemoteApp, the execution takes place solely on the Terminal Server and not on the client device.  You also have the capability with TS RemoteApp to make them available via a web portal, but that feature has nothing to do with TS RemoteApp.
 
• The Application will appear to be running on the local desktop machine. A better User Experience is provided when using the concept of Remote App when compared to accessing applications by remoting to the host machine.
•  A RemoteApp is effectively a terminal services session where the width and height of the session is exactly the same as that of the application being launched. The result is that the remote application appears local because the boundary of the session never expands beyond the boundary of the app itself.
Connect
As seen from the above figure initially after providing the credentials (Complete process is mentioned later), it looks as if normal Remote Session is going to open.
 Notepad

•  You can’t find the difference between normal Notepad and Remote Notepad (Notepad started using RemoteApp) which you see. So users can run RemoteApp programs side-by-side with their local programs(here normal Notepad is a desktop local program while remote Notepad is a RemoteApp)
• When a user runs more than one RemoteApp on the terminal server, all the applications uses the same session space. This will be ensured as per the architecture that the RemoteApp programs. Figure below mentions this fact clearly. 
Sessions

Internal details of RemoteApp in brief


When a RemoteApp is launched from the client machine it would not use explorer.exe shell or Remote desktop Client Window. This will lead to reduction of memory consumption on the server due to absence of explorer.exe though there are other processes which are used in RemoteApp feature.

How is it implemented?

There are two scenarios RemoteApp feature is applicable in:
1. Client is on the same network i.e. LAN.
2. Client connects through Internet.

Requirements

1. Microsoft® Windows Server 2008 with Terminal Server installed (RemoteApp Server available).
2. Client machine needs to have there RDP client version RDP6.x

Client and Server are on the same network

Execute the following step on Microsoft® Windows Server 2008:-
1. Go to Start-Administrative Tools-Terminal Services- TS Remote App manager.
2. Click on Add Remote App Programs
3. Wizard will open, Press Next
4. Press Browse option and Select the application you want to Deploy. Example: - Notepad.exe
5. Say Open
6. Press Next
7. You will be getting two option to Deploy this Remote Application on your client machine a) Create an RDP file b)Create a MSI package.
This RemoteApp can be used by the client either using RDP file or by installing the msi package.
Details are followed.
1. Client is on the same network and wants to access the application.
User can open it in two ways:
• He can directly double click on the RDP file .It will ask for the credentials (Domain\Username and Password, User need be a part of Remote Desktop Users Group on server), after giving the credentials, application (in this case notepad) will be opened.
• He can install the msi package on the client machine. Than Go to Start-Programs-Remote Programs-Notepad.exe.On clicking Notepad.exe it will ask for credentials(Domain\Username and Password, User need be a part of Remote Desktop Users Group on server), after giving the credentials, application (in this case notepad) will be opened. 
2. Client want to access over the internet
Client is required to go via TS Gateway and server configuration is also required. I would like to explain in detail about how to access the server through TS Web access but you should wait for the next blog 

Advantages and Usage


The use of RemoteApp feature can be seen in scenarios where there are restrictions on the usage of applications on the client desktop machines and when generally only few applications are required on the server machine.
For example: We have the HR and BPO team which require only Microsoft® Office Excel and Microsoft® Office Outlook inside the TS session. In such cases, this feature can be deployed on their desktops and they can use the applications hosted on the server (Microsoft® Office Excel and Microsoft® Office Outlook) seamlessly.


Benefits of RemoteApp

1. This can be deployed on Thin Client (a Dummy terminal which require very less memory and processor power on the client) .The Client should be RDP6.0 and above.
2. The combination of thin client and RemoteApp feature will increase the applicability to fields like factory automation, Education field, banking sectors etc.
3. Certain Group Policies can be enforced by administrator through which only concerned applications will be available to the client. This will lead to proper utilization of memory.
 Example: User can be restricted to open high memory applications which may lead to high memory consumption on server.
4. The Seamless integration of the remote program provides good user interface. This could improve system performance of the server since only a particular application is opened instead of a complete session which would help the server to serve more number of users.
5. Overall it will lead to good resource utilization and cost cutting on resources.

Limitations


1. One of the most basic limitations of this feature is that it can be used by only those clients where the version of Remote Desktop Client is equal or more than 6.0.
The following table indicates Operating System and RDP client versions.
TABLE
2. We need to have as many RDP file or msi package required depending upon the number of applications required by the Client user. This limitation can be overcome by the use of accessing the Applications through TSWebAccess (client needs to be RDP6.1,Currently Microsoft® Windows Vista SP1/SP2, Microsoft® Windows Server 2008 and Microsoft® Windows XP SP3 comes with default RDP6.1 more info in next blog) feature.
3. As per experiments in the practical environment, we are not able to see a sharp increase in system performance of the Server.

Conclusion


This feature will help the Remote Desktop Users to use TS more efficiently as I have mentioned some of them applicable in BPO/HRD and there can be lot more solutions which can be derived from this. However the limitations (RDP6.0 and RDP6.1) may cause users to hold back. But, the prevention of performance degradation on the server side would be an incentive to implementing this feature industry wide.
I will be writing on the new features of TS in my next bolg.Till then CYA


 

Subscribe to this blog's feed

Infosys on Twitter