Riporto anche a voi una cosa che ho recentemente scoperto, nella speranza che mi possiate aiutare a capire da cosa dipende ed eventualmente anche risolvere 😉
Mi scuso in anticipo per il wall-of-text, ma è difficile spiegare la problematica e i vari test fatti in poche righe 😉

Premesso che sono di Ferrara e che nella mia città ho sempre saputo che la latenza media fino al BRAS (primo hop fuori dalla LAN) è di circa 10-11ms, non ho mai capito perché io ho sempre rilevato latenze più elevate (15-16ms).

Ho sempre dato la colpa a FiberCop, che effettivamente ogni tanto cambia i routing del trasporto e determina variazioni (in percentuale anche molto rilevanti) in meglio o in peggio.
O in alcuni casi alla subnet pubblica di Aruba che mi viene assegnata (ho notato che alcune classi hanno latenze migliorate di 1-2ms rispetto alle altre).

Recentemente però ho fatto qualche test (per altri motivi) sulla mia rete di casa e ho notato qualcosa di molto interessante (a mio parere).

  • Il mio setup attuale consiste in un server con Proxmox, sul quale ho virtualizzato una VM OPNsense e alla quale ho collegato delle interfacce VirtIO connesse a dei bridge con delle interfacce da 2.5G in USB3.

  • 2 interfacce 2.5G USB3 con chip Realtek, una che è direttamente connessa all'ONT e l'altra che va allo switch 2.5G.

  • La Linea è una FTTH PianetaFibra 2500/1000 su rete FiberCop

In termini di velocità di connessione direi che non mi posso proprio lamentare:
https://www.speedtest.net/result/c/b3472faf-d538-412a-9161-2242e9cd8aef

La latenza però, per quanto so benissimo che non è alta in termini assoluti e che non determina nessun tipo di problema reale, mi da fastidio che sia più elevata di 3-4ms rispetto alla media della mia zona.

Nei vari test fatti nei giorni scorsi, mi sono accorto che collegando direttamente il mio PC all'ONT la latenza al primo hop passa da 15ms a 12ms! Quindi un miglioramento del 20%!

Con ONT collegato direttamente al PC:

Con ONT collegato via bridge su Proxmox a OPNsense:

Ora, si potrebbe pensare ad un problema di OPNsense, alle interfacce di rete USB, ecc. Quindi per valutare se effettivamente questi fattori incidessero in qualche modo, ho provato a fare il passthrough di una delle interfacce USB direttamente su OPNsense (escludendo quindi il bridge e le interfacce virtuali di Proxmox) e ho ottenuto risultati analoghi a quelli ottenuti con un PC collegato direttamente all'ONT. Quindi con latenza migliorata di 2-3ms.

Purtroppo, però, data la poca compatibilità tra OPNsense (BSD) e le schede Realtek, non posso mantenere il passthrough attivo perché se è vero che la latenza è ottima, la banda è oscena: viene limitata a circa 100Mbps... e direi che non è il caso, ecco...

Tutto questo per dire, avete idee su cosa possa causare questo incremento di latenza usando le interfacce virtuali? Un semplice ping (o traceroute) tra un PC della rete locale e il firewall ha latenza <1ms, quindi non è meramente un problema dell'interfaccia virtuale... ho il sospetto che derivi da una qualche interazione tra PPPoE e il bridge di Proxmox...

Questo anche considerando il fatto che, mentre normalmente la PPPoE su firewall come OPNsense lavorerebbe sigle-core, quando invece si va ad appoggiare su una interfaccia virtuale su bridge di Proxmox lavora multi-core, quindi con evidenti miglioramenti di banda... ma forse è proprio questo meccanismo che aumenta la latenza?

