优化

通过优化环境,可以获得最佳 Citrix Receiver 性能,并提供最佳用户体验。可以通过以下方式提升和优化性能:

映射用户设备

Citrix Receiver 支持针对 XenApp 和 XenDesktop 服务器连接的客户端设备映射。通过客户端设备映射,服务器上运行的远程应用程序将能够访问与本地用户设备相连的设备。对用户设备的用户而言,应用程序和系统资源就像在本地运行一样。使用这些功能之前,请确保服务器支持客户端设备映射。

注意: 安全增强式 Linux (Security-Enhanced Linux, SELinux) 安全模型可能会影响客户端驱动器映射和 USB 重定向功能的运行(在 XenApp 和 XenDesktop 上)。如果需要使用其中一种或两种功能,请先禁用 SELinux,然后在服务器上进行配置。

映射客户端驱动器

通过客户端驱动器映射,可以将 XenApp 或 XenDesktop 服务器上的驱动器盘符重定向到本地用户设备上的目录。例如,可以将 Citrix 用户会话中的驱动器 H 映射到运行 Receiver 的本地用户设备上的某个目录。

会话过程中,客户端驱动器映射可使本地用户设备(包括 CD-ROM、DVD 或 USB 内存条)上装载的任何目录对用户可用,前提是本地用户有访问这些目录的权限。如果服务器配置为允许客户端驱动器映射,用户将可以访问本地存储的文件,在会话期间处理这些文件,然后将其重新保存在本地驱动器或服务器驱动器上。

有两种类型的驱动器映射可供选择:

  • 静态客户端驱动器映射允许管理员在登录时将用户设备文件系统的任何部分映射到服务器上的指定驱动器盘符。例如,该映射可用于映射整个或部分用户的主目录或 /tmp,以及 CD-ROM、DVD 或 USB 内存条等硬件设备装载点。
  • 动态客户端驱动器映射负责监视 CD-ROM、DVD 和 USB 内存条等硬件设备在用户设备上的常规装载目录。在会话期间出现的任何新设备装载目录都将自动映射到服务器上下一个可用的驱动器盘符。

Citrix Receiver 连接到 XenApp 或 XenDesktop 时,如果未禁用客户端设备映射,则将重新建立客户端驱动器映射。可以使用策略来更好地控制客户端设备映射的应用。有关详细信息,请参阅 XenApp 和 XenDesktop 文档。

用户可以使用首选项对话框映射驱动器。

注意:默认情况下,启用静态客户端驱动器映射同时会启用动态客户端驱动器映射。要禁用后者但启用前者,请在 wfclient.ini 中将 DynamicCDM 设置为 False。

映射客户端打印机

Citrix Receiver 支持在网络打印机以及本地连接到用户设备的打印机上进行打印。默认情况下,除非通过创建策略进行修改,否则 XenApp 允许用户执行以下操作:

  • 在用户设备可以访问的所有打印设备上进行打印
  • 添加打印机

但是,这些设置可能并不会在所有环境中都是最佳设置。例如,允许用户在用户设备能够访问的所有打印机上进行打印是一项默认设置,这在开始时是最易于管理的。但是,在某些环境中可能会使登录时间延长。在这种情况下,您可能希望对用户设备上配置的打印机列表进行限制。

同样,组织的安全策略可能会要求您禁止用户映射本地打印端口。为此,请在服务器上将 ICA 策略自动连接客户端 COM 端口设置配置为已禁用。

限制用户设备上配置的打印机列表

  1. 打开配置文件 wfclient.ini,该文件位于以下位置之一:

    • $HOME/.ICAClient 目录,用于限制单个用户的打印机
    • $ICAROOT/config 目录可限制所有 Receiver 用户的打印机。此示例中的所有用户是指在变更后首次使用自助服务程序的用户。
  2. 在文件的 [WFClient] 部分键入以下内容:

    ClientPrinterList=printer1:printer2:printer3

    其中 printer1、printer2 等是所选打印机的名称。用冒号 (:) 分隔各打印机名称条目。

  3. 保存并关闭该文件。

在 XenApp for Windows 上映射客户端打印机

Citrix Receiver for Linux 支持 Citrix PS 通用打印机驱动程序。因此,通常无需在本地进行任何配置,用户即可在网络打印机或用户设备本地连接的打印机上进行打印。但在某些情况下(例如当用户设备的打印软件不支持通用打印机驱动程序时),您可能需要手动在 XenApp for Windows 上映射客户端打印机。

在服务器上映射本地打印机

  1. 从 Citrix Receiver 启动服务器连接,然后登录到运行 XenApp 的计算机。

  2. 在“开始”菜单中,依次选择设置 > 打印机

  3. 在“文件”菜单中,选择添加打印机

    此时将显示添加打印机向导。

  4. 使用该向导添加来自“客户端网络, 客户端”域的网络打印机。这通常是标准打印机名称,与本机远程桌面服务创建的打印机名称类似,例如“HP LaserJet 4 from client name in session 3”。

    有关添加打印机的详细信息,请参阅 Windows 操作系统文档。

在 XenApp for UNIX 上映射客户端打印机

在 UNIX 环境中,将忽略由 Citrix Receiver 定义的打印机驱动程序。用户设备上的打印系统必须能够处理由应用程序生成的打印格式。

