Solución de problemas de Elastic Network Adapter en Linux - Amazon Elastic Compute Cloud

Solución de problemas de Elastic Network Adapter en Linux

Elastic Network Adapter (ENA) se ha diseñado para mejorar la salud del sistema operativo y reducir la posibilidad de interrupción a largo plazo debido a errores o a comportamientos de hardware inesperados. La arquitectura ENA mantiene los errores de la unidad o el dispositivo lo más transparente posible para el sistema. En este tema se proporciona información sobre cómo solucionar problemas de ENA.

Si no puede conectarse a la instancia, comience por la sección Solucionar problemas de conectividad.

Si experimenta una degradación del rendimiento después de migrar a un tipo de instancia de sexta generación, consulte el artículo What do I need to do before I migrate my EC2 instance to a sixth generation instance to make sure that I get maximum network performance?

Si puede conectarse a la instancia, puede recopilar la información de diagnóstico usando la detección de errores y los mecanismos de recuperación que se abordan en secciones posteriores dentro de este tema.

Solucionar problemas de conectividad

Si pierde la conexión mientras habilita la red mejorada, puede ser que el módulo ena sea incompatible con el kernel en ejecución de la instancia. Esto puede ocurrir si instala el módulo para una versión de kernel específica (sin dkms o con un archivo dkms.conf incorrectamente configurado) y después se actualiza el kernel de la instancia. Si el kernel de la instancia que está cargado al arrancar no tiene un módulo ena correctamente instalado, la instancia no reconocerá el adaptador de red y la instancia no será alcanzable.

Habilitar las redes mejoradas para una instancia o AMI de PV también puede hacer que la instancia no sea alcanzable.

Si la instancia no es alcanzable después de habilitar las redes mejoradas con ENA, puede deshabilitar el atributo enaSupport de la instancia y volverá al adaptador de red.

Para inhabilitar las redes mejoradas con ENA (instancias respaldadas por EBS)
  1. En la computadora local, detenga la instancia usando la consola de Amazon EC2 o uno de los siguientes comandos: stop-instances (AWS CLI), Stop-EC2Instance (AWS Tools for Windows PowerShell). Si la instancia la administra AWS OpsWorks, debe detenerla en la consola de AWS OpsWorks para mantener su estado sincronizado.

    sugerencia

    Si usa una instancia respaldada por un almacén de instancias, no podrá pararla. En su lugar, salte a Para deshabilitar las redes mejoradas con ENA (instancias con respaldo en el almacenamiento de la instancia).

  2. En el equipo local, deshabilite el atributo de redes mejoradas con el siguiente comando.

  3. En la computadora local, inicie la instancia usando la consola de Amazon EC2 o uno de los siguientes comandos: start-instances (AWS CLI), Start-EC2Instance (AWS Tools for Windows PowerShell). Si la instancia la administra AWS OpsWorks, debe iniciarla en la consola de AWS OpsWorks para mantener su estado sincronizado.

  4. (Opcional) Conéctese a la instancia e intente reinstalar el módulo ena con la versión de kernel actual siguiendo los pasos de Habilitación de las redes mejoradas con Elastic Network Adapter (ENA) en las instancias EC2.

Para deshabilitar las redes mejoradas con ENA (instancias con respaldo en el almacenamiento de la instancia)

Si la suya es una instancia respaldada por un almacén de instancias, cree una nueva AMI como se describe en Crear una AMI de Linux con respaldo en el almacén de instancias. Asegúrese de deshabilitar el atributo enaSupport de redes mejoradas cuando registre la AMI.

  • register-image (AWS CLI)

    $ C:\> aws ec2 register-image --no-ena-support ...
  • Register-EC2Image (AWS Tools for Windows PowerShell)

    C:\> Register-EC2Image -EnaSupport $false ...

Mecanismo Keep-alive

El dispositivo ENA publica eventos keep-alive a intervalos establecidos (por lo general una vez por segundo). El controlador de ENA implementa un mecanismo watchdog para detectar la presencia de estos mensajes keep-alive. Si hay uno o varios mensajes, el watchdog se rearma; de lo contrario, el controlador concluye que el dispositivo experimentó un error y hace lo siguiente:

  • Vuelca las estadísticas actuales en el syslog

  • Restablece el dispositivo ENA

  • Restablece el estado del controlador ENA

