macos优化Microsoft远程桌面性能
in 小技巧 with 0 comment

我是Microsoft RDP重度使用用户,因为有些软件什么的确实只提供了Windows版本,比如大一上课用的DevCpp、数据库课程需要用SQL Server这样的软件。

但是我发现似乎在mac上使用官方客户端连接Windows PC的时候,并不如使用Windows电脑连接Windows电脑那样流畅,按照网上很多优化教程设置完毕后还是感觉不如Windows连接Windows那样丝滑流畅,指哪打哪的感觉,于是这个问题困扰了我很久。

真的卡爆了!!!

后来,发现这个问题还真的不是我的错觉,是真的存在的。 因为我在实验室,在内网环境下RDP连接Windows,依然还是和30来毫秒的公网延迟的体验差不多,所以这肯定不是网络问题。同时,当我降低了色深和分辨率,关闭了声音等等操作都没有很大改观。


后来我总结了一下,对于我个人的情况来说应该是有两点原因:

  1. macos默认的TCP延迟确认参数较高
  2. 开启了Optimize Retina display、设置了高色深

解决问题

修改TCP延迟确认参数

sudo sysctl net.inet.tcp.delayed_ack=0

2024-02-02T11:06:35.png

因为我已经关闭了TCP延迟确认,所以这里显示的是从0到了0。macos应该默认是3。这里调整为了0就是不等数据包攒起来,直接就进行处理。

大概就是为了减小网卡的PPS(Packets Per Second),网卡要等到攒到了一定数量的数据包后才会进行处理发送。比如有的数据包比较小,要是逢数据包就处理,可能会增加网卡的压力。不过对于RDP这种对于延迟敏感,就没必要等攒到3个数据包再发送了。

关闭高分屏优化、降低色深

在RDP客户端中关闭这个选项就行了。MacBook的屏幕素质比较高,开启了这个选项后,等效分辨率就会等于MacBook的屏幕分辨率。

但是mac是多合一像素,实际需要渲染传输的分辨率会很高,甚至达到了4k,于是这样就会增加对于网络的压力,如果对于显示效果没那么在意,可以关掉。

同样,个人觉得16位和32位色深,没有什么差别。如果对色彩要求没那么高,也可以降低色深到16位。

16位色深最多可以显示2^16=65,536种颜色
32位色深最多可以显示2^32=4,294,967,296种颜色

2024-02-02T11:15:12.png


Responses