要使用户能够通过 Citrix XenApp for UNIX 打印到客户端打印机,管理员必须先启用打印功能。有关详细信息,请参阅 XenApp 和 XenDesktop 文档中的“XenApp for UNIX”部分。

映射客户端音频

实现客户端音频映射后,在 XenApp 服务器或 XenDesktop 上执行的应用程序将可以通过用户设备上所安装的声音设备来播放声音。您可以在服务器上针对每个连接设置音频质量,而用户可以在用户设备上设置音频质量。如果用户设备与服务器的音频质量设置不同,将采用两者中较低的设置。

客户端音频映射可能会给服务器和网络带来过多的负荷。音频质量越高,传输音频数据所需的带宽就越大,音频处理所使用的服务器 CPU 也越多。

可以使用策略对客户端音频映射进行配置。有关详细信息,请参阅 XenApp 和 XenDesktop 文档。

注意:在连接到 Citrix XenApp for UNIX 时,不支持客户端音频映射。

设置非默认音频设备

通常情况下,默认音频设备是为系统配置的默认 ALSA 设备。可以通过以下操作步骤指定其他设备:

  1. 根据受更改影响的用户,选择并打开一个配置文件。有关特定配置文件的更新如何影响不同用户的信息,请参阅 使用配置文件自定义 Receiver
  2. 如有必要,请添加以下选项以创建相应部分:

[ClientAudio]

AudioDevice = <device>

其中 device 信息位于操作系统的 ALSA 配置文件中。

注意:并非所有 Linux 操作系统中的这一信息都位于上述位置。Citrix 建议您查阅操作系统文档,了解有关查找此信息的详细信息。

配置 USB 支持

USB 支持允许用户在连接到虚拟桌面时与大量的 USB 设备进行交互。用户可以将 USB 设备插入其计算机,然后该设备将重定向至其虚拟桌面。可用于远程连接的 USB 设备包括闪存驱动器、智能电话、PDA、打印机、扫描仪、MP3 播放器、安全设备和平板计算机。

USB 重定向要求 XenApp 7.6(或更高版本)或者 XenDesktop。XenApp 不支持对大容量存储设备进行 USB 重定向,并且需要特殊配置才能支持音频设备。有关详细信息,请参阅XenApp 7.6 文档

此外在典型的低延迟/高速 LAN 环境中还支持 USB 同步设备(例如网络摄像机、麦克风、扬声器和耳机)中的常时等量功能。但是,通常情况下,标准音频或网络摄像机重定向更加适用。

XenDesktop 会话不直接支持下列类型的设备,也不使用 USB 支持:

  • 键盘
  • 鼠标
  • 智能卡
  • 耳机
  • 网络摄像机

注意:可将专用 USB 设备(例如,Bloomberg 键盘和 3-D 鼠标)配置为使用 USB 支持。有关配置其他专用 USB 设备的策略规则的信息,请参阅 CTX 119722

默认情况下,不支持某些类型的 USB 设备通过 XenDesktop 进行远程连接。例如,用户可能有通过内部 USB 连接到系统板的 NIC。对这种设备进行远程连接是不适合的。默认情况下,不支持将下列类型的 USB 设备用于 XenDesktop 会话:

  • 蓝牙适配器
  • 集成 NIC
  • USB 集线器

要更新可用于远程连接的 USB 设备的默认列表,请编辑 $ICAROOT/ 中的 usb.conf 文件。有关详细信息,请参阅“更新可进行远程连接的 USB 设备列表”。

要允许 USB 设备远程连接到虚拟桌面,请启用 USB 策略规则。有关详细信息,请参阅 XenApp 和 XenDesktop 文档。

USB 支持的工作原理

用户插入 USB 设备后,系统将根据 USB 策略对该设备进行检查,如果允许,则会将其重定向至虚拟桌面。如果默认策略拒绝连接此设备,则只能在本地桌面中使用。

对于通过桌面设备模式访问的桌面,当用户插入 USB 设备时,该设备会自动重定向至虚拟桌面。虚拟桌面负责控制 USB 设备并在用户界面中显示该设备。

除非正在使用桌面设备模式,否则用户插入 USB 设备以执行重定向时会话窗口必须具有焦点。

大容量存储设备

当 USB 大容量存储设备仍插入本地桌面时,如果用户断开与虚拟桌面的连接,则当用户重新连接时,该设备不会重定向至虚拟桌面。要确保大容量存储设备重定向至虚拟桌面,用户必须在重新连接后移除并重新插入该设备。

注意: 如果将大容量存储设备插入已配置为拒绝远程支持 USB 大容量存储设备的 Linux 工作站,则 Receiver 软件将不会接受该设备。并且可能会打开一个独立的 Linux 文件浏览器。因此,Citrix 建议您预先配置用户设备,并默认清除 Browse removable media when inserted(插入时浏览可移动介质)。在基于 Debian 的设备中,请使用 Debian 菜单栏通过选择以下选项来执行此操作:Desktop(桌面) > Preferences(首选项) > Removable Drives and Media(可移动驱动器和介质)。在 Storage(存储)选项卡上的 Removable Storage(可移动存储)下,取消选中 Browse removable media when inserted(插入时浏览可移动介质)复选框。

注意: 如果“客户端 USB 设备重定向”服务器策略已打开,则大容量存储设备将始终作为 USB 设备进行定向,即使客户端驱动器映射已打开也是如此。