El procedimiento anterior puede dar lugar a cierta pérdida de tráfico durante un breve periodo (las conexiones TCP deberían poder recuperarse), pero no debería afectar al usuario en nada más.

El dispositivo ENA también puede solicitar indirectamente un procedimiento de restablecimiento de dispositivos, no enviando una notificación keep-alive, por ejemplo, si el dispositivo de ENA llega a un estado desconocido después de cargar una configuración irrecuperable.

El siguiente es un ejemplo del procedimiento de restablecimiento:

[18509.800135] ena 0000:00:07.0 eth1: Keep alive watchdog timeout. // The watchdog process initiates a reset [18509.815244] ena 0000:00:07.0 eth1: Trigger reset is on [18509.825589] ena 0000:00:07.0 eth1: tx_timeout: 0 // The driver logs the current statistics [18509.834253] ena 0000:00:07.0 eth1: io_suspend: 0 [18509.842674] ena 0000:00:07.0 eth1: io_resume: 0 [18509.850275] ena 0000:00:07.0 eth1: wd_expired: 1 [18509.857855] ena 0000:00:07.0 eth1: interface_up: 1 [18509.865415] ena 0000:00:07.0 eth1: interface_down: 0 [18509.873468] ena 0000:00:07.0 eth1: admin_q_pause: 0 [18509.881075] ena 0000:00:07.0 eth1: queue_0_tx_cnt: 0 [18509.888629] ena 0000:00:07.0 eth1: queue_0_tx_bytes: 0 [18509.895286] ena 0000:00:07.0 eth1: queue_0_tx_queue_stop: 0 ....... ........ [18511.280972] ena 0000:00:07.0 eth1: free uncompleted tx skb qid 3 idx 0x7 // At the end of the down process, the driver discards incomplete packets. [18511.420112] [ENA_COM: ena_com_validate_version] ena device version: 0.10 //The driver begins its up process [18511.420119] [ENA_COM: ena_com_validate_version] ena controller version: 0.0.1 implementation version 1 [18511.420127] [ENA_COM: ena_com_admin_init] ena_defs : Version:[b9692e8] Build date [Wed Apr 6 09:54:21 IDT 2016] [18512.252108] ena 0000:00:07.0: Device watchdog is Enabled [18512.674877] ena 0000:00:07.0: irq 46 for MSI/MSI-X [18512.674933] ena 0000:00:07.0: irq 47 for MSI/MSI-X [18512.674990] ena 0000:00:07.0: irq 48 for MSI/MSI-X [18512.675037] ena 0000:00:07.0: irq 49 for MSI/MSI-X [18512.675085] ena 0000:00:07.0: irq 50 for MSI/MSI-X [18512.675141] ena 0000:00:07.0: irq 51 for MSI/MSI-X [18512.675188] ena 0000:00:07.0: irq 52 for MSI/MSI-X [18512.675233] ena 0000:00:07.0: irq 53 for MSI/MSI-X [18512.675279] ena 0000:00:07.0: irq 54 for MSI/MSI-X [18512.772641] [ENA_COM: ena_com_set_hash_function] Feature 10 isn't supported [18512.772647] [ENA_COM: ena_com_set_hash_ctrl] Feature 18 isn't supported [18512.775945] ena 0000:00:07.0: Device reset completed successfully // The reset process is complete

Registrar tiempo de espera de lectura

La arquitectura de ENA sugiere un uso limitado de operaciones de lectura I/O mapeadas a la memoria, MMIO. El controlador del dispositivo de ENA tiene acceso a los registros de MMIO solo durante el procedimiento de inicialización.

Si los logs del controlador (disponibles en el resultado de dmesg) indican errores en las operaciones de lectura, puede ser debido a un controlador incompatible o compilado incorrectamente, un dispositivo de hardware ocupado o un error de hardware.

Las entradas de registro intermitentes que indican errores en operaciones de lectura no deben considerarse un problema, el controlador volverá a intentarlas en este caso. Sin embargo, una secuencia de entradas de registro que contenga errores de lectura indica un problema de controlador o de hardware.

A continuación se ofrece un ejemplo de una entrada de registro de controlador que indica un error en una operación de lectura debido a un tiempo de espera:

