Tujuan utama dari protocol TCP dan UDP adalah untuk melindungi 3 layer paling atas dari OSI yang agar terhindar dari kompleksitas yang terjadi pada network layer. Setelah data diterima dari layer di atasnya maka protocol TCP dan UDP yang berada di Layer 4 Transport OSI layer menjalankan proses yang akan mengatur bagaimana data-data tersebut bisa terkirim.

Proses pengaturan data pada layer transport diatur dengan menggunakan dua jenis protocol, yaitu:
1.    Transmission Control Protocol atau TCP, dan
2.    User Datagram Protocol atau UDP.

Secara kelebihan dan kekurangan, protocol TCP dan UDP tidak bisa dibilang TCP mutlak lebih baik dari UDP,  dengan mengetahui apa dan bagaimana kehandalan dari dua protocol ini, barulah bisa kita tentukan mana protocol yang tepat dalam penerapannya, berikut ini adalah fakta-fakta yang harus dipahami terkait TCP dan UDP.

1.    Proses transfer data yang dilakukan dengan menggunakan protocol TCP lebih banyak tahapannya dibanding dengan UDP. 
a.    Mula-mula data dari layer atas dipecah-pecah menjadi segment dan kemudian segment-segment tersebut diberi nomor urut dan dikirimkan sesuai dengan urutannya.
b.    Setelah terkirim protocol TCP kemudian mengecek acknowledgement yang dari tujuan data tersebut. Berdasarkan informasi dari acknowledgement maka diputuskan bahwa perlu atau tidaknya dilakukan pengiriman ulang data.
c.    Pada TCP, setiap kali pengiriman harus dilakukan pengecekan dan konfirmasi, baik di sisi pengiriman maupun penerima

Tahapan-tahapan ini membuat proses pengiriman menjadi lebih lama namun handal, setiap data yang kurang karena hilang atau rusak selama proses pengiriman akan dikirim ulang.

2.    Pada UDP, proses transfer datanya tidak serumit TCP, pada UDP tidak ada proses pengecekan ulang dan pengiriman ulang jika ada kerusakan atau ketidaklengkapan data.
a.    Dengan menggunakan protocol UDP data proses pengiriman data menjadi lebih cepat dibanding pada TCP.
b.    UDP tidak member nomor urut kepada segment-segment.
c.    Protocol UDP tidak mempedulikan seperti apa urutan segment2 yang ada diterima oleh penerima.
d.    UDP tidak melakukan proses atau tahapan-tahapan dalam melakukan transfer seperti yang dilakukan oleh TCP. 
e.    Data yang hilang atau rusak tidak dikirimkan kembali kepada penerimannya.
f.    Jika ada bagian dari data yang hilang atau rusak maka data tersebut atau diproses oleh Layer Aplikasi seperti apa adanya.

Kesimpulan
A.    Protocol TCP sangat handal dalam mengirimkan data, setiap proses pengiriman selalu dilakukan pengecekan dan pengiriman ulang seandainya jika ada bagian data yang rusak atau hilang. Akan tetapi dari sisi kecepatan TCP menjadi lebih lambat karena proses pengiriman dilakukan melalui tahapan-tahapan yang rumit dan kompleks serta memakan waktu.

Pemakain protocol TCP lebih digunakan untuk mengrimkan data yang membutuhkan akurasi yang tinggi dan handal dalam mengatasi masalah kelengkapan data jika terjadi kerusakan atau kehilangan data  selama proses transfer.

Misalnya saat kita melakukan download file dari internet maka protocol yang digunakan adalah protocol TCP dengan port HTTP 80 dan bisa juga port FTP 21.  Jika terjadi masalah, misalnya karena koneksi terputus, pada saat koneksi kembali tersambung maka proses download kembali tersambung tanpa harus mulai dari awal.

B.    Pada protocol UDP proses pengiriman data berlangsung tanpa melalui rangkaian proses yang kompleks. Data yang diterima oleh penerima biasanya langsung diproses oleh layer aplikasi tanpa mempedulikan data tersebut lengkap atau tidak, urutannya sudah sesuai atau belum.

Misalnya saat melakukan video konferensi, ketika terjadi ganguan koneksi maka gambar pada layar ditampilkan apa adanya ( kondisinya rusak, bergaris atau tidak beraturan ). Setelah koneksi stabil kembali tampilan video atau gambar tidak diulangi lagi bagian gambar yang mengalami kerusakan tetapi yang ditampilkan adalah tampilan gambar yang pada saat itu tertangkap oleh kamera.

C.    Pemakaian TCP dan UDP bergantung pada kebutuhan aplikasi terhadap tinggkat akurasi dan kehandalan serta kecepatan proses data transmisi data. Jika yang dibutuhkan atau diprioritaskan adalah kecepatan maka protocol UDP adalah pilihan yang tepat, namun jika dibutuhkan kehandalan dan akurasi data yang tinggi antara yang dikirim dan diterima maka protocol TCP adalah pilihan yang tepat.

Salam
Sumber gambar: http://www.flickr.com/photos/good_day/111551078/