I setup an OpenVPN tunnel between two hosts with 50Mbit/s connection. If I test the speed of the endpoints, it's give the 50Mbit speed exactly. But when I do the same over OpenVPN connection, it's limited to 20MBit/s.

Meanwhile the VPN servers (both are rackable servers with high performance) has no significant performance issue. Under 10% CPU usage always.

What would be that setting on OpenVPN what can cause that ?

3 Answers 3


How are you measuring throughput?

OpenVPN only adds 69 bytes of overhead, which is less than 5% on a 1431 byte packet.

One troubleshooting step may be to see if your clients/servers are trying to send 1500 byte packets that get fragmented, which will severely degrade performance.

  • 2
    right on point. if you're sending 1500-byte packets, each one is being split and sent as two packets, dropping performance precipitously.
    – Javier
    Mar 21, 2011 at 19:03
  • A test the network speed with speedtest.net site, and with iperf. I will chech the package fragmentation, maybe this cause the problem.
    – Glendyr
    Mar 24, 2011 at 5:12

Be sure you're using "proto udp" as tcp in tcp is known to be problematic.

Compare the throughput numbers for UDP versus TCP transport here.


I don't think you should expect the same speed in a VPN tunnel. Since the packets have to be encrypted and decrypted it does cause some overhead.

I'm not sure if that could explain a 30Mbps drop but that can explain why you don't have 50Mbps.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.