[ 47.113698] [ENA_COM: ena_com_reg_bar_read32] reading reg failed for timeout. expected: req id[1] offset[88] actual: req id[57006] offset[0]  [ 47.333715] [ENA_COM: ena_com_reg_bar_read32] reading reg failed for timeout. expected: req id[2] offset[8] actual: req id[57007] offset[0]  [ 47.346221] [ENA_COM: ena_com_dev_reset] Reg read32 timeout occurred

Statistics

Si experimente problemas de latencia o rendimiento de red insuficiente, recupere las estadísticas del dispositivo y examínelas. Estas estadísticas se obtienen mediante ethtool, como se muestra abajo:

[ec2-user ~]$ ethtool -S ethN NIC statistics: tx_timeout: 0 suspend: 0 resume: 0 wd_expired: 0 interface_up: 1 interface_down: 0 admin_q_pause: 0 bw_in_allowance_exceeded: 0 bw_out_allowance_exceeded: 0 pps_allowance_exceeded: 0 conntrack_allowance_available: 450878 conntrack_allowance_exceeded: 0 linklocal_allowance_exceeded: 0 queue_0_tx_cnt: 4329 queue_0_tx_bytes: 1075749 queue_0_tx_queue_stop: 0 ...

Los parámetros de resultado del siguiente comando se describen a continuación:

tx_timeout: N

El número de veces que se activó el watchdog Netdev.

suspend: N

El número de veces que el controlador realizó una operación de suspensión.

resume: N

El número de veces que el controlador realizó una operación de reanudación.

wd_expired: N

El número de veces que el controlador no recibió el evento keep-alive en los tres segundos anteriores.

interface_up: N

El número de veces que se activó la interfaz de ENA.

interface_down: N

El número de veces que se desactivó la interfaz de ENA.

admin_q_pause: N

El número de veces que la cola de administración no se encontró en un estado de ejecución.

bw_in_allowance_exceeded: N

El número de paquetes formados en cola o eliminados el ancho de banda agregado entrante superó el máximo de la instancia.

bw_out_allowance_exceeded: N

El número de paquetes en cola o eliminados porque el ancho de banda agregado saliente superó el máximo de la instancia.

pps_allowance_exceeded: N

El número de paquetes en cola o eliminados porque el PPS bidireccional superó el máximo de la instancia.

conntrack_allowance_available: N

La cantidad de conexiones rastreadas que puede establecer la instancia antes de alcanzar el límite de conexiones rastreadas de ese tipo de instancia. Solo disponible para instancias basadas en Nitro. No compatibles con instancias de FreeBSD ni con entornos de DPDK.

conntrack_allowance_exceeded: N

El número de paquetes eliminados porque el seguimiento de conexiones superó el máximo de la instancia y no se pudieron establecer nuevas conexiones. Esto puede provocar la pérdida de paquetes para el tráfico hacia o desde la instancia.

linklocal_allowance_exceeded: N

El número de paquetes eliminados porque el PPS del tráfico a los servicios proxy locales superó el máximo para la interfaz de red. Esto afecta al tráfico hacia el servicio de DNS, el servicio de metadatos de instancia y el Servicio de sincronización temporal de Amazon.

queue_N_tx_cnt: N

El número de paquetes transmitidos para esta cola.

queue_N_tx_bytes: N

El número de bytes transmitidos para esta cola.

queue_N_tx_queue_stop: N

El número de veces que la cola N se llenó y se paró.

queue_N_tx_queue_wakeup: N

El número de veces que la cola N se reanudó después de pararse.

queue_N_tx_dma_mapping_err: N

Cuenta de errores de acceso directo a memoria. Si este valor no es 0, significa que los recursos del sistema están bajos.

queue_N_tx_linearize: N

El número de veces que se intentó la linearización SKB para esta cola.

queue_N_tx_linearize_failed: N

El número de veces que la linearización SKB para esta cola dio error.

queue_N_tx_napi_comp: N

El número de veces que el controlador napi llamó a napi_complete para esta cola.

queue_N_tx_tx_poll: N

El número de veces que el controlador napi se programó para esta cola.

queue_N_tx_doorbells: N

El número de timbres de transmisión para esta cola.

queue_N_tx_prepare_ctx_err: N

El número de veces que ena_com_prepare_tx dio error para esta cola.

queue_N_tx_bad_req_id: N

req_id no válido para esta cola. El req_id válido es cero, menos queue_size, menos 1.