Grazie in anticipo per gli spunti di riflessione che mi vorrete dare 😉

    Matwolf ha cambiato il titolo in Considerazioni su latenze OPNsense + Proxmox .

    una curiosità ma la 2.5 ce l'hai gia sul rame del converter?
    anche io vorrei passare ad una linea da 2.5G ed ho la pfsense su proxmox...

    • Matwolf ha risposto a questo messaggio

      wifi75 non ho capito la domanda...
      L'ONT ha una porta ethernet da 2.5Gb, se è questo che mi stai chiedendo

      • wifi75 ha risposto a questo messaggio

        Matwolf all'ONT la latenza al primo hop passa da 15ms a 12ms!

        E pensa che passare da 1ms a 0ms è un miglioramento del 100%! /s

        Matwolf Grazie in anticipo per gli spunti di riflessione che mi vorrete dare 😉

        Siccome hai tutto virtualizzato - quindi alla peggio uccidi la VM - prova VyOS invece che OPNSense è basato su Linux quindi hai i driver belli per Realtek

          Lorenzo1635 conosco VyOS (ho anche già una VM con VyOS che uso per altri scopi) ma non volevo abbandonare OPNsense per questo utilizzo specifico.

          Matwolf Cambiando indirizzo MAC dell'hardware che instaura la PPPoE, cambia evidentemente anche il percorso di andata/ritorno. Qui trovi una discussione simile (leggi fino al messaggio numero 36).

          • Matwolf ha risposto a questo messaggio

            mirko991 Si ho pensato anche a questo, ma ho provato una decina di MAC diversi sulla scheda virtuale e non cambia praticamente nulla.
            Quindi direi che non è questo che fa la differenza nel caso specifico

            • walt ha risposto a questo messaggio

              Matwolf nel mio caso - analogo al tuo cioè FTTH TIM + Proxmox + VM OPNsense - non ho mai rilevato differenze apprezzabili di latenza tra NIC virtualizzata o passthrough ma...utilizzo NIC Intel integrate...

              Non è magari il firewall attivo di pfsense che deve “elaborare” il pacchetto più hop entrata/uscita dallo switch e aggiungi anche l’interfacce usb che qualcosa fa perdere?

              • Matwolf ha risposto a questo messaggio

                Fraternal3954 mmm... se fosse così però non troverei differenze mettendo la scheda USB in passthrough.... Invece se metto la scheda USB in passthrough la latenza mi cala...
                Il firewall funziona allo stesso modo indipendentemente dalla modalità in cui collego la scheda

                  Matwolf

                  Esatto, l'ont ha una porta ethernet da 2.5G?

                  A mio avviso la scelta di utilizzare schede USB non è proprio delle migliori, a parte la latenza dovuta al protocollo anche il tipo di chipset disponibile non è ideale per essere utilizzato nel mondo linux / bsd.

                  Do per scontato che le schede 2.5g USB siano basate su chipset realtek (rtl8125?). E' già tanto che ti funzionino benino su proxmox. Escluderei a priori di fare il passthrough di quelle schede verso OPNSense, se cerchi su internet è pieno di post di persone che hanno auvuto problemi.

                  Che scheda di rete hai come integrata sul pc che stai usando? Hai a valle uno switch managed che ti gestisce le VLAN? potresti provare a fare una copia della VM di opnsense facendolo lavorare come "router on a stick", mettere tutto sull'interfaccia VMBR0 (il bridge della scheda integrata) taggando la WAN sulla vlan giusta e lasciando la lan sulla vlan 1. Così saresti limitato (presumo) ad 1gbit, ma almeno potresti verificare se hai differenze sostanziali di latenza sul primo hop.

                  Matwolf Il firewall funziona allo stesso modo indipendentemente dalla modalità in cui collego la scheda

                  Questo è uno dei tipici problemi nel virtualizzare il router: quando va fatto un debug di qualche problema ci sono tante variabili in gioco. Host magari non il top per hardware, configurazione host, schede aggiunte e magari non supportate al 100%, VM.

                    Fraternal3954 Questo è uno dei tipici problemi nel virtualizzare il router

                    Concordo pienamente, anche io uso OPNsense ma baremetal, hardware dedicato (mini pc con N100 e Intel I226-V). Zero problemi e prestazioni massime così.

                    mirko991 e invece avevi ragione tu...!!!
                    Ho seriamente provato a generare random una ventina di MAC address sull'interfaccia virtuale di Proxmox, ma non ero mai riuscito (pur vedendo delle variazioni) a raggiungere la latenza della scheda che avevo usato per fare i test "diretti".

                    Preso dallo sconforto, vedendo che su altro hardware addirittura in bare-metal avevo delle latenze ancora più alte, ho provato ad assegnare (tanto ero su un sistema separato) lo stesso mac address della scheda usb che usavo per fare le prove...

                    Ping di 11-12ms.

                    Non ho parole....

                    Ho dei mac address che mi portano la latenza al primo hop a 17-18ms e dei MAC address che invece vanno a 11-12ms.

                    Il tutto super ripetibile!

                    Mi sarebbe piaciuto usare un mac address diverso (per non dover appendere al chiodo la scheda alla quale ho rubato il mac address buono) ma non ho capito l'algoritmo con il quale decidono gli instradamenti per potermene costruire uno "buono" a mano 😉
                    Quindi per il momento ho assegnato il "mac address dalle uova d'oro" alla scheda virtuale di Proxmox che usa OPNsense per la PPPoE e ho scollegato la scheda fisica che lo usava. Funziona tutto egregiamente.

                    Pensavo fosse solo OpenFiber a fare questa cosa... ma invece a quanto pare anche FiberCop lo fa...

                    Comunque sono senza parole.... ho perso una valanga di tempo per questa cavolata pensando che il problema fosse chissà dove nello stack... invece era veramente un mac address più fortunato degli altri....🤬

                      @Matwolf
                      prova a variare qualcosa nella seconda metà del mac address, così da lasciare inalterato il vendor, magari usa driver diversi in base a questo

                      • Matwolf ha risposto a questo messaggio

                        Mrtt ho provato ma anche cambiando solo l'ultima cifra cambia completamente la latenza

                          Matwolf
                          strano come funzionamento...
                          oltre a generare un MAC address virtuale diverso, guarda anche dentro alla VM creata... non vorrei fosse stato letto inizialmente il valore del MAC address e inserito in modo statico nella configurazione della rete
                          e mettendo il valore esatto dell'altra scheda di rete, forzi ad usare driver diversi, solo così sarebbe spiegato

                          • Matwolf ha risposto a questo messaggio

                            Informativa privacy - Informativa cookie - Termini e condizioni - Regolamento - Disclaimer - 🏳️‍🌈
                            P.I. IT16712091004 - info@fibraclick.it

                            ♻️ Il server di questo sito è alimentato al 100% con energia rinnovabile