Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Потери пакетов при увеличении нагрузки

    Scheduled Pinned Locked Moved Russian
    41 Posts 8 Posters 27.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • E
      Eugene
      last edited by

      Вопрос достаточно простой,

      Тут я бы  не горячился.

      Проблема в потере пакетов. pingtest показывает от 2 до 18 процентов в пиковое время (19:00 до 01:00), на графиках же все еще хуже (см. в приложении).

      откуда выполняется pingtest?

      http://ru.doc.pfsense.org

      1 Reply Last reply Reply Quote 0
      • G
        goliy
        last edited by

        @Evgeny:

        откуда выполняется pingtest?

        В основном - клиентский компьютер. Иногда подсоединяется напрямую к LAN карте сервера. Иногда напрямую к кабелю провайдера.
        Я почти уверен, что у провайдера проблем нет. И после тестов я почти уверен, что проблема связана с шейпингом

        2.0.2-RELEASE (i386)
        Intel(R) Atom(TM) CPU 330 @ 1.60GHz
        eth: Intel 82574L
        DOM sata, 1Gb
        over 150 users

        1 Reply Last reply Reply Quote 0
        • E
          Eugene
          last edited by

          @goliy:

          @Evgeny:

          откуда выполняется pingtest?

          В основном - клиентский компьютер. Иногда подсоединяется напрямую к LAN карте сервера. Иногда напрямую к кабелю провайдера.
          Я почти уверен, что у провайдера проблем нет. И после тестов я почти уверен, что проблема связана с шейпингом

          С консоли pfSense попробуй.
          Что-то мне подсказывает, что это не "проблема связана с шейпингом", а как раз шейпинг в работе. Радоваться нужно! Шейпинг работает -)

          http://ru.doc.pfsense.org

          1 Reply Last reply Reply Quote 0
          • G
            goliy
            last edited by

            Извиняюсь, что сразу не пояснил до конца - pingtest это тест с сайта pingtest.net.
            С самого же маршрутизатора пинг летает успешно(как, собственно, и с клиентских машин), а проблемы я смотрю по RRD графикам.

            Работающий шейпинг мы прошли уже очень давно =)  (http://forum.pfsense.org/index.php/topic,26220.0.html)

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

            Сейчас я перенастроил шейпер Визардом(видимо, вся проблема была в том, что я не правильно его настроил), в этот раз почти не меняя настроек после его работы. И с нетерпением жду вечернего краш-теста.
            Первый сюрприз - начал лагать веб-интерфейс. top показывает, что процессы php находятся в состоянии piperd и по очень подолгу не отвечают. Решилось - ребутом

            –----------------------------------------------------------------------------------------

            Итак, прогресса почти нет =(
            Снова нагрузка возрастает - потери увеличиваются. И так до тех же показателей потерь, как на приложении в первом сообщении.

            Пинг с сервера почти не выявляет потери(~0.5%), несмотря на графики RRD.
            пинг с клиенских маших - потери до 16%

            Главный вывод - проблема в сетевой карте LAN или со свичем.
            Подтвердите кто-нибудь, а =)

            2.0.2-RELEASE (i386)
            Intel(R) Atom(TM) CPU 330 @ 1.60GHz
            eth: Intel 82574L
            DOM sata, 1Gb
            over 150 users

            1 Reply Last reply Reply Quote 0
            • A
              alexandrnew
              last edited by

              1 народ прав :) ни длинк, ни тем более реалтек - не годны для подобного трафика :)
              з.ы. как пример - почему то VMWARE ESX их не поддерживают :)
              2 какая загрузка собстенно на пк? память? проц ? что немаловажно - винты?  если у тебя логи какие то пишутся может не хватать…
              по процу - если график такая же "гребенка" как и с потерями - то надо задуматься, + какое ядро стоит?
              но 90% что таки сетевуха, возьми и поставь интел, для начала...

              1 Reply Last reply Reply Quote 0
              • G
                goliy
                last edited by

                Еще раз:
                Интерфейс LAN - сетевая карта re0: <rtl8201l 10="" 100="" media="" interface="">Интерфейс WAN - сетевая карта re1: <d-link dge-528(t)="" gigabit="" ethernet="" adapter="">Использование жесткого диска(32253MB <maxtor 4k040h2="" a08.1500="">) - 0%
                Использование оперативной памяти - максимум(2Gb) 5-6%
                Использование процессора(Intel(R) Core(TM)2 CPU 6300 @ 1.86GHz) - максимум до 15-20% доходит. Но обычно 5-12%.

                С этим - все в порядке.

                Насчет сетевой карты - Какую посоветуете? И на что смотреть при выборе? Какие параметры критичны? Что в реалтеках/длинках не так?
                Ведь есть у них качественное оборудование. У билайна, например, все оборудование, кроме самых больших, шлюзовых элементов, стоят д-линки. Странно выглядят советы - просто сменить на Интел. Сейчас в сервере не самый худший д-линк(D-link DGE-528T) на интерфейсе ЛАН стоит. А интелы и по 200рублей бывают. Можно поточнее характеристики, модели, функции.
                Пока я вижу разницу только в наличии функции Flow Control, которая, ввиду разгруженного процессора, не будет иметь профита. Тем более в нашем д-линке(интерфейс ЛАН) она тоже есть.

                Кроме того, freebsd 7.2 не поддерживает никакие 100мегабитные карты Интела, судя по http://www.freebsd.org/releases/7.2R/hardware.html

                Думаю взять Intel EXPI9301CT как LAN, а что на WAN пока не придумал. Нужно 100мегабит. В крайнем случае грамотный способ смены режима работы на 100мегабит гигабитной карты. (аналог обычного rc.conf'a где находится в pfsense? или еще как-нибудь. Пока кроме прописывания ifconfig media 100baseT/UTP ничего в голову не приходит. Может создать в /etc/rc.d/file.sh в который и вписать эту команду? Но, имхо, просто карта на 100мегабит надежнее)

                На яндекс-маркете так ничего 100мегабитного не на чипсетах реалтека и д-линка не нашел =(

                Cегодня заменил карту на LAN'e с D-Link DGE-528(T) на D-Link DFE-530TX+, она 100мегабитная, но может будет лучше. Ждем вечера и заказываем Intel EXPI9301CT.

                Жду советов что взять на WAN интерфейс (pci, 100mbps)</maxtor></d-link></rtl8201l>

                2.0.2-RELEASE (i386)
                Intel(R) Atom(TM) CPU 330 @ 1.60GHz
                eth: Intel 82574L
                DOM sata, 1Gb
                over 150 users

                1 Reply Last reply Reply Quote 0
                • R
                  rubic
                  last edited by

                  pingtest.net - это не совсем пинг, вернее совсем не он, не ICMP. Там с вашей машины летят пакетики на TCP или UDP порт 8080 удаленного сервера. И вот только pfsense знает в какую очередь шейпера они попадают, какой у нее приоритет и насколько она загружена вашими пользователями.
                  Что касается RRD Quality, то там, насколько я понял, задержки и потери пакетов определяются постоянным пингом шлюза с WANa pfSense. Как-то трудно представить себе сценарий, при котором вся ваша остальная инфраструктура могла бы на этот график хоть как-то влиять. Единственное исключение - конкретный перегруз канала. Ну еще, учитывая, что upload трафик шейпится на выходе с WAN, возможны варианты.
                  Отключите шейпер в момент максимальной нагрузки и посмотрите что будет. Если все нормально, то причем тут свитчи и сетевые карты?

                  1 Reply Last reply Reply Quote 0
                  • A
                    aleksvolgin
                    last edited by

                    Кроме того, freebsd 7.2 не поддерживает никакие 100мегабитные карты Интела

                    :D чукча не читатель, чукча писатель  :D

                    http://www.freebsd.org/releases/7.2R/hardware.html#ETHERNET

                    Adapters supported by the fxp(4) driver include:

                    Intel EtherExpress PRO/10

                    Intel InBusiness 10/100

                    Intel PRO/100B / EtherExpressPRO/100 B PCI Adapter

                    Intel PRO/100+ Management Adapter

                    Intel PRO/100 VE Desktop Adapter

                    Intel PRO/100 VM Network Connection

                    Intel PRO/100 M Desktop Adapter

                    Intel PRO/100 S Desktop, Server and Dual-Port Server Adapters

                    Contec C-NET(PI)-100TX (PC-98)

                    NEC PC-9821Ra20, Rv20, Xv13, Xv20 internal 100Base-TX (PC-98)

                    NEC PC-9821X-B06 (PC-98)

                    Many on-board network interfaces on Intel motherboards

                    http://www.freebsd.org/cgi/man.cgi?query=fxp&sektion=4&manpath=FreeBSD+7.2-RELEASE

                    The fxp driver provides support for Ethernet adapters based on the Intel
                        i82557, i82558, i82559, i82550, and i82562 chips. The driver supports
                        TCP/UDP/IP checksum offload for both transmit and receive on i82550 and
                        i82551.  On i82559 only TCP/UDP checksum offload for receive is sup-
                        ported.  TCP segmentation offload (TSO) for IPv4 as well as VLAN hardware
                        tag insertion/stripping is supported on i82550 and i82551.  Wake On Lan
                        (WOL) support is provided on all controllers except i82557, i82259ER and
                        early i82558 revisions.

                    1 Reply Last reply Reply Quote 0
                    • G
                      goliy
                      last edited by

                      Да, признаю, что ошибся с картами. Криво смотрел. Спасибо, что показали.

                      2.0.2-RELEASE (i386)
                      Intel(R) Atom(TM) CPU 330 @ 1.60GHz
                      eth: Intel 82574L
                      DOM sata, 1Gb
                      over 150 users

                      1 Reply Last reply Reply Quote 0
                      • G
                        goliy
                        last edited by

                        @rubic:

                        pingtest.net - это не совсем пинг, вернее совсем не он, не ICMP. Там с вашей машины летят пакетики на TCP или UDP порт 8080 удаленного сервера. И вот только pfsense знает в какую очередь шейпера они попадают, какой у нее приоритет и насколько она загружена вашими пользователями.
                        Что касается RRD Quality, то там, насколько я понял, задержки и потери пакетов определяются постоянным пингом шлюза с WANa pfSense. Как-то трудно представить себе сценарий, при котором вся ваша остальная инфраструктура могла бы на этот график хоть как-то влиять. Единственное исключение - конкретный перегруз канала. Ну еще, учитывая, что upload трафик шейпится на выходе с WAN, возможны варианты.
                        Отключите шейпер в момент максимальной нагрузки и посмотрите что будет. Если все нормально, то причем тут свитчи и сетевые карты?

                        При отключении шейпера при нагрузках трафик забивается торрентами на 100%, что влечет за собой большое увеличение времени пинга, что влечет за собой аналогичные проблемы с юзабилити - никакие реал-тайм пиложения не работают, даже ДНСки перестают отвечать.
                        Так что сам я уже думал об этом, что дело в шейпере, но в любом случае он должен работать и в случае его вины - очень нуждаюсь в помощи по его настройке.

                        Сегодня в момент нагрузки попробую протестировать командами ping host с сервера и с клиентов с отключенным и включенным шейпингом и отпишу что получилось.

                        –----------------------------------------------------------------------------------------------

                        21:00, нагрузка стандартна.
                        И, о чудо! Либо сегодня все пользователи отключили свои ботнеты, либо проблема крылась в глючной сетевухе D-link DGE-528T, которую сегодня утром успешно сменила DFE-530TX на нелегком её посту. И потери приблизились к более-менее нормальным(/допустымым), на мой взгляд. Итак:

                        При включенном шейпере:
                        на RRD все терпимо(я бы даже сказал на 4+, потерь почти совсем нет), pingtest.net показывает, что потери не привышают 1-2%(изредка долетает до 8-12), 80 процентов замеров показали 0% потерь
                        ping host с сервера не выявил потерь,
                        пинг хост с клиента:
                        замер 1--- ya.ru ping statistics ---
                        2381 packets transmitted, 2326 received, 2% packet loss, time 3241083ms, что, я думаю, тоже терпимо, хоть и не идеально.
                        замер 2--- ya.ru ping statistics ---
                        209 packets transmitted, 195 received, 6% packet loss, time 316615ms
                        rtt min/avg/max/mdev = 3.175/4.501/11.848/1.482 ms
                        Иногда вылетает до 10-15%(как и на pingtest.net)

                        При отключенном шейпере:
                        На RRD также все четко. pingtest.net почти стабильно 0%.
                        ping host с сервера:
                        --- ya.ru ping statistics ---
                        364 packets transmitted, 360 packets received, 1.1% packet loss
                        round-trip min/avg/max/stddev = 2.924/6.394/15.897/2.980 ms
                        ping host с клиента:
                        --- ya.ru ping statistics ---
                        316 packets transmitted, 305 received, 3% packet loss, time 375755ms
                        rtt min/avg/max/mdev = 3.121/6.615/13.389/2.976 ms

                        т.е. сейчас дело уже не в нагрузках а в ШЕЙПЕРЕ.
                        Помогите его адекватнее настроить, пожалуйста

                        2.0.2-RELEASE (i386)
                        Intel(R) Atom(TM) CPU 330 @ 1.60GHz
                        eth: Intel 82574L
                        DOM sata, 1Gb
                        over 150 users

                        1 Reply Last reply Reply Quote 0
                        • D
                          deutsche
                          last edited by

                          Возможно проблема с производительностью шейпера. Посмотрите подробную нагрузку по ядрамс парамерами io wait, user. Используйте atop.

                          http://ru.doc.pfsense.org/

                          1 Reply Last reply Reply Quote 0
                          • A
                            alexandrnew
                            last edited by

                            atop - а где его в пфсенсе взять?
                            [2.0-RC1][root@tun.mob]/root(1): atop
                            atop: Command not found.
                            в 1.2.3 тоже самое :(

                            1 Reply Last reply Reply Quote 0
                            • D
                              deutsche
                              last edited by

                              поставить с тарболла, ну.

                              http://ru.doc.pfsense.org/

                              1 Reply Last reply Reply Quote 0
                              • G
                                goliy
                                last edited by

                                @deutsche:

                                Возможно проблема с производительностью шейпера. Посмотрите подробную нагрузку по ядрамс парамерами io wait, user. Используйте atop.

                                Не подойдет ли простой top(который говорит о том, что нагрузка на ЦП не поднимается выше 15-18% при максимальной нагрузке)?
                                atop'a больше нет в пакетах для freebsd

                                Еще, замечу, pfsense собран для однопроцессорной машины, у нас же 2 ядра. Это считается за 1 процессор?) Ибо dmesg сообщает о 2х процессорах. Может переставить?

                                И, вот мой конфиг шэйпера, может в нем что-то не так. Такое чувство, что из-за переполнения каналов(/трубок)в главной мере из-за торрентов, шэйпер дропает и приоритетные пакеты (с 80 порта в том числе), хотя должен как бэ резать торренты до такой степени, при которой все остальные трубки были бы рады и счастливы!
                                Вот, к примеру, опыт. Запущены торренты. upperlimit у них 80%. При полной нагрузке канала имеем на хттп доунлоад со скоростью 20%!! хотя должны иметь максимально допустимую, судя по приоритетам трубок шэйпера. И это при том, что у трубки, в которую входит 80порт 20% это Гарантированная пропускная способность.
                                При отключении торрентов - видим максимальную скорость скачки по хттп.
                                Очередное умозаключение - во-первых, неправильно работают приоритеты трубок. Торренты не освобождают канал более приоритетным трубкам.
                                во-вторых потери происходят в результате дропов шейпера при переполнении всего канала.(хотя должны просто обрезаться торренты)
                                Помогите настроить шейпер!
                                Что не так в конфиге?

                                p.s. прикрепляю конфиг шэйпера, а также данный по процессору взятые с top'a и графиков RRD

                                rdd_proc.png
                                rdd_proc.png_thumb
                                top_proc.png
                                top_proc.png_thumb
                                shaper.txt

                                2.0.2-RELEASE (i386)
                                Intel(R) Atom(TM) CPU 330 @ 1.60GHz
                                eth: Intel 82574L
                                DOM sata, 1Gb
                                over 150 users

                                1 Reply Last reply Reply Quote 0
                                • A
                                  alexandrnew
                                  last edited by

                                  @deutsche:

                                  поставить с тарболла, ну.

                                  не понял, как?
                                  pkg_add -r atop
                                  не помогает, в пакаджах я его не нашел, компилятора в пфсенсе нету. что бы скомпилить…

                                  1 Reply Last reply Reply Quote 0
                                  • G
                                    goliy
                                    last edited by

                                    Очередной вечер.
                                    На RRD гребенка, но не такая, как раньше. Получше.
                                    пинг хост с сервера и с клиентского компа о потерях не сообщает, но серфинг сильно страдает.
                                    pingtest.net говорит о 1-3%. Иногда подскакивает на гораздо большие значения.
                                    Что делать - не знаю.
                                    По графикам можно предположить, что потери возникают при переполнении каналов.(хотя и не всегда)

                                    rdd_traf.png
                                    rdd_traf.png_thumb
                                    rdd_graf.png
                                    rdd_graf.png_thumb

                                    2.0.2-RELEASE (i386)
                                    Intel(R) Atom(TM) CPU 330 @ 1.60GHz
                                    eth: Intel 82574L
                                    DOM sata, 1Gb
                                    over 150 users

                                    1 Reply Last reply Reply Quote 0
                                    • R
                                      rubic
                                      last edited by

                                      Хм.. при таких нагрузках я бы еще последил за State table size в Status -> System на предмет переполнения..

                                      1 Reply Last reply Reply Quote 0
                                      • G
                                        goliy
                                        last edited by

                                        Да!, она часто на пределе. Но т.к. я не знаю что это такое и где Оно увеличивается - ничего сделать не мог.
                                        Сейчас увеличу и посмотрю что будет.
                                        Может еще расскажете что-нибудь о настройках Advancer? И до какого значения имеет смысл увеличивать данное значение? От чего оно зависит?

                                        Cейчас увеличил значение Firewall Maximum States до 20000(т.е в 2 раза), также поставил галочку на Clear DF bit instead of dropping и сменил Firewall Optimization Options с Normal на conservative.
                                        Поправьте, если что не так.
                                        Ждём вечера.
                                        Спасибо за помощь!

                                        –---------------------------------------

                                        Даже сейчас, в7 утра, после увеличения значения Firewall Maximum States оно сразу подскочило до 15-16k. Почитав о том, что 1 table state занимает 1кб оперативной памяти, а она у меня больше чем на 1-3% занята не бывает - увеличиваю значение до 180k.

                                        2.0.2-RELEASE (i386)
                                        Intel(R) Atom(TM) CPU 330 @ 1.60GHz
                                        eth: Intel 82574L
                                        DOM sata, 1Gb
                                        over 150 users

                                        1 Reply Last reply Reply Quote 0
                                        • R
                                          rubic
                                          last edited by

                                          Не меняйте все сразу. Посмотрите что будет после увеличения State table size, а то потом непонятно будет, что помогло.
                                          DF-бит - ни о чем, а вот Firewall Optimization Options, думаю, прямо влияет на загрузку State table. При conservative будет хранить все состояния до последнего. Лучше оставьте пока normal.

                                          1 Reply Last reply Reply Quote 0
                                          • G
                                            goliy
                                            last edited by

                                            ок. пока снова сменил на normal
                                            И да, ты был прав, значение сразу снизилось с 25-30k до 7-9k

                                            2.0.2-RELEASE (i386)
                                            Intel(R) Atom(TM) CPU 330 @ 1.60GHz
                                            eth: Intel 82574L
                                            DOM sata, 1Gb
                                            over 150 users

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.