Parto col dire che sono un ragazzo di 20 anni appassionato di server, che da poco ha iniziato ad approcciarsi al mondo del networking. Accetto qualsiasi tipo di consiglio e mi scuso se magari la rete non e' configurata bene o nel migliore dei modi. Spero che qualcuno possa aiutarmi a migliorarla e a risolvere il problema che segue.

La mia rete casalinga e' composta dalle seguenti interfacce:

Fisicamente la rete invece e' strutturata nel modo seguente:
In cima c'e' un Netgate 6100, il mio router pfsense. La porta SFP+ evidenziata in rosso va alla porta sfp+ n4 switch grigio mettallizzato portando tutte le reti/vlan, un Mikrotik CRS305-1G-4S+IN. Uso il crs305 come switch di aggregrazione.
Dal crs305 partono i due cavi evidenziati in giallo (porta n2 e n3) da cui esce la vlan 100 Server forzata.
Dalla porta sfp+ n1 invece parte il cavo evidenziato in blu, che porta tutte le reti/vlan allo switch bianco grande sotto, che e' un CSS326-24G-2S+RM.
Dal CSS326 tutti i cavi in verde portano la LAN (pvid 1?) ai vari dispositivi, tra cui anche i due access point Ubiquiti UAP AC PRO (evidenziati in verde e viola) che ricevono anche la VLAN 20 e 30 per le due reti wifi aggiuntive, Guest e IoT.

Il mio pc e' attaccato alla porta sfp+ evidenziata in verde e grigio.
Per poter effettuare un vero collegamento 10gbps tra il mio pc e i vari server nella VLAN Server (cavi evidenizati in giallo), essendo che si trovano in due reti diverse tutto passa anche per la CPU del router, che non riesce a darmi la piena banda ma circa 6gbps (c'e' snort e altri servizi abilitati nell interfaccia LAN e Server).
Se invece provo a fare un test da dispositivo nella rete Server e un altro nella rete server, essendo che non passo nel router ma sono nello switch, naturalmente ottengo la 10gbit piena.
Per risolvere questo problema, ho scoperto grazie a dei ragazzi nel forum (Mario <3) che devo utilizzare una cosa chiamata HW offloading.
Ho provato a seguire questo video (https://www.youtube.com/watch?v=c2sAA6jMjCY) adattandolo al mio setup, ma con scarso successo, i pacchetti passano ancora per la cpu del router.

Step che ho fatto nel CRS305 per provare ad utilizzare l'HW Offloading:
1) Creare un bridge tra tutte le varie porte e impostato come PVID della porta 2 e 3 (quelle evidenziate in giallo) 100, cie' la vlan per i server.

2) Ho abilitato il VLAN filtering nel bridge

3) Ho creato le VLAN nel bridge (temporaneamente ho tralasciato la VLAN Guest per non complicare troppo le cose)

4) Ho creato le VLAN anche nelle Interfacce e ho impostato che usano come Interface il bridge

5) Ho creato gli address facendo riferimentoalle interface dellevlan

6) Ho abilitato l'HW offloading

7) Nelle routes risultano tutte in DACH, quindi dovrebbe essere giusto (?)

