Jamie Baker Sr. Escalation Engineer XenDesktop Design and Architecture

Preview:

Citation preview

Jamie Baker

Sr. Escalation Engineer

XenDesktop Design and Architecture

XenDesktop Architecture Review

Agenda

Pool Management

USB Redirection

Troubleshooting Tools and Techniques

XenDesktop Architecture

Inter-DDC Communication

• Independent Management Architecture• Similar to the role IMA takes in XenApp

• Central Data Store

• Zone Data Collector handles Dynamic

Store

• Limited to one zone

Inter-DDC communication

Farm Management

Session ManagementPC

Virtual Machine Registration

• On the Virtual Desktop Agent Machine• Citrix Desktop Service

• On the Desktop Delivery Controller• Citrix Desktop Delivery Service

• Independent Management

Architecture

Virtual Machine Registration

Enumeration and Connection

• Citrix XML Service

• IMA Service

• Desktop Delivery Service

• Citrix ICA Service

• Citrix CGP Service

User Authentication and Pool Resolution

Desktop Connection

Pool Management

Services Involved

• Citrix Pool Management Service

• Hosting Infrastructure• XenServer Pool Master

• Vmware Virtual Center

• MS SCVMM

Virtual Machines

Pool MasterPool Management Service

Virtual MachinesPool Management

Pool MasterDesktop Delivery ControllerPool Management Service

Addresses=[http://10.54.76.172,http://10.54.76.173][http://10.7.1.21,http://10.7.1.22]

Pool Management

Desktop Delivery ControllerPool Management Service

Virtual Machines

Pool Master

Virtual Machines

Pool Master

Virtual Machines

Pool MasterDesktop Delivery ControllerPool Management Service

USB Redirection

Device information

• Identifying a device• Descriptors

• String, Device, Configuration, Interface, Endpoint & more

• Device/interface classes & subclasses• Mass storage, Image, etc.

Modified components

• Modified components• Policy

• Presentation Server console, IMA, DDC, PortICA configuration defaults

• PortICA configuration schema• PortICA service

• Workstation Agent

• Desktop Toolbar

New components

• New components• Citrix USB Service

• Protocol handling, Policy lookup and enforcement

• Citrix USB bus driver• Presents devices to system

• ctxusbf.sys – USB filter driver• Filter on all USB devices

• ctxusbr.sys – USB redirection driver• ‘Dummy’ device driver for redirected devices

• vdgusbN.dll – USB virtual channel

Endpoint / VDA relationship

ICA ClientICA Client PortICA stackPortICA stackUSB Redirection

ManagerUSB Service

Desktop Receiver(client)

Virtual Desktop Agent(PortICA)

StandardDrivers

StandardDrivers

AppsApps

Device

Interception driver

Citrix USB bus driver

Interception driver(pass through)

StandardDrivers

StandardDrivers

AppsApps

MSUSBHUB

MSUSBHUB

Device

Before Redirection/ Not Redirected

Once Redirected

MSUSBHUB

MSUSBHUB

User mode components

• Workstation Agent• Policy handling

• Read from GPO registry keys

• PortICA configuration• Written into configuration sent to ICA

service

• Citrix USB Service• Policy reading (from configuration)

• Policy enforcement

• Data pump

Kernel mode components

• Citrix USB bus driver• Control device – communication with USB Service

• Device stack – Handles• IOCTLs from function drivers

• Certain interface requests (e.g. USB_BUS_INTERFACE_USBDI_V0)

Desktop Receiver

• ctxusbf.sys – USB filter driver• Upper class filter on USB hubs

• Lower filter on device stacks

• Reads policy from registry:• HKLM\Citrix\ICA Client\GenericUSB\DeviceRules

• HKLM\Policies\Citrix\ICA Client\GenericUSB\DeviceRules

• Changes VID & PID on-the-fly

Desktop Receiver

• ctxusbr.sys – USB redirection driver• ‘Dummy’ device driver

• Command pump for Host-to-Clientcommands

• Sends responses back to client

• Handles asynchronous URBs

• vdgusbN.dll – USB virtual channel• Communicates with toolbar

• Data pump to/from server/client

Troubleshooting Tools and Tips

VDA registration issues

• XDPing tool• Services on the DDC

• Networking

• DNS

• Desktop Service Logging• CTX117452

• CDFControl

Pool Management Failures

• Logging in Pool Management Service• CTX117452

• XenServer logs

• CDF Tracing

• XDPing tool

Desktop Connectivity Failures

• CDF tracing

• Event Logs on VDA

• Standard IMA resolution troubleshooting

• Standard ICA connection troubleshooting

• Network tracing

• XDPing

Case Study - User Association with a VDA is Lost

• Username shows as "-" in AMC

• User cannot reconnect to session once disconnected

• User token is captured by ctxidhlpr.exe on session start

• Token is not cached

• Restart of the Desktop Service loses the token

Case Study - User Association with a VDA is Lost

• The desktop service does not get user token on re-launch

• Reassociate the token by running ctxidhlpr.exe in the user session

• Do Not Restart the VDA Desktop Service without reason!

Case Study – Pool Management Churn

• Idle pool spins up several VDAs

• Registration does not take place in 3 minutes

• Pool Manager Starts up more VDAs

• Eventually all register

• Pool Manager shuts down extra VDAs

Case Study - Pool Management Churn

• Pool Management Logs

• Desktop Service Logs

• Performance Logs from Hosting Infrastructure

• XDPing test to FQDN of the VDA

• Correctly Size Your Hosting Infrastructure during transitional periods!

Recap

• XenDesktop Architecture is similar to XenApp Architecture

• XenDesktop 3.0 provides:• XenServer Pool Master failover

• USB device redirection

• Use plaintext logging and XDPing for troubleshooting

Questions??

Continue Your Learning

The following course expands on today's topics and is recommended to support your Citrix solution:

• CXD-200 Implementing Citrix XenDesktop 3

Visit www.citrixeducation.com for more information

• If you complete the survey, you will be entered to win the $250 Amazon gift card.The winner will be announced May 29th

• TechEdge survey link: http://www.citrix.com/techedgesurvey

• Link will also be emailed to all attendees

• The TechEdge PPTs will be posted on the Knowledge Center by Tuesday, May 5th

TechEdge Survey & Posting of PPTs

Recommended