Sei sulla pagina 1di 39

XenDesktop Design and

Architecture
Jamie Baker
Sr. Escalation Engineer
Agenda

XenDesktop Architecture Review

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
PC Management
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 Virtual Machines
• Vmware Virtual Center
• MS SCVMM

Pool Master
Pool Management Service
Pool Management
Virtual Machines

Desktop Delivery Controller Pool Master


Pool Management Service
Addresses=[http://10.54.76.172,http://10.54.76.173][http://10.7.1.21,http://10.7.1.22]
Virtual Machines

Pool Management

Pool Master

Desktop Delivery Controller Virtual Machines


Pool Management Service

Pool Master
Virtual Machines

Desktop Delivery Controller Pool Master


Pool 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
Before Redirection Once Redirected
/ Not Redirected
Desktop Receiver Virtual Desktop Agent
(client) (PortICA)

Apps Apps

USB Redirection
ICA Client PortICA stack USB Service
Standard Manager Standard
Drivers Drivers

Interception driver
Interception driver
(pass through)

MS MS Citrix USB bus


USBHUB USBHUB driver

Device Device
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-Client
commands
• 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


TechEdge Survey & Posting of PPTs
• 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

Potrebbero piacerti anche