网络摄像机

默认情况下,HDX RealTime 网络摄像机视频压缩可提供最佳网络摄像机性能。但在某些情况下,您可能会要求用户使用 USB 支持功能连接网络摄像机。为此,必须禁用 HDX RealTime 网络摄像机视频压缩。有关详细信息,请参阅召开视频会议时使用 HDX RealTime 网络摄像机视频压缩功能

默认情况下允许连接的 USB 类

默认 USB 策略规则允许连接以下 USB 设备类:

  • 音频(类 01)

    包括麦克风、扬声器、耳机和 MIDI 控制器。

  • 物理接口(类 05)

    这些设备与 HID 类似,但通常提供实时输入或反馈,包括力量反馈式操纵杆、运动平台和力量反馈式外骨骼。

  • 静止图像处理(类 06)

    包括数码相机和扫描仪。数码相机通常支持静止图像处理类,该类使用图片传输协议 (PTP) 或媒体传输协议 (MTP) 将图像传输到计算机或其他外设。相机还可能显示为大容量存储设备。并且可以通过相机自身提供的安装菜单配置相机以使用其中任一类。

    如果相机显示为大容量存储设备,则应使用客户端驱动器映射,而不需要 USB 支持。

  • 打印机(类 07)

    虽然某些打印机使用供应商特定协议(类 ff),但是大多数打印机通常仍包含在此类中。多功能打印机可能具有内部集线器或是复合设备。在这两种情况下,打印元素通常使用打印机类,扫描或传真元素使用其他类,例如,静止图像处理。

    打印机通常在没有 USB 支持的情况下也可以正常工作。

  • 大容量存储(类 08)

    最常见的大容量存储设备是 USB 闪存驱动器;其他大容量存储设备包括 USB 外置硬盘驱动器、CD/DVD 驱动器和 SD/MMC 卡读卡器。许多带有内部存储功能的设备也提供大容量存储接口,包括媒体播放器、数码相机和手机。已知的子类包括:

  • 01 受限的闪存设备
  • 02 典型的 CD/DVD 设备 (ATAPI/MMC-2)
  • 03 典型的磁带设备 (QIC-157)
  • 04 典型的软盘驱动器 (UFI)
  • 05 典型的软盘驱动器 (SFF-8070i)
  • 06 大部分使用 SCSI 的此变体的大容量存储设备

    通常情况下,可以通过客户端驱动器映射来访问大容量存储设备,因此 USB 支持并不是必需的。

    重要:众所周知,有些病毒会使用所有类型的大容量存储实时传播。因此,请慎重考虑是否存在允许使用大容量存储设备(通过客户端驱动器映射或 USB 支持)的业务需求。要降低此风险,可以将服务器配置为阻止文件通过客户端驱动器映射执行。

  • 内容安全性(类 0d)

    内容安全性设备可以加强内容保护,通常用于保护许可或数字版权管理。此类包含硬件保护装置。

  • 个人医疗保健(类 0f)

    这些设备包括血压传感器、心率监测器、步程计、药片监测器和肺活量计等个人医疗保健设备。

  • 应用程序特定和供应商特定(类 fe 和类 ff)

    许多设备使用供应商特定协议或未由 USB 联合会标准化的协议,这些协议通常显示为供应商特定(类 ff)。

默认情况下拒绝连接的 USB 设备类

默认 USB 策略规则拒绝连接以下 USB 设备类:

  • 通信和 CDC 控制(类 02 和 0a)

    包括调制解调器、ISDN 适配器、网络适配器以及一些电话和传真机器。

    默认 USB 策略不允许连接这些设备,因为其中的一个设备可能提供与虚拟桌面自身的连接。

  • 人体学接口设备(类 03)

    包含各种输入和输出设备。典型的人体学接口设备 (HID) 包括:键盘、鼠标、指针设备、图形板、传感器、游戏控制器、按钮和控制功能。

    子类 01 又称为引导接口类,可供键盘和鼠标使用。

    默认的 USB 策略不允许使用 USB 键盘(类 03,子类 01,协议 1)或 USB 鼠标(类 03,子类 01,协议 2)。这是因为即使没有 USB 支持,大部分键盘和鼠标也能够进行恰当的处理。并且连接到虚拟桌面时,通常需要本地使用和远程使用这些设备。

  • USB 集线器(类 09)

    USB 集线器允许将附加设备连接到本地计算机。无需远程访问这些设备。

  • 智能卡(类 0b)

    智能卡读卡器包括非接触式智能卡读卡器和接触式智能卡读卡器,以及具有嵌入式智能卡等效芯片的 USB 令牌。

    可以使用智能卡远程连接功能访问智能卡读卡器,而不需要 USB 支持。

  • 视频(类 0e)

    视频类包括用于处理视频或视频相关材料的设备,例如网络摄像机、数码摄相机、模拟视频变频器、某些电视调谐器,以及一些支持视频流的数码相机。

    默认情况下,HDX RealTime 网络摄像机视频压缩可提供最佳网络摄像机性能。

  • 无线控制器(类 e0)

    包括种类繁多的无线控制器,例如超宽带控制器和蓝牙。

    其中一些设备可能提供关键的网络访问,或者连接关键的外围设备(例如蓝牙键盘或蓝牙鼠标)。

    默认 USB 策略不允许连接这些设备。但是,可能存在适用于提供访问 USB 支持使用权限的特殊设备。

