TCP v UDP

TCP – Transfer Control Protocol
a.Reliable
b.Connection oriented
c.Acknowledgement

TCP is a connection-oriented protocol a connection can be made from client to server and from then on any data can be sent along that connection.

  • Reliable – when you send a message along a TCP socket you know it will get there unless the connection fails completely. If it gets lost along the way the server will re-request the lost part. This means complete integrity things don’t get corrupted.
  • Ordered – if you send two messages along a connection one after the other you know the first message will get there first. You don’t have to worry about data arriving in the wrong order.
  • Heavyweight – when the low level parts of the TCP stream arrive in the wrong order resend requests have to be sent and all the out of sequence parts have to be put back together so requires a bit of work to piece together.

UDP – User Datagram Protocol
a.Non Reliable
b.Connectionless
c.No Acknowledgement

A simpler message-based connectionless protocol. With UDP you send messages(packets) across the network in chunks.

  • Unreliable – When you send a message you don’t know if it’ll get there it could get lost on the way.
  • Not ordered – If you send two messages out you don’t know what order they’ll arrive in.
  • Lightweight – No ordering of messages no tracking connections etc. It’s just fire and forget! This means it’s a lot quicker and the network card / OS have to do very little work to translate the data back from the packets.
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s