远程桌面优化避坑指南
发布时间:2023-06-06 22:37:18 作者:互联网收集 浏览量:886
最近发现在局域网中用Windows远程桌面看视频画面有肉眼可见的延迟,测试帧率发现只有33帧,于是在网上找优化方法。网上的优化方案就几种,但都基本只讲如何设置,没说明原因。经过测试发现,有些设置不仅没有效果,还会产生“负优化”。所以还是有必要分享一下。
我运行的环境是Windows 10 21H2 专业版和Windows 11 21H1专业版,此次测试并非全面测试,只记录在自己在使用中的效果。不同的系统版本有可能结果不一样。
正常情况下,帧率达到60Hz,体验才会和本地一至。我们平时用的显示器最少也是60Hz,电竞的达到120Hz甚至144Hz。
Windows远程桌面是支持60帧的,需要修改注册表。
上图出自官方文档:docs.microsoft.com/zh-cn/troubleshoot/windows-server/remote/frame-rate-limited-to-30-fps
也可以把下面代码部分复制到记事本,保存为60fps.reg,双击导入即可。
修改完后重新连接远程桌面。
在线测试帧率:https://testufo.com
我在Windows10中修改注册表后,发现帧率并没有提升。刚开始以为是显卡驱动问题,后在知乎上看见有人遇到同样问题,发现和版本有关,企业版有效。
我用Windows10远程Windows11机器,发现帧率能达到60Hz,都是核显且驱动版本一至。
如果和我一样,修改注册表后无法达到60Hz,只有用其他方法。本文后面会有介绍。
启动组策略编辑器 (在“搜索”框中键入 gpedit.msc)
依次找到 计算机配置 -> 管理模板 -> Windows 组件 -> 远程桌面服务 -> 远程桌面会话主机 -> 远程会话环境 。
将将硬件图形适配器应用于所有远程桌面服务会话和配置远程桌面连接的 H.264/AVC 硬件编码设为启用。
网上有些优化把为远程桌面连接设置 H.264/AVC 444 图形模式的优先级设为启用。经过测试,启用后远程会话的CPU占有率降低,GPU占有率升高,帧率降低有一定波动。
有可能是因为我没有独立显卡。在启用该设置时需要测试效果,否则远程体验反而下降。
关于远程桌面会话默认模式和H.264/AVC 444模式对宽带的要求,在微软Azure虚拟桌面文档中有参考。
下表可指导你估算不同图形场景使用的数据带宽。 这些数字适用于采用 1920×1080 分辨率并同时采用默认图形模式和 H.264/AVC 444 图形模式的单一监视器配置。
方案
默认模式
H.264/AVC 444 模式
缩略图
场景说明
闲置
0.3 Kbps
0.3 Kbps
用户已暂停工作,未发生活跃的屏幕更新
Microsoft Word
100-150 Kbps
200-300 Kbps
用户正在活跃使用 Microsoft Word、打字、粘贴图形,并在文档之间切换
Microsoft Excel
150-200 Kbps
400-500 Kbps
用户正在活跃使用 Microsoft Excel,并同时更新多个包含公式和图表的单元格
Microsoft PowerPoint
4-4.5 Mbps
1.6-1.8 Mbps
用户正在活跃使用 Microsoft PowerPoint、打字、粘贴。 另外,用户正在修改内容丰富的图形,并使用幻灯片过渡效果
Web 浏览
6-6.5 Mbps
0.9-1 Mbps
用户正在活跃浏览一个图形内容丰富的网站,其中包含多个静态图像和动画图像。 用户横向和纵向滚动页面
图库
3.3-3.6 Mbps
0.7-0.8 Mbps
用户正在活跃使用图库应用程序。 浏览、缩放、调整大小和旋转图像
视频播放
8.5-9.5 Mbps
2.5-2.8 Mbps
用户正在观看一段占用了半个屏幕的 30 FPS 视频
全屏视频播放
7.5-8.5 Mbps
2.5-3.1 Mbps
用户正在观看一段已最大化为全屏的 30 FPS 视频
参考出自官方文档:docs.microsoft.com/zh-cn/azure/virtual-desktop/rdp-bandwidth
该操作对远程体验效果没有影响。微软远程桌面基于RDP协议,使用3389端口。以前远程桌面就暴露过安全问题,3389也是黑客常扫描的一个端口。修改默认端口,可以提高安全性。
远程桌面默认同时使用TCP和UDP协议,该设置是否会影响UDP协议,未验证。开启UDP协议体验上可以更快。
如果是暴露公网上,可以在路由器上配置其他端口转发(TCP+UDP),或者使用VPN或Zerotier One保证安全访问。
RDP默认支持共享存储设备,我们可以让它共享USB设备(该设置在控制端设置)。
找到计算机配置->管理模板->Windows组件->远程桌面服务->远程桌面会话客户端->RemoteFX USB 设备重定向设为启用
设置后重新连接远程即可。
提升流畅度最主要是设置帧数,帧数越高对网络带宽要求越大。如果修改注册表无法突破30帧,可以用串流或第三方远程工具代替。
我用过的工具有Teamview,向日葵,ToDesk,RealVNC,NoMachine。
Teamviewt自从个人会被误检测商用后,很多人弃坑,就不说了。
向日葵最新版支持60FPS,120FPS,144FPS,但是免费版限在30FPS,用来办公足够,看视频玩游戏不行。收费也是按台授权,有点小贵。使用中发现向日葵最新版在即将发布的Ubuntu 22.04 Beta版中无法使用(不能被控制),一直在连接中。
ToDesk目前是我在用的,达到60FPS没问题,流畅度很好,免费用户能控件100台设置。
RealVNC测试也能达到60FPS,但是RealVNC不支持音频传送。
NoMachine基于NX协议,使用H264或VP8编码,速度能达到60FPS。但是在远程控件时,如果对远程机器屏模缩放,会有黑屏BUG。
微软远程桌面优缺点如下:
优点:
缺点:
第三方远程工具基本都使用录制的方式,把远程桌面的屏模录屏传送。相对于RDP优缺点如下:
优点:
缺点:
最终我的方案是RDP和ToDesk一起使用。笔记本集成了摄像头,麦克风,音响等,功能全,方便携带。做为瘦客端远程到台式机,做编程,压制视频等其他需要高性能工作。即使换台电脑,接连上就可以用,不用再装软件,配环境。
除非注明,否则均为”攻城狮·正“原创文章,请注明出处。
本文链接:https://engr-z.com/513.html
收藏