queue_N_tx_llq_buffer_copy: N

El número de paquetes cuyo tamaño de encabezados es mayor que la entrada llq para esta cola.

queue_N_tx_missed_tx: N

El número de paquetes que quedaron incompletos para esta cola.

queue_N_tx_unmask_interrupt: N

El número de veces que se desenmascaró la interrupción de tx para esta cola.

queue_N_rx_cnt: N

El número de paquetes que se recibió para esta cola.

queue_N_rx_bytes: N

El número de bytes que se recibió para esta cola.

queue_N_rx_rx_copybreak_pkt: N

El número de veces que la cola rx recibió un paquete cuyo tamaño es menor que el del paquete rx_copybreak para esta cola.

queue_N_rx_csum_good: N

El número de veces que la cola rx recibió un paquete en el que se verificó la suma de comprobación y era correcta para esta cola.

queue_N_rx_refil_partial: N

El número de veces que el controlador no logró rellenar la porción vacía de la cola rx con los búferes para esta cola. Si este valor no es 0, indica que los recursos de memoria están bajos.

queue_N_rx_bad_csum: N

El número de veces que la cola rx tuvo una suma de comprobación incorrecta para esta cola (solo si se admite la descarga de la suma de comprobación de rx).

queue_N_rx_page_alloc_fail: N

El número de veces que la asignación de página para esta cola dio error. Si este valor no es 0, indica que los recursos de memoria están bajos.

queue_N_rx_skb_alloc_fail: N

El número de veces que la asignación de SKB para esta cola dio error. Si este valor no es 0, indica que los recursos del sistema están bajos.

queue_N_rx_dma_mapping_err: N

Cuenta de errores de acceso directo a memoria. Si este valor no es 0, significa que los recursos del sistema están bajos.

queue_N_rx_bad_desc_num: N

Demasiados búferes por paquete. Si este valor no es 0, indica el uso de búferes muy pequeños.

queue_N_rx_bad_req_id: N

El req_id para esta cola no es válido. El req_id válido es de [0, queue_size - 1].

queue_N_rx_empty_rx_ring: N

El número de veces que la cola rx estuvo vacía para esta cola.

queue_N_rx_csum_unchecked: N

El número de veces que la cola rx recibió un paquete cuya suma de comprobación no se verificó para esta cola.

queue_N_rx_xdp_aborted: N

El número de veces que un paquete XDP se clasificó como XDP_ABORT.

queue_N_rx_xdp_drop: N

El número de veces que un paquete XDP se clasificó como XDP_DROP.

queue_N_rx_xdp_pass: N

El número de veces que un paquete XDP se clasificó como XDP_PASS.

queue_N_rx_xdp_tx: N

El número de veces que un paquete XDP se clasificó como XDP_TX.

queue_N_rx_xdp_invalid: N

El número de veces que el código devuelto XDP para el paquete no era válido.

queue_N_rx_xdp_redirect: N

El número de veces que un paquete XDP se clasificó como XDP_REDIRECT.

queue_N_xdp_tx_cnt: N

El número de paquetes transmitidos para esta cola.

queue_N_xdp_tx_bytes: N

El número de bytes transmitidos para esta cola.

queue_N_xdp_tx_queue_stop: N

El número de veces que esta cola se llenó y se detuvo.

queue_N_xdp_tx_queue_wakeup: N

El número de veces que esta cola se reanudó después de detenerse.

queue_N_xdp_tx_dma_mapping_err: N

Cuenta de errores de acceso directo a memoria. Si este valor no es 0, significa que los recursos del sistema están bajos.

queue_N_xdp_tx_linearize: N

El número de veces que se intentó la linealización del búfer XDP para esta cola.

queue_N_xdp_tx_linearize_failed: N

El número de veces que se produjo un error en la linealización del búfer XDP para esta cola.

queue_N_xdp_tx_napi_comp: N

El número de veces que el controlador napi llamó napi_complete para esta cola.

queue_N_xdp_tx_tx_poll: N

El número de veces que se programó el controlador napi para esta cola.

queue_N_xdp_tx_doorbells: N

El número de timbres de transmisión para esta cola.

queue_N_xdp_tx_prepare_ctx_err: N

El número de veces que ena_com_prepare_tx dio error para esta cola. Este valor debe ser siempre cero; si no es así, consulte los logs del controlador.