更新可进行远程连接的 USB 设备列表

通过编辑用户设备上 $ICAROOT/ 下的 usb.conf 文件中包含的默认规则列表,可以更新可远程连接到桌面的 USB 设备范围。

要更新列表,可以添加新的策略规则,以允许或拒绝默认范围中所未包含的 USB 设备。管理员通过此种方式创建的规则将控制向服务器提供的设备。服务器上的规则控制接受的设备。

已禁用设备对应的默认策略配置如下:

DENY: class=09 # Hub devices

DENY: class=03 subclass=01 # HID Boot device (keyboards and mice)

DENY: class=0b # Smartcard

DENY: class=e0 # Wireless Controllers

DENY: class=02 # Communications and CDC Control

DENY: class=03 # UVC (webcam)

DENY: class=0a # CDC Data

ALLOW: # 最终回退:允许所有其他设备

创建 USB 策略规则

提示:创建策略规则时,请参阅 USB Web 站点上提供的“USB Class Codes”(USB 类别代码),该站点的网址为 http://www.usb.org/。用户设备上 usb.conf 中的策略规则采用的格式为:{ALLOW:|DENY:} 后跟一组基于以下标记值的表达式:

标记 说明
VID 设备描述符中的供应商 ID
REL 设备描述符中的版本 ID
PID 设备描述符中的产品 ID
设备描述符或接口描述符中的类
子类 设备描述符或接口描述符中的子类
端口 设备描述符或接口描述符中的协议

创建策略规则时,应注意以下事项:

  • 规则不区分大小写。
  • 规则末尾可能带有 # 引入的可选注释。匹配目的无需分隔符,且会忽略备注。
  • 空白注释行和纯注释行会被忽略。
  • 用作分隔符的空格将被忽略,但不能出现在数字或标识符中间。例如,Deny: Class=08 SubClass=05 是一条有效规则;Deny: Class=0 8 Sub Class=05 是一条无效规则。
  • 标记必须使用匹配运算符 =。例如,VID=1230。

示例

下面的示例显示了用户设备上 usb.conf 文件的一个部分。要实施这些规则,服务器上必须存在相同的一组规则。

ALLOW: VID=1230 PID=0007 # ANOther Industries, ANOther Flash Drive

DENY: Class=08 SubClass=05 # Mass Storage Devices

DENY: Class=0D # All Security Devices

配置启动模式

在桌面设备模式下,您可以更改虚拟桌面处理以前连接的 USB 设备的方式。在每个用户设备上的 $ICAROOT/config/module.ini 文件的 WfClient 部分中,按如下所示设置 DesktopApplianceMode = Boolean。

   
TRUE 对于已插入的任何 USB 设备,如果未通过服务器(注册表项)或用户设备(策略规则配置文件)上 USB 策略中的拒绝规则禁用该设备,则该设备将启动。
FALSE 不启动任何 USB 设备。

Bloomberg 键盘重定向

可以通过通用 USB 重定向执行 Bloomberg 键盘重定向。

要在客户端上通过通用 USB 重定向配置 Bloomberg v4 键盘,请执行以下操作:

首先,应在 Domain Delivery Controller (DDC) 中启用该策略。

  1. 查找 Bloomberg 键盘的 vid 和 pid。例如,在 Debian 和 Ubuntu 中运行以下命令:

    lsusb

  2. 转至 $ICAROOT 并编辑 usb.conf 文件。

  3. 在 usb.conf 文件中添加以下条目以允许对 Bloomberg 键盘进行 USB 重定向,然后保存该文件。

    ALLOW: vid=1188 pid=9545

  4. 重新启动客户端上的 ctxusbd 守护程序。例如,在 Debian 和 Ubuntu 中运行以下命令:

    systemctl restart ctxusbd

  5. 启动客户端会话。请确保在插入 Bloomberg v4 键盘时会话具有焦点,以便进行重定向。

提高低带宽连接条件下的性能

Citrix 建议您在服务器上使用最新版本的 XenApp 或 XenDesktop,在用户设备上使用最新版本的 Receiver。

如果使用低带宽连接,则可以更改 Receiver 的配置以及 Receiver 的使用方法以提高性能。

  • 配置 Receiver 连接 - 配置 Receiver 连接可以降低 ICA 所需的带宽并提高性能
  • 更改 Receiver 的使用方式 - 更改 Receiver 的使用方式还可以降低实现高性能连接所需的带宽
  • 启用 UDP 音频 - 此功能可以在阻塞的网络上保持 IP 语音 (VoIP) 连接中延迟的一致性
  • 使用最新版本的 XenApp 和 Receiver for Linux - Citrix 不断地增强和提升每个版本的性能,许多性能功能需要最新的 Receiver 和服务器软件

配置连接

