После вот этого когда кризис вроде бы отступил, появилось время подумать😊
После осознания того, что с 4 прерываниями на карту удается задействовать только 8 ядре из 12 в голову закралась мысль что нада больше прерываний то😊 Три маршрутизатора справлялись, однако резерва то нет и при выходе из строя хотябы одного будет жопа.
Соответственно нада другие сетевые - купить - хуйвам сказала Танюха, фсе бабло ушло на водку и питарды ибо корпоратив завтра😊
И начались поиски подходящих сетевых путем разгребания всякого хлама ибо чтото гдето такое вроде как было, да и за почти 20 лет работы не могло такого быть чтоп чтото гдето не валялось подходящего, тока где... и вот они - 4 двухпортовых BCM5709 как скуста, часа через пол после начала поисков😊
Чувак там ночью проводил работы и заодно и их воткнул😊 Как итог - стало лучше, но, тоже не без косяков:
#тут у нас какаято блять брадкомовская магия - combined оно говорит что не умеет и при попытке дать шлет нахуй, #при rx 6 tx 6 получается 6 прерываний в сумме, первое из которых не работает вообще - тоесть тупо не прерывается #и не дает никакой нагрузки, при rx 6 tx 1 получется тоже 6 в сумме но при этом вроде бы нормально работающих. #че ето за херня яхз но пока так. # # upd - нихуя не нормально работающих, первое почемуто всегда не догружено причем значительно, возможно это tx, # хотя иногда оно всетаки дает нагрузку как то всплесками. судя по acct2 rx 6 tx 6 combined 6 дает ту же картину. # нада блять будет попробовать 7+1, и опять ебаца как их распределить чтоп задействовать ядра полностью, правда че # будет с теми всплесками зх. #ethtool -L enp1s0f0 rx 6 tx 6 combined 6 ethtool -L enp1s0f0 rx 6 tx 1 #ethtool -L enp1s0f0 combined 6 #ethtool -L enp3s0f0 rx 6 tx 6 combined 6 ethtool -L enp3s0f0 rx 6 tx 1. #ethtool -L enp3s0f0 combined 6 #ethtool -L enp1s0f1 rx 6 tx 6 combined 6 ethtool -L enp1s0f1 rx 6 tx 1. #ethtool -L enp1s0f1 combined 6 #ethtool -L enp3s0f1 rx 6 tx 6 combined 6 ethtool -L enp3s0f1 rx 6 tx 1. #ethtool -L enp3s0f1 combined 6
Это мой коментарий с куском скрипта разруливающего прерывания. тоесть теперь мы можем задействовать 10 ядер из 12 - прогресс как говорица на лицо😊
При этом по названию прерываний в /proc/interrupt tx от rx не отличить, ибо обзываются они просто eth-0/1/2/3 нуитд, примерно так:
acct1 ~ # cat /proc/interrupts |grep enp1s0f0 50: 446973042 0 0 0 0 0 0 0 0 0 0 0 PCI-MSI 524288-edge enp1s0f0-0 51: 91 344667423 0 0 0 0 0 0 0 0 0 0 PCI-MSI 524289-edge enp1s0f0-1 52: 85 0 352724036 0 0 0 0 0 0 0 0 0 PCI-MSI 524290-edge enp1s0f0-2 53: 60 0 0 363097349 0 0 0 0 0 0 0 0 PCI-MSI 524291-edge enp1s0f0-3 54: 129 0 0 0 344874594 0 0 0 0 0 0 0 PCI-MSI 524292-edge enp1s0f0-4 74: 86 0 0 0 0 358027569 0 0 0 0 0 0 PCI-MSI 524293-edge enp1s0f0-5 acct1 ~ #
и кто из них кто хз, так же не понятно почему при tx 6 rx 6 их всего 6 когда по логике должно быть 12. Вобщем прерываюца эти бродкомы как то через жопу😊
При этом, BCM5720 вполне себе нормально все рисует и количество прерываний тоже сходица, как указали rx 4 tx 1 так и есть, 5 штук суммарно:
acct0 ~ # cat /proc/interrupts |grep enp1s0f0 50: 206892049 0 0 0 0 0 0 0 0 0 0 0 PCI-MSI 524288-edge enp1s0f0-tx-0 51: 3 134202632 0 0 0 0 0 0 0 0 0 0 PCI-MSI 524289-edge enp1s0f0-rx-1 52: 2 0 130895851 0 0 0 0 0 0 0 0 0 PCI-MSI 524290-edge enp1s0f0-rx-2 53: 2 0 0 126258675 0 0 0 0 0 0 0 0 PCI-MSI 524291-edge enp1s0f0-rx-3 54: 2 0 0 0 132045015 0 0 0 0 0 0 0 PCI-MSI 524292-edge enp1s0f0-rx-4 acct0 ~ #
только у BCM5720 драйвер tg3 а у BCM5709 bnx2.
Однако это еще не все.
На Танюхино хуйвам, вечером в ЧНН один из маршрутизаторов сказал свое жесткое хуйвам всем нам, зависнув в час пик, после перезагрузки повторил это снова через пару минут, контрольный так сказать😊 В пятницу вечером, перед корпоративом - знает сцуко когда говорить😊
Оставшиеся 2, практически на пределе, но тянут нагрузку, rtt изредко дергается ms на 10-20, но потерь я пока не фиксирую, так что вроде все нормально с этим. А всего то задействовали 4 дополнительные очереди.
Учитывая что их таких 2 полностью идентичных, и до вчерашней замены сетевых проблем небыло приходит логичный вывод что одна из тех бродкомов полудохлая и проблемы из за нее.
Так что, продолжение следует😊