Jump to content

Recommended Posts

Posted

Привествую!

 

Столкнулся сегодня с непонятной ситуацией, а именно, непонятно с чего, стал вываливаться рсинк на новой системе, с ошибками на io.

Выяснилось что проблема в ошибках на интерфейсе

# netstat -I em1 -w01
    36192   112     0   54538798      27682     0    1866096     0
    28184    43     0   42508684      21589     0    1454434     0
    52210    96     0   79032854      40060     0    2692244     0
    49669    98     0   75063066      38172     0    2567120     0
    44385    77     0   67101744      34085     0    2293279     0
           input          (em1)           output
  packets  errs idrops      bytes    packets  errs      bytes colls
    26876   122     0   40605714      20570     0    1381856     0
    17992    30     0   27111034      13817     0     931350     0
    33118    52     0   50012916      25412     0    1711414     0
    18541    71     0   27966874      14258     0     962374     0
    35455    56     0   53237196      27194     0    1832152     0
    26855    63     0   40417062      20653     0    1390470     0
    17181    64     0   25750664      13141     0     885539     0
    14205    74     0   21368704      10772     0     726884     0

Система:

# uname -a
FreeBSD h15-g04. l.ru 9.1-RELEASE FreeBSD 9.1-RELEASE #0 r243825: Tue Dec  4 09:23:10 UTC 2012     root@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64

Вывод # sysctl dev.em.

