我在工作时远程使用 Windows 10 机器。本地和远程机器都在同一个 ISP 网络中(不是同一个本地网络,而是同一个 ISP)。我已经这样使用了将近一年,从来没有遇到过任何问题。
直到最近。我不知道是否有任何特定因素触发了此行为,但我觉得在将遥控器升级到 W10 1903 后,这种情况开始发生。后来我也升级了本地遥控器,我觉得这只会让问题变得更糟(但我真的没有任何数据)。
有时,会话会冻结 - 图像停止更新。但是,我输入的内容和鼠标点击仍在发送。没有显示任何错误消息,图像只是冻结了。要使其再次工作,我必须关闭并重新打开会话。冻结期间我输入和/或点击的所有内容都在那里。
有什么方法可以调试它吗?
答案1
自 2019 年 7 月以来,我在作为客户端计算机的 Windows 10 1903 上也遇到了此问题。客户端上的以下解决方法对我有用,因此 RDP 不再冻结。
启动提升的命令提示符(以管理员身份运行 cmd.exe),然后运行:
reg 添加“HKLM\software\policies\microsoft\windows nt\Terminal Services\Client”/v fClientDisableUDP /d 1 /t REG_DWORD
之后,关闭并重新打开客户端计算机上的所有 RDP 会话以重新启动远程桌面客户端(mstsc.exe,又名 Microsoft 终端服务客户端)应用程序。
我正在等待该问题的最终修复。
后续:我不确定,但看起来在 21H1 中已修复(客户端和服务器都必须运行 21H1 或更高版本)。对我来说,如果没有禁用 UDP 解决方法,我不再会看到冻结。
答案2
在 Windows 10(1903 和 1909)中遇到过这个问题。
问题表现:
RDP 会话更新异常,导致音频和视频失真。
RDP 会话完全冻结。客户端窗口有响应,但其中的内容基本上是静态图像。
有时 RDP 会话会恢复并恢复正常功能。
其他时候,RDP 会话似乎无限期挂起。没有看到错误消息;客户端窗口可以正常关闭并重新启动。
推测的因果关系:
似乎主要发生在负载下使用 UDP 协议时。
我的猜测是 RDP 协议已经失去了对数据包丢失或乱序的部分弹性。
解决方法:
似乎没有一种解决方法是完美的。例如,即使在仅 TCP 模式下,我的 RDP 也完全冻结了。但是,仅 TCP 加上尝试改善网络连接或/和减少负载(例如视频和音频)似乎可以大大降低事故率。
部分解决方法:改善网络连接。
直接本地连接可能相对可靠。部分解决方法:减轻网络压力。
减少 RDP 会话设置、避免音频和避免视频似乎有帮助。完整的解决方法:禁用 UDP。
RDP 在 TCP 上的表现似乎比 UDP 好得多。切换到仅 TCP 确实似乎有点滞后,但滞后更有序(奇怪的是,这比不稳定的滞后要好得多),而且我还没有遇到无限期挂起的情况。
实现的三种方法(可能相互兼容,但可能只需要做一种):在客户端: 本地组策略编辑器
→ 本地计算机策略
→ 计算机配置
→ 管理模板
→ Windows 组件
→ 远程桌面服务
→ 远程桌面连接客户端
→ 关闭客户端上的 UDP
→ 已启用在服务器[未测试]上: 本地组策略编辑器
→ 本地计算机策略
→ 计算机配置
→ 管理模板
→ Windows 组件
→ 远程桌面服务
→ 远程桌面会话主机
→ 连接
→ 选择 RDP 传输协议
→ 已启用
→ 仅使用 TCP不推荐(调整注册表编辑器)
来源:@robbiefan 的回答。
在客户端: 注册表编辑器
→ 计算机
→ HKEY_LOCAL_MACHINE
→ SOFTWARE
→ 策略
→ Microsoft
→ Windows NT
→ 终端服务
→ 客户端
→ [右键单击] → 新建 → DWORD(32 位)值
→ 名称:fClientDisableUDP
→ 值数据:1
→ 基本:Decimal
笔记: 当我尝试时,这似乎对我有用,但除此之外无法验证太多。尝试后,我恢复了这个解决方案,宁愿依靠组策略。
讨论:背景
我不太清楚具体细节,但简而言之,我认为在 Windows 10 1903 之前实现的 RDP 协议中发现了一些错误:
那么我认为 Windows 10 1903 就是为了解决这些问题。
显然,新版本的 RDP 协议存在一些问题,例如这个问题。禁用 UDP(强制使用 TCP)似乎是一个不错的解决方法,尽管该协议可能会感觉有点滞后。话虽如此,旧的 RDP 协议也有一些相当令人讨厌的音频延迟问题,现在似乎好多了,所以,就我个人而言,我对此感到高兴!
答案3
答案4
UDP 规则看起来有效,但性能会下降很多,我决定继续研究更多案例,我发现这和我的有关。
已解决:发现选中通过“智能卡”的默认选项后,RDP 会话在建立后不久就会冻结。当从 RDP 的“本地资源”选项卡中取消选中该选项时,问题就消失了。为什么智能卡(我们在工作场所不使用)会导致这样的问题?我不确定智能卡会以任何方式影响 RDP 会话,但作为迁移到 Windows 10 的一部分,我们还开始使用 Microsoft 组策略推荐的基线设置,其中可能包括某种设置,或者缺少可能对此有影响的设置。无论哪种方式,如果其他人遇到此问题,请分享。