Independent Computing Architecture

The protocol lays down a specification for passing data between servers and clients, but is not bound to any one platform.

Citrix's ICA is an alternative to Microsoft's Remote Desktop Protocol (RDP).

It also provides for the feedback of user input from the client to the server, and a variety of means for the server to send graphical output, as well as other media such as audio, from the running application to the client.

The key challenges in an architecture are network latency and performance—a graphically intensive application (as most are when presented using a GUI) being served over a slow or bandwidth-restricted network connection requires considerable compression and optimization to render the application usable by the client.

The client machine may be on a different platform and may not have the same GUI routines available locally; in this case, the server may need to send the actual bitmap data over the connection.