在处理能力有限的设备上或是只能提供有限带宽的环境中,需要在性能和功能之间找到一个平衡点。用户和管理员可以选择一个可接受的复杂功能和交互式性能的组合。通常在服务器(而非用户设备)上作出一项或多项此类更改,从而降低连接所需的带宽并提高性能:

  • 启用 SpeedScreen 延迟加速 - SpeedScreen 延迟加速通过即时响应用户键入的数据或鼠标单击操作来提升高延时连接条件下的性能。使用 SpeedScreen Latency Reduction Manager 可在服务器上启用此功能。默认情况下,在 Receiver 中,此功能对键盘禁用,并且仅针对高延迟连接下的鼠标启用。请参阅 Citrix Receiver for Linux OEM’s Reference Guide(《Citrix Receiver for Linux OEM 参考指南》)。
  • 启用数据压缩 - 数据压缩可减少通过连接传输的数据量。此操作需要更多处理器资源来压缩和解压缩数据,但可以提高低带宽连接条件下的性能。使用 Citrix 音频质量和图像压缩策略设置可启用此功能。
  • 减小窗口大小 - 将窗口大小更改到您能够轻松使用的最小大小。在 XenApp Services 站点上,设置会话选项。
  • 减少颜色数 - 将颜色数减少到 256。在 XenApp 和 XenDesktop 站点上,设置会话选项。
  • 降低声音质量 - 如果启用了音频映射,可以使用 Citrix“音频质量”策略设置将声音质量降至最低设置。

启用 UDP 音频

UDP 音频可以提高通过 Internet 拨打的电话的质量。此音频使用用户数据报协议 (UDP) 而非传输控制协议 (TCP)。

请注意以下问题:

  • UDP 音频在加密的会话中不可用(即,使用 TLS 或 ICA 加密的会话)。在此类会话中,音频传输使用 TCP。
  • ICA 通道优先级可能会影响 UDP 音频。
  1. 在 module.ini 的 ClientAudio 部分中设置以下选项:
    • 将 EnableUDPAudio 设置为 True。默认设置为 False,此设置将禁用 UDP 音频。
    • 分别使用 UDPAudioPortLow 和 UDPAudioPortHigh 指定 UDP 音频流量使用的最小和最大端口号。默认使用端口 16500 - 16509。
  2. 按如下所示设置客户端和服务器音频设置,以便产生的音频具有中等质量(即,不高也不低)。
    客户端上的音频质量 客户端上的音频质量 客户端上的音频质量
   
服务器上的音频质量
服务器上的音频质量
服务器上的音频质量

更改 Receiver 的使用方法

ICA 技术经过了高度的优化,通常没有很高的 CPU 和带宽要求。但是,如果使用连接带宽非常低,请考虑采取以下措施保持性能:

  • 避免使用客户端驱动器映射访问大型文件。使用客户端驱动器映射访问大型文件时,该文件将通过服务器连接进行传输。如果连接的速度缓慢,这一过程可能需要很长时间。
  • 避免在本地打印机上打印大型文档。在本地打印机上打印文档时,打印文件将通过服务器连接进行传输。如果连接的速度缓慢,这一过程可能需要很长时间。
  • 避免播放多媒体内容。播放多媒体内容时将会使用大量带宽,并且会导致性能降低。

提高多媒体性能

Receiver 融合了多种技术,可在当今的富媒体用户环境中提供高清用户体验。连接到托管应用程序和桌面时,这些技术可以提升用户体验,如下所示:

  • HDX MediaStream Windows Media 重定向
  • HDX MediaStream Flash 重定向
  • HDX RealTime 网络摄像机视频压缩
  • H.264 支持

配置 HDX Mediastream Windows Media 重定向

在从 Linux 用户设备访问的虚拟 Windows 桌面上提供多媒体捕获和播放需要较高带宽,HDX Mediastream Windows Media 重定向可以解决带宽需求问题。Windows Media 重定向提供了一种在用户设备而非服务器上播放媒体运行时文件的机制,从而降低了播放多媒体文件时的带宽要求。

Windows Media 重定向可提升虚拟 Windows 桌面上运行的 Windows Media Player 以及兼容播放器的性能。此功能广泛支持多种文件格式,其中包括:

  • 高级流格式 (ASF)
  • 运动图像专家组 (MPEG)
  • 音频和视频交错 (AVI)
  • MPEG 音频第 3 层 (MP3)
  • WAV 声音文件

Citrix Receiver 中包含基于文本的转换表 MediaStreamingConfig.tbl,用于将 Windows 特定的媒体格式 GUID 转换成 GStreamer 可以使用的 MIME 类型。可以更新此转换表以执行以下操作:

  • 向此转换表中添加之前未知或不支持的媒体过滤器/文件格式。
  • 阻止存在问题的 GUID 以强制回退到服务器端呈现。
  • 向现有 MIME 字符串中添加更多参数,以允许通过更改流的 GStreamer 参数解决格式问题。
  • 根据用户设备上的 GStreamer 支持的媒体文件类型管理和部署自定义配置。

通过客户端提取,还可以允许用户设备直接通过流技术推送来自格式为 http://、<mms://> 或 <rtsp://> 的 URL 的媒体,而非通过 Citrix 服务器利用流技术推送媒体。服务器负责将用户设备定向到媒体以及发送控制命令(包括播放、暂停、停止、音量和跳转)。但是,服务器不处理任何媒体数据。此功能要求设备上具有高级多媒体 GStreamer 库。

