Mikrotik EoIP over SSTP - alacsony sávszélesség TCP-vel

Van két darab Mikrotik routerem, az egyik egy hAP ac lite, a másik egy RB433AH. Mindkettőn 6.41.2 a RouterOS verziója.
A két eszköz között EoIP over SSTP tunnel van, így van összebridge-elve a LAN. A hAP ac lite oldalán egy 30/5-ös DSL vonal van, az RB433AH oldalán pedig 75/7.5 az elérhető sávszélesség.
Alapvetően működik, de csak UDP esetén tudom kihasználni közel 100%-ban a sávszélességet.

A két router között indított bandwidth test elvárható értékeket mutatnak, mind TCP mind pedig UDP esetén, tehát az SSTP tunnel jól működik.


[admin@RB433AH] > /tool bandwidth-test protocol=udp address=192.168.20.1 user=<redacted> password=<redacted> duration=30
                status: done testing
              duration: 31s
            rx-current: 5.1Mbps
  rx-10-second-average: 5.1Mbps
      rx-total-average: 5.1Mbps
          lost-packets: 0
           random-data: no
             direction: receive
               rx-size: 1500


[admin@RB433AH] > /tool bandwidth-test protocol=tcp address=192.168.20.1 user=<redacted> password=<redacted> duration=30    
                status: done testing
              duration: 31s
            rx-current: 4.0Mbps
  rx-10-second-average: 4.1Mbps
      rx-total-average: 4.1Mbps
           random-data: no
             direction: receive

Ha viszont egy laptopot kötök ethernet kábellel az RB433AH-ba, összebridgelve az EoIP tunnellel a remote (RB433AH) oldalon, akkor egy btest utility-vel indított TCP bandwidth teszt alacsonyabb értékeket mutat, valamint látszik, hogy a másik oldalon megnövekedik a tx-drops-per-second. Mindegy, hogy az irány send vagy receive. Ha a Local Tx speed-et 2420000 bps-re állítom, akkor stabilan az átviteli sebesség, 2.4-2.6 Mbps.

receive irány


[admin@RB433AH] >  /interface monitor-traffic eoip-home interval=5
                         name:  eoip-home
        rx-packets-per-second:        114
           rx-bits-per-second:  1283.1...
     fp-rx-packets-per-second:          0
        fp-rx-bits-per-second:       0bps
          rx-drops-per-second:          0
         rx-errors-per-second:          0
        tx-packets-per-second:         72
           tx-bits-per-second:   66.0kbps
     fp-tx-packets-per-second:          0
        fp-tx-bits-per-second:       0bps
          tx-drops-per-second:          0
    tx-queue-drops-per-second:          0
         tx-errors-per-second:          0


[admin@hap_ac_lite] > /interface monitor-traffic eoip-home interval=5
                         name:  eoip-home
        rx-packets-per-second:         89
           rx-bits-per-second:   59.8kbps
     fp-rx-packets-per-second:          0
        fp-rx-bits-per-second:       0bps
          rx-drops-per-second:          0
         rx-errors-per-second:          0
        tx-packets-per-second:        133
           tx-bits-per-second:  1566.7...
     fp-tx-packets-per-second:          0
        fp-tx-bits-per-second:       0bps
          tx-drops-per-second:          2
    tx-queue-drops-per-second:          0
         tx-errors-per-second:          0

send irány


[admin@RB433AH] >  /interface monitor-traffic eoip-home interval=5
                         name:  eoip-home
        rx-packets-per-second:        116
           rx-bits-per-second:   63.5kbps
     fp-rx-packets-per-second:          0
        fp-rx-bits-per-second:       0bps
          rx-drops-per-second:          0
         rx-errors-per-second:          0
        tx-packets-per-second:        124
           tx-bits-per-second:  1432.1...
     fp-tx-packets-per-second:          0
        fp-tx-bits-per-second:       0bps
          tx-drops-per-second:         17
    tx-queue-drops-per-second:          0
         tx-errors-per-second:          0


[admin@hap_ac_lite] > /interface monitor-traffic eoip-home interval=5
                         name:  eoip-home
        rx-packets-per-second:         85
           rx-bits-per-second:  977.2kbps
     fp-rx-packets-per-second:          0
        fp-rx-bits-per-second:       0bps
          rx-drops-per-second:          0
         rx-errors-per-second:          0
        tx-packets-per-second:         86
           tx-bits-per-second:   68.1kbps
     fp-tx-packets-per-second:          0
        fp-tx-bits-per-second:       0bps
          tx-drops-per-second:          0
    tx-queue-drops-per-second:          0
         tx-errors-per-second:          0

működő

Ha ettől az értéktől (2420000bps) feljebb megyek, akkor elkezdi eldobni a csomagokat.


[admin@RB433AH] >  /interface monitor-traffic eoip-home      
                         name:  eoip-home
        rx-packets-per-second:        171
           rx-bits-per-second:   74.9kbps
     fp-rx-packets-per-second:          0
        fp-rx-bits-per-second:       0bps
          rx-drops-per-second:          0
         rx-errors-per-second:          0
        tx-packets-per-second:        410
           tx-bits-per-second:    2.7Mbps
     fp-tx-packets-per-second:          0
        fp-tx-bits-per-second:       0bps
          tx-drops-per-second:          0
    tx-queue-drops-per-second:          0
         tx-errors-per-second:          0



