LINUX.ORG.RU
ФорумAdmin

Интерфейс дропает пакеты

 


1

3

Доброго времени суток

Накрылся старый сервак заюзаный как GW. Временно поставил десктом, который под рукой оказался. Проблем не знал. Прикупил вот это чудо. Думал меньше жужжать будет и энергии ест совсем мало. Для GW должно хватить. поставил все настроил (ubuntu 14.04). Я еще поставил туда простую сетевуху в PCI (eth0, смотрела в локалку). Как только перевел весь трафик на него посыпались ошибки. Сетевуха в PCI выдавала вот это. Ну я подумал, что сетевуха отстой и решил все переделать на втроенные интерфейсы (сетевуха была десктопная, хотя от чего там глюки не ясно, трафик невелик, не магистралка таки). на stderr перестало сыпаться всякая фигня. Но стабильно увеличивается количество дропнутых пакетов:

$ ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 00:25:90:e4:f4:0a  
          inet addr:192.168.42.4  Bcast:192.168.42.255  Mask:255.255.255.0
          inet6 addr: fe80::225:90ff:fee4:f40a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:5772373 errors:0 dropped:3208 overruns:0 frame:0
          TX packets:6344290 errors:16638 dropped:0 overruns:0 carrier:16638
          collisions:18211 txqueuelen:1000 
          RX bytes:1754106396 (1.7 GB)  TX bytes:7029005005 (7.0 GB)
          Memory:fe120000-fe140000

Пробовал уменьшить MTU до 1300, не помогло. На свиче уменьшил скорость с 1000 до 100, не помогло. Провода менял. Что еще можно посмотреть или подкрутить чтоб работало как надо???

Пока это не сильно сказывается на работе, но проблема очевидна. Всю жизнь настраивал самые простые компы в виде шлюзов и никогда проблем не было, а тут такая зараза.


Еще снизил скорость до 100 на самом интерфейсе:

sudo ethtool -s eth1 speed 100 duplex full autoneg off
modjo
() автор топика
Ответ на: комментарий от modjo

у интеловских сетевух есть подробная статистика «ethtool -S ethX»

Смотри что именно дропается.

Отключи gro/tso - оно сломано месяца 4 назад и починено только 3.14.17/3.4.103

vel ★★★★★
()
Ответ на: комментарий от vel

Вот выхлоп. Что тут можно посмотреть полезного?

$ ethtool -S eth1
NIC statistics:
     rx_packets: 12673717
     tx_packets: 14305343
     rx_bytes: 5356300389
     tx_bytes: 15411763900
     rx_broadcast: 121195
     tx_broadcast: 510
     rx_multicast: 43585
     tx_multicast: 612
     multicast: 43585
     collisions: 56483
     rx_crc_errors: 152103
     rx_no_buffer_count: 0
     rx_missed_errors: 0
     tx_aborted_errors: 0
     tx_carrier_errors: 0
     tx_window_errors: 50849
     tx_abort_late_coll: 50849
     tx_deferred_ok: 13136
     tx_single_coll_ok: 50923
     tx_multi_coll_ok: 2416
     tx_timeout_count: 0
     rx_long_length_errors: 0
     rx_short_length_errors: 0
     rx_align_errors: 0
     tx_tcp_seg_good: 1589
     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: 5356300389
     tx_dma_out_of_sync: 0
     tx_smbus: 628
     rx_smbus: 43265
     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: 152103
     tx_errors: 50849
     tx_dropped: 0
     rx_length_errors: 0
     rx_over_errors: 0
     rx_frame_errors: 0
     rx_fifo_errors: 0
     tx_fifo_errors: 0
     tx_heartbeat_errors: 0
     tx_queue_0_packets: 3918880
     tx_queue_0_bytes: 3173254808
     tx_queue_0_restart: 0
     tx_queue_1_packets: 3004433
     tx_queue_1_bytes: 3626274435
     tx_queue_1_restart: 0
     tx_queue_2_packets: 3082940
     tx_queue_2_bytes: 3384211407
     tx_queue_2_restart: 0
     tx_queue_3_packets: 4348940
     tx_queue_3_bytes: 5233749143
     tx_queue_3_restart: 0
     rx_queue_0_packets: 2613944
     rx_queue_0_bytes: 620207111
     rx_queue_0_drops: 0
     rx_queue_0_csum_err: 0
     rx_queue_0_alloc_failed: 0
     rx_queue_1_packets: 3030019
     rx_queue_1_bytes: 639448524
     rx_queue_1_drops: 0
     rx_queue_1_csum_err: 0
     rx_queue_1_alloc_failed: 0
     rx_queue_2_packets: 2168578
     rx_queue_2_bytes: 581797357
     rx_queue_2_drops: 0
     rx_queue_2_csum_err: 0
     rx_queue_2_alloc_failed: 0
     rx_queue_3_packets: 4817909
     rx_queue_3_bytes: 3460227711
     rx_queue_3_drops: 0
     rx_queue_3_csum_err: 0
     rx_queue_3_alloc_failed: 0

