介绍
远程桌面协议(RDP)支撑着许多远程访问部署,从小型IT支持设置到大型企业环境。然而,一个关键的性能因素常常被忽视:RDP流量主要是通过TCP还是UDP传输。这个选择对延迟、响应能力和用户体验有直接影响,尤其是在广域网(WAN)和虚拟专用网(VPN)中。在本指南中,我们将解释RDP如何使用UDP和TCP,何时每种传输表现最佳,以及您可以在Windows和网络中调整哪些设置,以提供更流畅、更可靠的远程会话。
TSplus远程访问免费试用
终极的Citrix/RDS替代方案,用于桌面/应用访问。安全、经济高效、本地/云端
为什么RDP传输选择对远程性能很重要?
RDP 不再仅仅是一个简单的“屏幕抓取器”。现代 RDP 传输压缩图形、多媒体、输入事件、打印数据和剪贴板内容。这些流对延迟和数据包丢失的响应各不相同。如果使用了错误的传输,用户会看到延迟、视频卡顿或键盘响应缓慢,即使带宽看起来正常。
了解何时RDP更倾向于UDP而不是TCP有助于IT团队设计网关、VPN和 防火墙规则 支持真实性能而不仅仅是在监控仪表板上显示“绿色勾选”。这对于混合环境尤其重要,在这些环境中,一些用户通过光纤连接,而其他用户则通过繁忙的VPN集中器或移动热点连接。
TCP与UDP在RDP中的基本概念是什么?
- TCP保证了什么
- UDP优化的内容
TCP保证了什么(以及为什么它会导致延迟)
传输控制协议(TCP)是面向连接的。 TCP 建立会话,数据包数量,确认它们,并重新传输丢失的包。这种设计保证了按顺序、可靠的交付,适合文件传输、网络流量和电子邮件。然而,每次重传都会增加延迟,而拥塞控制算法在发生数据包丢失时进一步降低吞吐量。
对于RDP,这意味着单个丢失的数据包可能会阻止后续的屏幕更新,直到恢复完成。在高延迟或丢包的链接上,TCP可能会夸大抖动,并创建一个“粘性”桌面,使鼠标和键盘感觉延迟,即使链接在技术上是正常的。
UDP优化的内容(以及它可能出现的问题)
用户数据报协议(UDP)是无连接和轻量级的。UDP 不跟踪状态,不执行握手,也不保证交付;它只是发送数据报,让应用程序处理丢失或排序。由于没有开销,UDP 对于语音、视频和游戏等对时效性要求高于完美交付的场景非常有吸引力。
当RDP使用UDP时,图形和输入可以以更低的延迟和更高的吞吐量传输。如果丢失了一个帧,RDP可以发送一个更新的帧,而不是等待。然而,如果丢包或抖动很高,会议可能会显示可见的伪影或“块状”刷新,因为该协议优先考虑新鲜度而不是保证重建。
现代 RDP 如何同时使用 TCP 和 UDP?
- 从 RDP 8.0 开始的双重传输架构
- RemoteFX、图形和输入通过UDP
从 RDP 8.0 开始的双重传输架构
最初,RDP完全依赖于TCP。从RDP 8.0(Windows 8和Windows Server 2012)开始,微软引入了一种双重传输模型,结合使用TCP和UDP。RDP仍然以TCP连接开始,以协商功能和安全性,然后尝试建立一个并行的UDP通道用于媒体和图形。
如果UDP可用且策略允许,RDP会将适当的流量转移到UDP通道,同时保留TCP作为控制和后备路径。如果无法建立UDP,RDP将完全通过TCP继续,确保与旧网络和限制性防火墙的兼容性。
RemoteFX、图形和输入通过UDP
通过双通道模型,RDP可以通过UDP发送压缩的图形、位图和一些输入事件。这在典型的WAN场景中提高了响应速度,特别是在桌面显示丰富的用户界面、流媒体仪表板或视频时。RemoteFX及相关优化是考虑到这种行为而设计的。
在实践中,用户会注意到在稳定网络上启用UDP时,窗口移动更快,滚动更流畅,屏幕重绘更迅速。在管理员方面,这种行为主要是自动的;主要任务是确保允许UDP,并且组策略不会禁用它。
UDP与TCP性能比较如何?
- 并排比较表
- 实用场景:广域网、虚拟专用网和局域网
并排比较表
| 功能 / 场景 | 通过 TCP 的 RDP | RDP通过UDP |
|---|---|---|
| 可靠性 | 高优先级有序交付与重传 | 尽力而为,不提供交付或订购保证 |
| 延迟 | 更高,尤其是在损失下 | 更低,更能容忍抖动 |
| 吞吐量 | 通过确认和拥塞控制减少 | 更高,更少的协议开销 |
| 最佳网络条件 | 高损耗、不稳定或严重受限的链接 | 稳定、低损耗、低延迟的网络 |
| 防火墙/VPN 兼容性 | 优秀;使用 TCP 3389 | 可能需要在防火墙和VPN上明确UDP 3391规则 |
| 回退行为 | 始终可用 | 在可用时使用;在出现问题时回退到TCP |
| 用户感知 | “安全但有时延迟” | “快速流畅”在条件适合时 |
在实验室和现场测试中,基于UDP的RDP可以在干净的网络上提供TCP的有效吞吐量的几倍,这转化为更高的分辨率、更好的视频播放和更流畅的光标移动。实际的改进取决于带宽、丢包和网络对流量的调控程度。
实用场景:广域网、虚拟专用网和局域网
在低延迟和可忽略的数据包丢失的有线局域网中,UDP 通常是明显的赢家。用户即使从另一层或建筑物连接,也能享受到接近本地的响应速度。在管理的广域网或 SD-WAN 链接上,只要条件允许,UDP 的表现也往往更好。 服务质量 已配置并且数据包丢失保持适度。
在过于拥挤的VPN、移动热点或卫星链接上,TCP可能提供更稳定的体验。它的拥塞控制机制可以适应不同的条件,而UDP流量可能会变得不稳定或视觉上退化。在这些情况下,优先考虑的是可预测的会话,尽管稍微慢一些。
何时应优先选择UDP而非TCP用于RDP会话?
- 理想的UDP上RDP条件
- 当 TCP 是更安全的默认值
理想的UDP上RDP条件
对于大多数现代部署,UDP 应该尽可能成为目标路径。当网络具有稳定的延迟、低丢包率和合理的带宽余量时,UDP 是理想的选择。高速局域网,管理良好 MPLS 或 SD-WAN 电路,以及数据中心到分支的链接通常符合此配置。
UDP在终端用户使用媒体丰富的应用程序、频繁更新的仪表板或重新绘制大部分屏幕的UI框架时也是更好的选择。对于这些工作负载,减少延迟对感知性能的影响大于最大化原始可靠性。
当 TCP 是更安全的默认值
TCP在敌对或不可预测的网络中仍然具有价值。如果用户通过酒店Wi-Fi、公共热点或频繁出现微中断的路径连接,TCP的可靠性和拥塞行为可能会更加宽容。同样,一些较旧的VPN设备、代理或检查设备错误处理UDP 3391,迫使RDP无论配置如何都使用TCP。
如果监管或审计要求需要简单、易于解释的网络规则,管理员也可以选择对某些用户组标准化使用TCP。在这些情况下,目标是清晰和合规,而UDP则保留给受信任的网站和受管理的终端。
如何调整RDP以实现最佳UDP使用?
- 验证 RDP 版本和功能
- 打开并验证所需端口
- UDP和体验的组策略设置
- QoS和网络级优化
- 监控正在使用的 RDP 传输
验证 RDP 版本和功能
UDP 支持从 RDP 8.0 开始。确保 RDP 客户端和主机运行受支持的版本,如 Windows 8 / 10 / 11 或 Windows Server 2012 及更高版本。根据 Microsoft Learn,启用较新的 RDP 功能通常需要特定的 Windows 更新以及远程桌面服务角色。
在Windows客户端上,您可以在注册表中检查核心RDP版本:
reg query "HKLM\SOFTWARE\Microsoft\Terminal Server Client" /v RDPCoreVersion
在旧域中,确认组策略没有强制 RDP 进入禁用 UDP 的兼容模式。
打开并验证所需端口
RDP使用 TCP 端口 3389 对于基础连接和标准配置中优化媒体路径的UDP端口3391。防火墙、路由器和VPN网关必须在适用的情况下允许这两个方向的端口。
文档中列出执行NAT或检查的设备,并验证UDP 3391没有被静默丢弃或限速。使用简单的工具,如
Test-NetConnection
或数据包捕获以确认UDP数据包到达服务器,并且响应在客户端可见。
UDP和体验的组策略设置
在 RDP 主机或会话主机上,打开组策略管理并导航到:
计算机配置 > 管理模板 > Windows 组件 > 远程桌面服务 > 远程桌面会话主机 > 远程会话环境
关键设置包括:
- “优化体验而非 RD 网关”或类似的体验优化。
- “使用UDP传输” → 设置为启用。
避免在启用体验优化的同时禁用UDP的冲突策略。更改后,运行
gpupdate /force
并重新连接测试会话以确认现在正在使用UDP。
QoS和网络级优化
在较大的环境中,服务质量(QoS)策略可以显著提高RDP的响应能力。为RDP流量,特别是UDP流,标记适当的DSCP值,并确保WAN路由器尊重这些标记。考虑将RDP流量放入优先级或保证转发类,而不是让其与大宗传输竞争。
同时,保持VPN和WAN链接上的MTU一致,以避免分片,这可能会影响UDP性能。网络团队还应监控远程桌面流量所使用路径上的丢包和抖动,以识别问题电路。
监控正在使用的 RDP 传输
Windows 在事件查看器的 RemoteDesktopServices-RdpCoreTS 日志中记录 RDP 传输选项。 常见事件包括:
- 事件 ID 131:仅使用 TCP 建立 RDP 会话
- 事件 ID 132:使用 UDP 传输
- 事件 ID 140:尝试使用 UDP,但回退到 TCP
当用户报告“慢”桌面时,请审查这些事件。将它们与网络指标和数据包捕获结合起来,以决定修复措施是启用UDP、调整QoS还是简化网络路径。
为什么 RDP 在故障排除时回退到 TCP?
- 连接和防火墙问题
- 政策、客户端和服务器不匹配
连接和防火墙问题
如果 RDP 在现代客户端和服务器上始终使用 TCP,请从基本连接检查开始。确认 UDP 3391 在端到端的情况下是允许的,而不仅仅是在 Windows 主机上。允许 TCP 3389 但默默丢弃 UDP 3391 的防火墙将迫使 RDP 进入仅 TCP 模式。
对于远程站点,请验证 VPN 策略或 SD-WAN 设备是否未重写或阻止 UDP。一些安全堆栈需要针对 RDP 的 UDP 通道明确的规则或“应用程序定义”。隧道两侧的包捕获可以快速揭示 UDP 数据包是否成功往返。
政策、客户端和服务器不匹配
组策略可以显式禁用UDP传输,即使网络允许它。检查计算机和用户策略中的RDP设置,并验证没有旧模板覆盖新默认值。同样,旧版RDP客户端可能缺乏完整的UDP支持或可能受到本地策略的限制。
还要验证服务器的远程桌面服务配置是否符合域安全基准。以前项目的加固模板有时会禁用较新的协议功能。如有疑问,请将设置与当前的 Microsoft 基准和您 Windows Server 版本的文档进行比较。
提升您的 RDP 体验与 TSplus Remote Access
故障排除 RDP 性能或规划更可扩展的远程访问架构? TSplus 远程访问 让您通过轻量级网关、TLS安全性和优化的RDP处理在网络上发布桌面和应用程序。
需要安全、经济的应用发布,而不需要Citrix级别的复杂性吗?开始您的免费TSplus试用,看看您可以多快部署快速、UDP优化的远程会话。
结论
在UDP和TCP之间没有单一的“赢家”。UDP在干净、管理良好的网络上提供最佳的用户体验,通过提供低延迟、高吞吐量的会话。TCP在条件不太可预测时仍然是兼容性和弹性的支柱。
真正的目标是让现代RDP尽可能使用UDP,同时在必要时保留自动回退到TCP。通过验证版本、打开正确的端口、调整组策略和监控传输使用情况,您可以提供快速、可靠的远程桌面。 TSplus 远程访问 帮助将该调优转化为一个一致、安全的平台供您的用户使用。
TSplus远程访问免费试用
终极的Citrix/RDS替代方案,用于桌面/应用访问。安全、经济高效、本地/云端