高 rx 和丢失错误

高 rx 和丢失错误

我使用带有跨度端口的以太网接口连接了 IXIA 设备:

ifconfig -a看到这种情况:

Link encap:Ethernet  HWaddr 00:19:99:0b:0b:00
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:5408388104 errors:3027294504 dropped:5408388104 overruns:0 frame:3027294504
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:3338770841558 (3.0 TiB)  TX bytes:0 (0.0 B)
          Memory:ce320000-ce33ffff

ethtools

testss:~# ethtool -S eth6
NIC statistics:
     rx_packets: 5409242132
     tx_packets: 0
     rx_bytes: 3382468530625
     tx_bytes: 0
     rx_broadcast: 7414514
     tx_broadcast: 0
     rx_multicast: 139336057
     tx_multicast: 0
     multicast: 139336057
     collisions: 0
     rx_crc_errors: 0
     rx_no_buffer_count: 0
     rx_missed_errors: 0
     tx_aborted_errors: 0
     tx_carrier_errors: 0
     tx_window_errors: 0
     tx_abort_late_coll: 0
     tx_deferred_ok: 0
     tx_single_coll_ok: 0
     tx_multi_coll_ok: 0
     tx_timeout_count: 0
     rx_long_length_errors: 3027655624
     rx_short_length_errors: 0
     rx_align_errors: 0
     tx_tcp_seg_good: 0
     tx_tcp_seg_failed: 0
     rx_flow_control_xon: 0
     rx_flow_control_xoff: 0
     tx_flow_control_xon: 0
     tx_flow_control_xoff: 0
     rx_long_byte_count: 3382468530625
     tx_dma_out_of_sync: 0
     tx_smbus: 0
     rx_smbus: 0
     dropped_smbus: 0
     os2bmc_rx_by_bmc: 0
     os2bmc_tx_by_bmc: 0
     os2bmc_tx_by_host: 0
     os2bmc_rx_by_host: 0
     tx_hwtstamp_timeouts: 0
     rx_hwtstamp_cleared: 0
     rx_errors: 3027655624
     tx_errors: 0
     tx_dropped: 0
     rx_length_errors: 3027655624
     rx_over_errors: 0
     rx_frame_errors: 0
     rx_fifo_errors: 0
     tx_fifo_errors: 0
     tx_heartbeat_errors: 0
     tx_queue_0_packets: 0
     tx_queue_0_bytes: 0
     tx_queue_0_restart: 0
     tx_queue_1_packets: 0
     tx_queue_1_bytes: 0
     tx_queue_1_restart: 0
     tx_queue_2_packets: 0
     tx_queue_2_bytes: 0
     tx_queue_2_restart: 0
     tx_queue_3_packets: 0
     tx_queue_3_bytes: 0
     tx_queue_3_restart: 0
     tx_queue_4_packets: 0
     tx_queue_4_bytes: 0
     tx_queue_4_restart: 0
     tx_queue_5_packets: 0
     tx_queue_5_bytes: 0
     tx_queue_5_restart: 0
     tx_queue_6_packets: 0
     tx_queue_6_bytes: 0
     tx_queue_6_restart: 0
     tx_queue_7_packets: 0
     tx_queue_7_bytes: 0
     tx_queue_7_restart: 0
     rx_queue_0_packets: 5409242130
     rx_queue_0_bytes: 3339194591572
     rx_queue_0_drops: 0
     rx_queue_0_csum_err: 0
     rx_queue_0_alloc_failed: 0
     rx_queue_1_packets: 0
     rx_queue_1_bytes: 0
     rx_queue_1_drops: 0
     rx_queue_1_csum_err: 0
     rx_queue_1_alloc_failed: 0
     rx_queue_2_packets: 0
     rx_queue_2_bytes: 0
     rx_queue_2_drops: 0
     rx_queue_2_csum_err: 0
     rx_queue_2_alloc_failed: 0
     rx_queue_3_packets: 0
     rx_queue_3_bytes: 0
     rx_queue_3_drops: 0
     rx_queue_3_csum_err: 0
     rx_queue_3_alloc_failed: 0
     rx_queue_4_packets: 0
     rx_queue_4_bytes: 0
     rx_queue_4_drops: 0
     rx_queue_4_csum_err: 0
     rx_queue_4_alloc_failed: 0
     rx_queue_5_packets: 0
     rx_queue_5_bytes: 0
     rx_queue_5_drops: 0
     rx_queue_5_csum_err: 0
     rx_queue_5_alloc_failed: 0
     rx_queue_6_packets: 0
     rx_queue_6_bytes: 0
     rx_queue_6_drops: 0
     rx_queue_6_csum_err: 0
     rx_queue_6_alloc_failed: 0
     rx_queue_7_packets: 0
     rx_queue_7_bytes: 0
     rx_queue_7_drops: 0
     rx_queue_7_csum_err: 0
     rx_queue_7_alloc_failed: 0

是电缆的问题吗?

更改 MTU 后,丢弃值仅增加

Link encap:Ethernet HWaddr 00:19:99:0b:0b:00
    UP BROADCAST RUNNING PROMISC MULTICAST MTU:9000 Metric:1
    RX packets:5957084917errors:3175605334 dropped:5957084919 overruns:0 frame:3175605334
    TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:3338770841558 (3.0 TiB)
    TX bytes:0 (0.0 B)
    Memory:ce320000-ce33ffff

答案1

是的,电缆、连接器/SFP、链路或 NIC 问题(按最可能的顺序)是导致 rx 错误的最常见原因。

编辑:

...但是 - 大多数错误都是长帧错误,这让我相信您的 Linux 机器的 MTU 配置为 1500,但您直接连接的以太网交换机配置为使用巨型帧(即>9000 字节)。

提高 Linux MTU 以匹配交换机的 MTU,或者,如果您的 NIC 不支持巨型帧,请更改交换机上的 MTU。如果您运行的是 Cisco:

conf t
int Gi 1/0/1
mtu 1500

如果你使用的是其他供应商的产品,请查阅用户手册

相关内容