The ICA protocol is a proprietary protocol designed by Citrix and is used for client/server communication in XenApp and XenDesktop. It runs over TCP port 1494, but it may be encapsulated in Common Gateway Protocol (CGP) over TCP port 2598 when using Session Reliability (recommended with XenApp 7.5, as stated in the Chapter 3, Monitor and Optimize End User Experience). You'll learn the importance of CGP later in this chapter.
The ICA protocol comprises virtual channels, as shown in the following diagram. A virtual channel consists of a driver running on the client side; it communicates with a server-side application. It transports data for redirected peripherals (keyboard, printer, and so on) or for Citrix functionalities (clipboard, licensing, and so on). A couple of channels are also available for Original Equipment Manufacturers (OEMs).