En mi oficina, recientemente compramos veinte computadoras portátiles Dell Latitude 5420 con Ubuntu 20.04 y tenemos un gran problema con la conexión Ethernet, la descarga es extremadamente lenta (pero la carga es buena).
Editar: El problema sólo está en esta serie de portátiles, sólo con Ethernet integrado y sólo en Ubuntu (consulte las pruebas a continuación). Wifi funciona perfectamente, Ethernet también funciona perfectamente si instalamos Windows en estas computadoras portátiles y no tenemos problemas si usamos un adaptador USB Ethernet o una estación de acoplamiento con Ethernet.
En cuanto al hardware, los portátiles están equipados con tarjetas de red integradas: Intel "Ethernet Connection I219-LM".
A continuación se muestran las pruebas que hice.
Condiciones de las pruebas realizadas en mi domicilio:
- Tipo de conexión a Internet utilizada: VDSL2+
- Velocidad de descarga: 40,43 Mbps
- Velocidad de carga: 5,70 Mbps
Condiciones de las pruebas realizadas en mi consultorio:
- Tipo de conexión a internet utilizada: Fibra óptica
- Velocidad de descarga: 756,21 Mbps
- Velocidad de subida: 337,64 Mbps
Aquí están las pruebas que realicé:
Ubuntu 20.04.1 LTS "listo para usar"
- Resultado después de la instalación: Ethernet lento (@home = descarga: 0,89 Mbps / carga: 4,82 Mbps)
- Versión del kernel después de la instalación: 5.6.0-1032-oem
- Versión del controlador Ethernet después de la instalación: Intel e1000e 3.2.6-k
- Versión del kernel después de la actualización: 5.10.0-1029-oem
- Versión del controlador Ethernet después de la actualización: Intel e1000e 5.10.0-1029-oem (controlador incluido en el kernel)
- Resultado después de la actualización: Ethernet lento (@ home = descarga: 0,57 Mbps / carga: 4,61 Mbps)
Ubuntu 20.04.2 LTS "instalación desde USB"
- Resultado después de la instalación: Ethernet lento (@home = descarga: 0,89 Mbps / carga: 4,82 Mbps) (@office = descarga: 6,36 Mbps / carga: 327,99 Mbps)
- Versión del kernel después de la instalación: 5.8.0-43-generic
- Versión del controlador Ethernet después de la instalación: Intel e1000e 3.2.6-k
- Versión del kernel después de la actualización: 5.8.0-55-generic
- Versión del controlador Ethernet después de la actualización: Intel e1000e 3.2.6-k
- Resultado después de la actualización: Ethernet lento (@home = descarga: 0,68 Mbps / carga: 4,52 Mbps) (@office = descarga: 5,31 Mbps / carga: 411,82 Mbps)
- Intentos fallidos de instalar manualmente el controlador 3.8.4 y 3.8.7: errores durante la compilación del controlador
Ubuntu 20.04.2 LTS "sesión en vivo desde USB"
- Resultado en sesión en vivo: Ethernet "un poco menos" lento (@home = descarga: 15,60 Mbps / carga: 4,41 Mbps)
- Versión del kernel: 5.8.0-43-genérica
- Versión del controlador Ethernet: Intel e1000e 3.2.6-k
Ubuntu 18.04 LTS "instalación desde USB"
- Resultado después de la instalación: Tarjeta vista por el sistema pero no reclamada
- Versión del kernel: 5.4.0-74-genérica
- Versión del controlador Ethernet: Ninguna
- Versión del kernel después de la actualización: 5.4.0-74-generic
- Versión del controlador Ethernet después de la actualización: Ninguna
- Versión del controlador Ethernet después de la instalación manual: 3.8.4-NAPI (descargado del sitio de Intel)
- Resultado después de la actualización: Ethernet ok (@home = descarga: 40,29 Mbps / carga: 5,37 Mbps)
Ubuntu 20.04.1 LTS "instalación desde Dell recovery iso" (descargado desde el software Dell OS Recovery Tool)
- Resultado después de la instalación: Ethernet lento (@home = descarga: 0,87 Mbps / carga: 4,73 Mbps)
- Versión del kernel después de la instalación: 5.6.0-1032-oem
- Versión del controlador Ethernet después de la instalación: Intel e1000e 3.2.6-k
- Versión del kernel después de la actualización: 5.10.0-1029-oem
- Versión del controlador Ethernet después de la actualización: Intel e1000e 5.10.0-1029-oem (controlador incluido en el kernel)
- Resultado después de la actualización: Ethernet lento (@home = descarga: 0,56 Mbps / carga: 4,49 Mbps)
- Intentos fallidos de instalar manualmente el controlador 3.8.4 y 3.8.7: errores durante la compilación del controlador con los núcleos 5.6.0-1032-oem y 5.10.0-1029-oem
Ubuntu 21.04 "instalar desde USB"
- Resultado después de la instalación: Ethernet lento (@office = descarga: 1,52 Mbps / carga: 400,58 Mbps)
- Versión del kernel después de la instalación: 5.11.0-16-generic
- Versión del controlador Ethernet después de la instalación: 5.11.0-16-generic (controlador incluido en el kernel)
- Versión del kernel después de la actualización: 5.11.0-18-generic
- Versión del controlador Ethernet después de la actualización: 5.11.0-18-generic (controlador incluido en el kernel)
- Resultado después de la actualización: Ethernet lento (@office = descarga: 2,22 Mbps / carga: 410,05 Mbps)
Windows 10 Professional (versión 21H1)
- Resultado después de la instalación: Ethernet ok (@office = descarga: 850,12 Mbps / carga: 519,30 Mbps)
Entonces, como podemos ver después de todas estas pruebas, ya podemos excluir un problema de hardware (el problema está presente en 5 o 6 portátiles probados de los 20 recibidos) y el ancho de banda es perfecto en Ubuntu 18.04 una vez que los controladores Intel se instalan manualmente y en Windows.
Al principio, creo que la solución sería poder instalar una versión más reciente del controlador "Intel e1000e", pero cuando intento compilarlo en Ubuntu instalado desde el "Dell ISO", me aparecen estos errores (perdón por el idioma francés) :
En el kernel 5.6.0-1032-oem (de 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
En el kernel 5.10.0-1029-oem (de 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
Después de reinstalar Ubuntu desde la ISO oficial (no la de Dell) y desactivar SecureBoot, finalmente instalé con éxito el nuevo controlador Intel e1000e... pero... el problema sigue aquí...
En el kernel 5.8.0-43-generic (de la ISO oficial de Ubuntu)
- Resultado después de la actualización del controlador 3.8.7: Ethernet lento (@home = descarga: 0,16 Mbps / carga: 2,38 Mbps)
En el kernel 5.8.0-55-generic (de la ISO oficial de Ubuntu)
- Resultado después de la actualización del controlador 3.8.7: Ethernet lento (@home = descarga: 1,00 Mbps / carga: 5,13 Mbps)
Confieso que estoy completamente perdido... ¿Tienes alguna idea de dónde podría venir?
Mientras tanto, aquí tenéis el resultado del lshw -C network
pedido, no dudéis en pedirme los resultados de otros pedidos, los publicaré.
$ 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
Gracias de antemano por su ayuda ! :)
Yann
Actualizar
Aquí están los resultados de los comandos nestat -i
y netstat -s
(en mi red en casa):
$ 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:
Respuesta1
Por fin alguien que tiene exactamente el mismo problema. He presentado un error en la plataforma de lanzamiento:e1000e extremadamente lento.
¿Puedes comentar ahí también? ¿O hacer +1 o algo así? También existe una solución alternativa.
El truco consiste en desactivar aspm
with pcie_aspm=off
como opción del kernel /etc/default/grub
, así:
GRUB_CMDLINE_LINUX_DEFAULT="splash pcie_aspm=off"
Después de esa carrera:
update-grub
pcie_aspm
Es una especie de administración de energía que probablemente pone a dormir mi controlador de red o algo así, y al colocar una memoria USB en la computadora portátil de alguna manera lo activa.
Respuesta2
Prueba esto
sudo ethtool -C enp0s31f rx-usecs 6000
ethtool no es persistente, por lo que debe ejecutarlo nuevamente cada reinicio (o crear un script de inicio para eso).