queue_N_xdp_tx_bad_req_id: N

El req_id para esta cola no es válido. El req_id válido es de [0, queue_size - 1].

queue_N_xdp_tx_llq_buffer_copy: N

El número de paquetes cuyos encabezados se copiaron usando la copia del búfer llq para esta cola.

queue_N_xdp_tx_missed_tx: N

El número de veces que una entrada de cola tx perdió un tiempo de espera de finalización para esta cola.

queue_N_xdp_tx_unmask_interrupt: N

El número de veces que se desenmascaró la interrupción de tx para esta cola.

ena_admin_q_aborted_cmd: N

El número total de comandos admin que se anularon. Esto sucede, por lo general, durante el procedimiento de autorrecuperación.

ena_admin_q_submitted_cmd: N

El número de timbres de cola admin.

ena_admin_q_completed_cmd: N

El número de finalizaciones de la cola admin.

ena_admin_q_out_of_space: N

El número de veces que el controlador intentó enviar un nuevo comando admin, pero la cola estaba llena.

ena_admin_q_no_completion: N

El número de veces que el controlador no logró una finalización admin para un comando.

Registros de errores de controlador en syslog

El controlador de ENA escribe mensajes de registro en syslog durante el arranque del sistema. Puede examinarlo para buscar errores si está experimentando problemas. A continuación puede ver un ejemplo de información registrada por el controlador de ENA en syslog durante el arranque del sistema, junto con algunas anotaciones para mensajes seleccionados.

Jun 3 22:37:46 ip-172-31-2-186 kernel: [ 478.416939] [ENA_COM: ena_com_validate_version] ena device version: 0.10 Jun 3 22:37:46 ip-172-31-2-186 kernel: [ 478.420915] [ENA_COM: ena_com_validate_version] ena controller version: 0.0.1 implementation version 1 Jun 3 22:37:46 ip-172-31-2-186 kernel: [ 479.256831] ena 0000:00:03.0: Device watchdog is Enabled Jun 3 22:37:46 ip-172-31-2-186 kernel: [ 479.672947] ena 0000:00:03.0: creating 8 io queues. queue size: 1024 Jun 3 22:37:46 ip-172-31-2-186 kernel: [ 479.680885] [ENA_COM: ena_com_init_interrupt_moderation] Feature 20 isn't supported // Interrupt moderation is not supported by the device Jun 3 22:37:46 ip-172-31-2-186 kernel: [ 479.691609] [ENA_COM: ena_com_get_feature_ex] Feature 10 isn't supported // RSS HASH function configuration is not supported by the device Jun 3 22:37:46 ip-172-31-2-186 kernel: [ 479.694583] [ENA_COM: ena_com_get_feature_ex] Feature 18 isn't supported //RSS HASH input source configuration is not supported by the device Jun 3 22:37:46 ip-172-31-2-186 kernel: [ 479.697433] [ENA_COM: ena_com_set_host_attributes] Set host attribute isn't supported Jun 3 22:37:46 ip-172-31-2-186 kernel: [ 479.701064] ena 0000:00:03.0 (unnamed net_device) (uninitialized): Cannot set host attributes Jun 3 22:37:46 ip-172-31-2-186 kernel: [ 479.704917] ena 0000:00:03.0: Elastic Network Adapter (ENA) found at mem f3000000, mac addr 02:8a:3c:1e:13:b5 Queues 8 Jun 3 22:37:46 ip-172-31-2-186 kernel: [ 480.805037] EXT4-fs (xvda1): re-mounted. Opts: (null) Jun 3 22:37:46 ip-172-31-2-186 kernel: [ 481.025842] NET: Registered protocol family 10
¿Qué tipo de errores se puede omitir?

Las advertencias siguientes que aparecen en el registro de errores del sistema se puede omitir para ENA:

La configuración de atributos de host no es compatible

Los atributos de host no se admiten con este dispositivo.

Error al asignar un búfer para la cola de recepción (rx queue)

Este en un error recuperable que indica que podría haber habido una presión de memoria cuando se produjo.

La característica X no es compatible

