This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Poor download/upload performance

Hi! New user here. 

I've recently installed UTM 9 Home (latest version) on my small box (Atom D2550, 4GB, 32GB SSD, Dual 1GB Broadcom BCM 57788 NICs). I had pfSense installed before, but decided to try Sophos. 

Anyway, after installation I noticed that my speed decreased quite a bit. My ISP is Comcast and I'm paying for a 50/10 line, but during speed tests with direct connection to a PC or through pfSense (same hardware) I was getting more like 120/12. 

With the Sophos installed now I'm getting 45/8.5, and this is with just Firewall protection. If I enable Web protection and IPS the speed is about 43/7.5. What the heck?

I ran top command in the terminal to check CPU load. When IPS is enabled I see that Snort uses 99% of one of the cores (being single-threaded I know that's the limiting factor for me with IPS on). However, without IPS during speed tests (firewall only) the CPU idle stays at about 90%, so the limiting factor doesn't seem to be any of the processes nor the CPU. 

I connected my modem directly to my PC and I was again getting the 120/12 speeds. I connected back to Sophos box and again slow speeds. I went as far as duplicating my PC's MAC address on the external NIC. Still the same slower speed. 

The interesting thing is that during the speedtest (speedtest.net) my download speed (with FW only) stays right at 45mbps, doesn't go above, just a straight line on the graph. As if something is "throttling" the speed. I checked my QoS and no throttling there (I had it there for VoIP QoS, but disabled it). 

I'm out of ideas here. Either something in the Sophos software stack is limiting the speed or something is up with my NICs (but I had pfSense installed on the same exact hardware and was getting the 110/12 speeds, and that's with snort ON, maxing out 1 core).

Any help would be appreciated!

Thanks a lot!


This thread was automatically locked due to age.
Parents
  • Some Questions to better understand the different types of lookups for learning purpose.

    1) SXL = Cloud Lookup with Local Cache.
            So If I browse CNN - it checks CNN = News and Display the site.
            It also Caches this locally and therefore subsequent users browsing CNN would check Locally thus faster and Display.
        
    But what is CNN is Hacked and is Serving Malicious Files for whatsoever reason, how long does it take for the Local Cache to Expire and it would lookup in the cloud to confirm now it should be block as Malicious ?

    2) Assuming I did not read this post and simply stays with
    cc get http sc_local_db_= DISK (Typed manually in putty)
    cc get http use_sxl_urid = 1 (Because Endpoint Protection is Enabled and not typed in putty)

    How does the lookup behave in such scenario whereby there is a Local DB and the SXL is 1 which I think means True thus is Enabled?

    3) I read that SXL is the Best Option and would be the way going forward. 
        In what way would Looking up in the cloud, even with local cache be Faster than entire Local DB Cache. It is just about 400MB. Even if Ram is insufficient, loading it to Disk is still faster then lookup in the cloud right?

    I am confused whereby it seems Local DB Cache seems to be the fastest but SXL is the way going forward.

    If SXL is definitely the Best, where is Local DB Cache option available even if it is not officially supported. For all these features to be available even if it is not officially supported it still need code from the developers for it to work thus there must be a reason why such option is there.

    4) Assuming I simply stick to my Local DB Settings.
    cc get http sc_local_db_= DISK (Typed manually in putty)
    cc get http use_sxl_urid = 1 (Because Endpoint Protection is Enabled and not typed in putty)

    How would it Behave when Upgrade to 9.3 whereby SXL is the default.
    It would Overwrite and change to the following by force ? 
    cc get http sc_local_db_= NONE 
    cc get http use_sxl_urid = 1

    5) Is this CFFS and SXL looking at the SAME Database or they are 2 separate Database?

    6) Is SOPHOS still using McAfee Database or now it is using some other database?

    Once again, thank you all for the help, so happy that I happen to see this post and realized there is this SXL.
  • Some Questions to better understand the different types of lookups for learning purpose.

    1) SXL = Cloud Lookup with Local Cache.
            So If I browse CNN - it checks CNN = News and Display the site.
            It also Caches this locally and therefore subsequent users browsing CNN would check Locally thus faster and Display.
        
    But what is CNN is Hacked and is Serving Malicious Files for whatsoever reason, how long does it take for the Local Cache to Expire and it would lookup in the cloud to confirm now it should be block as Malicious ?

    2) Assuming I did not read this post and simply stays with
    cc get http sc_local_db_= DISK (Typed manually in putty)
    cc get http use_sxl_urid = 1 (Because Endpoint Protection is Enabled and not typed in putty)

    How does the lookup behave in such scenario whereby there is a Local DB and the SXL is 1 which I think means True thus is Enabled?

    3) I read that SXL is the Best Option and would be the way going forward. 
        In what way would Looking up in the cloud, even with local cache be Faster than entire Local DB Cache. It is just about 400MB. Even if Ram is insufficient, loading it to Disk is still faster then lookup in the cloud right?

    I am confused whereby it seems Local DB Cache seems to be the fastest but SXL is the way going forward.

    If SXL is definitely the Best, where is Local DB Cache option available even if it is not officially supported. For all these features to be available even if it is not officially supported it still need code from the developers for it to work thus there must be a reason why such option is there.

    4) Assuming I simply stick to my Local DB Settings.
    cc get http sc_local_db_= DISK (Typed manually in putty)
    cc get http use_sxl_urid = 1 (Because Endpoint Protection is Enabled and not typed in putty)

    How would it Behave when Upgrade to 9.3 whereby SXL is the default.
    It would Overwrite and change to the following by force ? 
    cc get http sc_local_db_= NONE 
    cc get http use_sxl_urid = 1

    5) Is this CFFS and SXL looking at the SAME Database or they are 2 separate Database?

    6) Is SOPHOS still using McAfee Database or now it is using some other database?

    Once again, thank you all for the help, so happy that I happen to see this post and realized there is this SXL.

    The local mem cache was a hidden fix for performance issues caused by the older cff system.  Instead of having to wait for the lookups when cff was having response errors that option was a hidden option meant to be temporarily available until something like sxl was able to be brought online.  sxl is a highly distributed cloud based looup database that is based on Amazon EC2 IIRC.  If an sxl server gets highly sloded another copy of that database is automatically fired up and added to the pool to spread the load of lookups out and prevent performance problems.  So far i have not seen nay issues related to the sxl system..i HAVE seen performance issues caused by utm misconfigurations, overloaded utm, overloaded wan links, connectivity issues between the client and the nearest sxl cluster...etc etc.  

    The Macafee system is still employed AFAIK.

    it is not caching the site content it is caching the database lookups.  The site content(unless you enable caching on the proxy area) is pulled with each user..therefore it is scanned by whatever features you have setup.  I do not recommend enabling the content caching not only for the security reasons above but also most sites now generate the page you see on the fly anyway...very little is static so caching is marginally effective at best.

    I don't know if sxl is enabled automatically upon upgrade to 9.3 as i switched to sxl once i heard about that feature..[:)]