实现 HDX MediaStream Windows Media 重定向

  1. 在需要 GStreamer 0.10 的每个用户设备上安装此软件,这是一个开源多媒体框架。通常情况下,请先安装 GStreamer,然后再安装 Citrix Receiver,以允许安装过程将 Citrix Receiver 配置为使用 GStreamer。

    大多数 Linux 发行版本中都包含 GStreamer。也可以从 http://gstreamer.freedesktop.org 下载 GStreamer。

  2. 要启用客户端提取,请为用户将要在设备上播放的文件类型安装所需的 GStreamer 协议源插件。可以使用 gst-launch 实用程序验证插件是否已安装且可运行。如果 gst-launch 可以播放 URL,则所需的插件即可运行。例如,请运行 gst-launch-0.10 playbin2 uri=http://example-source/file.wmv 并检查视频是否能够正确播放。

  3. 在设备上安装 Citrix Receiver 时,如果要使用 tarball 脚本,请选择 GStreamer 选项(对于 .deb 和 .rpm 软件包,此操作将自动完成)。

请注意与客户端提取功能有关的事项:

  • 默认情况下,启用此功能。可以使用 All-Regions.ini 的 Multimedia 部分中的 SpeedScreenMMACSFEnabled 选项禁用此功能。如果将此选项设置为 False,Windows Media 重定向将用于媒体处理。
  • 默认情况下,所有 MediaStream 功能都使用 GStreamer playbin2 协议。可以使用 All-Regions.ini 的 Multimedia 部分中的 SpeedScreenMMAEnablePlaybin2 选项将除客户端提取以外的所有 MediaStream 功能使用的协议还原到较早的 playbin 协议,客户端提取功能则继续使用 playbin2。
  • Receiver 无法识别播放列表文件或流配置信息文件,例如 .asx 或 .nsc 文件。如有可能,用户必须指定一个不引用这些文件类型的标准 URL。使用 gst-launch 可验证指定的 URL 是否有效。

GStreamer 1.0 的注意事项:

  • 默认情况下,GStreamer 0.10 用于 HDX MediaStream Windows Media 重定向。GStreamer 1.0 仅在 GStreamer 0.10 不可用时使用。
  • 如果要使用 GStreamer 1.0,请按照下面的说明进行操作:
  1. 查找 GStreamer 插件的安装目录。插件的安装位置因您的发行版、操作系统体系结构和 GStreamer 的安装方式而异。典型的安装路径为 /usr/lib/x86_64-linux-gnu/gstreamer-1.0 or $HOME/ .local/share/gstreamer-1.0。
  2. 查找 Citrix Receiver for Linux 的安装目录。特权 (root) 用户安装的默认目录为 /opt/Citrix/ICAClient。非特权用户安装的默认目录为 $HOME/ICAClient/platform(例如,其中,platform 可以是 linuxx64)。有关详细信息,请参阅安装和设置
  3. 通过在 GStreamer 插件目录中设置一个符号链接来安装 libgstflatstm1.0.so:ln -sf $ICACLIENT_DIR/util/libgstflatstm1.0.so $GST_PLUGINS_PATH/libgstflatstm1.0.so。此步骤可能需要提升的权限,例如,使用 sudo。
  4. 将 gst_play1.0 用作播放器:ln -sf $ICACLIENT_DIR/util/gst_play1.0 $ICACLIENT_DIR/util/gst_play。此步骤可能需要提升的权限,例如,使用 sudo。
  • 如果要在 HDX RealTime 网络摄像机视频压缩中使用 GStreamer 1.0,请使用 gst_read1.0 作为读取器:ln -sf $ICACLIENT_DIR/util/gst_read1.0 $ICACLIENT_DIR/util/gst_read。

配置 HDX MediaStream Flash 重定向

通过 HDX MediaStream Flash 重定向,可以实现 Adobe Flash 内容在用户设备本地播放,从而在不提高带宽要求的情况下为用户提供高清晰度的音频和视频播放效果。

  1. 确保用户设备满足各项功能要求。有关详细信息,请参阅系统要求

  2. 在 wfclient.ini 的 [WFClient] 部分(适用于特定用户的所有连接)或 All_Regions.ini 的 [Client Engine\Application Launching] 部分(适用于环境中的所有用户)添加以下参数:
    • HDXFlashUseFlashRemoting=Ask|Never|Always

      在用户设备上启用 HDX Mediastream for Flash。默认情况下,此参数设置为 Never,当连接到包含 Flash 内容的 Web 页面时,将向用户显示一个对话框,询问用户是否优化该内容。

    • HDXFlashEnableServerSideContentFetching=Disabled|Enabled

      为 Receiver 启用或禁用服务器端内容提取功能。默认情况下,此参数设置为 Disabled

    • HDXFlashUseServerHttpCookie=Disabled|Enabled

      启用或禁用 HTTP Cookie 重定向。默认情况下,此参数设置为 Disabled

    • HDXFlashEnableClientSideCaching=Disabled|Enabled

      为 Receiver 所提取的 Web 内容启用或禁用客户端缓存功能。默认情况下,此参数设置为 Enabled

    • HDXFlashClientCacheSize= [25-250]

      以 MB 为单位定义客户端缓存的大小。此大小可以是 25 MB 到 250 MB 之间的任何值。达到大小限制时,将删除缓存中的现有内容,以便存储新内容。默认情况下,此参数设置为 100

    • HDXFlashServerSideContentCacheType=Persistent|Temporary|NoCaching

      为通过服务器端内容提取功能提取的内容定义 Receiver 使用的缓存类型。默认情况下,此参数设置为 Persistent

      注意:仅当 HDXFlashEnableServerSideContentFetching 设置为 Enabled 时,才需要指定此参数。

  3. 默认禁用 Flash 重定向。在 /config/module.ini 中,将 FlashV2=Off 更改为 FlashV2=On 以启用该功能。

配置 HDX RealTime 网络摄像机视频压缩

HDX RealTime 提供了一个网络摄像机视频压缩选项,用于提高视频会议过程中的带宽效率,从而确保用户在使用 GoToMeeting with HD Faces、Skype for Business 等应用程序时获得最佳性能体验。

  1. 确保用户设备满足各项功能要求。
  2. 确保已启用多媒体虚拟通道。为此,请打开位于 $ICAROOT/config 目录中的 module.ini 配置文件,然后确认 [ICA3.0] 部分中的 MultiMedia 已设置为“On”。
  3. 通过单击“首选项”对话框的麦克风和网络摄像机页面上的使用我的麦克风和网络摄像机启用音频输入。

禁用 HDX RealTime 网络摄像机视频压缩

默认情况下,HDX RealTime 网络摄像机视频压缩可提供最佳网络摄像机性能。但在某些情况下,您可能会要求用户使用 USB 支持功能连接网络摄像机。为此,必须执行以下操作:

  • 禁用 HDX RealTime 网络摄像机视频压缩
  • 为网络摄像机启用 USB 支持功能
  1. 在相应 .ini 文件的 [WFClient] 部分中添加以下参数:

    HDXWebCamEnabled=Off

    有关详细信息,请参阅使用配置文件自定义 Receiver

  2. 打开 usb.conf 文件,该文件通常位于 $ICAROOT/usb.conf 中。

  3. 删除或注释掉以下行:

    DENY: class=0e # UVC (default via HDX RealTime Webcam Video Compression)

  4. 保存并关闭该文件。

配置 H.264 支持

Receiver 支持显示 XenDesktop 7 提供服务的 H.264 图形,包括 HDX 3D Pro 图形。此配置支持使用深度压缩编解码器功能,该功能默认处于启用状态。与现有 JPEG 编解码器相比,此功能在 WAN 网络上提供了丰富而专业的图形应用程序的更加优异的性能。

按照本主题中的说明进行操作可禁用此功能(以及改为使用 JPEG 编解码器处理图形)。还可以在深度压缩编解码器支持仍处于启用状态的情况下禁用文本跟踪。这有助于降低处理包括复杂图像但文本或非关键文本量相对较少的图形时 CPU 的成本。

重要:要配置此功能,请勿使用 XenDesktop “视觉质量”策略中的任何无损设置。如果使用了无损设置,H.264 编码将在服务器上处于禁用状态,且在 Receiver 中无法使用。

禁用深度压缩编解码器支持:

在 wfclient.ini 中,将 H264Enabled 设置为 False。这样还会禁用文本跟踪。

仅禁用文本跟踪

启用深度压缩编解码器支持后,在 wfclient.ini 中将 TextTrackingEnabled 设置为 False。

优化屏幕图块的性能

可以使用直接在屏幕上显示位图解码、批处理图块解码和延迟的 XSync 功能改进 JPEG 编码的屏幕图块的处理方式。

  1. 确保您的 JPEG 库支持这些功能。

  2. 在 wfclient.ini 的 Thinwire3.0 部分中,将 DirectDecode 和 BatchDecode 设置为 True。

    注意:启用“批处理图块解码”还将禁用“延迟的 XSync”。

启用日志记录

要为 Citrix Receiver for Linux 启用日志记录,请执行以下操作:

  1. 下载 Citrix Receiver for Linux 并将其安装在您的 Linux 计算机上,将 ICAROOT 环境变量设置为安装位置。
  2. 对于 Citrix Receiver for Linux,debug.ini 位于 ICAROOT 的配置文件夹中。通过从命令行中键入 > ln -s config/debug.ini debug.ini 在 $ICAROOT 路径下创建此文件的符号链接。
  3. 编辑 $ICAROOT 下的 debug.ini 文件并在 [wfica] 部分下添加所需的跟踪参数。
  4. 编辑 $ICAROOT/config/module.ini 文件以在 [WFClient] 部分的结尾处添加 SyslogThreshold=7。这样将生成所有级别的日志。要仅记录错误,请将 SyslogThreshold 设置为 3。
  5. 要获取 syslog 跟踪情况,请编辑 syslog 配置文件。转至 /etc/rsyslog.conf 文件(或 syslog.conf,具体取决于您的 Linux 发行版),并做以下更改:

    要从所有设备启用本地日志记录,请确保在文件开头取消注释 $ModLoad imuxsock.so 行。

    配置文件中的下两处更改对远程日志记录而言是必需的,但不是 syslog 的本地日志记录所必需的。

    服务器端配置:取消注释 syslog 服务器的 rsyslog.conf 文件中的以下行:

    $ModLoad imtcp

    $InputTCPServerRun 10514

    客户端配置:通过将 localhost 替换为远程服务器的 IP 来添加以下行: *.* @@localhost:10514

  6. 保存您所做的更改,然后通过从命令行键入 >sudo service rsyslog restart 重新启动 syslog 服务。
  7. 所有 syslog 日志都保存在 /var/log 下。要查看或编辑此文件夹中的日志,您需要 sudo 访问权限。这些日志将存储到 user-all-drivers_proxy22.log 文件中。可以通过在 rsyslog.cong 文件中的 RULES 部分下编辑以下行来配置日志文件的路径和名称:

    user.* -/var/log/logfile_name.log

    您可以编辑 syslog 配置文件中的 RULES 部分。如果 syslog 配置文件中不存在 RULES 部分,可以将 RULES 部分从示例 rsyslog.conf 文件添加到系统 syslog 配置文件中。

    注意: 每次编辑 rsyslog.conf 文件时,都必须重新启动 syslog 服务。

  8. 启动 Receiver 进程($ICAROOT 下的 ./selfservice),会话结束后,可以在 /var/log 下找到日志文件。 默认情况下,这些日志附加到后续启动中的日志文件。要跟踪每次启动的跟踪情况,请在每次启动之前编辑配置文件,以更改日志文件并重新启动 rsyslog 服务。