[admin@hap_ac_lite] > /interface monitor-traffic eoip-home           
                         name:  eoip-home
        rx-packets-per-second:        409
           rx-bits-per-second:    2.6Mbps
     fp-rx-packets-per-second:          0
        fp-rx-bits-per-second:       0bps
          rx-drops-per-second:          0
         rx-errors-per-second:          0
        tx-packets-per-second:        218
           tx-bits-per-second:  152.6kbps
     fp-tx-packets-per-second:          0
        fp-tx-bits-per-second:       0bps
          tx-drops-per-second:          0
    tx-queue-drops-per-second:          0
         tx-errors-per-second:          0

Mi okozhatja ezt a viselkedést? MTU értékek? MSS értékek nem megfelelően vannak beállítva? Fast-track? Fragmentáció? Hogyan érdemes ezt debuggolni? Vagy ez a setup ennyit tud?

Köszönöm a válaszokat előre is.

Hozzászólások

Alapvető, hogy NE az átviteli eszközökön generáld a btest mérést, ha egy mód van rá.
A kódolás zabálja a CPU-t, és a btest is.
Az UDP teszt sokkal kevésbé, mint a TCP.

Köszi, igen, közben látom, hogy a hAP ac lite-on 100% a CPU, ha receive-re állítom a direction-t. Tools/Profile-ban látszik is, hogy a btest eszi meg a CPU-t. Ettől függetlenül, speedtest.net-en futtatva egy tesztet 47 ms ping, 2.04 Mbps download, 1.76 Mbps upload. És látszik, hogy van közben tx-drops, uploadnál több (ezért az alacsonyabb érték). CPU-k ebben az esetben nincsenek 100%-ban terhelve. Download teszt alatt a hap AC lite-nál, uploadnál a RB433AH-nál (amibe van a kötve a test laptop) van a tx drops. Ez egy elfogadható eredmény a különböző overhead-ek miatt, vagy lehet ezen még javítani? Köszi a válaszod.

Mindkét oldalon az upload limitet hozza, tehát receive esetén 5 Mbps, send esetén pedig 7.5 Mbps. btest-tel mértem TCP-vel, 1500 byte local és remote Tx size.


[admin@hap_ac_lite] > /interface monitor-traffic interface=eoip-home,<l2tp-redacted> 
                         name:  eoip-home l2tp-***
        rx-packets-per-second:        249             249
           rx-bits-per-second:  120.4kbps       176.2kbps
     fp-rx-packets-per-second:          0               0
        fp-rx-bits-per-second:       0bps            0bps
          rx-drops-per-second:          0               0
         rx-errors-per-second:          0               0
        tx-packets-per-second:        417             829
           tx-bits-per-second:    5.1Mbps         5.1Mbps
     fp-tx-packets-per-second:          0               0
        fp-tx-bits-per-second:       0bps            0bps
          tx-drops-per-second:          0               0
    tx-queue-drops-per-second:          0               0
         tx-errors-per-second:          0               0

[admin@hap_ac_lite] > /interface monitor-traffic interface=eoip-home,<l2tp-redacted> 
                         name:  eoip-home l2tp-***
        rx-packets-per-second:        684           1 257
           rx-bits-per-second:    7.3Mbps         7.6Mbps
     fp-rx-packets-per-second:          0               0
        fp-rx-bits-per-second:       0bps            0bps
          rx-drops-per-second:          0               0
         rx-errors-per-second:          0               0
        tx-packets-per-second:        555             555
           tx-bits-per-second:  873.1kbps       395.3kbps
     fp-tx-packets-per-second:          0               0
        fp-tx-bits-per-second:       0bps            0bps
          tx-drops-per-second:          0               0
    tx-queue-drops-per-second:          0               0
         tx-errors-per-second:          0               0

Speedtest pedig:

Nem lehetetlen az IPsec sem, még akkor sem, ha mindkét eszköz NAT mögött van, dinamikus IP-vel. Ehhez viszont kellett egy helper script, ami folyamatosan ellenőrzi a tűzfal címlistájából az éppen beeső kliens (road warrior esetén főleg fontos) source ip-jét, és dinamikusan létrehozza a megfelelő IPsec policykat. Persze nem állítom, hogy ez így biztonságos, mert minden próbálkozó automatikusan bekerül a policy listre, de a phase 2 negotiation már nem fog sikerülni. Illetve nem árt a policy list-et kitakarítani időnként.

Túl sok az overhead, és ez miatt töredezik a csomag. Ha jól emlékszem EOIP az +42byte az SSTP EOIP-vel meg >120byte overhead-et generál. Alapjáraton próbáld kisebb csomagokkal pl: 1400byte. Es ne féléjcsuk el sehogy TCP alapú tunelra húzol fel egy udp tunelt ahol szinten CPU erő kell . Esetleg SSTP helyett használj PPTP.

Itt van egy kis összehasonlítás : https://rickfreyconsulting.com/mikrotik-vpns/

Igen, sok helyen olvastam én is, hogy a BCP bridging jobb lenne. De nem voltam benne biztos, hogy működne akkor is, ha mindkét router CPE mögött van. A mostani EoIP over L2TP/IPsec setup jól működik, inkább nem nyúlok hozzá, főleg, hogy nem egyértelmű mivel nyújtana többet a BCP.