Return to protonvpn.com Facebook   Twitter   Reddit   Instagram   Mastodon   ProtonMail
Support Center / Troubleshooting / Smart protocol selection and how to manually select UDP or TCP

Smart protocol selection and how to manually select UDP or TCP

The ProtonVPN Windows app and our Linux command line tool allow you to use two different transmission protocols depending on your situation. This article explains when to use each protocol and how to switch between them.

ProtonVPN uses the OpenVPN VPN protocol, which supports the Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP). These two protocols determine how the packets of data that make up your online traffic are sent from your device to the VPN server.

There are several technical differences between UDP and TCP, but, broadly speaking, UDP supports faster connections while TCP supports more stable connections and is harder for governments or network administrators to block. The Linux command line tool uses the UDP protocol by default, while the Windows app uses auto protocol selection. Unless you have a reason to change protocols, we recommend you leave the default settings alone.

Learn more: What’s the difference between UDP and TCP?

Use UDP if:

  • Your online activity requires a fast connection, like streaming films, playing video games, or sharing files over a P2P network.

Use TCP if:

  • You are in an area with a weak or unreliable WiFi signal. 
  • You are on a network that you suspect blocks VPNs (e.g., a country where the Internet is censored, a university WiFi network, etc.). 

Smart protocol selection

For versions 1.9.2 and later, the default protocol option for the ProtonVPN Windows app is smart protocol selection. When this feature is enabled, the ProtonVPN app first attempts to connect using UDP. If the app detects that your connection is blocked, it will automatically switch from UDP to TCP and try to connect again. The app also automatically scans the network to discover and use the port that offers the best performance.

Changing protocols manually

If you would like to change VPN protocols, please follow these steps:

  1. Open the ProtonVPN app
  2. Go to Settings

  3. Locate ‘Default protocol 

  4. Select the preferred VPN protocol you would like to use to connect 
  5. That is it! Now you will connect to the VPN using your preferred protocol.

 

Related questions

Does ProtonVPN store user information?

Unable to connect

How to change country/server selection?

Post Comment

13 comments

  1. Kris

    This option for TCP is not available in the most recent version as of today Version 1.3.0 (686) for Mac or Version 1.3.2 on Android. Please advise. TCP should be the default on mobile due to poor network provider connections.

  2. ProtonVPN Team

    Hello Kris. Only windows application supports TCP/UDP switching since all other applications of ours are running IKEv2 which does not have that option.

  3. Niklas

    Where is this option for IOS and MacOS? I can´t find any option to change protocols anywhere.

  4. ProtonVPN Team

    Hello. iOS and MacOS uses IKEv2 which has no option to change the protocol version by its nature.

  5. Alessandro Tagliapietra

    Where is this setting on the OSX app?

  6. ProtonVPN Team

    Hello. Make sure that you have our application open, then left side on the tool bar click on ProtonVPN -> Preferences.

  7. Joeffel

    Then how come the Android client uses IKEv2 instead of OpenVPN?

  8. ProtonVPN Team

    Hello Joeffel. For our standards, IKEv2 seems to be faster than openvpn protocol while holding strong encryption and its easier for us to built a VPN application on it. That is why the IKEv2 was chosen for the Android application. OpenVPN version might come in the future, but for now we do not have plans for it as iOS application is our main priority.

  9. Noc

    Doesn’t work in China. The Great Firewall automatically detects standard OpenVPN protocols, so connections get immediately throttled or reset. Please develop a non-standard protocol to obfuscate the connection. The option to manually change ports would also be helpful.

  10. ProtonVPN

    we’ll be adding additional obfuscation technologies in the future, they’re on the (long) todo list

  11. feafa

    Add SSL tunneling to VPN cout.

  12. David Koch

    1. Initially I had to look up “how to log in” because I either missed it, or the instruction to enter full ProtonMail log-in including @protonmail.com was not present.
    2. I still cannot find information about “Profile” and what I can use it for.
    3. Secure Core does slow things down a bit, such as logging into ProtonMail, but speed when SC is off is very good.
    4. So far, your new VPN has operated in a way my current VPN does, so I feel comfortable with it and with the features you’ve included. Good job!

  13. vic

    yes great job

Leave a Reply

Your email address will not be published. Required fields are marked *

Don't find your answer? We're happy to help you!     Contact Our Support Team

Secure Your Internet Today

Get ProtonVPN