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

    Squid3 CPU monte à 100% lors de téléchargements + baisse de bande passante

    Scheduled Pinned Locked Moved Français
    32 Posts 3 Posters 4.6k 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.
    • F
      Florian22
      last edited by

      vSwitch1(dhcp pfsense)                                                                                            vSwitch2 (dhcp box)
      <–------------------------------------------------------------------>                                      <------------------------------------------------------->

      CLIENT LAN <<>>          nic2 >>  VSWITCH PROXMOX >> KVM PFSENSE (PROXY)  >> VSWITCH PROXMOX >> WAN PROXMOX  >> nic1

      vmbr1                              LAN                                  WAN                                vmbr0                  WAN
                                                    <-------------------------------------------------------------------------------------------------------------------------->
                                                      Hôte PROXMOX

      Ce schema est il conforme a votre setup?

      par ailleurs, vous n'êtes pas sans savoir que lorsque "CLIENT LAN" tire à 20mo/s  le host doit "logiciellement gerer ce trafic sur les deux
      switchs.

      (d'ou ma reflexion anterieure relative "a la saleté de l'idée qui consiste a virtualiser un routeur")

      1 Reply Last reply Reply Quote 0
      • M
        moulip
        last edited by

        Bonjour Florian22,

        Je n'avais pas vu votre message au-dessus de celui concernant le nombre d'interfaces physiques. Aussi vais-je vous répondre aux 2 restants ici.
        Mais tout d'abord je tiens à vous remercier pour la qualité de l'aide que vous apportez. Je ne me suis senti « insulté » par votre réponse, rassurez-vous.

        Pour répondre au delai d'IO sur Proxmox, il n'y en pas ou inférieur à 1% lors de mon test de téléchargement. Le CPU du host par contre monte à 50%.

        Votre schéma est assez conforme en effet. Je vais tenter de le reproduire :

        Pfsense :

        em0(vmbr0)–------em1(vmbr1)-----------em2 (vmbr2)
              ||                              ||                            ||
            LAN                        PROXY                      DMZ
                                              ||
                                          WAN

        Promox dispose de 2 interfaces physiques eth0 et eth1 et une virtuelle eth1:1.

        Je vais refaire les tests en désactivant toutes les sources d'écriture. Par contre, je ne trouve pas l'indicateur affichant le % d'IOWAIT.
        Savez-vous où pourrais-je trouver cette valeur ? TOP ne le montre pas.

        1 Reply Last reply Reply Quote 0
        • M
          moulip
          last edited by

          La désactivation de toutes les sources d'IO ne change rien à l'affaire.

          1 Reply Last reply Reply Quote 0
          • F
            Florian22
            last edited by

            je ne comprends pas trop votre schema, mais puisque vous etes d'accord avec le mien, je vais me garder le mien en tete

            pouvez vous svp :

            1/ lancer un gros dl par fetch dans la console pfsense (donc pas derriere lan) on utilise pas le vswitch interne, juste le vswitch de l interf publique pfsense

            2/ allez dans prox  >  sortez le % cpu, et le I/O delay (disque)

            3/ allez dans pfsense, > top  > sortez le taux interrupt (reseau)

            4/ allez dans pfsense > top > sortez le taux CPU

            5/ allez dans pfsense > top > sortez la valeur ram

            puis refaites 2 a 5 en modifiant 1 > a savoir: vous me faites plus ca en fetch par pf, mais avec un PC sur LAN

            arangez vous dans les deux tests pour avoir le même "tirage" (debit/nombre de threads)  (prenez plusieurs fetchs paralleles, ou plusieurs DL sur le PC lan si besoin est)
            pour obtenir des tests comparables

            peut etre allons nous voir des choses interessantes dans ce test croisé, puisque dans un, vous testez depuis l'interface WAN sur un seul vswitch en ssh et de l''autre vous faites toute la traversée

            (et donc cette boucle "sale", puisque j'espere que vous avez pu constater que vous infligez une grosse boucle au host?)
            (c'est pour ca que je dis que c'est sale)  (on ne virtualise pas un firewall normalement)

            ps: il est possible que vous ne puissiez pas regler le probleme, la virtualisation peut causer des problemes tres exotiques dans certains cas (drivers cartes réseau etc)

            ps2: pouvez vous me confirmer que vous avez bien capté que votre config fait faire une boucle au trafic, et que pour 1 méga consommé au départ du LAN vous faites travailler le host pour 2 megas, puisque le trafic entre, sort, rerentre et ressort

            1 Reply Last reply Reply Quote 0
            • M
              moulip
              last edited by

              Voici les résultats :

              J'ai fait un fetch et un wget d'un fichier d'1 Go.

              Voici les valeurs du fetch sur pfsense :
              Proxmox : CPU : ~35%, IO delay ~3%
              Pfsense : Interrupt : 10%, CPU : ~70% system, RAM : 165 active, 930 inactif.

              J'obtiens les mêmes valeurs depuis le LAN. En revanche ce test m'a permis de me rendre compte que même sans Proxy activé, j'obtenais des valeurs identiques en terme de ressources CP. Par contre je retrouve l'intégralité de ma bande passante. Ce qui m'amène à penser que la charge CPU excessive et la baisse de bande passante, ne sont pas corrélées.

              1 Reply Last reply Reply Quote 0
              • M
                moulip
                last edited by

                Par contre chose étrange, avec fetch sur pfense je ne dépasse pas les 20-22 MB/s, alors que je suis à plus de 30 sur le LAN sans proxy.

                1 Reply Last reply Reply Quote 0
                • F
                  Florian22
                  last edited by

                  1/ Quel est le débit pour les tests (voir RRD)

                  2/ quel est le gabarit proxmox utilisé pour pfsense (ressources)

                  3/ quel est la frequence, la ram installée du host px

                  4/ quel type de carte reseau utilisez vous

                  1 Reply Last reply Reply Quote 0
                  • F
                    Florian22
                    last edited by

                    quel type de connexion avez vous?
                    quel type de ressource a servi au test?

                    je vous avais dit de prendre plusieurs threads (fetch) pour pousser la ligne dans ses retranchements

                    prenez 7-8 fichiers 10G sur ovh.net, et relevez les valeurs moyennes sur 3-4 min

                    plus votre test va durer longtemps, plus vous aurez des valeurs graphées dans rrd  laissez tourner les threads pour chaque test 10 minutes
                    puis sortez nous les captures RRD de la section "system" et de "trafic"

                    pour chacun  des deux tests.

                    n'oubliez pas également de me dire si pfsense dispose de 100% des capacités CPU dans le gabarit proxmox, si il partage les ressources avec d'autres unités, ainsi que les spec techniques du host

                    une fois toutes ces infos glanées, on pourra en dire plus (sans garantie)

                    desactivez pour vos tests :  ¨Portail captif + proxy + tout service inutile, éteignez les autres VM présentes sur le HOST

                    1 Reply Last reply Reply Quote 0
                    • F
                      Florian22
                      last edited by

                      quelles valeurs sont cochées dans votre pfsense sous la section system > advance > networking

                      il y a 5 options cochables,  lesquelles sont actives/inactives

                      1 Reply Last reply Reply Quote 0
                      • M
                        moulip
                        last edited by

                        Ma connexion est une ligne fibre FTTH 280/50.
                        Le host dispose de 8 Go de RAM et d'un processeur cadencé à 3,2 Ghz
                        Les cartes dont des Intel Pro 1000
                        Le gabarit PFsense est le suivant : Memory 1.34GB, Processors 2 (1 socket, 2 cores) host, HDD scsi 20G format RAW, 3 nics e1000
                        Pfsense n'a pas de limitation en termes de ressources. Il est installé avec d'autres VMs bien entendu.

                        Je précise toutefois que je ne rencontre des problèmes de débit qu'au travers du Proxy Squid. Si je le désactive je retrouve 100% des capacités de la ligne.
                        Je vais néanmoins faire les tests demandés.

                        1 Reply Last reply Reply Quote 0
                        • M
                          moulip
                          last edited by

                          Les options Networking :

                          Sont cochées Disable hardware TCP segmentation offload et disable hardware large receive offload

                          1 Reply Last reply Reply Quote 0
                          • F
                            Florian22
                            last edited by

                            @moulip:

                            Ma connexion est une ligne fibre FTTH 280/50.
                            Le host dispose de 8 Go de RAM et d'un processeur cadencé à 3,2 Ghz
                            Les cartes dont des Intel Pro 1000
                            Le gabarit PFsense est le suivant : Memory 1.34GB, Processors 2 (1 socket, 2 cores) host, HDD scsi 20G format RAW, 3 nics e1000
                            Pfsense n'a pas de limitation en termes de ressources. Il est installé avec d'autres VMs bien entendu.

                            Je précise toutefois que je ne rencontre des problèmes de débit qu'au travers du Proxy Squid. Si je le désactive je retrouve 100% des capacités de la ligne.
                            Je vais néanmoins faire les tests demandés.

                            reduisez au minimum les parametres…

                            ide ou sata pour le disque dur... par exemple

                            eteignez les autres VM, et donnez 100% du CPU et de la RAM dispo (95% si vous voulez)

                            faites cela a l 'occasion d'un 3e test

                            quel type de processeur virtuel utilisé? kvm64?

                            1 Reply Last reply Reply Quote 0
                            • M
                              moulip
                              last edited by

                              Legacy pour quel item ?
                              Il ne me semble pas que Proxmox permette de distribuer les ressources selon les Vms.
                              Il existe la notion de CPU units mais ce n'est pas tout à fait la même chose. Pour la RAM il n'y a aucune contention.

                              1 Reply Last reply Reply Quote 0
                              • F
                                Florian22
                                last edited by

                                ben si, c est le principe d un hyperviseur, vous affectez un nombre de vcore

                                donnez les lui tous

                                pour la ram pareil, c est reglable

                                1 Reply Last reply Reply Quote 0
                                • F
                                  Florian22
                                  last edited by

                                  en clair => si votre pfsense en temps que vm, n a acces qu a un seul coeur sur 4 dispo par exemple

                                  ca me choque pas outre mesure que vous montiez a  75% de ce même coeur… :)

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    moulip
                                    last edited by

                                    J'ai dédié 2 coeurs à cette VM.

                                    1 Reply Last reply Reply Quote 0
                                    • F
                                      Florian22
                                      last edited by

                                      sur combien?

                                      type de vcore?

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        moulip
                                        last edited by

                                        2 sur 4 par contre vcore ?
                                        Je pense que c'est une notion Vmware. Mais si c'est le type de CPU alors j'ai choisi HOST à savoir que la VM voit le « vrai » CPU du host.

                                        1 Reply Last reply Reply Quote 0
                                        • F
                                          Florian22
                                          last edited by

                                          non

                                          dans proxmox a coté du nombre de coeurs, vous avez le type d'emulation du cpu (vcpu)

                                          donnez lui les 4 pour le 3e test a faire (rebootez la vm entre les changements sur prox)

                                          by the way :  a quoi vous sert franchement pfsense? qu'attendez vous du reseau que vous montez?

                                          – je ne pense pas que vous ayez la bonne approche -- globalement

                                          1 Reply Last reply Reply Quote 0
                                          • F
                                            Florian22
                                            last edited by

                                            @moulip:

                                            alors j'ai choisi HOST à savoir que la VM voit le « vrai » CPU du host.

                                            cela ne me parle pas ce que vous me dites

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