Flylib.com

Books Software

 
 
 

ICA Extensibility

ICA Extensibility

ICA is a flexible and extensible protocol. The protocol is designed to accommodate varying degrees of client capability. During handshaking, the ICA client communicates information including screen resolution, color depth, and cache size . The ICA server re-ceives these parameters from the client and adjusts to this information by providing the appropriate drivers and other settings to make the application perform as though it’s running on a local workstation. This communication allows for a wide variety of ICA clients , ranging from fixed-function monochrome terminals to high-end workstations.

Through its virtual-channel architecture, ICA can be extended to include new data types, such as sound and video. Virtual channels can also be used to support auxiliary client devices such as badge readers, wands, and scanners .

The modular design of the ICA protocol allows the supporting layers below it to be expanded. For example, the existing encryption layer can be augmented with RSA (Rivest-Shamir-Adleman) encryption or DES (Data Encryption Standard) encryption. Converters, such as those converting an ICA protocol to X.11, can be added in, and new transport protocols, such as ATM, can easily be supported.

You can augment ICA with encryption, new transports, and new protocol extensions from third parties.

Connecting an ICA Client to a WinFrame Session

To take advantage of the ICA protocol features, ICA clients must connect to a WinStation, a user session on the WinFrame server. The configuration of the WinStation defines the attributes of a remote-control session that runs on the WinFrame server. A Win-Station is primarily associated with a network connection, but it can also be associated with a serial COM port to provide direct ICA dial-up access to the WinFrame server.

Accessing a WinFrame Server Through LANs and WANs

To attach to a WinFrame server across a LAN or a WAN, WinFrame requires that a network transport (such as IPX/SPX, TCP/IP, or NetBEUI) exist between the ICA client and the WinFrame server.

Once this transport is in place, the ICA protocol builds a list of available WinFrame servers. The ICA client then connects to the server via the transport specified in the ICA client configuration.

The ICA protocol stack is dynamically configured to meet the needs of each transport protocol. For example, the IPX protocol by itself does not guarantee packet delivery, so WinFrame adds a protocol driver to ensure that the data is reliably transmitted between the ICA connection and the host and that it is received by the client. However, because IPX is a frame-based protocol, a frame driver is not included in this particular ICA protocol stack. The Transmission Control Protocol (TCP), however, is a stream protocol; in this case, a frame driver is included. TCP is reliable; therefore, the Reliable protocol driver is not added to the stack. Figure 3-7 illustrates the ICA protocol stack and drivers.

FIGURE 3-7

The ICA protocol stack and drivers

The ICA protocol stack includes the following protocols:

  • Compression The Compression protocol can encapsu-late an encrypted ICA packet. This protocol is system replaceable and is not strictly defined in the ICA protocol definition.

  • Encryption The Encryption protocol can encapsulate an encrypted ICA packet. This protocol is system replaceable and is not strictly defined in the ICA protocol definition.

  • Reliable The Reliable protocol is a transmission packaging protocol used to detect transmission errors and to request resends of data. This protocol is used in conjunction with any transport mechanism that does not provide guaranteed delivery. Two such mechanisms are Novell’s IPX protocol and standard asynchronous connections.

  • Framing The Framing protocol is a transmission packaging protocol used to manage stream-oriented communications, such as asynchronous communications and TCP. It is used in conjunction with the Reliable protocol to provide error-free data transmission.

  • Modem Control The Modem Control protocol allows for modem detection and initialization prior to connection.