您的 IP 地址: 未知 · 您当前的状态: 受保护未受保护的未知
博客 How-To

What is TCP and UDP? A simple explanation

Whether your data is transferred quickly and in full depends on which network protocols you use, UDP or TCP. They both do the same job but in different ways. One is more reliable and the other one is faster. Find out which one you need below.

Anna Rasmussen

Anna Rasmussen

Dec 06, 2021 · 4 min read

What is TCP and UDP? A simple explanation

What is TCP?

TCP (Transmission Control Protocol) is a network protocol that transfers your data over the internet from your device to a web server. You use the TCP protocol whenever you chat to your friends on Skype, send emails, watch online videos, or simply browse the web.

TCP is connection-based, so it establishes a connection between the receiver and sender and maintains it while transferring data. It guarantees that the data arrives completely intact. Because of its reliability, TCP is the most popular network protocol.

What is UDP?

UDP (User Datagram Protocol) is another widely used network protocol. It is less reliable, but faster and more straightforward. It’s often used in situations where higher speeds are crucial, like in streaming or gaming.

UDP is connectionless, so it doesn’t establish a prior connection between two parties. So, some data might be lost along the way, but in return you’ll have much higher speeds.

How TCP and UDP work

TCP is more reliable than UDP. It transfers your data packets from your device to a web server. UDP is faster and simpler, but it doesn’t guarantee the delivery of packets.

Here’s what it does to send your data:

  1. TCP assigns each data packet a unique identifier and a sequence number. This lets the receiver identify which packet was received and which one is arriving next.
  2. Once the data packet is received, and if it’s in the correct order, the receiver sends an acknowledgement to the sender.
  3. The sender can now send another packet.
  4. If the packet is lost or sent in the wrong order the receiver stays silent, indicating that the same data packet needs to be resent.
How TCP works

Because the data is sent in sequence, it helps with data congestion and flow control, and makes it easier to spot and fix any errors. This also means that data sent over TCP is more likely to reach its destination in full. However, it has a downside. There’s a lot of back and forth communication between the two parties so it takes longer to establish a connection and exchange data.

UDP completes the same job without the need of unique identifiers or sequence numbers. It sends data in a stream and only has a checksum to ensure that the data arrived uncorrupted. UDP has almost no error correction, nor does it care about lost packets. It’s more error prone, but it sends data much faster than TCP.

How UDP works

Is UDP secure? It’s almost impossible to set up a firewall allowing only some UDP communications and blocking the rest. However, while it is much easier to secure TCP, UDP connections are not left entirely unprotected. Users can employ proxies for particular applications or establish a tunnel connection between the remote user and the company’s inside network.

What is the main difference between TCP and UDP?

The main difference between these protocols is that TCP is a connection-oriented protocol, while UDP is a connectionless one. Each of the protocols has its strengths and weaknesses. One is much faster, while the other is safer. Here’s how they compare side by side:

TCPUDP
ReliabilityHighLower
SpeedLowerHigh
Transfer methodPackets are delivered in a sequencePackets are delivered in a stream
Error detection and correctionYesNo
Congestion controlYesNo
AcknowledgementYesOnly the checksum

Both UDP and TCP divide your data into smaller units called data packets. These include the sender’s and receiver’s IPs, various configurations, the actual data you are sending, and the trailer — the data that indicates the end of the packet.

So, which is better — UDP or TCP? Like in all such cases, it all depends on what you use them for. If you need a fast and constant data transmission for an application to work properly, you will have to use UDP. Otherwise, TCP is a stable and reliable protocol for transferring data and not losing any of it along the way.

TCP vs UDP: Speed differences

UDP is faster than TCP but is also more error-prone. The reason is that UDP doesn’t use such an acute checking of packets as TCP and employs a more continuous data flow. TCP sends its data in sequence, so it uses more flow control. It makes the connection safer and smoother but reduces speed due to a lot of back-and-forth communication between the sender and receiver.

OpenVPN: TCP vs. UDP

Are the UDP and TCP protocols compatible with VPN services? Yes. They both work with OpenVPN, an open-source VPN protocol used by many leading VPN providers, including NordVPN. OpenVPN runs on both network protocols and they both provide privacy and security. Which one to choose depends on what you’re using your VPN for. TCP is more reliable, so you may think that TCP is the best option, but there are times when UDP might be preferred.

UDP is a great option if you are gaming, streaming or using VoIP services. It may lose a packet or two but it won’t have a huge impact on your overall connection. Using TCP for such services might cause lag (especially if you’re connected to servers on the other side of the world), which can completely ruin your experience. Therefore, OpenVPN via TCP is recommended for static uses such as emailing, web browsing and file transfer.

Which protocol does NordVPN use?

NordVPN wants to provide the best browsing experience without compromising on speed, so we use the UDP protocol by default. We recommend trying the UDP protocol first and only switching to TCP if you experience any issues.

To change UDP to TCP on NordVPN (for Windows users):

  1. Go to Settings by clicking on a gear icon in the top right-hand corner;
  2. Select Advanced from the menu on the left-hand side;
  3. Under Protocol choose TCP.

To change UDP to TCP on NordVPN (for MacOS users):

  1. Open the Preferences panel by clicking on the slider button in the upper left-hand corner or finding NordVPN on your menu bar and selecting Preferences (default hotkey: Cmd + ,).
  2. Connection: Prefer UDP over TCP will be on by default. Click on the checkbox to turn it off.

If your speed has dropped, you can also try a few tricks to boost your VPN speed.