dev.em.0.%desc: Intel(R) PRO/1000 Network Connection 7.3.2
dev.em.0.%driver: em
dev.em.0.%location: slot=25 function=0 handle=\_SB_.PCI0.ILAN
dev.em.0.%pnpinfo: vendor=0x8086 device=0x10bd subvendor=0x8086 subdevice=0x34d0 class=0x020000
dev.em.0.%parent: pci0
dev.em.0.nvm: -1
dev.em.0.debug: -1
dev.em.0.fc: 3
dev.em.0.rx_int_delay: 0
dev.em.0.tx_int_delay: 66
dev.em.0.rx_abs_int_delay: 66
dev.em.0.tx_abs_int_delay: 66
dev.em.0.rx_processing_limit: 100
dev.em.0.eee_control: 1
dev.em.0.link_irq: 0
dev.em.0.mbuf_alloc_fail: 0
dev.em.0.cluster_alloc_fail: 0
dev.em.0.dropped: 0
dev.em.0.tx_dma_fail: 0
dev.em.0.rx_overruns: 0
dev.em.0.watchdog_timeouts: 0
dev.em.0.device_control: 403702336
dev.em.0.rx_control: 0
dev.em.0.fc_high_water: 8192
dev.em.0.fc_low_water: 6692
dev.em.0.queue0.txd_head: 0
dev.em.0.queue0.txd_tail: 0
dev.em.0.queue0.tx_irq: 0
dev.em.0.queue0.no_desc_avail: 0
dev.em.0.queue0.rxd_head: 0
dev.em.0.queue0.rxd_tail: 0
dev.em.0.queue0.rx_irq: 0
dev.em.0.mac_stats.excess_coll: 0
dev.em.0.mac_stats.single_coll: 0
dev.em.0.mac_stats.multiple_coll: 0
dev.em.0.mac_stats.late_coll: 0
dev.em.0.mac_stats.collision_count: 0
dev.em.0.mac_stats.symbol_errors: 0
dev.em.0.mac_stats.sequence_errors: 0
dev.em.0.mac_stats.defer_count: 0
dev.em.0.mac_stats.missed_packets: 0
dev.em.0.mac_stats.recv_no_buff: 0
dev.em.0.mac_stats.recv_undersize: 0
dev.em.0.mac_stats.recv_fragmented: 0
dev.em.0.mac_stats.recv_oversize: 0
dev.em.0.mac_stats.recv_jabber: 0
dev.em.0.mac_stats.recv_errs: 0
dev.em.0.mac_stats.crc_errs: 0
dev.em.0.mac_stats.alignment_errs: 0
dev.em.0.mac_stats.coll_ext_errs: 0
dev.em.0.mac_stats.xon_recvd: 0
dev.em.0.mac_stats.xon_txd: 0
dev.em.0.mac_stats.xoff_recvd: 0
dev.em.0.mac_stats.xoff_txd: 0
dev.em.0.mac_stats.total_pkts_recvd: 0
dev.em.0.mac_stats.good_pkts_recvd: 0
dev.em.0.mac_stats.bcast_pkts_recvd: 0
dev.em.0.mac_stats.mcast_pkts_recvd: 0
dev.em.0.mac_stats.rx_frames_64: 0
dev.em.0.mac_stats.rx_frames_65_127: 0
dev.em.0.mac_stats.rx_frames_128_255: 0
dev.em.0.mac_stats.rx_frames_256_511: 0
dev.em.0.mac_stats.rx_frames_512_1023: 0
dev.em.0.mac_stats.rx_frames_1024_1522: 0
dev.em.0.mac_stats.good_octets_recvd: 0
dev.em.0.mac_stats.good_octets_txd: 0
dev.em.0.mac_stats.total_pkts_txd: 0
dev.em.0.mac_stats.good_pkts_txd: 0
dev.em.0.mac_stats.bcast_pkts_txd: 0
dev.em.0.mac_stats.mcast_pkts_txd: 0
dev.em.0.mac_stats.tx_frames_64: 0
dev.em.0.mac_stats.tx_frames_65_127: 0
dev.em.0.mac_stats.tx_frames_128_255: 0
dev.em.0.mac_stats.tx_frames_256_511: 0
dev.em.0.mac_stats.tx_frames_512_1023: 0
dev.em.0.mac_stats.tx_frames_1024_1522: 0
dev.em.0.mac_stats.tso_txd: 0
dev.em.0.mac_stats.tso_ctx_fail: 0
dev.em.0.interrupts.asserts: 0
dev.em.0.interrupts.rx_pkt_timer: 0
dev.em.0.interrupts.rx_abs_timer: 0
dev.em.0.interrupts.tx_pkt_timer: 0
dev.em.0.interrupts.tx_abs_timer: 0
dev.em.0.interrupts.tx_queue_empty: 0
dev.em.0.interrupts.tx_queue_min_thresh: 0
dev.em.0.interrupts.rx_desc_min_thresh: 0
dev.em.0.interrupts.rx_overrun: 0
dev.em.0.wake: 0
dev.em.1.%desc: Intel(R) PRO/1000 Legacy Network Connection 1.0.4
dev.em.1.%driver: em
dev.em.1.%location: slot=2 function=0
dev.em.1.%pnpinfo: vendor=0x8086 device=0x1076 subvendor=0x8086 subdevice=0x34d0 class=0x020000
dev.em.1.%parent: pci6
dev.em.1.nvm: -1
dev.em.1.rx_int_delay: 0
dev.em.1.tx_int_delay: 66
dev.em.1.rx_abs_int_delay: 66
dev.em.1.tx_abs_int_delay: 66
dev.em.1.rx_processing_limit: 100
dev.em.1.flow_control: 3
dev.em.1.mbuf_alloc_fail: 0
dev.em.1.cluster_alloc_fail: 0
dev.em.1.dropped: 0
dev.em.1.tx_dma_fail: 0
dev.em.1.tx_desc_fail1: 0
dev.em.1.tx_desc_fail2: 7
dev.em.1.rx_overruns: 7577
dev.em.1.watchdog_timeouts: 0
dev.em.1.device_control: 1480327745
dev.em.1.rx_control: 32770
dev.em.1.fc_high_water: 47104
dev.em.1.fc_low_water: 45604
dev.em.1.fifo_workaround: 0
dev.em.1.fifo_reset: 0
dev.em.1.txd_head: 78
dev.em.1.txd_tail: 80
dev.em.1.rxd_head: 96
dev.em.1.rxd_tail: 95
dev.em.1.mac_stats.excess_coll: 0
dev.em.1.mac_stats.single_coll: 0
dev.em.1.mac_stats.multiple_coll: 0
dev.em.1.mac_stats.late_coll: 0
dev.em.1.mac_stats.collision_count: 0
dev.em.1.mac_stats.symbol_errors: 0
dev.em.1.mac_stats.sequence_errors: 0
dev.em.1.mac_stats.defer_count: 0
dev.em.1.mac_stats.missed_packets: 10092
dev.em.1.mac_stats.recv_no_buff: 0
dev.em.1.mac_stats.recv_undersize: 0
dev.em.1.mac_stats.recv_fragmented: 0
dev.em.1.mac_stats.recv_oversize: 0
dev.em.1.mac_stats.recv_jabber: 0
dev.em.1.mac_stats.recv_errs: 0
dev.em.1.mac_stats.crc_errs: 0
dev.em.1.mac_stats.alignment_errs: 0
dev.em.1.mac_stats.coll_ext_errs: 0
dev.em.1.mac_stats.xon_recvd: 0
dev.em.1.mac_stats.xon_txd: 18605
dev.em.1.mac_stats.xoff_recvd: 0
dev.em.1.mac_stats.xoff_txd: 28718
dev.em.1.mac_stats.total_pkts_recvd: 7390410
dev.em.1.mac_stats.good_pkts_recvd: 7380318
dev.em.1.mac_stats.bcast_pkts_recvd: 51519
dev.em.1.mac_stats.mcast_pkts_recvd: 227
dev.em.1.mac_stats.rx_frames_64: 167995
dev.em.1.mac_stats.rx_frames_65_127: 65209
dev.em.1.mac_stats.rx_frames_128_255: 76099
dev.em.1.mac_stats.rx_frames_256_511: 48729
dev.em.1.mac_stats.rx_frames_512_1023: 99550
dev.em.1.mac_stats.rx_frames_1024_1522: 6922736
dev.em.1.mac_stats.good_octets_recvd: 10366198340
dev.em.1.mac_stats.good_octets_txd: 478772091
dev.em.1.mac_stats.total_pkts_txd: 5879684
dev.em.1.mac_stats.good_pkts_txd: 5832361
dev.em.1.mac_stats.bcast_pkts_txd: 6
dev.em.1.mac_stats.mcast_pkts_txd: 0
dev.em.1.mac_stats.tx_frames_64: 1099
dev.em.1.mac_stats.tx_frames_65_127: 5427151
dev.em.1.mac_stats.tx_frames_128_255: 389711
dev.em.1.mac_stats.tx_frames_256_511: 737
dev.em.1.mac_stats.tx_frames_512_1023: 743
dev.em.1.mac_stats.tx_frames_1024_1522: 12920
dev.em.1.mac_stats.tso_txd: 0
dev.em.1.mac_stats.tso_ctx_fail: 0

Проблема наблюдается только на em1, второй интерфейс, в порядке.

Самое интересное, что ошибок на порту коммутатора, нет, почему и решил, что проблема именно в драйверах.

Posted (edited)

а ошибок может и не быть на коммутаторе, один битый немного патч может такие выкрутасы делать (( причем только под нагрузкой

я бы первым делом попробовал обменять настройки em1 и em0

сетевые идентичные, замена конфигов дело 3х минут и в ребут (конечно если патчи есть возможность передернуть, заменить где ошибки и поменять местами если в конфигах поменяете )

также посмотрите на статистику буферов, смущает missed packets

Edited by nshut
Posted (edited)

а ошибок может и не быть на коммутаторе, один битый немного патч может такие выкрутасы делать (( причем только под нагрузкой

я бы первым делом попробовал обменять настройки em1 и em0

сетевые идентичные, замена конфигов дело 3х минут и в ребут (конечно если патчи есть возможность передернуть, заменить где ошибки и поменять местами если в конфигах поменяете )

также посмотрите на статистику буферов, смущает missed packets

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

Ошибки именно на этом порту, другой работает отлично.

Edited by Valmon
Posted

У меня десктопная сетёвка интела дропала выборочно tcp ack на мак уровне, в сисцтл только один счётчик прирастал по тихоньку. Остальное нормально летало.

Это хз как лечить, или на свалку или перепрошивку или прогрев попробовать.

Posted

тогда как вариант попробовать не родные дрова бсд. а загрузить с интела если поддерживает или попробовать сторонние типо яндекс. но проще сетевуху поменять. лично я после установки игб был просто в шоке от разницы

Posted

А карточки набортовые ? Они на разных чипах (да еще, возможно, вторая разведена через одно место). Походу одна тянет трафик, а вторая нет. Ставьте нормальную.

Posted

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

 

хотя потюнить для начала

dev.em.1.rx_int_delay: 0

dev.em.1.tx_int_delay: 66

dev.em.1.rx_abs_int_delay: 66

dev.em.1.tx_abs_int_delay: 66

dev.em.1.rx_processing_limit: 100

и

hw.em.txd

hw.em.rxd

 

я бы попробовал бы..

Posted

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

 

хотя потюнить для начала

dev.em.1.rx_int_delay: 0

dev.em.1.tx_int_delay: 66

dev.em.1.rx_abs_int_delay: 66

dev.em.1.tx_abs_int_delay: 66

dev.em.1.rx_processing_limit: 100

и

hw.em.txd

hw.em.rxd

 

я бы попробовал бы..

Игра с:

hw.em.txd
hw.em.rxd

Результатов не дала

По поводу:

dev.em.1.rx_int_delay: 0
dev.em.1.tx_int_delay: 66
dev.em.1.rx_abs_int_delay: 66
dev.em.1.tx_abs_int_delay: 66
dev.em.1.rx_processing_limit: 100

 

Как определить оптимальные значения?

Posted

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

вторая и есть дерьмо, она обслуживается драйвером if_lem.c а не if_em.c, если присмотреться к dev.em.1.%desc. скорее всего это что-то типа

em1@pci0:4:5:0: class=0x020000 card=0x348f8086 chip=0x10768086 rev=0x05 hdr=0x00
   vendor     = 'Intel Corporation'
   device     = 'Gigabit Ethernet Controller (82541EI)'
   class      = network
   subclass   = ethernet

на pci шине.

 

на штатных драйверах можно попробовать

/boot/loader.conf

hw.em.rxd="4096"
hw.em.txd="4096"
hw.em.rx_process_limit="-1"
net.link.ifqmaxlen="10240"

/etc/sysctl.conf

dev.em.0.rx_int_delay=20
dev.em.0.rx_abs_int_delay=600
dev.em.0.tx_int_delay=20
dev.em.0.tx_abs_int_delay=600
dev.em.0.rx_processing_limit=-1
dev.em.0.fc=0
dev.em.1.rx_int_delay=20
dev.em.1.rx_abs_int_delay=600
dev.em.1.tx_int_delay=20
dev.em.1.tx_abs_int_delay=600
dev.em.1.rx_processing_limit=-1
dev.em.1.flow_control=0
net.inet.ip.intr_queue_maxlen=4096
net.route.netisr_maxqlen=2048
net.inet.flowtable.enable=0
hw.intr_storm_threshold=8000
kern.ipc.nmbclusters=102400
net.inet.ip.redirect=0
kern.random.sys.harvest.ethernet=0
kern.random.sys.harvest.point_to_point=0
kern.random.sys.harvest.interrupt=0

Posted

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

вторая и есть дерьмо, она обслуживается драйвером if_lem.c а не if_em.c, если присмотреться к dev.em.1.%desc. скорее всего это что-то типа

em1@pci0:4:5:0: class=0x020000 card=0x348f8086 chip=0x10768086 rev=0x05 hdr=0x00
   vendor     = 'Intel Corporation'
   device     = 'Gigabit Ethernet Controller (82541EI)'
   class      = network
   subclass   = ethernet

Да, все верно, на этом чипе:

em1@pci0:6:2:0: class=0x020000 card=0x34d08086 chip=0x10768086 rev=0x05 hdr=0x00
   vendor     = 'Intel Corporation'
   device     = '82541GI Gigabit Ethernet Controller'
   class      = network
   subclass   = ethernet

Posted
Выяснилось что проблема в ошибках на интерфейсе
Вы упираетесь в предел пропускной способности PCI. Проблема решается только использованием PCI-E карты.
Posted
Выяснилось что проблема в ошибках на интерфейсе
Вы упираетесь в предел пропускной способности PCI. Проблема решается только использованием PCI-E карты.

Видимо да.

 

Перевел порт с авто на авто 100, линк выпал из порт группы lacp

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.