Clients and Agents

Added by James Rabey , last edited by James Rabey on Apr 28, 2008
Tags: 
(None)

Functions exist at the receiver endpoint of the ADI that collect the dynamically delivered modules, and reassemble them for execution. These functions are:

  • Server-side app virtualization, where the client receives the presentation layer (OSI Model Layer 7) from the applications executing in the datacenter, and coordinates commands from the local hardware components (screen, keyboard, and mouse) so they can interact with the applications and desktops delivered via server-side app virtualization or system virtualization.
  • Application access control, where the client interacts with an access control appliance to create a virtual private network (VPN) between the end-user device and the datacenter.
  • End-user experience management, where an agent records and transmits endpoint performance data.
  • WAN optimization, where an agent interacts with a WAN optimization controller to provide local data compression, caching, protocol optimization, and quality of service (QoS) functions when there is no local WAN optimization controller (such as, when there is a single end-user device at the destination).
  • Password management that scans local applications for authentication prompts, and then stores the credentials either locally or on a central store in the datacenter.

Note:  Currently, these clients and agents only run on the operating system of the end-user device. In the future, they will also run on a hypervisor or on the hardware directly.

End-user devices operate visibly, with their own user interfaces that allow the user to initiate and customize their experience. Agents work in the background, collecting user experience and other types of data to send to the management infrastructure, to complete the loop-back to the datacenter where application delivery is initiated.

In some cases, clients interact with the local endpoint environment; for example, they may be able to cut-and-paste between local and virtualized applications. In other cases, clients run in isolated environments during execution, and will remove themselves afterward, leaving no footprint behind. This interoperability or isolation is flexible; it is based on the security and user-experience requirements of each unique application delivery session.

This type of interaction is evolving into an optimal architecture where common functionality is shared by clients through a light-weight base component. In this new architecture, the base would perform functions such as downloads and update management, authentication, and license management. The individual application delivery clients would then perform their specific functions, while leveraging the base functionality as services.