Chapter 4
Applink Operation
(Patent Pending)
WorldDesk Applink is remote-access-clustering software that seamlessly blends remote node and remote control technologies for remote network users.
Applink enhances Citrix®s WinFrame Application Server by adding three powerful features:
In addition to enhancing WinFrame, Applink works with popular remote node based products such as Microsoft RAS, NetWare Connect, and Shiva LANRover.
Applink has both a server component and a client component. The Applink server is integrated with the WorldDesk Comlink Server. The Applink client is integrated with the WorldDesk client software and is available for DOS, Windows 3.1x, Windows for Workgroups, Windows 95, and Windows NT.
Note: Refer to Appendix B for an explanation of Remote Communication Concepts.
Remote Access Using Applink
With Applink, you can take advantage of the speed of remote control and the economies of remote node with one seamlessly integrated application. When conditions call for the remote control access method, Applink selects it. When remote node access method is preferred, Applink uses remote node. The best access method for a particular situation depends on a number of variables, such as the application program to be run, the load on the LANs servers, whether the software is located on the client computer or a LAN-based server, and the size of the executable file. Applink can evaluate these variables the instant a program is loaded and select between remote node and remote control automatically.
The means by which the Applink client determines the run mode for a particular program is as follows:
When Applink determines that the program about to be loaded should be run using remote node, the program load operation is allowed to proceed without modification.
When Applink elects to run a program using the remote control access method, the following events occur:
Rules Database
The rules database stores rules for selecting which access method to use for a particular application. Servers within a cluster maintain synchronized copies of the rules database. The rules are formed by combining built-in keywords, operators, and values:
Values may be entered as required for each keyword. The rule evaluation portion of the server program interprets the rules. Rules are written in the form "If <expression> then <result>," where the "result" is a directive to execute the application via remote node or remote control. If no rule is satisfied, Applink uses a default, which the administrator can set.
The rules database is administered via the WorldDesk Manager program. To invoke the rules editor, select the "Configure Rules" option within the Cluster pull-down menu.
Figure 4-1, Applink Rule Editor
Using the rules database, systems administrators have significant control in managing client operations. Cubix continues to expand the set of available rules operands to offer even greater flexibility. Consult your dealer or Cubix for the latest options.
Rule Evaluation
A particular rule is applicable if it produces an affirmative (true) result. For example, the rule: "IF %Filename = Notepad.exe THEN Run at Server" only applies if the client computer is about to run the program "Notepad.exe." In this case the result is to run the program in remote control.
If a rule does not produce an affirmative result, it is not applicable and the next rule is evaluated. The first rule that produces an affirmative result is used to determine application program run mode. Thus, the order in which rules are entered is important in controlling Applink behavior. The rule editor screen within the WorldDesk Manager allows rules to be moved up and down within the rule set, thus changing their order.
Figure 4-2, Complete Rule Set Showing Rule Precedence
Rules can have the following scope: User, Group, and Cluster. Rules entered for a particular user are evaluated first. If no rule applies, any rules entered for groups that the user belongs to are evaluated. If no group rules apply, rules with cluster-wide scope are evaluated.
If no user, group, or cluster rules apply, Applink uses the default run mode for sessions within the cluster. You can set this default using "If No Rule Matches" in the Current Rule Set window (see Figure 4-2 above).
Load Balancing
The rules database is automatically synchronized among all servers within a cluster. New servers automatically receive the current rule set when they join a cluster. Each server in the cluster operates independently and can thus remain fully operational in the presence of faults at one or all other servers in the cluster.
Each Applink client is configured to issue requests to a specific "Active Cluster." If an Applink server within this cluster, as a result of a rules database evaluation, determines that the program about to be loaded on the Applink client should be run in remote control mode, the Applink server sends requests for bids on the new session to all cluster servers. This step determines which server will be given the new session.
When an Applink server receives a session bid request, it performs a local analysis of the loading within the server. Several system resource factors are considered, including CPU loading, memory availability, currently active remote control sessions on this server, etc. The server that the Applink client connected to for the initial request also sends a bid request to itself and thus participates in the bidding process.
After each server computes each of the loading factors, the server initiating the bid tabulates the results. The winner of the bidding is the server most appropriate to host the client session. The address of the winning server is sent back to the Applink client with the instruction to run the pending client application via remote control.
Finally, the Applink client forms a network connection to the target server and starts the remote control session.
Alternate Applink Operating Modes
Consulting the rules database is the default operating mode of Applink. Alternatively, the Applink client may be run in additional modes: "Run at client," "Run at Server" and "Ask User".
Figure 4-3, Applink consults the user when "Ask User" mode is selected
Applink Security
The system administrator can configure WorldDesk to restrict access to WorldDesk servers for the purpose of starting a remote control session. Refer to Chapter 7 for a more detailed discussion on WorldDesk security.
Applink Client Installation Configuration
To install Applink, run the client setup program specific to the operating system being used by the client. Consult the Quick Start Guide included with the client software for instructions.
Figure 4-4, WorldDesk Windows 95 Remote Node Client with Applink Option
Applink configuration is integrated with the WorldDesk remote node client program. Each client contains certain features and settings common to all client operating systems. These settings and features are described in the next sections.
Active WorldDesk Cluster
This setting specifies the WorldDesk cluster Applink uses when requesting whether a client application should be run in remote node or remote control mode. If the remote control method is determined, one of the servers within this cluster will host the remote control session as determined by the load balancing mechanisms.
Figure 4-5, WorldDesk Cluster Configuration Entry
User Name
When connecting to a server within the selected cluster, the client user must be authenticated to determine if the user has "Start Sessions" permission. Initially, the user name entered is used in the authentication request. The user is prompted at runtime for password or DES challenge/response if necessary. For more information on WorldDesk security, turn to Chapter 7.
Domain Name
The domain name specifies the name of the Windows NT domain in which the user is to be authenticated. This value defaults to the WorldDesk Cluster Name, but can be changed. On the WorldDesk Client for Windows NT, the domain name field appears as a list of all Windows NT domains that could be found.
Time Out Value
Applink client requests are subject to a timeout value. If a client does not receive a response from the server within the specified time out period, the application will run at the client. The default value is sufficient in most cases. For very slow communications links, a higher time-out value may be required.
Run Program
This setting allows the user to affect the run-time operation of Applink. The default value, "Use Rules", causes Applink to request a rule evaluation each time a client program is about to be loaded to determine the run mode.
Figure 4-6, Main Applink Configuration Screen (Windows 95)
The "Run at Client" setting causes all programs to be at the client (remote node). The "Run at Server" setting instructs Applink to attempt to run all client applications at the server in remote control mode. NOTE: if the remote control session startup fails, or the user does not have required permission, the program will run at the client.
The "Ask User" setting causes Applink to prompt the user for the desired run mode each time a program is about to be loaded.
Logging Options
These settings are used to control the level of detail included in the Applink event log. The default logging option is to show only error messages. However, when troubleshooting a client installation, more detail may desired.
Map Network Drives
This field allows the user to enable/disable a client network drive remapping feature incorporated in Applink.
When enabled, this feature instructs Applink to automatically establish the clients network drive mappings within the context of a WinFrame remote control session. For example, if the client computer has the network mapping: y:=\\Fserver1\Sys, Applink will attempt to create this drive mapping on the WinFrame server within the users WinFrame session.
The WinFrame product currently supports drive mappings for local client drives only (i.e., A:, C:). The Applink feature extends this capacity to include client side network drive mappings.
Cluster Selection
If "Ask User" is chosen and Applink decides to execute an application at the server, the user will be prompted with the list of configured clusters. This allows the user to specify the cluster in which the remote session is executed, user name, password and the NT domain name in which he should be authenticated.
If "Use Configured Active Cluster" is chosen and Applink decides to execute an application at the server, the cluster indicated in the Active Cluster field will be used. The user willl only be allowed to change the user name and password.
Remote Control Client Program
This field allows the user to specify the path and filename of the remote control client program Applink should load when the remote control access method is determined. Currently, Applink supports the Citrix® WinFrame remote control software package.
Integrating Applink with Citrix® WinFrame
When the Citrix® WinFrame software is installed prior to installing Applink, the Applink installation program automatically configures Applink to work correctly with WinFrame. If Applink is installed first, the full path to the WinFrame client program must be set from within the Applink client configuration program.
Note to Administrator: Always install the Citrix® WinFrame software before installing Applink software.
Once Applink and WinFrame have been installed on the client computer, Applink will completely control the WinFrame product with no additional user intervention required.
If Applink fails to correctly start a remote control session, the following troubleshooting steps should be performed:
When installing a Citrix® WinFrame server for use with Applink, use the following settings. Note that when the WorldDesk Server is installed on a Citrix WinFrame server, these settings are verified. If they are not set, the WorldDesk Server setup program will ask the user if they should be changed. You may run "wfcheck.exe" anytime after the WorldDesk Server is installed to verify these settings.
Network Drive Mapping Issues
When installing applications to run in a combined remote node/remote control environment, choose network drive letter assignments carefully. Different drive letters may be assigned while running remote node versus remote control. Specifically, when the Citrix® WinFrame remote control client program is loaded, none of the present network drive mappings on the client are valid within the remote control session. Instead, the network drive mappings set up at the Citrix® server for the logged on user are used.
To avoid confusion and unpredictable behavior when switching between remote node and remote control at the client, the system administrator should set up an account for each client on a WinFrame server that is acting as the Windows NT domain controller for that cluster. When the user logs on to this account, the network drive letter assignments that are made automatically should match those that exist on the clients computer.
Symmetrically assigned drive letter mappings, as described above, ensure the Citrix® WinFrame session will point to the same drive letters as the client users computer. For example, if the client user runs "y:\msoffice\winword.exe" via remote control, the Citrix® WinFrame session "Y:" drive will still point to the correct place.
Automatic Client Icon Generation
Automatic client icon generation is an Applink specific capability that is incorporated within the WorldDesk client preconfiguration utility. Refer to Appendix A for general information on client disk preconfiguration.
The icon generation feature allows System Administrators to specify program icons to be installed on the users desktop when users run the client installation program.
Typically, program icons that exist on a client computer are established by running the installation program associated with that product. These icons may resolve to programs that either exist on the clients local hard drive or on a mapped network drive in the case of remote node based programs.
With Applink, it is possible to have a functional icon that resolves to a program on a remote computer that was not actually installed by the client. For example, an application may be installed in a common program group on a WinFrame server. Any user that logs on to that server directly can run the application. Since an Applink remote control session emulates a user session on the WinFrame server, an icon on the client that resolves to the server side application will also work correctly under remote control.
This feature is most useful for deploying application icons that will always be intended in the rules database to be run in remote control mode. The applications usually will not work in remote node since systems DLLs or registry settings may be required on the local computer.
This document, and all Web contents, Copyright © 1997 by Cubix Corp., Carson City, NV, USA.