x 转发的速度差异

x 转发的速度差异

我们正在处理三个 Linux 系统:

  • 运行 ubuntu 18.04 的“服务器”(实际上是也用作桌面 PC 的工作站)。

  • 运行 arch linux 的旧客户端(带有 sandy-bridge cpu 的笔记本电脑,没有专用 GPU)

  • 一个新的客户端(配备 Comet Lake CPU、专用 Nvidia GPU、BIOS 中的混​​合设置、无 bumblebee 安装的笔记本电脑)运行 debian 测试并使用 debian 存储库中的专有 nvidia 驱动程序

两个客户端位于同一网络中(交换机上的相邻端口、相同的 IP 范围、两个千兆位以太网适配器、speedtest.net 报告两者的连接速度相同)。

我可以从两个客户端 ssh 到服务器,X 转发通常可以工作,只是在新客户端上速度慢得多(作为测试周期,我启动 intel vtune gui,并在主菜单完全绘制后关闭它。在新客户端上大约需要 26 秒旧客户端上大约 5 秒)。

ssh -vvv没有看到这两个设置之间有任何区别(都是[email protected]密码,都不使用连接压缩。事实上,文件$HOME/.ssh/config/etc/ssh/ssh_config文件是相同的(后者的交付方式略有不同,但我将文件从旧客户端复制到新客户端)排除这就是差异的来源)。

显然,我们希望新客户端上的 x 转发速度与旧客户端上的一样快。建议在哪里寻找差异?客户端上的 X 配置/图形驱动程序是否会导致速度变慢(我们在三个系统中的任何一个上都没有看到一般图形问题)?

更新

两个系统都运行相同的窗口管理器 (i3)。启用/禁用压缩不会改变行为。

有点意外(虽然是由 @symcbean 的建议触发的),我注意到在新客户端上,在新客户端上切换网络设备时,行为发生了巨大变化:通过 USB-C 连接到附带的以太网,我观察到行为缓慢。通过 wifi 连接,上面提到的启动和退出周期大约需要 9 秒。 (旧客户端使用内置以太网适配器)。

进一步挖掘,虽然 speedtest.net 说两个客户端都获得 800Mbit/s(两个客户端上的以太网),但从scp服务器到客户端到旧客户端的速度为 90MB/s,但到新客户端的以太网速度仅为 5 MB/s( 50MB/s(带 wifi)。

更新2

ip addr发现qdisc客户端之间的设置有所不同:

  • 新客户端以太网<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
  • 旧客户端以太网<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
  • 新客户端wifi<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000

iperf3(到公共 iperf 服务器)

老客户

[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  92.7 MBytes   777 Mbits/sec    0   1.54 MBytes       
[  5]   1.00-2.00   sec  73.8 MBytes   619 Mbits/sec    0   1.54 MBytes       
[  5]   2.00-3.00   sec  71.2 MBytes   598 Mbits/sec    0   1.54 MBytes       
[  5]   3.00-4.00   sec  76.2 MBytes   640 Mbits/sec    0   1.54 MBytes       
[  5]   4.00-5.00   sec  97.5 MBytes   818 Mbits/sec    2   1.14 MBytes       
[  5]   5.00-6.00   sec  95.0 MBytes   797 Mbits/sec    0   1.27 MBytes       
[  5]   6.00-7.00   sec  93.8 MBytes   786 Mbits/sec    0   1.34 MBytes       
[  5]   7.00-8.00   sec  93.8 MBytes   786 Mbits/sec    0   1.44 MBytes       
[  5]   8.00-9.00   sec  95.0 MBytes   797 Mbits/sec    0   1.48 MBytes       
[  5]   9.00-10.00  sec  86.2 MBytes   724 Mbits/sec    0   1.48 MBytes  

新客户端(以太网)

[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  30.0 MBytes   252 Mbits/sec   49    382 KBytes       
[  5]   1.00-2.00   sec  35.9 MBytes   301 Mbits/sec    0    447 KBytes       
[  5]   2.00-3.00   sec  41.5 MBytes   348 Mbits/sec    0    515 KBytes       
[  5]   3.00-4.00   sec  47.6 MBytes   399 Mbits/sec    0    580 KBytes       
[  5]   4.00-5.00   sec  53.6 MBytes   450 Mbits/sec    0    648 KBytes       
[  5]   5.00-6.00   sec  58.2 MBytes   489 Mbits/sec    0    714 KBytes       
[  5]   6.00-7.00   sec  66.2 MBytes   555 Mbits/sec    0    781 KBytes       
[  5]   7.00-8.00   sec  52.5 MBytes   440 Mbits/sec   10    625 KBytes       
[  5]   8.00-9.00   sec  57.5 MBytes   482 Mbits/sec    0    690 KBytes       
[  5]   9.00-10.00  sec  61.2 MBytes   513 Mbits/sec    0    740 KBytes       

答案1

我没有使用过 vtune/不知道它的作用 - 你知道吗感知旧设备的响应速度更快吗?

X比较健谈。我首先要查看的是网络堆栈,而不是视频卡。尝试运行 iperf3 / 检查冲突算法 / TCP 卸载的差异(这会增加延迟,同时减少 CPU 负载)。确保您已在新机器上运行 irqbalance。

相关内容