XenDesktop 3 Architecture and Design
Transcript of XenDesktop 3 Architecture and Design
XenDesktop Design and ArchitectureJamie Baker Sr. Escalation Engineer
AgendaXenDesktop 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
PC
Session 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 Vmware Virtual Center MS SCVMM Virtual Machines
Pool Management Service
Pool Master
Pool Management
Virtual Machines
Desktop Delivery Controller Pool Management Service
Pool Master
Addresses=[http://10.54.76.172,http://10.54.76.173][http://10.7.1.21,http://10.7.1.22]
Virtual Machines
Pool ManagementPool Master
Desktop Delivery Controller Pool Management Service
Virtual Machines
Pool Master
Virtual Machines
Desktop Delivery Controller Pool Management Service
Pool Master
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 relationshipBefore Redirection / Not RedirectedDesktop Receiver(client)
Once RedirectedVirtual Desktop Agent(PortICA)
Apps
Apps
Standard Drivers
USB Redirection Manager
ICA Client
PortICA stack
USB Service
Standard Drivers
Interception driver (pass through)
Interception driver
MS USBHUB
MS USBHUB
Citrix USB bus 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 LearningThe 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