![当其他连接设备运行正常时,诊断家庭以太网连接速度慢的问题](https://linux22.com/image/1597798/%E5%BD%93%E5%85%B6%E4%BB%96%E8%BF%9E%E6%8E%A5%E8%AE%BE%E5%A4%87%E8%BF%90%E8%A1%8C%E6%AD%A3%E5%B8%B8%E6%97%B6%EF%BC%8C%E8%AF%8A%E6%96%AD%E5%AE%B6%E5%BA%AD%E4%BB%A5%E5%A4%AA%E7%BD%91%E8%BF%9E%E6%8E%A5%E9%80%9F%E5%BA%A6%E6%85%A2%E7%9A%84%E9%97%AE%E9%A2%98.png)
我有一台 Intel NUC,通过一条短以太网电缆直接连接到我的路由器,运行 Debian 9。根据speedtest-cli
,它的上传和下载速度约为 4mbps,大致对称。同时,网络上的大多数设备(均通过 WiFi 连接)的下载速度约为 150,上传速度约为 25。
我首先想到的显然是电缆可能有问题。我换了电缆,但情况没有任何改善。然后我将旧的电缆连接到我的个人笔记本电脑上,通过它获得了完全可以接受的速度。然后我安装了NUCnload
并iftop
监控带宽利用率,这些工具报告了少量字节/秒的入站速度和约 10kbps 的出站速度。
您对问题是什么有任何想法吗?我的连接是否会因操作系统或软件层的某些设置而受到限制?或者可能只是我的 NUC 上的以太网端口有缺陷?
编辑:dmesg | grep eno1
[ 2.577149] e1000e 0000:00:1f.6 eno1: renamed from eth0
[ 3.637208] IPv6: ADDRCONF(NETDEV_UP): eno1: link is not ready
[ 3.850216] IPv6: ADDRCONF(NETDEV_UP): eno1: link is not ready
[ 428.371163] e1000e: eno1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[ 428.371236] IPv6: ADDRCONF(NETDEV_CHANGE): eno1: link becomes ready
当我 grep 查找该网络接口的先前名称(dmesg | grep eth0
)时,我得到了以下信息:
[ 2.575818] e1000e 0000:00:1f.6 eth0: (PCI Express:2.5GT/s:Width x1) 94:c6:91:a8:1c:89
[ 2.575823] e1000e 0000:00:1f.6 eth0: Intel(R) PRO/1000 Network Connection
[ 2.575937] e1000e 0000:00:1f.6 eth0: MAC: 12, PHY: 12, PBA No: FFFFFF-0FF
[ 2.577149] e1000e 0000:00:1f.6 eno1: renamed from eth0
EDIT2:
ethtool eno1
吐出以下内容:
Settings for eno1:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
MDI-X: on (auto)
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
EDIT3:输出lsmod
snd_hda_codec_hdmi 49152 1
snd_hda_codec_realtek 90112 1
snd_hda_codec_generic 69632 1 snd_hda_codec_realtek
nls_ascii 16384 1
nls_cp437 20480 1
vfat 20480 1
fat 69632 1 vfat
btusb 45056 0
btrtl 16384 1 btusb
btbcm 16384 1 btusb
btintel 16384 1 btusb
joydev 20480 0
bluetooth 552960 5 btrtl,btintel,btbcm,btusb
uas 24576 0
usb_storage 73728 1 uas
intel_rapl 20480 0
x86_pkg_temp_thermal 16384 0
intel_powerclamp 16384 0
coretemp 16384 0
kvm_intel 200704 0
kvm 598016 1 kvm_intel
evdev 24576 8
snd_soc_skl 65536 0
irqbypass 16384 1 kvm
snd_soc_skl_ipc 45056 1 snd_soc_skl
snd_soc_sst_ipc 16384 1 snd_soc_skl_ipc
snd_soc_sst_dsp 32768 1 snd_soc_skl_ipc
snd_hda_ext_core 28672 1 snd_soc_skl
snd_soc_sst_match 16384 1 snd_soc_skl
crct10dif_pclmul 16384 0
snd_soc_core 212992 1 snd_soc_skl
crc32_pclmul 16384 0
snd_compress 20480 1 snd_soc_core
efi_pstore 16384 0
snd_hda_intel 36864 0
i915 1257472 4
iwlwifi 151552 0
snd_hda_codec 135168 4 snd_hda_intel,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek
rtsx_pci_ms 20480 0
snd_hda_core 90112 7 snd_hda_intel,snd_hda_codec,snd_hda_ext_core,snd_soc_skl,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek
snd_hwdep 16384 1 snd_hda_codec
cfg80211 589824 1 iwlwifi
snd_pcm 110592 7 snd_hda_intel,snd_hda_codec,snd_hda_ext_core,snd_hda_core,snd_soc_skl,snd_hda_codec_hdmi,snd_soc_core
drm_kms_helper 155648 1 i915
ghash_clmulni_intel 16384 0
memstick 20480 1 rtsx_pci_ms
rfkill 24576 3 bluetooth,cfg80211
efivars 20480 1 efi_pstore
pcspkr 16384 0
snd_timer 32768 1 snd_pcm
drm 360448 5 i915,drm_kms_helper
mei_me 36864 0
iTCO_wdt 16384 0
snd 86016 10 snd_compress,snd_hda_intel,snd_hwdep,snd_hda_codec,snd_timer,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek,snd_soc_core,snd_pcm
iTCO_vendor_support 16384 1 iTCO_wdt
sg 32768 0
soundcore 16384 1 snd
i2c_algo_bit 16384 1 i915
intel_pch_thermal 16384 0
shpchp 36864 0
mei 102400 1 mei_me
wmi 16384 0
video 40960 1 i915
tpm_crb 16384 0
acpi_pad 24576 0
button 16384 1 i915
efivarfs 16384 1
ip_tables 24576 0
x_tables 36864 1 ip_tables
autofs4 40960 2
hid_generic 16384 0
ext4 589824 1
usbhid 53248 0
crc16 16384 2 bluetooth,ext4
hid 122880 2 hid_generic,usbhid
jbd2 106496 1 ext4
crc32c_generic 16384 0
fscrypto 28672 1 ext4
ecb 16384 0
mbcache 16384 2 ext4
sd_mod 49152 4
rtsx_pci_sdmmc 24576 0
mmc_core 147456 1 rtsx_pci_sdmmc
crc32c_intel 24576 2
aesni_intel 167936 1
aes_x86_64 20480 1 aesni_intel
glue_helper 16384 1 aesni_intel
lrw 16384 1 aesni_intel
gf128mul 16384 1 lrw
ablk_helper 16384 1 aesni_intel
cryptd 24576 3 ablk_helper,ghash_clmulni_intel,aesni_intel
rtsx_pci 57344 2 rtsx_pci_sdmmc,rtsx_pci_ms
mfd_core 16384 1 rtsx_pci
e1000e 249856 0
ptp 20480 1 e1000e
pps_core 16384 1 ptp
ahci 40960 3
libahci 32768 1 ahci
xhci_pci 16384 0
i2c_i801 24576 0
i2c_smbus 16384 1 i2c_i801
xhci_hcd 188416 1 xhci_pci
libata 249856 2 ahci,libahci
scsi_mod 225280 5 sd_mod,usb_storage,libata,uas,sg
usbcore 253952 6 usbhid,usb_storage,xhci_pci,btusb,uas,xhci_hcd
usb_common 16384 1 usbcore
thermal 20480 0
答案1
您的问题可能与版本(内核/固件)有关。
到帮助诊断您的以太网连接速度较慢(你的问题),您可能会看到您的 WiFi 发生了什么变化(并且也许您仍然对此感到满意)。
按照官方文档,你的 NUC 应该有一个
集成无线‡:英特尔® Wireless-AC 8265 + 蓝牙 4.2
按照这,您最好使用 Ubuntu 16.10(内核版本 4.8.0-xx)来使其运行。 这确认 Intel 8265 需要 4.6+。我猜 16.06(您尝试过的)在这方面可能无法提供相同的功能。
这表示linux-firmware_1.169.2_all.deb
运行没有问题。
也许这一切也解决了自动关闭您所看到的,以及以太网问题。
答案2
我首先想到的是,NIC 以 10 Mbps 半双工模式运行。或者由于某些我们还不知道的问题而一直在不同的链路速度之间切换。如果这是真的,那么这会严重损害性能。
您是否读取了命令给出的输出dmesg
以查看在传输数据时是否打印了一些与网络适配器相关的消息?
通常,这些卡处于自动链路协商状态(自动选择正确的速度,这很好,不要更改它!)。也许您会看到一些消息,这些消息表明适配器混乱并且一直在链路速度之间切换。
顺便问一下:您使用的是哪个驱动程序和驱动程序版本?我对 NUC 一无所知,但我猜它有某种英特尔网络适配器。