Ultra thin Windows client demonstrates its strengths and weaknesses against other technologies
Epsylon Technologies’ Taxxi Communicator is so tightly integrated with the working environment of a Windows user that it’s often very difficult to explain its essence to amateurs (and sometimes even to professionals). In fact the technology cannot surprise a layman who got used to Windows, remote applications and Internet though his or her acquaintance with the latter is usually limited by an HTML browser screen.
Application Start
There are a number of icons representing resources accessible to user on the Windows desktop. Double-clicking any of them starts a certain application - Microsoft Word, Visio, Netscape Navigator, etc. There is also another way to start applications - by choosing an option in Start menu which is usually located in the lower left corner of the screen.
User can start remote applications by double-clicking
a Taxxi-enabled icon on the desktop
To better understand the functions of Taxxi let’s double-click an icon surrounded with distinctive green rectangles or choose an option in the Taxxi submenu of the Start menu. The system will react in exactly the usual way - the program will start and you will get access to all its functions.
Now then, what’s the difference? That’s just where the main advantage of the Taxxi technology lies - you don’t see any difference at all!
On the face of it both situations look like two dittos but they have absolutely different backgrounds. In the first case a user starts a program located on his or her computer, whereas Taxxi allows to run applications even from the other side of the planet. For example, a user in Moscow can easily start a program located in New York and work with it as if the application has been installed on the local machine.
Let us look what is going on when an application is run using Taxxi.
From Moscow to New York in Two Clicks
before a user chooses the application stored in New York there is no Taxxi in memory yet. Double-clicking an icon on the Windows desktop starts an icon-handling tool dubbed Taxxi Communicator which localizes necessary resources. The application is located in New York, that’s why Taxxi Communicator starts Personal baikonur as a telecommunication monitor. Personal baikonur in its turn establishes a connection to baikonur Taxxi Server run in New York. That server recognizes the request, checks the access rights of the Moscow user and opens the required applications.
Taxxi allows to run remote applications
using the Start menu
In case the application was not in use at the moment, it is started; otherwise - if somebody is already working with it - new calls from Moscow are registered and processed concurrently with others.
Processing remote calls means that baikonur Taxxi Server in New York provides information that lets the Moscow user interact with the New York application; besides, the Server sends back its own requests. During the interaction the user interface may change to reflect not only user actions, but also the internal processes of server side applications located in New York.
Taxxi Communicator in Moscow uses the information received from New York for creating the standard program interface on the local machine. Taxxi minimizes the traffic between Moscow and New York computers providing low latency and high performance of the whole system. As a result a Moscow user gets an illusion that the New York computer is located next door to him or her.
One Client to Many Servers
Taxxi Communicator provides easy access to the multitude of information sources all over the world, allowing a user to create catalogs of applications and to keep references to them on a local computer.
A Moscow user, for example, can start a dozen of analytical applications found in New York, London, Novosibirsk, Tokyo and other places, which furnish him with comprehensive information about current market trends. Simultaneously he runs other programs destined for information management in databases located in Moscow, Chicago and Zurich. Thus the user is able to quickly get hot tips and instantly use them to correct information in remote databases.
Analytical Data
To display histograms, charts and other graphic representations on the client side, Taxxi Communicator uses two methods of analytical data delivery. First, an image can be created on the server side and then sent to the client communicator as a GIF or JPEG file. This mode closely resembles a standard HTML browser.
Graphical representation of analytical data
but it is not always practical to send the whole image, sometimes it is much better to transfer only analytical data for the histogram creation on the client side. This can result in a significant traffic reduction, especially if the data contains only few elements.
One can easily imagine a situation when creating 100 Kbyte GIF image requires sending only 100 bytes of information. Certainly, such a difference is well noticeable even in case of using high-speed communication channels.
Applications Installation
Installation of local applications can take quite a lot of time. And what if we use Taxxi Communicator?
To start a remote application a Taxxi user may run a standard HTML browser, download a Web page containing information about the application and a hyperlink to it. If the user has Taxxi Communicator installed, it’s enough to click the hyperlink and the application will start. The remote program can also be installed on the user’s computer by dragging the corresponding hyperlink and dropping it on the local desktop or into resources directory. Then the link will provide an immediate access to the most recent version of the remote application.
For new Taxxi users it could be necessary to install Taxxi Communicator. In won’t take much time. The size of the program’s installation file is approximately 1 Mbyte, the installation process takes about 5 min and doesn’t require human intervention. Certainly, the communicator should be configured, but it can be done later.
Local Configuration: Printer, Sound, Passwords
After Taxxi Communicator is installed it should be configured. First of all it’s necessary to set up the printer used on the client side. The matter is that a remote application may know nothing about printers connected to thousands of client computers served. At the same time a report generated on the server side should be prepared for output on a certain printer type. Taxxi Communicator helps to solve the problem keeping all the device parameters and sending them to a server-side application along with requests for reports.
Local configuration of Taxxi Communicator
Taxxi Communicator can also be set up to automatically choose an applicable password when a user with access rights attempts to connect to a certain application.
Data Security
Technologies implemented in Taxxi and baikonur allow designers to develop secure and thoroughly protected systems. Security of any system comprises a number of various aspects: prevention of an unauthorized access, traffic encryption, protection against intruders, accessibility of system services, etc.
To prevent an unauthorized access baikonur Server uses a special security configuration tool which describes in detail every user’s rights and privileges in regard to specific resources.
Taxxi Communicator’s Control Center
The traffic can be encrypted either with the embedded SSL technology supporting key lengths from 40 to 128 bits, or with external cryptographic facility.
The product disables loading of any programs, modules or applets during remote sessions, thus ensuring a high level of user’s protection. All received information is passive and doesn’t threaten system security.
SCO Tarantella
A step further has been made by SCO in its Tarantella ultra thin client. The company has come to a logical conclusion that there is no necessity to disassemble graphical I/O dataflow at the server side, producing such tiny details of complex images as vectors and areas. All the graphics is generated by programs using Motif-based libraries, i.e. with high-level Motif procedure calls, and it is too cumbersome to send the results of server processing to the client. Instead, only procedure calls should be included into the protocol, which are afterwards executed on the client side.
That is the principle of Tarantella technology. Given the fact that SCO Unix includes the means of emulating Windows-compatible programs we can say that the product has given a new momentum to this Unix version.
Taxxi Communicator and baikonur Taxxi Server
Taxxi technology can be attributed to thin clients only with some reservations, though by architecture it greatly differs from other products mentioned. Taxxi, like Tarantella, receives and transmits high-level information about controls comprising I/O area. but whereas Tarantella uses functional descriptions (and Motif represents a function-oriented library) Taxxi deals with objects forming the so-called “object surface”. In this sense a screen is considered in Taxxi only as one of the object surfaces supported by the system.
Support of protocols and transactions in Taxxi is provided by a separate Personal baikonur module. This truncated version of a telecommunication monitor is also included in two server software products - baikonur SuperServer and baikonur Taxxi Server. The module functions and possibilities of such an architecture could be better understood from the following examples.
1. Taxxi Communicator, which in any circumstances remains a zero administration client, not always can be considered as an ultra thin client because it is quite deeply involved in the information processing. In the case with analytical data Taxxi Communicator might transfer not only resulting images, as X Server or Winframe server does, but also data for compiling OLAP information at a client. In some cases Taxxi Communicator assumes additional tasks for interaction with information from a remote server. It’s especially true when it deals with file and transaction information.
2. Let’s take a close look at the support of drag and drop technology provided in Taxxi Communicator and remember that it’s supported neither in Winframe nor in Tarantella. One could easily imagine a user in Moscow who gets instant access to resources in London and Tokyo. Suppose next that a program in Tokyo transmits real-time data about bargains at the Tokyo stock exchange and there is a financial analytical program in London which can be rented for a moderate charge. Taxxi allows the Moscow user to utilize both of them implementing the following drag and drop technique. When he sees information about an interesting deal he just has to drag it from the ticker tape and drop onto the London analytical program. Dragging information from one side of the Earth and dropping it at the opposite one - isn’t it fantastic? To avoid any problems in this process it’s absolutely necessary to provide a transaction support and synchronization control which are implemented by Personal baikonur telecommunication monitor.
Dragging the data from one corner of the Earth to another
3. Taxxi also differs from other ultra thin clients in the area of data encryption. Personal baikonur, baikonur SuperServer and baikonur Taxxi Server support SSL 3.0 standard without any limitation on the algorithm key length. The evolution of this standard and development of new specifications won’t require any changes in current programs because the secure channels support here is separated from application algorithms. Products developed for Taxxi can support not only SSL 3.0 but also other hardware and software encryption tools. To help in the implementation of this possibility Epsylon Technologies licenses a special API to third parties and offers assistance in designing and customizing such solutions.
4. Taxxi Communicator client includes a full featured telecommunication monitor of transactions. On the computer screen a user can see various applications simultaneously run at different locations of the world. This feature has already been mentioned when we discussed dragging and dropping information between London and Tokyo programs. Another interesting case is described below.
Although Personal baikonur installed on the client is nothing else than an application server, it is not permissible to run applications on remote client computers. Main reasons for this lie in security considerations. but a user can manually run the custom software which is connected to Personal baikonur and begins to function like a server-side multi-user application. With Tarantella or Winframe nothing of this kind is possible. Maybe it’s difficult for somebody to evaluate the potential use of the feature so let’s recall ICQ - a well known program for instant communication, which implements this very technique. You can also imagine dragging and dropping data from a client machine in Chicago to a server in bratislava or vice versa.
Interaction of Taxxi user with a resource
5. What does the use of a high-speed application server at the server side mean to Taxxi Communicator? Strange as it may appear but there are both pros and cons in this. Designers of Winframe and Tarantella have made their best to ensure that remotely used applications won’t need any changes and all personal applications will always be ready for server use. This is mostly the case, and desktop applications follow the scheme “one application - one user”. but it’s safe to say that the developers didn’t suppose their products could be used as server-side applications. Accordingly, they didn’t apply any special libraries or methods aimed at increasing the effectiveness of such applications in multi-user systems. As a consequence these products have a very low load-carrying capacity and a high demand for resources. It results in slow reaction to the user activities and other undesirable effects. On the other hand, this approach allows using standard server-side applications without any alterations in them.
The goal of Taxxi and baikonur technologies from the very beginning has been to provide a high load-carrying capacity and support the multitude of concurrent users. Such inherent features as high throughput and ability to withstand considerable loads allow Taxxi servers to support many users simultaneously working in the system.
Conclusions
As we could see, Taxxi Communicator represents an implementation of a new technology offering unique features and characteristics. The product is very promising, however the practical realization of the technology requires intensive planning because it has unique strengths and weaknesses.
Ultra Thin Client Technologies
There is nothing new in the idea of remote data communications. It was first implemented in terminals, that had appeared long before the personal computers era. Unfortunately, the first terminals supported only rudimentary sets of commands which hardly could satisfy common users.
X Terminal
Unix became the first widespread multi-user operating system, but its users had to deal with the command line. To streamline the working process the X Window technology was developed providing a rich graphic interface for remote users. It intercepted all information sent to I/O devices (graphical terminals), packed it into X protocol and transferred through a network to a remote terminal. Then the received information was disassembled and displayed on a graphical monitor.
X protocol carried information about vectors and areas composing the current on-screen image. This method allowed one to transfer graphic information but produced quite a big traffic between a server (computer supporting X Window) and a remote graphic X terminal.
Citrix Winframe, Microsoft WTS and Citrix Metaframe
X Window technology has been designed only for Unix variations. The evolution of multi-user features of Microsoft’s operating systems stimulated commercial realization of the same idea on the Windows platform. Soon Citrix Systems Inc. brought out its Winframe software packet, implementing ICA protocol for Windows 3.51, and then licensed its products for the new Microsoft environment - Windows NT 4.0 Terminal Edition.
In many ways Winframe resembles X Window; it also allows transferring on-screen images to specialized remote clients. At the same time Winframe can be used in heterogeneous environments because Citrix’ technology supports a number of different platforms.
Taxxi vs. WTS and MetaFrame
Last May Citrix and Microsoft stroke a big deal on $175 million according to which Microsoft licensed some Citrix’ technologies for use in its special version Windows NT for remote users. Soon after the contract had been signed Citrix brought out a new version of its Winframe, which was dubbed MetaFrame. Like WTS, MetaFrame supported a multi-user access to Windows NT servers. Microsoft solutions and RDP protocol supported by Microsoft are intended for Windows users and based on the TCP/IP. Unlike them Citrix’ technologies are designed atop the ICA protocol and support different platforms (including DOS, OS/2, Win CE, Unix, MacOS). Additionally, Citrix’ solutions support not only TCP/IP but also other transport protocols - FrameRelay, NetbEUI, IPX/SPX, etc. both Microsoft and Citrix position their solutions as corporate products and claim they are ready to support a remote access to single-user programs just out of the box.
Taxxi Communicator’s approach to server applications access differs from that of WTS and MetaFrame clients. The main difference is that Taxxi Communicator is aimed at applications specially designed for running under baikonur Taxxi Server (however, single-user versions of these applications can be run without the server).
Thus, Citrix and Microsoft technologies allow the use of one-user products in multi-user environments as server-layer applications, whereas the solution offered by Epsylon Technologies Inc. has another intention - to use multi-user products as desktop applications.
The multi-user application design technique based on visual components practically doesn’t differ from standard methods of personal applications developing except for using special component libraries.
System Architecture
WTS and MetaFrame are tightly integrated with Windows NT environment. Unlike them baikonur Taxxi Server (which currently is available for Windows 95/98 and NT) can be easily redesigned for Unix.
ICA and RDP protocols are used to transfer remote user’s screen images and COM ports configuration, as well as information about mouse clicks and key pressing through virtual channels. In other words technology used in these protocols can be compared with “lengthening” of cables connecting I/O devices of a remote machine to the server. When a server-based program outputs the image to the screen, pixels are not displayed on the server monitor but instead are sent to a remote computer connected to the network.
This technique implies that an operating system works in remote user’s context and saves copies of system engines for every user session. For example, WTS can support the simultaneous work of two concurrent users even if their client computers have different screen resolution, say 1200x1024 and 640x480.
Taxxi Communicator uses HTTP protocol to transfer object XML descriptions of a remote interface, which are much more compact than information about screen pixels. Due to this feature proxy servers and inter-network screens (firewalls) do not constitute extra problems for Taxxi Communicator.
Taxxi Communicator contains also the light version of baikonur Taxxi Server called Personal baikonur which provides all the interactions with networks. It allows establishing concurrent asynchronous connections with multitude of different servers. WTS and MetaFrame clients connect to the networks using their own functions.
Network Connection Throughput
RDP and ICA protocols produce a constant traffic of 10 kbps or more between the server and remote user even when the latter doesn’t take any actions (pressing keys or moving mouse, for example). For this reason the channel bandwidth should be not less than 20 kbps.
Taxxi Communicator, on the contrary, doesn’t require constant bandwidth because it begins to transfer data through the network only when changes in server application occur or in case of user activity.
When a user works intensely ICA and RDP traffic exceeds 20 kbps necessitating a special method of compression and other additional features to reduce traffic.
Taxxi Communicator stands out among these products because its user can comfortably work even when the channel throughput is limited to 4,800 bps. Thus the new technology can be effectively used with overloaded or non-reliable channels.
Load-Carrying Capacity
It’s not easy to draw an objective and comprehensive comparison of load-carrying capacity of all these technologies and objectively evaluate the upper limit of their users number because the products are too different in what refers to architecture and positioned absolutely differently. Taxxi technology from the very beginning has pursued the purpose of achieving the highest possible load-carrying capacity and efficacy by using all accessible architectural and technological methods. Citrix and Microsoft, on the contrary, have made their best to eliminate the necessity of application recompiling.
Security Aspects
Taxxi Communicator, WTS and MetaFrame support data channel encryption but do it in different ways. Due to its specific architectural features MetaFrame can selectively encrypt data transferred from different devices. For example, the product can encrypt all the information about key pressing and mouse clicks but transfer screen images in a plain form. Separate encryption is especially important when it is necessary to provide the secure password entry from a keyboard without encryption of the screen images. This allows cutting the computer load and reduce the network traffic.