La característica mencionada no es compatible con ENA. Entre los valores posibles para X se incluyen:

  • 10: la configuración de la función Hash de RSS no es compatible con este dispositivo.

  • 12: la configuración de la tabla de indirección de RSS no es compatible con este dispositivo.

  • 18: la configuración de la entrada de Hash de RSS no es compatible con este dispositivo.

  • 20: la moderación de interrupciones no es compatible con este dispositivo..

  • 27: el controlador del Elastic Network Adapter no admite sondear las capacidades de Ethernet desde snmpd.

La configuración de AENQ ha fallado

El ENA no es compatible con la configuración AENQ.

Intentando configurar eventos de AENQ no compatibles

Este error indica que se está intentando establecer un grupo de eventos de AENQ no admitido por ENA.

Notificaciones de configuración subóptimas

El dispositivo ENA detecta ajustes de configuración subóptimos en el controlador que usted puede cambiar. El dispositivo notifica al controlador ENA y registra una advertencia en la consola. En el ejemplo siguiente se muestra el formato del mensaje de advertencia.

Sub-optimal configuration notification code: 1. Refer to AWS ENA documentation for additional details and mitigation options.

La siguiente lista muestra los detalles del código de la notificación y las acciones recomendadas en caso de que la configuración no sea óptima.

  • Código 1: no se recomienda el uso de ENA Express con una configuración de LLQ amplio

    El ENI de ENA Express está configurado con un LLQ amplio. Esta configuración no es óptima y podría afectar al rendimiento de ENA Express. Le recomendamos que desactive la configuración de LLQ amplio cuando utilice los ENI de ENA Express de la siguiente manera.

    sudo rmmod ena && sudo modprobe ena force_large_llq_header=0

    Para obtener más información sobre la configuración óptima de ENA Express, consulte Mejora del rendimiento de la red con ENA Express en las instancias EC2.

  • Código 2: no se recomienda la ENI de ENA Express con una profundidad de cola de Tx inferior a la óptima

    La ENI de ENA Express está configurada con una profundidad de cola de Tx inferior a la óptima. Esta configuración podría afectar al rendimiento de ENA Express. Le recomendamos que amplíe todas las colas de Tx al valor máximo para la interfaz de red cuando utilice las ENI de ENA Express de la siguiente manera.

    Puede ejecutar los siguientes comandos ethtool para ajustar el tamaño de LLQ. Para obtener más información sobre cómo controlar, consultar y habilitar Wide-LLQ, consulte el tema Large Low-Latency Queue (Large LLQ) del controlador del kernel de Linux para la documentación ENA en el repositorio de GitHub de Amazon Drivers.

    ethtool -g interface

    Defina sus colas de Tx a la profundidad máxima:

    ethtool -G interface tx depth

    Para obtener más información sobre la configuración óptima de ENA Express, consulte Mejora del rendimiento de la red con ENA Express en las instancias EC2.

  • Código 3: ENA con un tamaño LLQ normal y un tráfico de paquetes de Tx que supera el tamaño máximo de encabezado admitido

    De forma predeterminada, ENA LLQ admite un tamaño de encabezado de paquete Tx de hasta 96 bytes. Si el tamaño del encabezado del paquete es superior a 96 bytes, el paquete se descarta. Para mitigar este problema, le recomendamos que habilite Wide-LLQ, que aumenta el tamaño del encabezado de paquete Tx admitido hasta un máximo de 224 bytes.

    Sin embargo, al activar Wide-LLQ, el tamaño máximo del anillo Tx se reduce de 1000 a 512 entradas. Wide-LLQ está activado de forma predeterminada para todos los tipos de instancias de Nitro v4 y posteriores.

    • Los tipos de instancias de Nitro v4 tienen un tamaño de anillo Tx Wide-LLQ máximo predeterminado de 512 entradas, que no se puede cambiar.

    • Los tipos de instancias de Nitro v5 tienen un tamaño de anillo Tx Wide-LLQ predeterminado de 512 entradas, que puede aumentar hasta 1000 entradas.

    Puede ejecutar los siguientes comandos ethtool para ajustar el tamaño de LLQ. Para obtener más información sobre cómo controlar, consultar y habilitar Wide-LLQ, consulte el tema Large Low-Latency Queue (Large LLQ) del controlador del kernel de Linux para la documentación ENA en el repositorio de GitHub de Amazon Drivers.

    Encuentre la profundidad máxima para sus colas de Tx:

    ethtool -g interface

    Defina sus colas de Tx a la profundidad máxima:

    ethtool -G interface tx depth