One of the most popular reasons for choosing a Terminal Server infrastructure is the cost savings over the expense and maintenance of fat client workstations. When a Terminal Server infrastructure is in place, generally, full fat clients are no longer needed. In this case, all software is stripped off of these fat client workstations and the RDP client, Citrix Program Neighborhood, or some other verndor client is installed. Although maintenance costs go down, it’s still important to maintain Windows hotfixes and service packs. To avoid this maintenance, many companies are using dedicated Windows Base Terminals (WBTs) or configuring legacy workstations with another operating system. The Norwegian company Linpro developed a product called MultiFrame to reconfigure workstations with a new operating system and configuration using a single point of administration.
To use MultiFrame begin by installing the server part of the software. MultiFrame is completely based on Debian GNU Linux, however, the installation itself can be done without any Linux experience. (I do not have much experience myself.) To begin the installation, simply boot from the MultiFrame CD. During the installation you will be prompted to answer a few questions. First you will be prompted to define where you would like to install the server part, followed by the IP configuration for this machine. It is advisable to use a fixed IP address. After answering the questions the software is installed and after a reboot the server installation is finished.
After the reboot, a web browser is started automatically prompting you to complete the configuration. Within my VMware test environment the MultiFrame server was not completely stable using the X Server console, The MultiFrame developer told me that this issue occurs when the server doesn’t have significant memory (in my case 128MB). This behavior will be addressed in a later version. When using the administration tool from another machine I did not notice any instability.
MultiFrame supports a PXE boot for the client. To support this two options need to be enabled on the DHCP server. Option 066 Boot Server Host Name should be specified with the IP address of the MultiFrame server and option 067 BootFile Name should be configured with the value "/pxelinux.mac". If you prefer not to use a PXE boot, MultiFrame also supports booting the client machine using a CD-ROM image or USB-stick.
As described before MultiFrame can be configured and administrated from a single web console.
The console is divided into three separated levels. Under the MultiFrame (Setup) section, settings can be configured to be inherited by all other levels. The lower levels can have their own different settings which will overwrite the settings configured at the main level.
At the MultiFrame (Setup) level you can create several objects which we will discuss now.
This option can be used to arrange your configurations in a logical order within the console. You can store folder, network , session and/or profile configurations here.
A network is a collection of thin client stations within a specified IP subnet. MultiFrame automatically places new thin clients into the right network group based on their subnet. If you do not define a network, MultiFrame automatically creates one if a client announces itself to the MultiFrame server.
MultiFrame supports several types of connections to external systems including SecureShell, WWW, the X11 protocol, IBM5250 Emulator and most applicable to our field of SBC, the ICA and RDP protocols. You can create as many sessions as you need for your environment and link them to your thin clients using any connection method you choose. I will discuss more about linking sessions later in this review. Both RDP and ICA sessions can be completely configured to your needs. For example you can use TCP/IP, HTTP or HTTPS for the load balancing and configure as many servers as you like to use load balancing. Further you can enable or disable the use of local audio as well as, enable or disable local devices such as the floppy drive, the CD-ROM, USB sticks, and COM ports. You can also specify the encryption level used for the session, the keyboard layout, bandwidth settings etc. You can also configure RDP settings such as bandwidth settings, floppy, CD-ROM and USB sticks (in addition to the options for specifying the default domain name and the usage of RDP5).
When a session is initialized, the user will be presented with a small startup screen. Within the session properties you can add text into this startup screen to provide support information, for example, to the user. A total of ten sessions can be assigned to a group of thin clients.
MultiFrame uses profiles to define all kinds of settings. This is a really powerful method of controlling your thin client environment. Some of the many profile options available include:
- Device Identification
- Operational Parameters (This includes the MultiFrame version, the wipe hard disk option, and the option to configure a graphical boot screen.)
- Screen, Keyboard, and Mouse Settings (Here you can define the screen resolution, additional screen settings, the keyboard layout, the keyboard language, etc..)
- Hardware (Here you can define settings such as the availability of the CD-ROM, disk drive, and USB sticks.)
- Service Parameters (Here you can define settings concerning SSHD and SNMP.)
- External devices (Here you can define settings for connecting local printers to the sessions)
Profiles can be used to configure many options for your thin clients. You can create several profiles which can be applied to different levels within MultiFrame. Within the differents levels you can create statements to specify when a profile should be applied to the client.
This option, within the MultiFrame administration console, allows you to created additional users. Users can be granted access, with a specified role, to the different levels within MultiFrame.
Groups can be created as well. Users created using ‘Create User’ can be added to one or more group. These groups can then be assigned to the different levels within MultiFrame with a specified role.
The Folders and Network settings defined at the MultiFrame level will be created as second levels in the MultiFrame console. As before, at this level, folder, session, network and profile settings can be created. When settings are defined at this level you can only apply them to items within this level. Settings created at the MultiFrame level can be applied to the different levels using the Setup option, located next to the level name in the left frame.
At the setup section of each level, profile and session parameters can be assigned. Also the settings specified in the profile can be changed. This configuration will override settings provided via the Default Settings profile. The console clearly states where the value of the setting is configured and inherited from. Permissions defined directly on a level can be assigned or revoked. This option is not available during setup. Therefore users and/or groups created at the MultiFrame level will be used. You have the ability to assign three roles at each level (or even on each object). These roles are the System Administrator, the Network Administrator, and the Helpdesk Crew. Unfortunately the rights of each role are not described within the documentation. If you log in with an account with, for example, the Helpdesk Crew role you still can view all options available in the console. If a user, with the assigned Helpdesk Crew role, then tries to manage something he is not allowed to manage, he will get an error message saying that this action is not possible with this account. Lastly, within the device level a fourth role is available, called Device Manager.
Deploying Thin Clients
After configuring the MultiFrame environment we can begin deploying thin clients. MultiFrame supports three methods of deployment. The first deployment method uses a PXE boot of the machine, the other methods use a portable medium supported by MultiFrame such as a CD-ROM or USB memory stick. For each of the latter methods, MultiFrame supplies you with the needed boot files. You simply download them out of the MultiFrame console at the network or devices level. Boot images are created on the fly with all the necessary information to connect to the MultiFrame server.
No matter which deployment method you use the machine will boot to a mini version of the operating system and announce itself to the MultiFrame server. The thin client will be displayed as a new MAC address. When the client announces itself you can specify the configuration for te machine. Within MultiFrame three types of clients are distinguishably:
This is the most commonly used client and is defined as a normal PC or thin client where the MultiFrame client software is installed on the hard disk or in flash ROM.
This client type has no disk available, so every time the machine starts the client software is loaded into memory. That said, these machines need more RAM than the mulitclient.
Multiproxy is a normal multiclient with some added functionality. This added functionality is a proxy function that provides a quicker load of the multidiskless image and reduces the load on the MultiFrame server.
After choosing the client type, the client can be given a user friendly name and other settings can be configured. Normally it’s preferred to configure the settings in such a way that they are inherited of the higher level, but if needed profiles, sessions and setup parameters can be added or changed.
Once the device is completely configured the machine should be booted once again using a PXE boot, the CD or the USB memory stick to load the thin client software on the machine. (Logically the diskless clients will boot using the device every time because the client software is loaded into memory).
This two step process can be shortened by providing the MultiFrame server with all the relevant information before the machine announces himself to the server by configuring the option to automatically install all new devices. This setting is located within the Global Settings configuration part of the different levels. It is also possible to make every device a multidiskless client, allowing the MultiFrame client to be created without any manual interaction.
After startup, the client will immediately display the installation startup screen for the session defined in Frame 1.
Every MultiFrame client can handle up to eight different sessions. The user can easily switch between sessions using <CTRL>, <ALT> and the <Fx> function keys, where the Fx is the frame number. The user can see an overview his connection status and connection information using <CTRL>,<ALT>, <F10>.
MultiFrame also offers the option to remote control sessions of using VNC or RDP. Remote control can be invoked via the MultiFrame Console in the MultiFrame client options.
What I really like about the MultiFrame software is the ease of making changes to the session configuration. When a user logs off a session, the client automatically checks to the server for configuration changes. These changes will be propagated to the sessions immediately.
Management & Logging
Installing product software when implementing a thin client infrastructure is just the first step. Managing and maintaining the environment is much more important. Linpro does not underestimate this and gives you many options to manage and maintain your infrastructure.
All configuration changes made to the thin client are logged in the console, with all relevant information. What is most impressive is the way to re-install or reconfigure your client devices. With a simple push of a button a client device can be reconfigured or even re-installed. I especially like the option to reboot or reinstall idled client device sessions.This functionality really adds value to the product.
Although I do not have much experience with Linux, it was not difficult for me to install the MultiFrame software. Using a single web browser for all of your configuration and management is a nice feature. MultiFrame offers enough options and possibilities to rebuild older fat clients into easy to use, manageable thin clients. The many configuration options and the use of profiles makes this product very flexible.
In my experience with thin client solutions thus far, I believe that MultiFrame offers a good solution, particulary when maintaining and updating client devices after the initial deployment. It is a pity that the product documentation doesn’t offer more detail. Some functionality and features are not mentioned at all in the documentation, or perhaps mentioned, but lacking in valuable detail. Also would it be nice for a user who logs into the console with limited rights to only be allowed to view the options they are able to administer. Also I found a few minor sections in the documentation written in Norwegian instead of English.
- Easy to install and use
- Single console for all actions available from any web browser
- Many configuration and maintenance options even after the initial deployment
- Documentations is incomplete and/or lacking in detail in some areas
- X Server is not stable when using the browser directly on the server. (This is caused by not enough memory on the MultiFrame server)