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.
    • 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
                          • G
                            goliy
                            last edited by

                            @rubic:

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

                            ПОМОГЛО!!!
                            Нормальное значение table state у меня 24-25k.
                            СПАСИБО!

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

                            Помогите еще с тем, чтобы шейпер уступал канал торрентов для траффика хттп.
                            Трубка для торрентов:
                            Bandwidth 1%
                            Priority 1
                            Random Early Detection
                            Explicit Congestion Notification
                            Upperlimit: 80%
                            Real time: 1kb
                            Из стандартных настроек я изменил только upperlimit

                            Трубка для хттп:
                            Bandwidth 35%
                            Priority 4
                            Random Early Detection
                            Explicit Congestion Notification
                            Real time:                          30%

                            Дело в том, что при полной загрузке канала на хттп выделяется только 54%
                            А на торренты 38%.
                            Примерно

                            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

                              блин, а столько версий было :)
                              я у себя Firewall Maximum States сразу в 100000 поставил

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

                                @alexandrnew:

                                блин, а столько версий было :)
                                я у себя Firewall Maximum States сразу в 100000 поставил

                                У меня 180000 стоит, ибо при консервативном режиме фаервола (advanced->Firewall Optimization Options- conservative)при больших нагрузках table states поднимается до 120-130k

                                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 Reply Last reply Reply Quote 0
                                  • A
                                    alexandrnew
                                    last edited by

                                    дык у меня еще и normal стоит :) я не менял :) на данный момент, значение без нагрузки Current state count: 10367 :)
                                    посмотрю через час.. при нагрузке :)

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

                                      @alexandrnew:

                                      дык у меня еще и normal стоит :) я не менял :) на данный момент, значение без нагрузки Current state count: 10367 :)
                                      посмотрю через час.. при нагрузке :)

                                      Попробуйте агрессивный, но там есть нюансы:
                                      Agressive - expires idle connections quicker. More efficient use of CPU and memory but can drop legitimate connections.

                                      SquidGuardDoc EN  RU Tutorial
                                      Localization ru_PFSense

                                      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
                                        • D
                                          dvserg
                                          last edited by

                                          @goliy:

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

                                          Освобождает простаивающие соединения быстрее. Более эффективное использование ресурсов процессора и памяти, но могут быть сброшены легитимные соединения.
                                          Просто попробовать нужно. Те соединения которые могут быть сброшены просто переконнектятся еще раз.

                                          SquidGuardDoc EN  RU Tutorial
                                          Localization ru_PFSense

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

                                            Ну то есть есть смысл использовать при нехватки ресурсов оперативной памяти и процессора, я так понимаю.
                                            А если всего вдостатке - юзаем conservative, чтобы максимально избежать дропов, как раз за счет использования процессора и оперативной памяти.

                                            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.