有一说一,Windows自带的远程桌面服务(RDP)非常优秀,不考虑云服务(可以自己搭建)的情况下,在表现上可以胜过任意一款第三方远程控制软件(包括且不限于VNC、Teamviwer……),毕竟是原生功能。

RDP本身是可以无显卡运行的,显示远程桌面的时候并不调用显卡,可以做一些基本的管理操作。最近研究了一下怎样将提升RDP的性能,开启显卡加速(OpenGL,DX支持),提高传输帧率(默认30fps,设置为60fps),以及USB设备重定向(将客户端的USB设备挂载到远程主机,不需要USB Network Gateway)

显卡加速

首先打开远程主机上的组策略(Win+R打开运行,输入gpedit.msc

依次找到计算机配置->管理模板->Windows组件->远程桌面服务->远程桌面会话主机->远程会话环境

在右边选择“将硬件图形适配器应用于所有远程桌面服务会话”

右键编辑,选择“已启用”,确定保存。

重启远程主机。

现在可以在远程桌面里运行需要GPU支持的应用了,包括OpenGL、DX、Vulcan……

提升传输帧率

RDP默认的帧率是30,可以设置为60帧传输

实际效果取决于客户端设置、网络环境等等因素

打开远程主机上的注册表编辑器:

找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations

在空白处右键->新建->DWORD(32位)值,命名为DWMFRAMEINTERVAL

双击刚添加的这一项,“基数”选择为“十进制”,“数值数据”填写15.

确定保存,重启生效。

开启RemoteFX USB重定向

RDP默认支持共享存储设备,我们可以让它共享任意USB设备(也不是任意,就是一般的USB设备,但不是所有)

在客户端电脑上,打开组策略

依次找到计算机配置->管理模板->Windows组件->远程桌面服务->远程桌面会话客户端->RemoteFX USB 设备重定向

选择右边的“允许此计算机中受支持的其他 RemoteFX USB 设备的 RDP 重定向”,设置为已启用,然后将“选项”中的“RemoteFX USB重定向访问权限”设置为“管理员和用户”(可能是因为Windows10里自己的账户不认为是管理员)。

确定保存,重启生效。

重启后打开远程桌面客户端,点击“显示选项”,在“本地资源”里的“本地设备和资源”的“详细信息”中可以找到“其他支持的RemoteFX USB设备”,可用的设备会被列出来

勾选后即可将本地的USB设备挂载到远程主机上。

注意
不同于我们一般插入USB设备那样,远程主机似乎并不会自动为重定向的设备安装驱动,需要手动安装驱动后才能正常使用

结语

开启了RDP的这些功能后,实际上就在操作系统内的操作而言,已经可以替代IP KVM这样的方案了,后者价格昂贵,效果有限(如果想要操作BIOS的话,就只能IP KVM了)。而这样并不需要安装其他软件,完全由RDP来承担。

参考资料

Microsoft Support: https://support.microsoft.com/en-us/help/2885213/frame-rate-is-limited-to-30-fps-in-windows-8-and-windows-server-2012-r

KB Parallels: https://kb.parallels.com/123961

ESRI.COM:https://community.esri.com/thread/225251-enabling-gpu-rendering-on-windows-server-2016-windows-10-rdp

本文由 橙叶博客 作者:FrankGreg 发表,转载请注明来源!