ne-vlezay80 Опубликовано 29 августа, 2017 · Жалоба 5 минут назад, alibek сказал: Если я был бы энтузиастом-экспериментатором и экспериментировал за чужой счет, возможно эта идея мне бы понравилась. Однако большинство подобных решений для production не годятся. Даже extfilter, хотя он и продукт достаточно высокого уровня. СКАТ может быть и дорого (хотя я был одним из первых его пользователей и купил совсем по другой цене), но зато надежно и беспроблемно. Поставил и забыл. Про extfilter этого сказать нельзя, необходимо отслеживать эту ветку. А что означает это: Анализируются все запросы в пределах одного потока Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
alibek Опубликовано 29 августа, 2017 · Жалоба Об этом нужно разработчика спрашивать, а не меня. Под потоком, скорее всего, имеются ввиду TCP-сессии, а не HTTP-сессии. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dee Опубликовано 29 августа, 2017 · Жалоба ну клёва с новым исправлением проблема ушла , теперь понять бы как это в целом отразится на общей производительности системы . Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
myth Опубликовано 29 августа, 2017 · Жалоба Увеличения нагрузки не заметил. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
big-town Опубликовано 31 августа, 2017 (изменено) · Жалоба При попытке активировать второй порт как sender в логах Цитата Error DSender - Unable to allocate buffer for the packet Изменено 31 августа, 2017 пользователем big-town Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Troj Опубликовано 31 августа, 2017 · Жалоба при запуске выдает такую ошибку 2017-09-01 00:35:04.646 [630] Information Application - Setting mbuf size to 16384 2017-09-01 00:35:04.653 [630] Information Application - Allocated mbuf pool (16384 entries) on socket 0 2017-09-01 00:35:04.655 [630] Information Application - Allocated memory pool (16384 entries) for packet info on sockets 0 2017-09-01 00:35:04.655 [630] Fatal Application - Cannot init mbuf pool on socket 1 2017-09-01 00:35:04.655 [630] Fatal Application - Memory initialization error Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Antares Опубликовано 1 сентября, 2017 · Жалоба Версия 0.86, начали пролетать пропуски по отчётам ревизора, не много, но есть. Missed pakets: 0 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
sanyasi Опубликовано 1 сентября, 2017 · Жалоба 11 часов назад, big-town сказал: Error DSender - Unable to allocate buffer for the packet да, то-же самое, при отправке через dpdk Network devices using DPDK-compatible driver ============================================ 0000:01:00.0 '82599ES 10-Gigabit SFI/SFP+ Network Connection 10fb' drv=igb_uio unused= 0000:01:00.1 '82599ES 10-Gigabit SFI/SFP+ Network Connection 10fb' drv=igb_uio unused= Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Troj Опубликовано 1 сентября, 2017 · Жалоба не могу разобраться с маской ExtFilter.ini core_mask = 7 [port 0] queues = 0,1; 1,2 /dpdk-17.08/usertools/cpu_layout.py ====================================================================== Core and Socket Information (as reported by '/sys/devices/system/cpu') ====================================================================== cores = [0, 1, 2, 3] sockets = [0] Socket 0 -------- Core 0 [0] Core 1 [1] Core 2 [2] Core 3 [3] grub isolcpus=1,2,3 default_hugepagesz=1G hugepagesz=1G hugepages=4 и в логах: 2017-09-01 09:17:05.398 [693] Information ACL - Preparing 49 rules for IPv4 ACL 2017-09-01 09:17:05.400 [693] Error ACL - Failed to create ACL context 2017-09-01 09:17:05.400 [693] Error ACL - Setup acl for ipv4 with socketid 1 failed, keeping previous rules for that socket 2017-09-01 09:17:05.401 [693] Information Application - Setting mbuf size to 16384 2017-09-01 09:17:05.407 [693] Information Application - Allocated mbuf pool (16384 entries) on socket 0 2017-09-01 09:17:05.409 [693] Information Application - Allocated memory pool (16384 entries) for packet info on sockets 0 2017-09-01 09:17:05.409 [693] Fatal Application - Cannot init mbuf pool on socket 1 2017-09-01 09:17:05.409 [693] Fatal Application - Memory initialization error 2017-09-01 09:25:51.872 [725] Error Application - Lcore 2 is not enabled in lcore mask Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
big-town Опубликовано 1 сентября, 2017 · Жалоба 52 минуты назад, Troj сказал: не могу разобраться с маской ExtFilter.ini core_mask = 7 [port 0] queues = 0,1; 1,2 /dpdk-17.08/usertools/cpu_layout.py ====================================================================== Core and Socket Information (as reported by '/sys/devices/system/cpu') ====================================================================== cores = [0, 1, 2, 3] sockets = [0] Socket 0 -------- Core 0 [0] Core 1 [1] Core 2 [2] Core 3 [3] grub isolcpus=1,2,3 default_hugepagesz=1G hugepagesz=1G hugepages=4 и в логах: 2017-09-01 09:17:05.398 [693] Information ACL - Preparing 49 rules for IPv4 ACL 2017-09-01 09:17:05.400 [693] Error ACL - Failed to create ACL context 2017-09-01 09:17:05.400 [693] Error ACL - Setup acl for ipv4 with socketid 1 failed, keeping previous rules for that socket 2017-09-01 09:17:05.401 [693] Information Application - Setting mbuf size to 16384 2017-09-01 09:17:05.407 [693] Information Application - Allocated mbuf pool (16384 entries) on socket 0 2017-09-01 09:17:05.409 [693] Information Application - Allocated memory pool (16384 entries) for packet info on sockets 0 2017-09-01 09:17:05.409 [693] Fatal Application - Cannot init mbuf pool on socket 1 2017-09-01 09:17:05.409 [693] Fatal Application - Memory initialization error 2017-09-01 09:25:51.872 [725] Error Application - Lcore 2 is not enabled in lcore mask В твоем случае маска 7, 00000111 - каждый бит это номер ядра по порядку. 00000001 - первое ядро, 00000100 - третье ядро. Проц должен поддерживать hugepages, и сетевуха должна быть соответствующая. Если интел, то не ниже 82576, встроенные 82575 не годятся. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Troj Опубликовано 1 сентября, 2017 (изменено) · Жалоба 9 минут назад, big-town сказал: В твоем случае маска 7, 00000111 - каждый бит это номер ядра по порядку. 00000001 - первое ядро, 00000100 - третье ядро. Проц должен поддерживать hugepages, и сетевуха должна быть соответствующая. Если интел, то не ниже 82576, встроенные 82575 не годятся. так ядер 4, получается 0111 в двоичном, это 7 в десятичном, соответсвено выделены 1 2 3 ядра, сетевуха i350 grep Huge /proc/meminfo AnonHugePages: 0 kB ShmemHugePages: 0 kB HugePages_Total: 4 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 1048576 kB Изменено 1 сентября, 2017 пользователем Troj Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Antares Опубликовано 1 сентября, 2017 · Жалоба 1 час назад, Troj сказал: не могу разобраться с маской ExtFilter.ini core_mask = 7 [port 0] queues = 0,1; 1,2 /dpdk-17.08/usertools/cpu_layout.py ====================================================================== Core and Socket Information (as reported by '/sys/devices/system/cpu') ====================================================================== cores = [0, 1, 2, 3] sockets = [0] Socket 0 -------- Core 0 [0] Core 1 [1] Core 2 [2] Core 3 [3] grub isolcpus=1,2,3 default_hugepagesz=1G hugepagesz=1G hugepages=4 и в логах: 2017-09-01 09:17:05.398 [693] Information ACL - Preparing 49 rules for IPv4 ACL 2017-09-01 09:17:05.400 [693] Error ACL - Failed to create ACL context 2017-09-01 09:17:05.400 [693] Error ACL - Setup acl for ipv4 with socketid 1 failed, keeping previous rules for that socket 2017-09-01 09:17:05.401 [693] Information Application - Setting mbuf size to 16384 2017-09-01 09:17:05.407 [693] Information Application - Allocated mbuf pool (16384 entries) on socket 0 2017-09-01 09:17:05.409 [693] Information Application - Allocated memory pool (16384 entries) for packet info on sockets 0 2017-09-01 09:17:05.409 [693] Fatal Application - Cannot init mbuf pool on socket 1 2017-09-01 09:17:05.409 [693] Fatal Application - Memory initialization error 2017-09-01 09:25:51.872 [725] Error Application - Lcore 2 is not enabled in lcore mask 14 ставь Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Troj Опубликовано 1 сентября, 2017 · Жалоба 5 минут назад, Antares сказал: 14 ставь даже не запускается EAL: Detected 4 lcore(s) EAL: Master lcore is not enabled for DPDK EAL: FATAL: Invalid 'command line' arguments. EAL: Invalid 'command line' arguments. Exception: Can't initialize EAL - invalid EAL arguments Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
max1976 Опубликовано 1 сентября, 2017 · Жалоба 9 минут назад, Troj сказал: даже не запускается EAL: Detected 4 lcore(s) EAL: Master lcore is not enabled for DPDK EAL: FATAL: Invalid 'command line' arguments. EAL: Invalid 'command line' arguments. Exception: Can't initialize EAL - invalid EAL arguments Маску надо выставить в 15. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Troj Опубликовано 1 сентября, 2017 · Жалоба 4 минуты назад, max1976 сказал: Маску надо выставить в 15. 2017-09-01 11:07:34.458 [1049] Information ACL - Preparing 49 rules for IPv4 ACL 2017-09-01 11:07:34.458 [1049] Error ACL - Socket 4 of core 2 is out of range 4 2017-09-01 11:07:34.458 [1049] Error Application - Unable to init ACL вылетает после запуска :( до этого ставил проблем не было, а сейчас второй день бьюсь :( Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
max1976 Опубликовано 1 сентября, 2017 · Жалоба 12 минут назад, Troj сказал: Socket 4 of core 2 is out of range 4 Какая-то беда с вашим сервером - он решил что у вас уже 4 процессора :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Troj Опубликовано 1 сентября, 2017 · Жалоба 15 минут назад, max1976 сказал: Какая-то беда с вашим сервером - он решил что у вас уже 4 процессора :) в том то и дело что 2 ядра в 4 сокете у меня нет! :) да и вообще проц десктопный Core(TM) i7-4790 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
max1976 Опубликовано 1 сентября, 2017 · Жалоба 30 минут назад, Troj сказал: в том то и дело что 2 ядра в 4 сокете у меня нет! :) да и вообще проц десктопный Core(TM) i7-479 Наверное DPDK не очень дружит с вашим железом. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
max1976 Опубликовано 1 сентября, 2017 · Жалоба 6 часов назад, Antares сказал: Версия 0.86, начали пролетать пропуски по отчётам ревизора, не много, но есть. Missed pakets: 0 Какие url пропускаются? Есть ли закономерность? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
big-town Опубликовано 1 сентября, 2017 (изменено) · Жалоба Максим, возникло вот такое предложений к улучшайзингу :). extFilter при установленной опции rst_to_server = true посылает пакеты с ip-адресом источника, т.е. в моем случае ip до NAT-а. то есть отсылка формируется типа 10.1.4.108:9898->8.8.8.8:80. Естественно приходится городить огород вроде этого: iptables -t mangle -A OUTPUT -s 10.1.0.0/16 -j MARK --set-mark 0x2 ip rule add prio 100 fwmark 0x2 lookup table-10.1 Где дефолтный маршрут это адрес ната в таблице table-10.1, что бы пакет прошел нужный NAT сервер. Так как маршрут выбирается по адресу назначения. Иначе пакет 10.1.4.108:9898->8.8.8.8:80 тупо игнорится сервером и опция просто не имеет эффекта. Нельзя ли сделать такой алгоритм [10.1.0.0/16] 1.1.1.1 2.2.2.2 [10.5.0.0/16] 3.3.3.3 Если пакет имеет адрес источника принадлежащий сети 10.1.0.0/16, то генерируем два пакета (оригинал 10.1.4.108:9898->8.8.8.8:80) отправляем первый 1.1.1.1:9898->8.8.8.8:80 и второй 2.2.2.2:9898->8.8.8.8:80, где 1.1.1.1 и 2.2.2.2 адреса аплинков NAT-сервера аналогично для сети 10.5.0.0/16 генерим один пакет 3.3.3.3:9898->8.8.8.8:80 для чего нет правил отправляем как есть с оригинальным IP. Это бы позволило отправлять пакеты сразу с сетевого интерфейса extFilter-а. И не использовать заморочки с маршрутизацией. Итак больше шансов что пакет не потеряется. В моем случае это очень актуально, дело в том что на одном участке я использую радио-релейку. В час пик если я проверяюскриптом. Там конечно генерится адский шторм :), то получается в среднем 15-25 пропусков. Разбор полетов показал что не долетают редиректы. Когда использую отсылку резетов серверу, пропуски снижаются до 3. Я думаю что у других тоже имеют место быть подобные ситуации. Изменено 1 сентября, 2017 пользователем big-town Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Antares Опубликовано 1 сентября, 2017 · Жалоба 27 минут назад, max1976 сказал: Какие url пропускаются? Есть ли закономерность? Закономерности нет, то всего один пропустит, то сегодня 8 пропусков, все http. Проверяю броузером, всё закрыто. Все пропуски ночью, при массовой проверке. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
big-town Опубликовано 1 сентября, 2017 · Жалоба 36 минут назад, Antares сказал: Закономерности нет, то всего один пропустит, то сегодня 8 пропусков, все http. Проверяю броузером, всё закрыто. Все пропуски ночью, при массовой проверке. Это как раз, то о чем я писал, не долетают редиректы. Попробуйте включить опцию rst_to_server = true и настроить маршрутизацию если у вас не белые IP. Это должно еще снизить пропуск. У меня картина аналогичная. При проверке браузером все закрыто. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
max1976 Опубликовано 1 сентября, 2017 · Жалоба 1 час назад, Antares сказал: Закономерности нет, то всего один пропустит, то сегодня 8 пропусков, все http. Проверяю броузером, всё закрыто. Все пропуски ночью, при массовой проверке. Я нашел небольшую проблему в библиотеке peafowl в части работы с tcp флагами. Из-за того, что сейчас проверяется только исходящий трафик, библиотека не видит пакетов в сторону клиента и в некоторых случаях возникает проблема - после последовательности syn->rst->syn пакеты отбрасывались. В связи с этим, я внес изменения в peafowl, что решает эту проблему. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Antares Опубликовано 1 сентября, 2017 · Жалоба 3 часа назад, big-town сказал: Попробуйте включить опцию rst_to_server = true включена, а маршрутизацию не включал, раньше не было проблем 2 часа назад, max1976 сказал: Я нашел небольшую проблему в библиотеке peafowl в части работы с tcp флагами. Из-за того, что сейчас проверяется только исходящий трафик, библиотека не видит пакетов в сторону клиента и в некоторых случаях возникает проблема - после последовательности syn->rst->syn пакеты отбрасывались. В связи с этим, я внес изменения в peafowl, что решает эту проблему. Попробую обновиться Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
max1976 Опубликовано 11 сентября, 2017 · Жалоба В 01.09.2017 в 17:24, Antares сказал: включена, а маршрутизацию не включал, раньше не было проблем Попробую обновиться Я нашел ошибочно установленный флаг отладки в библиотеке peafowl, что отрицательно сказывается на производительности. Сейчас на github'е размещена исправленная версия библиотеке. Рекомендую всем пересобрать extfilter с нуля. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...