Pero' se provo a eseguire un iperf3 tra il mio pc e uno dei server, vedo che comunque viene sfruttata la CPU del router, e quindi non sta utilizzando l'offloading correttamente. Inoltre non so se c'entra qualcosa, ma dalla pagina delle Interface List, vedo che passa molto meno traffico dalle vlan, rispetto che dalle porte fisiche.

    Klay4 Premetto di non essere un esperto, quindi quel che scrivo va preso per quello che è, nella speranza possa essere utile.

    1) Partendo dal fondo, la differenza sui contatori di traffico tra porte fisiche e vlan potrebbe essere una cosa buona, nel senso che potrebbe indicare che parte del traffico non vede la CPU quindi non viene presentato nei contatori.
    2) Passando al banale: possiamo escludere che il tuo PC (con scheda di rete) possa essere il collo di bottiglia?
    3) Per le prove, non puoi collegare il tuo PC direttamente al CRS305? Così escludiamo una variabile.
    4) Usare VLAN filtering e la PVID a 1 è generalmente sconsigliata. Non la si potrebbe passare a 10? Interoperabilità con Ubiquity?
    5) A quanto arrivi dopo aver provato ad abilitare l'L3 HW offloading? La capacità di routing da test ufficiali (in fast path) è di 1.2Gbps (https://mikrotik.com/product/crs305_1g_4s_in#fndtn-testresults). Dopotutto il CRS305 è uno switch con qualche funzionalità di routing. Se si arriva a 6Gbps mi viene da pensare che qualcosa in offloading c'è già...
    6) La documentazione (https://help.mikrotik.com/docs/display/ROS/L3+Hardware+Offloading) specifica che bisogna anche abilitare l'hw-offloading sulle singole porte, non solo sullo switch. Dal tuo punto (6) non mi è chiaro se l'hai fatto. (Comando: /interface/ethernet/switch/port set [find] l3-hw-offloading=yes)
    7) Cosa restituisce il comando /interface/ethernet/switch/l3hw-settings/monitor?
    8) Potresti fare un export dell'intera configurazione? Mi piacerebbe capire come è configurato anche l'eventuale firewall

    Just my 2c.

    Klay4
    In effetti, come viene detto nel post precedente, non ha senso usare VLAN per alcune reti e per altre no, quindi dover accettare sempre sia pacchetti taggati che non; se decidi di averle, usale ovunque e imposta le porte in modo che accettino solo pacchetti taggati se non sono porte di accesso.
    Inoltre non capisco come mai abbia creato 3 interfacce VLAN sullo switch, ognuna con un IP... per la gestione (che magari ha una VLAN separata) basta un IP e quindi una interfaccia.
    Di conseguenza non metterei il bridge nell'inoltro in uscita (quindi verso la CPU) delle altre VLAN.
    Ultima cosa, controllerei le specifiche del dispositivo per sapere quali sono le interfacce connesse ad uno stesso switch, se quelle che usi non hanno questa caratteristica, potranno dialogare soltanto facendo passare il traffico dalla CPU.

      Che versione di ROS hai installata? Guardando dalla wiki devono essere pari o superiori alla 7.1

      • Klay4 ha risposto a questo messaggio

        Mrtt Inoltre non capisco come mai abbia creato 3 interfacce VLAN sullo switch, ognuna con un IP...

        Per quanto ho capito è un'indicazione della documentazione RouterOS

        Mrtt Ultima cosa, controllerei le specifiche del dispositivo per sapere quali sono le interfacce connesse ad uno stesso switch, se quelle che usi non hanno questa caratteristica, potranno dialogare soltanto facendo passare il traffico dalla CPU.

        Il block diagram (https://i.mt.lv/cdn/product_files/CRS305-1G-4S_220955.png) indica che tutte le 4 interfacce sfp sono sullo stesso chip. La banda tra switch chip e CPU è di 1.3Gbps, quindi se ha 6Gbps qualcosa di offloading lo ha già...

        Klay4
        Hai avuto modo di guardarci? In particolare al mio punto 6...

        • Klay4 ha risposto a questo messaggio

          Klay4 Ho creato le VLAN nel bridge (temporaneamente ho tralasciato la VLAN Guest per non complicare troppo le cose)

          Perché la vlan1 non è taggata nel bridge?

          Avevo letto che è buona norma non utilizzare il valore 1 nel PVID della schermata vlan filtering, e immettere un valore che non è già utilizzato per le vlan. Nel tuo caso hai 1 per vlan e PVID.

          Il resto delle schermate sembra a posto.

          Dal diagramma si legge che quando interviene la cpu il collegamento arriva al massimo a 1.3 Gb/s.

          mario152475 domattina riprovo a configurare il tutto da capo, momentneamente ho rimesso su swos per avitare di avere internet down o comunque problemi.
          Mi occupero' anche di spostare la LAN in una VLAN, esempio 10, per non avere piu' reti sotto il pvid 1.

          Riguardo il tuol punto 3, credo proprio che domattina faro' cosi, occupandomi prima solo del 305.
          Riguardo il punto 5, mi sono sbagliato, e non si arriva a 6gbps ma circa a 2.5/3gbps.
          Provero' a fare anche il punto 6 oltre a tutti quelli gia' elencti.

          lupoarrabbiato sto usando l'ultima versione in tutti gli switch

            Klay4 mario152475 domattina riprovo a configurare il tutto da capo, momentneamente ho rimesso su swos per avitare di avere internet down o comunque problemi.

            Tienici aggiornati, mi hai incuriosito!

            Klay4 Riguardo il punto 5, mi sono sbagliato, e non si arriva a 6gbps ma circa a 2.5/3gbps.

            Considerato che la banda tra CPU e switch chip è di 1.3Gbps significa che un (bel) po' di offloading c'è già.

            • Klay4 ha risposto a questo messaggio

              mario152475 ma dal video che ho seguito, sembra che grazie all'offloading tutto vada sul chip dello switch, e non passi piu' nulla nel router, cosa che non accade visto che quando provo a fare un iperf tra due vlan diverse vedo che la cpu di pfsense va oltre il 60% di botto

                Klay4
                La documentazione dice che se non è abilitato l'offloading anche sulle singole porte il pacchetto passa per la CPU e c'è l'offloading solo delle connessioni fasttrack. Per quello ho indicato il punto 6.
                (E per questo motivo mi interessa l'export della configurazione.)

                Klay4 provo a fare un iperf tra due vlan diverse vedo che la cpu di pfsense va oltre il 60% di botto

                Ho letto solo ora questa parte. Questo è molto strano, non dovrebbe lasciare lo switch. Rianalizziamo la situazione quando riconfiguri il tutto. Servirà vedere anche le rotte e il firewall del CRS305 (meglio, l'intera configurazione).

                Sfortunatamente questa mattina non sono riuscito a provare la tua configurazione, ma in settimana sicuro farò. Allegheró tutto il config compreso il firewall. Riguardo al fatto che va ad utilizzare la CPU di pfsense, m’ha fatto subito pensare che non venga utilizzato correttamente l’offloading dello switch.

                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