В глаза бросается rx_crc_errors. Вроде как получается, что проблема в подсчете контрольной суммы, что может быть связано с кабелем или с интерфейсом (свича?). Ну кабель отпадает, так как я пробовал два кабеля (5 и 6 категории) и эти кабеля были подключены к разным разъемам. Проблема в свиче? Это будет проблемно проверить в ближайшее время. Может еще что-то посмотреть можно???

modjo
() автор топика
Ответ на: комментарий от modjo

collisions: 56483 rx_crc_errors: 152103 tx_abort_late_coll: 50849 tx_deferred_ok: 13136 tx_single_coll_ok: 50923 tx_multi_coll_ok: 2416 rx_errors: 152103 tx_errors: 50849

Либо проблема в согласовании FD/HD линка, либо глючный коммутатор, либо это управляемый коммутатор с явно указаным FD/HD, который ты не угадал.

В современном мире, где нет хабов/концентраторов коллизий быть не должно.

Я бы сделал «ethtool -s ethX autoneg on» и посмотрел на «ethtool ethX» на тему что умеет та сторона.

vel ★★★★★
()
Ответ на: комментарий от vel
$ sudo ethtool eth1
Settings for eth1:
	Supported ports: [ TP ]
	Supported link modes:   10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Full
	Supported pause frame use: Symmetric
	Supports auto-negotiation: Yes
	Advertised link modes:  10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Full
	Advertised pause frame use: Symmetric
	Advertised auto-negotiation: Yes
	Speed: 1000Mb/s
	Duplex: Full
	Port: Twisted Pair
	PHYAD: 1
	Transceiver: internal
	Auto-negotiation: on
	MDI-X: on (auto)
	Supports Wake-on: pumbg
	Wake-on: g
	Current message level: 0x00000007 (7)
			       drv probe link
	Link detected: yes

Как я понимаю та сторона (Advertised link modes) предлагает много чего и именно сейчас работает на 1000/full. Вот настройки порта. Там ничего особенного, все по дефолту. Может это нормально что есть процент дропнутых пакетов?? У меня есть несколько серверов в облаке, и там есть дропнутые пакеты, но только ошибок нет.

Вот что на данный момент:

$ ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 00:25:90:e4:f4:0a
          inet addr:192.168.42.4  Bcast:192.168.42.255  Mask:255.255.255.0
          inet6 addr: fe80::225:90ff:fee4:f40a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:13269264 errors:152788 dropped:9632 overruns:0 frame:152788
          TX packets:16116282 errors:50849 dropped:0 overruns:0 carrier:50849
          collisions:56483 txqueuelen:1000
          RX bytes:5375937113 (5.3 GB)  TX bytes:17754428383 (17.7 GB)
          Memory:fe120000-fe140000

А вот тот что в мир смотрит

$ ifconfig eth2
eth2      Link encap:Ethernet  HWaddr 00:25:90:e4:f4:0b
          inet addr:a.b.c.d  Bcast:a.b.c.d  Mask:255.255.255.252
          inet6 addr: ip_v6 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:15278422 errors:0 dropped:303 overruns:0 frame:0
          TX packets:12940783 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:16489934221 (16.4 GB)  TX bytes:5357341716 (5.3 GB)
          Memory:fe100000-fe120000
modjo
() автор топика

C CКС пробовал разобраться?

Заменить патч-корды, заново вбить проводки в патч-панель.

Кроме того, просмотреть вообще кабель (на полу, в коробах, под потолком) - не могли ли его передавить или, например, крысы оплётку сожрать.

slamd64 ★★★★★
()
Ответ на: комментарий от slamd64

Да дело в том, что только что на этом месте стоял сервер для замены, и я тупо переткнул проводки. В понедельник можно вообще новые взять, но как писал выше я использовал два разных провода. Попробую еще переставить сервак минуя этот свитч, может поможет. Ну или еще один сервер поднять для теста. Я банально не помню был ли дроп пакетов ранее или нет, не обращал внимания. Отпишусь что да как.

modjo
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.