IPSEC Site-To-Site VPN Slow

Hi,

I have an strange issue, When I download a file from internet I get the maximum speed of my ADSL connection (13Mbit) But when I download from my remote site using a IPSEC tunnel i only get 2-4Mbit per stream.
If I download via multiple streams every stream get 2-4Mbit and I can get the maximum speed.

The CPU is never close to maxed. Only 1-2%.

I have Path MTU enabled and also ECN on both sites. I have tried without also but the same result.

Anyone got an idea on what could be the cause of this?

Best Regards
Frank
  • Hi Frank

    Which Appliance do you use and which License?

    Michael
  • In reply to solae:

    Hi Solae

    Its a desktop machine with 4GB ram and an Intel i3 CPU. License is HOME.
    I have tried to set CPU governor to performance as well. Same result.

    Regards,
    Frank
  • Hi, try setting the VPN to UDP instead of TCP; you'll have to re-download the config file from the User Portal afterwards.

    Barry
  • In reply to BarryG:

    Hi BarryG,

    I was perhaps misleading. This is a site-to-site configuration. One is an UTM v9.108 and on my side 9.195

    The Encryption is AES256 and SHA512 with RSA 4096 bit key. We also use PFS group 16.

    I don't think this is a performance issue since non of the machines have any load what so ever. I disabled all QoS on both machines but to no avail.

    The funny part is that the first 10sec the speed is at max and then drops to 2-4mbit.
    To me this sounds like an buffer issue of some sort... but that is just a guess...

    Best Regards
    Frank
  • Are you using the http proxy? Try disabling it temporarily.

    Barry
  • Frank & Barry,

    I wonder if doing multiple streams works because the underlying StrongSWAN IPsec engine is capable of multi-threading.  Maybe the limiting factor for each thread is the speed of the processor.

    Also, what is the UTM on the other side?  Could that be the limiting factor?

    Interesting issue.  I hope d12fk or one of the other Sophos VPN developers sees this question.  Since you're running the beta, Frank, why not ask this over there where the devs are more likely to see it?

    Cheers - Bob
  • Hi Bob,


    top should show higher CPU usage if there's a CPU bottleneck.

    Even an early atom CPU can do 15mpbs or so with the SSL VPN, IPSec might be faster.

    Barry
  • In reply to BarryG:

    Hi Bob and Barry,

    Im not using the proxy for the transfers, I have tried that though but i usualy use FTP. I have added the networks in the skiplist for FTP proxy.
    FTP proxy logs shows no activity.

    Bob, 
    The UTM on the other side is an HP ProLiant DL360 G6 it has 6GB ram and an Intel(R) Xeon(R) CPU E5520  @ 2.27GHz (fam: 06, model: 1a, stepping: 05)
    So I have ruled out that one as the issue... [Sad]
    But I have checked and it is also not showing any performance issues. I did the same QoS and PMTU changes on that one as well.

    I did not post this in the Beta forum since I thought this was not an beta issue. But I might do that or if an moderator could be so kind to move it?


    Barry, This is the top output when I did an FTP transfer @ 260kb/sec

    Cpu(s):  0.8%us,  0.3%sy,  0.0%ni, 97.9%id,  0.8%wa,  0.0%hi,  0.3%si,  0.0%st
    Mem:   3852720k total,  3730396k used,   122324k free,     9324k buffers
    Swap:  1048572k total,   552844k used,   495728k free,  1289732k cached

      PID USER      PR  NI  VIRT  RES  SHR S   %CPU %MEM    TIME+  COMMAND                                                                                                                
     3322 snort     15  -5  554m 346m 1124 S      3  9.2  34:35.59 snort                                                                                                                  
    23895 root      20   0 74160  33m 3052 S      1  0.9   0:02.13 confd.plx                                                                                                              
    32744 afcd      19  -1 52152  15m 2956 S      1  0.4   1:23.78 afcd                                                                                                                   
     3944 root      20   0 11772 4212 2168 S      0  0.1  34:16.90 selfmonng.plx                                                                                                          
    10607 wwwrun    20   0 85596  81m 8152 S      0  2.2   0:37.81 webadmin.plx


    So from what I can tell there is no CPU load on the pluto process. The snort goes to around 10-22% when i max my download with the http-proxy. So I do not think this is the limiting factor as well. I have also set the scaling_governor to performance on all cores. Just to eliminate the snort issues with multicore.

    echo "performance" >/sys/devices/system/cpu/cpu0-3/cpufreq/scaling_governor


    Do you guys have any more ideas? Im running out of them [Sad]
    I have also tried to transfer using IPv4. (I usualy use IPv6) but the results are the same.

    is there any way to check the NIC or QoS buffers?

    Best Regards,
    Frank
  • In reply to BAlfson:

    Hi Bob,

    Nothing related to this in the logs at all Sad

    Regards,
    Frank
  • What happens if you disable snort with an exception?

    Cheers - Bob

    Sorry for any short responses.  Posted from my iPhone.
  • Stupid question. As you're talking about adsl...this means you have asynchronous bandwidths...usually uplink is 5-10 times slower than downstream.

    Is the remote uplink of your tunnel even able to deliver data faster than those 2...4Mbit you receive on the local site? This speed looks quite ok to me for a "normal" adsl uplink?

    Sorry for short answers and typos. was written on mobile using astaro.org app.
  • In reply to Sascha Paris:

    What happens if you disable snort with an exception?

    Cheers - Bob

    Sorry for any short responses.  Posted from my iPhone.

    No difference, did that and also for appcontrol.


    Stupid question. As you're talking about adsl...this means you have asynchronous bandwidths...usually uplink is 5-10 times slower than downstream.

    Is the remote uplink of your tunnel even able to deliver data faster than those 2...4Mbit you receive on the local site? This speed looks quite ok to me for a "normal" adsl uplink?

    Sorry for short answers and typos. was written on mobile using astaro.org app.

    My Connection is 24/3Mbit ADSL. My actual speed is 13-14/2-2,5Mbit
    The remote site is 15/10Mbit via Radio and that it is actual speed as well.

    Both connections can download at there max speed and upload at there max speed without issues when the IPSEC is not in use. 
    I can upload without issues to the remote site since I will not be able to send at 3-4Mbit.
    But when I download it stops... And the remote site can deliver more. This is just so obvious when i use multiple FTP transfers.

    The first say 10sec the file transfer is using the entire connection 10Mbit when I look in FileZilla but then drops to 3-4Mbit.

    I looked at the packtfilterlogs and I can not find any thing that is related. Im thinking more and more on this as an buffer issue? Is there any way to check this?

    Best Regards,
    Frank
  • Your idea makes sense, Frank.  Can you get your reseller to submit a ticket to Sophos Support?

    Cheers - Bob
  • In reply to BAlfson:

    Your idea makes sense, Frank.  Can you get your reseller to submit a ticket to Sophos Support?

    Cheers - Bob


    Hi Bob,

    We are both home users Embarrassed

    We are evaluation it at work at the moment for the WAF support. It will if successful replace our TMG infrastructure as reverse proxy.
    But I don't think it's fair to contact them regarding this.

    Is there any other things I can check? If there are buffer issues then is there an way to see this?
    In my Cisco switches i can see it on the interfaces.

    Best Regards
    Frank