我刚刚将 Ubuntu 重新安装到我的 Toshiba Satellite 上,并卸载了系统上的 Windows 10 和旧 Ubuntu。我的互联网在 Windows 10 上运行良好,但在 Ubuntu 上速度极慢,而且我在之前安装的 Ubuntu 上从未解决过这个问题。
我运行了 Ubuntu wireless-info 脚本并将内容粘贴到 pastebin 中: http://pastebin.com/SymfQikh
有人能帮我找出我的问题是什么以及我该怎么做才能提高我的速度吗?
答案1
从你的wireless-info
输出来看:
wlp3s0 Link encap:Ethernet HWaddr <MAC 'wlp3s0' [IF2]>
inet addr:172.21.227.43 Bcast:172.21.255.255 Mask:255.255.0.0
inet6 addr: fe80::a06b:d623:7a53:48a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:95202 errors:0 dropped:0 overruns:0 frame:0
TX packets:81103 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:124882281 (124.8 MB) TX bytes:8863246 (8.8 MB)
第四行MTU:1500
显示配置错误。MTU
是Maximum Transmission Unit
系统将发送的最大数据包的大小(以字节为单位)。任何要发送的较大数据块都将拆分为多个数据包。
一个MTU:1500
设置将导致你的系统向 发送 1500 字节的数据包wlp3s0
,由于它是无线的,它将在一些额外的元数据中包装你的 1500 字节数据包,使得实际的数据包长度大于 1500。您的一个数据包必须拆分成两个数据包才能传输。发送两个数据包需要更长的时间。
我们能做什么?
安装iputils-tracepath
软件包:
sudo apt-get install iputils-tracepath
man tracepath
然后阅读
tracepath -n slashdot.org
并查看pmtu
( Path MTU
) 值。记住这个数字!或者,让 shell 帮你记住它:
newMTU=$(tracepath -n slashdot.org| grep -o 'pmtu [0-9]\+'| tail -n 1 | awk '{print $2}')
然后,更改MTU
。由于MTU
配置设置用于设置连接,因此您必须执行 Down-Change-Up 操作。请注意,这将中断通过 的所有连接wlp3s0
,因此,如果您远程管理此系统(通过ssh
),您将断开连接。
sudo ifconfig wlp3s0 down
sudo ifconfig wlp3s0 mtu $newMTU
sudo ifconfig wlp3s0 up
替代方法:
更改路由器的配置以$newMTU
通过提供值DHCP
,然后关闭wlp3s0
并启动。