私のオフィスでは、最近、Ubuntu 20.04 搭載の Dell Latitude 5420 ラップトップ 20 台を購入しましたが、イーサネット接続に大きな問題が発生しています。ダウンロードが非常に遅いのです (アップロードは良好です)。
編集: 問題は、このラップトップ シリーズのみ、統合イーサネットのみ、Ubuntu のみで発生します (以下のテストを参照)。このラップトップに Windows をインストールすると、Wi-Fi は完全に動作し、イーサネットも完全に動作します。また、イーサネット USB アダプターまたはイーサネット搭載のドックステーションを使用すると、問題は発生しません。
ハードウェア面では、ラップトップには統合ネットワーク カード (Intel「Ethernet Connection I219-LM」) が搭載されています。
以下は私が行ったテストです。
自宅で実施したテストの条件:
- 使用されるインターネット接続の種類: VDSL2+
- ダウンロード速度: 40.43 Mbps
- アップロード速度: 5.70 Mbps
私のオフィスで実施されるテストの条件:
- 使用されるインターネット接続の種類: 光ファイバー
- ダウンロード速度: 756.21 Mbps
- アップロード速度: 337.64 Mbps
私が実行したテストは次のとおりです。
Ubuntu 20.04.1 LTS「すぐに使える」
- インストール後の結果: 遅いイーサネット (@home = ダウンロード: 0.89 Mbps / アップロード: 4.82 Mbps)
- インストール後のカーネルバージョン: 5.6.0-1032-oem
- インストール後のイーサネット ドライバー バージョン: Intel e1000e 3.2.6-k
- アップデート後のカーネルバージョン: 5.10.0-1029-oem
- アップデート後のイーサネット ドライバー バージョン: Intel e1000e 5.10.0-1029-oem (ドライバーはカーネルに含まれています)
- 更新後の結果: 遅いイーサネット (@ ホーム = ダウンロード: 0.57 Mbps / アップロード: 4.61 Mbps)
Ubuntu 20.04.2 LTS「USBからインストール」
- インストール後の結果: 低速イーサネット (@home = ダウンロード: 0.89 Mbps / アップロード: 4.82 Mbps) (@office = ダウンロード: 6.36 Mbps / アップロード: 327.99 Mbps)
- インストール後のカーネルバージョン: 5.8.0-43-generic
- インストール後のイーサネット ドライバー バージョン: Intel e1000e 3.2.6-k
- アップデート後のカーネルバージョン: 5.8.0-55-generic
- アップデート後のイーサネット ドライバー バージョン: Intel e1000e 3.2.6-k
- 更新後の結果: 遅いイーサネット (@home = ダウンロード: 0.68 Mbps / アップロード: 4.52 Mbps) (@office = ダウンロード: 5.31 Mbps / アップロード: 411.82 Mbps)
- 3.8.4 および 3.8.7 ドライバを手動でインストールしようとして失敗しました: ドライバのコンパイル中にエラーが発生しました
Ubuntu 20.04.2 LTS「USBからのライブセッション」
- ライブ セッションの結果: イーサネットは「少しだけ」遅くなりました (@home = ダウンロード: 15.60 Mbps / アップロード: 4.41 Mbps)
- カーネルバージョン: 5.8.0-43-generic
- イーサネット ドライバー バージョン: Intel e1000e 3.2.6-k
Ubuntu 18.04 LTS「USBからインストール」
- インストール後の結果: カードはシステムによって認識されたが、要求されていない
- カーネルバージョン: 5.4.0-74-generic
- イーサネット ドライバー バージョン: なし
- アップデート後のカーネルバージョン: 5.4.0-74-generic
- 更新後のイーサネット ドライバー バージョン: なし
- 手動インストール後のイーサネット ドライバー バージョン: 3.8.4-NAPI (Intel サイトからダウンロード)
- 更新後の結果: イーサネットは正常 (@home = ダウンロード: 40.29 Mbps / アップロード: 5.37 Mbps)
Ubuntu 20.04.1 LTS「Dell リカバリ ISO からインストール」(Dell OS リカバリ ツール ソフトウェアからダウンロード)
- インストール後の結果: 遅いイーサネット (@home = ダウンロード: 0.87 Mbps / アップロード: 4.73 Mbps)
- インストール後のカーネルバージョン: 5.6.0-1032-oem
- インストール後のイーサネット ドライバー バージョン: Intel e1000e 3.2.6-k
- アップデート後のカーネルバージョン: 5.10.0-1029-oem
- アップデート後のイーサネット ドライバー バージョン: Intel e1000e 5.10.0-1029-oem (ドライバーはカーネルに含まれています)
- 更新後の結果: 遅いイーサネット (@home = ダウンロード: 0.56 Mbps / アップロード: 4.49 Mbps)
- 3.8.4 および 3.8.7 ドライバーを手動でインストールしようとして失敗しました: カーネル 5.6.0-1032-oem および 5.10.0-1029-oem でのドライバーのコンパイル中にエラーが発生しました
Ubuntu 21.04「USBからインストール」
- インストール後の結果: 遅いイーサネット (@office = ダウンロード: 1.52 Mbps / アップロード: 400.58 Mbps)
- インストール後のカーネルバージョン: 5.11.0-16-generic
- インストール後のイーサネット ドライバー バージョン: 5.11.0-16-generic (ドライバーはカーネルに含まれています)
- アップデート後のカーネルバージョン: 5.11.0-18-generic
- アップデート後のイーサネット ドライバー バージョン: 5.11.0-18-generic (ドライバーはカーネルに含まれています)
- 更新後の結果: 遅いイーサネット (@office = ダウンロード: 2.22 Mbps / アップロード: 410.05 Mbps)
Windows 10 プロフェッショナル (リリース 21H1)
- インストール後の結果: イーサネット OK (@office = ダウンロード: 850.12 Mbps / アップロード: 519.30 Mbps)
これらのテストをすべて終えた時点で、ハードウェアの問題は除外できることがわかります(受け取った20台のノートパソコンのうち、テストした5台または6台で問題が発生しました。)、Intel ドライバーを手動でインストールすると、Ubuntu 18.04 および Windows では帯域幅が完璧になります。
最初は、より新しいバージョンの「Intel e1000e」ドライバをインストールできれば解決できると思いましたが、「Dell ISO」からインストールしたUbuntuでコンパイルしようとすると、次のエラーが発生します(フランス語で申し訳ありません) :
カーネル 5.6.0-1032-oem (Dell ISO から):
administrateur@administrateur-Latitude-5420:~/Téléchargements/e1000e-3.8.7/src$ sudo make *** The target kernel has CONFIG_MODULE_SIG_ALL enabled, but *** the signing key cannot be found. Module signing has been *** disabled for this build. make[1] : on entre dans le répertoire « /usr/src/linux-headers-5.6.0-1032-oem » CC [M] /home/administrateur/Téléchargements/e1000e-3.8.7/src/netdev.o In file included from /home/administrateur/Téléchargements/e1000e-3.8.7/src/e1000.h:14, from /home/administrateur/Téléchargements/e1000e-3.8.7/src/netdev.c:30: /home/administrateur/Téléchargements/e1000e-3.8.7/src/kcompat.h:825:2: error: #error UTS_UBUNTU_RELEASE_ABI is too large... 825 | #error UTS_UBUNTU_RELEASE_ABI is too large... | ^~~~~ make[2]: *** [scripts/Makefile.build:276: /home/administrateur/Téléchargements/e1000e-3.8.7/src/netdev.o] Erreur 1 make[1]: *** [Makefile:1707: /home/administrateur/Téléchargements/e1000e-3.8.7/src] Erreur 2 make[1] : on quitte le répertoire « /usr/src/linux-headers-5.6.0-1032-oem » make: *** [Makefile:73: default] Erreur 2
カーネル 5.10.0-1029-oem (Dell ISO より):
administrateur@administrateur-Latitude-5420:~/Téléchargements/e1000e-3.8.7/src$ sudo make *** The target kernel has CONFIG_MODULE_SIG_ALL enabled, but *** the signing key cannot be found. Module signing has been *** disabled for this build. make[1] : on entre dans le répertoire « /usr/src/linux-headers-5.10.0-1029-oem » CC [M] /home/administrateur/Téléchargements/e1000e-3.8.7/src/netdev.o In file included from /home/administrateur/Téléchargements/e1000e-3.8.7/src/e1000.h:14, from /home/administrateur/Téléchargements/e1000e-3.8.7/src/netdev.c:30: /home/administrateur/Téléchargements/e1000e-3.8.7/src/kcompat.h:825:2: error: #error UTS_UBUNTU_RELEASE_ABI is too large... 825 | #error UTS_UBUNTU_RELEASE_ABI is too large... | ^~~~~ make[2]: *** [scripts/Makefile.build:287: /home/administrateur/Téléchargements/e1000e-3.8.7/src/netdev.o] Erreur 1 make[1]: *** [Makefile:1849: /home/administrateur/Téléchargements/e1000e-3.8.7/src] Erreur 2 make[1] : on quitte le répertoire « /usr/src/linux-headers-5.10.0-1029-oem » make: *** [Makefile:73: default] Erreur 2
公式 ISO (Dell のものではありません) から Ubuntu を再インストールし、SecureBoot を無効にした後、ようやく新しい Intel e1000e ドライバーを正常にインストールできました... しかし... 問題はまだ残っています...
カーネル 5.8.0-43-generic (公式 Ubuntu ISO から)
- 3.8.7 ドライバ更新後の結果: 遅いイーサネット (@home = ダウンロード: 0.16 Mbps / アップロード: 2.38 Mbps)
カーネル 5.8.0-55-generic (公式 Ubuntu ISO から)
- 3.8.7 ドライバ更新後の結果: 遅いイーサネット (@home = ダウンロード: 1.00 Mbps / アップロード: 5.13 Mbps)
正直に言うと、私は完全に迷っています...それがどこから来たのか、何か心当たりはありますか?
とりあえず、注文の結果はここにあります。lshw -C network
他の注文の結果についても遠慮なくお問い合わせください。投稿します。
$ sudo lshw -C network
*-network:1
description: Ethernet interface
produit: Ethernet Connection (13) I219-LM
fabricant: Intel Corporation
identifiant matériel: 1f.6
information bus: pci@0000:00:1f.6
nom logique: enp0s31f6
version: 20
numéro de série: 38:14:28:0f:32:1a
taille: 1Gbit/s
capacité: 1Gbit/s
bits: 32 bits
horloge: 33MHz
fonctionnalités: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.8.7-NAPI duplex=full firmware=0.8-4 ip=192.168.1.31 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
ressources: irq:147 mémoire:a2300000-a231ffff
ご協力をよろしくお願いします! :)
ヤン
アップデート
nestat -i
以下は、およびコマンドの結果ですnetstat -s
(自宅のネットワーク上) :
$ netstat -i
Table d'interfaces noyau
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
enp0s31f 1500 29522 448 361 0 30261 0 0 0 BMRU
lo 65536 4572 0 0 0 4572 0 0 0 LRU
wlp0s20f 1500 7350 0 672 0 563 0 0 0 BMRU
$ netstat -s
Ip:
Forwarding: 2
50727 total packets received
6 with invalid addresses
0 forwarded
0 incoming packets discarded
49394 incoming packets delivered
43118 requests sent out
20 outgoing packets dropped
542 dropped because of missing route
Icmp:
67 ICMP messages received
0 input ICMP message failed
Histogramme d'entrée ICMP
destination unreachable: 67
762 ICMP messages sent
0 ICMP messages failed
Histogramme de sortie ICMP
destination unreachable: 762
IcmpMsg:
InType3: 67
OutType3: 762
Tcp:
545 active connection openings
0 passive connection openings
4 failed connection attempts
5 connection resets received
3 connections established
29486 segments received
40360 segments sent out
861 segments retransmitted
1 bad segments received
290 resets sent
Udp:
11379 packets received
1452 packets to unknown port received
0 packet receive errors
11028 packets sent
0 receive buffer errors
0 send buffer errors
IgnoredMulti: 5760
UdpLite:
TcpExt:
218 TCP sockets finished time wait in fast timer
164 delayed acks sent
Quick ack mode was activated 36 times
7910 packet headers predicted
6247 acknowledgments not containing data payload received
10413 predicted acknowledgments
TCPSackRecovery: 140
Detected reordering 1 times using SACK
6 congestion windows recovered without slow start after partial ack
TCPLostRetransmit: 100
490 fast retransmits
48 retransmits in slow start
TCPTimeouts: 95
TCPLossProbes: 300
TCPLossProbeRecovery: 30
TCPSackRecoveryFail: 7
TCPDSACKOldSent: 40
TCPDSACKOfoSent: 5
TCPDSACKRecv: 193
93 connections reset due to unexpected data
1 connections reset due to early user close
3 connections aborted due to timeout
TCPDSACKIgnoredOld: 1
TCPDSACKIgnoredNoUndo: 109
TCPSackShifted: 790
TCPSackMerged: 1396
TCPSackShiftFallback: 320
TCPRcvCoalesce: 1208
TCPOFOQueue: 1950
TCPOFOMerge: 5
TCPChallengeACK: 1
TCPSYNChallenge: 1
TCPAutoCorking: 157
TCPSynRetrans: 43
TCPOrigDataSent: 27241
TCPHystartDelayDetect: 13
TCPHystartDelayCwnd: 421
TCPKeepAlive: 612
TCPDelivered: 27555
TCPAckCompressed: 187
TcpTimeoutRehash: 95
TcpDuplicateDataRehash: 3
IpExt:
InMcastPkts: 2913
OutMcastPkts: 260
InBcastPkts: 5760
OutBcastPkts: 2
InOctets: 25001747
OutOctets: 37878931
InMcastOctets: 857652
OutMcastOctets: 17502
InBcastOctets: 5995183
OutBcastOctets: 108
InNoECTPkts: 52735
MPTcpExt:
答え1
最後に、まったく同じ問題を抱えている人がいます。Launchpad にバグを報告しました:e1000e 非常に遅い。
そこにもコメントできますか? または +1 とかできますか? 回避策もそこにあります。
コツは、次のようにのカーネル オプションとしてaspm
を無効にすることです。pcie_aspm=off
/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="splash pcie_aspm=off"
その後実行:
update-grub
pcie_aspm
これは、おそらくネットワーク コントローラーをスリープ状態にする何らかの電源管理機能で、ラップトップに USB メモリ スティックを挿入すると、何らかの理由で起動します。
答え2
これを試して
sudo ethtool -C enp0s31f rx-usecs 6000
ethtool は永続的ではないため、再起動するたびに再度実行する必要があります (またはそのための起動スクリプトを作成する必要があります)。