注意

要启用跟踪,请更改 $ICAROOT/debug.ini 文件中的以下参数:

  • 连接中心日志记录:在 [conncenter] 部分下,将“traceClasses”更改为“+TC_NCS”
  • 图形 (Thinwire) 日志记录:在 [wfica] 部分下,将“traceClasses”更改为“+TC_TW”
  • EUEM 日志记录:在 [wfica] 部分下,将“traceClasses”更改为“+TC_CLIB”

要禁用跟踪,请将“traceClasses”条目更改为 null。

例如:

[wfica]

traceFlags =

traceClasses =

traceFeatures =

traceFile = clb.log.$$

traceBufferSize = 65536

配置多显示器布局持久性

此功能保留了端点之间的会话显示器布局信息。会话将在所配置的显示器上显示。

必备条件

此功能的要求如下:

  • StoreFront v3.15 或更高版本。
  • 如果 .ICAClient 已存在于当前用户的主文件夹中:

    删除 All_Regions.ini 文件

    要保留 AllRegions.ini 文件,请在 [Client Engine\Application Launching] 部分的结尾处添加以下行:

    SubscriptionUrl=

    PreferredWindowsBounds=

    PreferredMonitors=

    PreferredWindowState=

    SaveMultiMonitorPref=

如果 .ICAClient 文件夹不存在,则指示 Receiver 的全新安装。在这种情况下,将保留此功能的默认设置。

用例示例

  • 在任意显示器上在窗口模式下启动一个会话并保存设置。 重新启动该会话时,该会话将在相同的模式下在相同显示器上的相同位置显示。
  • 在任意显示器上在全屏模式下启动一个会话并保存设置。 重新启动该会话时,该会话将在相同的显示器上在全屏模式下显示。
  • 在窗口模式下拉伸某个会话并跨多个显示器显示该会话,然后切换到全屏模式。该会话将继续在全屏模式下跨所有显示器显示。重新启动该会话时,该会话将在全屏模式下跨所有显示器显示。

注意

每次保存时都将覆盖布局,并且布局仅保存在活动的 StoreFront 上。

如果您在不同的显示器上从相同的 StoreFront 启动多个桌面会话,则将布局保存在一个会话中将保存所有会话的布局信息。

配置保存布局功能

要启用保存布局功能,请执行以下操作:

  1. 在兼容的 Delivery Controller (DDC) 上安装 StoreFront 3.15 或更高版本(等于或高于 v3.15.0.12)。
  2. 下载 页面下载 Citrix Receiver for Linux 13.10 的内部版本,然后将其安装在您的 Linux 计算机上。
  3. 将 ICAROOT 环境变量设置为安装位置。
  4. 检查 All_Regions.ini 文件是否存在于 .ICAClient 文件夹中。如果存在,请将其删除。
  5. $ICAROOT/config/All_Regions.ini 文件中查找字段 SaveMultiMonitorPref。默认情况下,此字段的值为“true”(表示此功能处于打开状态)。要关闭此功能,请将此字段设置为 false。 如果您对 SaveMultiMonitorPref 的值做了任何更改,则必须删除 .ICAClient 文件夹中存在的 All_Regions.ini 文件,以防止值不匹配以及可能存在的配置文件锁定问题。在启动会话之前设置或取消设置 SaveMultiMonitorPref 标志。
  6. 启动新桌面会话。
  7. 在 Desktop Viewer 工具栏中单击保存布局以保存当前的会话布局。屏幕右下角将显示一条通知,指示成功。 单击“保存布局”时,图标将变为灰色。这表示正在保存。保存布局后,图标将显示正常。 但是,如果图标长时间显示为灰色,请参阅知识中心文章 CTX235895 以获取故障排除信息。
  8. 断开连接或注销会话。 重新启动会话。会话将在相同的模式下在相同显示器上的相同位置显示。

局限性与不受支持的场景

  • 由于 Linux 显示管理器存在局限性,因此,不支持跨多个显示器保存窗口模式会话的布局。
  • 跨多个具有不同分辨率的显示器保存会话信息在本版本中不受支持,并且可能会导致出现不可预测的行为。
  • 包含多个 StoreFront 的客户部署

在双监视器上使用 Citrix Virtual Desktops

  1. 选择桌面查看器并单击下箭头。
  2. 选择窗口
  3. 在两个显示器之间拖动 Citrix Virtual Desktops 屏幕。确保每个显示器中大约显示一半屏幕。
  4. 在 Citrix Virtual Desktop 工具栏中,选择全屏

    屏幕将扩展到两个监视器。