Reply
  • Some Questions to better understand the different types of lookups for learning purpose.

    1) SXL = Cloud Lookup with Local Cache.
            So If I browse CNN - it checks CNN = News and Display the site.
            It also Caches this locally and therefore subsequent users browsing CNN would check Locally thus faster and Display.
        
    But what is CNN is Hacked and is Serving Malicious Files for whatsoever reason, how long does it take for the Local Cache to Expire and it would lookup in the cloud to confirm now it should be block as Malicious ?

    2) Assuming I did not read this post and simply stays with
    cc get http sc_local_db_= DISK (Typed manually in putty)
    cc get http use_sxl_urid = 1 (Because Endpoint Protection is Enabled and not typed in putty)

    How does the lookup behave in such scenario whereby there is a Local DB and the SXL is 1 which I think means True thus is Enabled?

    3) I read that SXL is the Best Option and would be the way going forward. 
        In what way would Looking up in the cloud, even with local cache be Faster than entire Local DB Cache. It is just about 400MB. Even if Ram is insufficient, loading it to Disk is still faster then lookup in the cloud right?

    I am confused whereby it seems Local DB Cache seems to be the fastest but SXL is the way going forward.

    If SXL is definitely the Best, where is Local DB Cache option available even if it is not officially supported. For all these features to be available even if it is not officially supported it still need code from the developers for it to work thus there must be a reason why such option is there.

    4) Assuming I simply stick to my Local DB Settings.
    cc get http sc_local_db_= DISK (Typed manually in putty)
    cc get http use_sxl_urid = 1 (Because Endpoint Protection is Enabled and not typed in putty)

    How would it Behave when Upgrade to 9.3 whereby SXL is the default.
    It would Overwrite and change to the following by force ? 
    cc get http sc_local_db_= NONE 
    cc get http use_sxl_urid = 1

    5) Is this CFFS and SXL looking at the SAME Database or they are 2 separate Database?

    6) Is SOPHOS still using McAfee Database or now it is using some other database?

    Once again, thank you all for the help, so happy that I happen to see this post and realized there is this SXL.

    The local mem cache was a hidden fix for performance issues caused by the older cff system.  Instead of having to wait for the lookups when cff was having response errors that option was a hidden option meant to be temporarily available until something like sxl was able to be brought online.  sxl is a highly distributed cloud based looup database that is based on Amazon EC2 IIRC.  If an sxl server gets highly sloded another copy of that database is automatically fired up and added to the pool to spread the load of lookups out and prevent performance problems.  So far i have not seen nay issues related to the sxl system..i HAVE seen performance issues caused by utm misconfigurations, overloaded utm, overloaded wan links, connectivity issues between the client and the nearest sxl cluster...etc etc.  

    The Macafee system is still employed AFAIK.

    it is not caching the site content it is caching the database lookups.  The site content(unless you enable caching on the proxy area) is pulled with each user..therefore it is scanned by whatever features you have setup.  I do not recommend enabling the content caching not only for the security reasons above but also most sites now generate the page you see on the fly anyway...very little is static so caching is marginally effective at best.

    I don't know if sxl is enabled automatically upon upgrade to 9.3 as i switched to sxl once i heard about that feature..[:)]
Children
No Data