Elisium 10 Опубликовано: 2011-01-18 20:22:42 Share Опубликовано: 2011-01-18 20:22:42 Всем доброго дня, уважаемые. Есть сервер на Фре 7.3. На нем работает дамминет+нат на ПФ (в пул адресов). hw.model: Intel(R) Xeon(R) CPU E5520 @ 2.27GHz Сетевуха - 4хпортовка Интел 9404РТ. Платформа НР180G6. Проблем в работе не замечено, НО: Обычно смотрю статистику по ппс на сервере суммарно командой netstat -w1. Обратил внимание, что у сервера необычно большая нагрузка для пробегающего сквозь него трафика: 800/200 МБт при 55% загрузки. Посмотрел на статистику ппс и заметил, что сумма ппс ПО-ИНТЕРФЕЙСНО НЕ совпадает (даже близко) с суммарной статистикой ПО ВСЕМ ифейсам, что выдает netstat -w1. То есть, ппс(лагг0)+ппс(лагг1) =/= ппс(ВСЕГО) Вот вывод ифконфиг: igb0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=13b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,TSO4> ether 1c:c1:de:78:7a:e6 media: Ethernet autoselect (1000baseTX <full-duplex>) status: active igb1: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=13b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,TSO4> ether 1c:c1:de:78:7a:e7 media: Ethernet autoselect status: no carrier em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC> ether 00:15:17:73:80:ac media: Ethernet autoselect (1000baseTX <full-duplex>) status: active lagg: laggdev lagg1 em1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=19b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4> ether 00:15:17:73:80:ac media: Ethernet autoselect (1000baseTX <full-duplex>) status: active lagg: laggdev lagg1 em2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=19b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4> ether 00:15:17:73:80:ae media: Ethernet autoselect (1000baseTX <full-duplex>) status: active lagg: laggdev lagg0 em3: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=19b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4> ether 00:15:17:73:80:ae media: Ethernet autoselect (1000baseTX <full-duplex>) status: active lagg: laggdev lagg0 pfsync0: flags=0<> metric 0 mtu 1460 syncpeer: 224.0.0.240 maxupd: 128 lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x8 inet6 ::1 prefixlen 128 inet 127.0.0.1 netmask 0xff000000 inet *.*.*.254 netmask 0xffffffff inet *.*.*.253 netmask 0xffffffff ... <всего 250 внешних адресов/32 для ната - алиасы на Ло0> ... inet *.*.*.4 netmask 0xffffffff lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=19b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4> ether 00:15:17:73:80:ae inet 10.0.121.3 netmask 0xffffff00 broadcast 10.0.121.255 media: Ethernet autoselect status: active laggproto lacp laggport: em3 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING> laggport: em2 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING> lagg1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=19b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4> ether 00:15:17:73:80:ac inet *.*.*.3 netmask 0xfffffff8 broadcast *.*.*.7 media: Ethernet autoselect status: active laggproto lacp laggport: em1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING> laggport: em0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING> Лагг0 подключен в циску (роутит локалку), Лагг1 смотрит в БГП. Ошибок на интерфейсах и циски и сервера нет. Вывод netstat с разных ифейсов. [root@gate2 /usr/local/etc/rc.d]# netstat -w1 input (Total) output packets errs bytes packets errs bytes colls 216698 0 180921540 212854 0 180582408 0 221373 0 183200647 217269 0 181770954 0 210135 0 173848175 205965 0 173003450 0 221791 0 190089373 218252 0 188976144 0 [root@gate2 /usr/local/etc/rc.d]# netstat -w1 -I lagg0 input (lagg0) output packets errs bytes packets errs bytes colls 46712 0 22176392 61094 0 71740079 0 51042 0 24714858 65699 0 76890864 0 51044 0 26191745 64691 0 74771638 0 [root@gate2 /usr/local/etc/rc.d]# netstat -w1 -I lagg1 input (lagg1) output packets errs bytes packets errs bytes colls 78043 0 89203066 57415 0 29140706 0 67948 0 75973336 49849 0 25235429 0 67527 0 75014301 51111 0 26987274 0 74754 0 87854803 52463 0 24045122 0 Подскажите пжст, в чем прикол ? При этом, допустим, ппс на ем0+ем1 отличается от суммарного ппс на лагг1 на 10%. На всех других ифейсах нетстат показывает 0 ппс. При отключенном фаерволе ипфв большая разница в ппс сохраняется (. В ТЕОРИИ (ну, если я правильно ее знаю), то суммарно нетстат должен показывать сумму ппс со ВСЕХ ифейсов системы. Почему же разница больше, чем в 1,5 раза ? п.с. Возможно и детский вопрос, но что это - на самом деле не в курсе ((( Ссылка на сообщение Поделиться на других сайтах
natiss 16 Опубліковано: 2011-01-18 22:05:24 Share Опубліковано: 2011-01-18 22:05:24 Есть сервер на Фре 7.3. На нем работает дамминет+нат на ПФ (в пул адресов). Смотреть нагляднее через bmon (есть в портах). pps на lagg1 (c nat) больше, чем на lagg0. Америку Вы не открыли. http://myfreebsd.ru/freebsd_as_server/interesnoe-povedenie-pf Описание проблемы и метод лечения Ссылка на сообщение Поделиться на других сайтах
adeep 212 Опубліковано: 2011-01-19 06:59:28 Share Опубліковано: 2011-01-19 06:59:28 netstat -w X Показывает сколько пакетов обрабатывается в системе, а не сумму по интерфейсам. Пакеты могут обрабатываться несколько раз. Ссылка на сообщение Поделиться на других сайтах
natiss 16 Опубліковано: 2011-01-19 08:36:21 Share Опубліковано: 2011-01-19 08:36:21 Тем не менее добавление deny в ipfw существенно снижает загрузку системы. Ссылка на сообщение Поделиться на других сайтах
adeep 212 Опубліковано: 2011-01-19 09:00:44 Share Опубліковано: 2011-01-19 09:00:44 Тем не менее добавление deny в ipfw существенно снижает загрузку системы. никто не спорит. deny блокирует лишние пакеты, не давая им еще раз пройти обработку в системе. Ссылка на сообщение Поделиться на других сайтах
Sanito 129 Опубліковано: 2011-01-19 10:04:37 Share Опубліковано: 2011-01-19 10:04:37 Кстати, похоже что проблема только когда используется пул адресов. Если натить на один адрес, 1-2 пакета левых пробежит за 10-15 секунд и всё. Ссылка на сообщение Поделиться на других сайтах
Elisium 10 Опубліковано: 2011-01-19 10:34:40 Автор Share Опубліковано: 2011-01-19 10:34:40 Таксь )) Ну, во первых, дико извиняюсь )) ПисАл вчера на перетруженую голову, соображал туго (( Чего то придумалось,что нетстат(всего) должен выдавать сумму ТОЛЬКО по лагг() ифейсам (( Совсем забыл, что и реальные ем() ТОЖЕ считаются ... НО - тогда вопрос номер два. Судя по нетстат(всего), это РЕАЛЬНО обрабатываемые сервером пакеты ? Тоесть, пакет принимается ФИЗИЧЕСКИ на ем() ифейсах (и проходит ипфв), потом попадает в лагг() (и опять проходит ипфв?) ? Тоесть, использование лагг() даже на ОДНОМ физическом ифейсе ем() (тоесть, лагг() собран только на одном ем(), допустим) по умолчанию примерно удваивает кол-во ОБРАБАТЫВАЕМЫХ сервером пакетов ?? Если через просто ем() бегает 100 кппс пакетов, то собранный на нем лагг() уже даст примерно 180 кппс ??? Изза двойной обработки ? И нагрузка на сервер тоже получится (допустим) пропорционально увеличеной ?? Чегото я уже совсем запутался. Ссылка на сообщение Поделиться на других сайтах
Elisium 10 Опубліковано: 2011-01-19 10:46:25 Автор Share Опубліковано: 2011-01-19 10:46:25 Есть сервер на Фре 7.3. На нем работает дамминет+нат на ПФ (в пул адресов). Смотреть нагляднее через bmon (есть в портах). pps на lagg1 (c nat) больше, чем на lagg0. Америку Вы не открыли. http://myfreebsd.ru/freebsd_as_server/interesnoe-povedenie-pf Описание проблемы и метод лечения Читал статью, попробовал - результата мизер, если чесно. п.с. Гдето читал, что такой эффект (увеличенный ппс) связан именно с обработкой вланов. Но точно не скажу, ибо читал "гдето" и вскользь. Ссылка на сообщение Поделиться на других сайтах
adeep 212 Опубліковано: 2011-01-19 12:24:34 Share Опубліковано: 2011-01-19 12:24:34 Чегото я уже совсем запутался. Проведите пару опытов, расскажите общественности результаты. Думаю будет многим интересно. Ссылка на сообщение Поделиться на других сайтах
natiss 16 Опубліковано: 2011-01-19 12:32:29 Share Опубліковано: 2011-01-19 12:32:29 0 em0 │ 3.60MiB 5.18K │ 4.74MiB 5.23K 1 em1 │ 1.68MiB 3.04K │ 3.85MiB 3.34K 2 em2 │ 3.05MiB 4.30K │ 3.86MiB 4.27K 3 em3 │ 2.80MiB 3.57K │ 2.62MiB 3.29K 4 em4 │ 17.41MiB 20.06K │ 11.83MiB 18.56K 5 em5 │ 433.30KiB 1.36K │ 1.99MiB 1.76K 6 lo0 │ 0 B 0 │ 0 B 0 7 vlan20 │ 295 B 3 │ 0 B 0 8 vlan21 │ 9.33MiB 10.79K │ 4.35MiB 9.18K 9 vlan22 │ 8.08MiB 9.27K │ 7.19MiB 9.38K Total │ 46.37MiB 57.57K │ 40.43MiB 55.01K все влан поверх em4 em0-3, em5 - сеть em4 - аплинки сквозной pps - 20kpps общий - почти 60. Ссылка на сообщение Поделиться на других сайтах
Elisium 10 Опубліковано: 2011-01-20 01:25:01 Автор Share Опубліковано: 2011-01-20 01:25:01 Чегото я уже совсем запутался. Проведите пару опытов, расскажите общественности результаты. Думаю будет многим интересно. Вообщем, пока что за неимением свободного времени для детального разбора полётов, убрал лагг() ифейсы с одного из боевых серверов. Оставил только два ем(). Все равно там до гига трафик еще не допрыгивает - всего до 850-900 МБт вниз бегает. Посмотрим, как ЭТО будет себя вести в ЧНН в плане загрузки проца/пакетов/etc. п.с. Уже и самому интересны результаты )) Ссылка на сообщение Поделиться на других сайтах
Elisium 10 Опубліковано: 2011-01-22 19:37:12 Автор Share Опубліковано: 2011-01-22 19:37:12 Мдя... Результаты непонятные ) Убрал лагг() с одного сервера и перегрузил его. Ппс(всего) упало примерно в два раза, нагрузка на сервер ТОЖЕ упала в два раза. Тоесть, раньше при загрузке трафом 900/350 МБт (напоминаю, шейпинг+нат там же) загрузка проца была до 70%, теперь 35-37%. На радостях ПРОСТО перегрузил и второй сервер, НЕ убирая лагг() с него. Результат меня удивил - нагрузка ТОЖЕ упала в ДВА раза, хотя ппс через него не поменялся (( Сервера настроены идентично: два шлюза, на каждый заведены свои серые и белые подсети. Аптайм у обоих серверов был по 50 дней. Ничего там кардинально не менялось (не ломается - не трогай). Поэтому с чем конкретно были проблемы - сказать не могу. Возможно лагг() и не при чем. На днях верну все "взад" и посмотрю на все еще раз при первоначальных условиях. To adeep: Опыты все еще не проводил ) Свободного времени нет и в связи с решением (?) текущего вопроса пока не намечается. To natiss: Спасибо за наводку на интересную прогу ) Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас