Назад | Перейти на главную страницу

Почему я вижу отброшенные пакеты в статистике NIC на моем сервере Ubuntu?

Я вижу отброшенные пакеты с помощью ifconfig на моем интерфейсе eth0:

eth0  Link encap:Ethernet  HWaddr 00:15:17:0d:03:ca
      inet addr:10.0.1.2  Bcast:10.0.1.255  Mask:255.255.255.0
      UP BROADCAST RUNNING MULTICAST  MTU:9000  Metric:1
      RX packets:30268348 errors:0 dropped:70721 overruns:0 frame:0
      TX packets:133076885 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000
      RX bytes:8699434077 (8.6 GB)  TX bytes:194937313025 (194.9 GB)
      Interrupt:16 Memory:feae0000-feb00000

Когда я использую ethtool -S, я не вижу ничего плохого:

NIC statistics:
 rx_packets: 30267138
 tx_packets: 133074510
 rx_bytes: 8699356158
 tx_bytes: 194934147340
 rx_broadcast: 35296
 tx_broadcast: 5435
 rx_multicast: 0
 tx_multicast: 0
 rx_errors: 0
 tx_errors: 0
 tx_dropped: 0
 multicast: 0
 collisions: 0
 rx_length_errors: 0
 rx_over_errors: 0
 rx_crc_errors: 0
 rx_frame_errors: 0
 rx_no_buffer_count: 0
 rx_missed_errors: 0
 tx_aborted_errors: 0
 tx_carrier_errors: 0
 tx_fifo_errors: 0
 tx_heartbeat_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
 tx_restart_queue: 0
 rx_long_length_errors: 0
 rx_short_length_errors: 0
 rx_align_errors: 0
 tx_tcp_seg_good: 5757001
 tx_tcp_seg_failed: 0
 rx_flow_control_xon: 8649
 rx_flow_control_xoff: 62072
 tx_flow_control_xon: 0
 tx_flow_control_xoff: 0
 rx_long_byte_count: 8699356158
 rx_csum_offload_good: 30212111
 rx_csum_offload_errors: 0
 rx_header_split: 10857552
 alloc_rx_buff_failed: 0
 tx_smbus: 0
 rx_smbus: 0
 dropped_smbus: 0
 rx_dma_failed: 0
 tx_dma_failed: 0

Я запускаю Ubuntu 12.04 с ядром 3.2.0-30-generic # 48-Ubuntu SMP. Я проверял каждое устройство в своей внутренней сети около 24 часов без потери пакетов. Также проверил мой роутер и мой интерфейс с WAN, тоже никаких ошибок.

Кто-нибудь знает?

Новые ядра используют удаленный статус немного отличается от старых. Это используется для обозначения пакетов, которые были отброшены по разным причинам:

  • Пакеты не-IP на проводе
  • IP-пакеты с неизвестными флагами протокола
  • Плохие теги VLAN
  • Журнал softnet заполнен (измеряется в / proc / net / softnet_stat)

Это вполне может быть нормальным явлением в вашей сети, и вряд ли это будет ошибка устройства, на котором вы их измеряете.