530 likes | 790 Views
HDX MediaStream Flash Redirection Configuration and Troubleshooting. Ken Baldwin, Escalation Engineer Richard Dowell, Escalation Engineer Tuesday, May 24 th 2011. Agenda. What is HDX MediaStream Flash Redirection? Technical Deep Dive Configuring HDX MediaStream Flash Redirection
E N D
HDX MediaStream Flash RedirectionConfiguration and Troubleshooting Ken Baldwin, Escalation Engineer Richard Dowell, Escalation Engineer Tuesday, May 24th 2011
Agenda • What is HDX MediaStream Flash Redirection? • Technical Deep Dive • Configuring HDX MediaStream Flash Redirection • Troubleshooting HDX MediaStream Flash Redirection • Additional Information / QA Citrix Confidential - Do Not Distribute
Adaptive Orchestration What is HDX? HDX Receivers Repeaters Gateways Controllers Citrix Confidential - Do Not Distribute
HDX™ MediaStream Flash Redirection (HDX Flash) • How it works • Known limitations • Why it’s important Citrix Confidential - Do Not Distribute
What does HDX Flash Redirection do? • Dynamically redirects ActiveX Flash • Switches between server and client rendered • Centrally configured Citrix Confidential - Do Not Distribute
Client-side Rendered - Flash Redirection Flash Content HTML Receiver ICA Server HDX ICA Session CTXFlash Virtual Channel PseudoContainer.exe Hosts ActiveX Container PseudoServerInProc.dll Redirects ActiveX Calls Citrix Confidential - Do Not Distribute
Server-side Rendered Flash (HDX Broadcast) Flash Content HTML Receiver Controller HDX ICA Session Thinwire Citrix Confidential - Do Not Distribute
Known Limitations • Windows/Internet Explorer • Adobe ActiveX Flash Player • ICA Session Latency (<30-50ms), • Requires up to 500kbps available session bandwidth • Online Plugin 11.2+ Citrix Confidential - Do Not Distribute
Why use HDX MediaStream Flash Redirection? • Uncompressed audio & video playback (High-Def) • Utilizes client GPU/CPU for decoding • Offloads server resource overhead • Reduction in network bandwidth requirements • Increased server scalability Citrix Confidential - Do Not Distribute
Agenda • What is HDX MediaStream Flash Redirection? • Technical Deep Dive • Configuring HDX MediaStream Flash Redirection • Troubleshooting HDX MediaStream Flash Redirection • Additional Information / QA Citrix Confidential - Do Not Distribute
HDX MediaStream for Flash – Key Components Main Components • ActiveX Redirection • Content Fetching • Adaptive Orchestration Citrix Confidential - Do Not Distribute
ActiveX – A Brief History • Based on COM • ActiveX Controls • Originally called OLE Control (.OCX) Citrix Confidential - Do Not Distribute
ActiveX Redirection ActiveX Control ActiveX Container Server side of HDX Flash ‘Pseudo’ Server Hooks into Internet Explorer Redirects ActiveX Flash Player Decides whether or not to redirect • Client side of HDX Flash • ‘Pseudo’ Container • Supplies an environment in which an ActiveX control can run • Manipulates, manages, and provides services to local ActiveX Flash Player Citrix Confidential - Do Not Distribute
ActiveX Flash Redirection ActiveX Control ActiveX Container ICA Client PseudoContainer.exe Flash Player ICA Server PseudoServerInProc.dll Internet Explorer ICA Client PseudoContainer.exe Flash Player ICA Server PseudoServerInProc.dll Internet Explorer ICA Client PseudoContainer.exe Flash Player ICA Server PseudoServerInProc.dll Internet Explorer Redirected ActiveX Calls Citrix Confidential - Do Not Distribute
Effects of Network Latency on ActiveX Redirection ICA SessionLatency ActiveX Control ActiveX Container PseudoContainer.exe Delay = (# of ActiveX interface calls) x (Round-trip Network Latency) Example: (70 calls) x (50 ms), Delay = 3.5s ICA Server PseudoServerInProc.dll Internet Explorer Redirected ActiveX Calls Citrix Confidential - Do Not Distribute
Flash Redirection: Content Fetching Client Side Server Side Client fetches Flash content PseudoServer sends the original URL to PseudoContainer Client needs to be on the same domain as the server for secure content • Server fetches Flash content • PseudoServer substitutes URL of content with file:// address • Allows server to proxy authentication requests on client behalf • Limited access endpoints Citrix Confidential - Do Not Distribute
Content Fetching: Client-Side vs. Server-Side Text Box ICA Session ICA Session Client-Side Content Fetching Client fetches Flash content directly from the web server. Server-Side Content Fetching Client uses ICA Server as a Proxy Fetch Flash Content For Client ICA Server ICA Server Flash Content (.swf, .flv) PseudoServerInProc.dll PseudoServerInProc.dll Fetch Flash Content From ICA Server CTXFlsh CTXFlsh Fetch Flash Content Directly Pseudo Container Pseudo Container PseudoContainer.exe PseudoContainer.exe ICA Client Flash Player Flash Player ICA Client
Adaptive Orchestration: Dynamic Blacklist Internet Explorer page is refreshed, Server-Side Rendering Occurs ICA Session Dynamic Blacklist ICA Server Failed URL Added to Blacklist Flash Content (.swf, .flv) PseudoServerInProc.dll CTXFlash ICA Client ICA Client Flash Player Client Fetches and Renders Flash Content
Adaptive Orchestration: Network Latency • Measures network latency and available bandwidth • Network Latency Detection • Measures ‘ICA Ping’ round trip time • Measures ‘Latency - Session Average’ ICA Session Counter • Uses lowest value of the two in the decision of where to render • If latency exceeds the maximum threshold, HDX falls back to Server-Rendered Flash
Agenda • What is HDX MediaStream Flash Redirection? • Technical Deep Dive • Configuring HDX MediaStream Flash Redirection • Troubleshooting HDX MediaStream Flash Redirection • Additional Information / QA Citrix Confidential - Do Not Distribute
HDX Flash Prerequisites v11.2+ XenApp 5+ XenDesktop 4+ LAN <30ms Latency Citrix Confidential - Do Not Distribute
Server Configuration • Server-Side Settings • Use the HDX-Flash-Server.ADM template in Group Policy Editor • Registry: • SOFTWARE\Citrix\HdxMediaStreamForFlash\Server\PseudoServer: UseFlashRemoting ; ValueOn = “Always”, ValueOff = “Never” Citrix Confidential - Do Not Distribute
Policy based Config Citrix Confidential - Do Not Distribute
Client Configuration • Client-Side Settings • Use the HDX-Flash-Client.ADM template in Group Policy Editor • Desktop Viewer: • Registry: • Software\Citrix\HdxMediaStreamForFlash\Client\PseudoContainer: UseFlashRemoting ; ValueOn = “Always”, ValueOff = “Never”, Prompt = “Ask” • Desktop Viewer preferences stored in: HKCU\Software\Citrix\ICA Client\HdxMediaStreamForFlash\DesktopViewer\Desktop Group Name: UseFlashRemoting ; ValueOn = “Always”, ValueOff = “Never”, Prompt = “Ask” Citrix Confidential - Do Not Distribute
Configuring Server Side Content Fetching • Enable on the client via GPO • Add URLs on the server whitelist via GPO • Wildcards are permitted, use * to enable SSCF for all sites
Configuring the Dynamic Blacklist • Disable using the following registry setting • HKLM\SOFTWARE\Citrix\HdxMediaStreamForFlash\Server\PseudoServer: "DynamicFallbackEnabled"=dword:00000000 • HKLM\SOFTWARE\Citrix\HdxMediaStreamForFlash\Client\PseudoContainer]: "DynamicFallbackEnabled"=dword:00000000
Simulating the Dynamic Blacklist • Simulate by killing PseudoContainer.exe on the client • Verify URL is added to the dynamic black list HKEY_CURRENT_USER\Software • For IE7 and IE8 in non-protected: …\Citrix\HdxMediaStreamForFlash\Server\PseudoServer\DynamicBlacklist • For IE8 in protected mode: …\Microsoft\Internet Explorer\InternetRegistry\REGISTRY\USER\SID\ Citrix\HdxMediaStreamForFlash\Server\PseudoServer\DynamicBlacklist
Cookie Replication Same cookies Same cookies ICA Protocol
Configuring Cookie Replication • Use the HDX Flash Client GPO template • Enable cookie replication Citrix Confidential - Do Not Distribute
Limitations of Cookie Replication • HttpOnly attribute not supported • Synchronization occurs server-to-client only • Improper handling when client modifies or deletes the cookie • Persistent client-side cookies
Agenda • What is HDX MediaStream Flash Redirection? • Technical Deep Dive • Configuring HDX MediaStream Flash Redirection • Troubleshooting HDX MediaStream Flash Redirection • Additional Information / QA Citrix Confidential - Do Not Distribute
Troubleshooting HDX Flash Redirection • HDX Experience Monitor • EventLogs • Tracing • HTML Debugging Citrix Confidential - Do Not Distribute
HDX Experience Monitor Citrix Confidential - Do Not Distribute
HDX Experience Monitor – HDX MediaStream for Flash Details Citrix Confidential - Do Not Distribute
HDX Experience Monitor – Dynamic Blacklist Citrix Confidential - Do Not Distribute
HDX Experience Monitor – Flash Network Performance Citrix Confidential - Do Not Distribute
Windows EventLog – Server Settings • Enable Server-Side Logging • [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Citrix\HdxmediaStreamForFlash\ Server\PseudoServer\] • "EventLogging"=dword:00000001 • Disable event throttling so all events are logged • [HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\HdxMediaStreamForFlash\Server\] • "EventTimeThrottle"=hex(b):00,00,00,00,00,00,00,00 Citrix Confidential - Do Not Distribute
Windows EventLog – Service Log Citrix Confidential - Do Not Distribute
Windows EventLog – Windows 7 Setting • wevtutil ep |more • wevtutil im "c:\program files\citrix\icaservice\resource\en\hdxflasheventmessagesman.man" Citrix Confidential - Do Not Distribute
30ms Windows EventLog Citrix Confidential - Do Not Distribute
Tracing: Server-Side CDF Traces • MF_DLL_FlashCore • MF_DLL_FlashTransport • MF_Service_CtxFlashSvc Citrix Confidential - Do Not Distribute
Tracing: Client-Side File Traces HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\HdxMediaStreamForFlash\Client\Tracing"File"=dword:00000001"Level"=dword:00000009"Flags"=dword:ffffffff Setting the log level to 9 traces everything and will greatly impact performance. Citrix Confidential - Do Not Distribute
YouTube Video Doesn’t Play Citrix Confidential - Do Not Distribute
Client-Side File Trace Example Citrix Confidential - Do Not Distribute
Tracing: HTTP Header Traces Citrix Confidential - Do Not Distribute
HTML Debugging: IE Developer Tools (F12) Citrix Confidential - Do Not Distribute
NeedAssistance from Citrix Technical Support? • Capture any Pop-Up Messages • EventLogs (Server and Client) • Run the HDX Experience Monitor tool within the ICA session • Collect tracing (CDF and File) Citrix Confidential - Do Not Distribute
Agenda • What is HDX MediaStream Flash Redirection? • Technical Deep Dive • Configuring HDX MediaStream Flash Redirection • Troubleshooting HDX MediaStream Flash Redirection • Additional Information / QA Citrix Confidential - Do Not Distribute
HDX MediaStream Flash Redirection “Version 2” • Support for WAN-connected users • Protocol abstraction for high latency tolerance for Flash videos (target 300ms RTL) • Linux device support (client-side rendering) requires updated reciever • URL whitelist option and improvements in intelligent fallback to server-side rendering
Resources • CTX124190 - How to Deploy and Configure HDX MediaStream for Flash • CTX126702 - HDX MediaStream for Flash – Client-Side Content Fetching Limitations • CTX125060 - Best Practices for Optimizing HDX Technologies for XenDesktop 4 • CTX125324 - HDX MediaStream for Flash Redirection – Network Latency Performance Issues • CTX123058 - HDX Experience Monitor for XenDesktop • CTX126491 - HDX Experience Monitor for XenApp Citrix Confidential - Do Not Distribute