(Sumber asli : http://itpro.nikkeibp.co.jp)
Transmission Control Protocol (TCP)
TCP (Transmission Control Protocol) adalah salah satu jenis protokol yang memungkinkan kumpulan komputer untuk berkomunikasi dan bertukar data didalam suatu network (jaringan). Jika Anda pernah menggunakan socket TCP, maka Anda akan tahu bahwa itu adalah protokol berbasis sambungan yang andal. Ini berarti bahwa Anda membuat hubungan antara dua mesin, maka Anda mengirim data antara dua komputer seperti Anda menulis ke file di satu sisi, dan membaca dari sebuah file di sisi lain.
Koneksi ini dapat diandalkan dan memerintahkan, yang berarti bahwa semua data yang Anda kirim dijamin untuk tiba di sisi lain dalam urutan yang sama bahwa Anda menulisnya. Yang juga aliran data, yang berarti bahwa TCP menangani pemecahan up data Anda ke dalam paket-paket dan mengirim mereka di seluruh jaringan untuk Anda.
Q : Aplikasi apa yang menggunakan Protokol TCP ?
A : Ada banyak sekali aplikasi yang menggunakan protokol TCP karena koneksianya yang handal, salah satu diantaranya adalah File Transfer Protocol (FTP). File Transfer Protocol membutuhkan sebuah pengatur jaringan yang mampu memberikan informasi mengenai kegagalan paket ataupun kegagalan koneksi, maka dari itu FTP menggunakan TCP. beberapa diantaranya yang menggunakan TCP adalah SMTP dan TELNET.
User Datagram Protocol (UDP)
UDP ( User Datagram Protocol ) adalah transport layer yang tidak handal (unreliable), connectionless dan merupakan kebalikan dari transport layer TCP. Dengan menggunakan UDP, setiap aplikasi socket dapat mengirimkan paket – paket yang berupa datagram. Istilah datagram diperuntukkan terhadap paket dengan koneksi yang tidak handal ( unreliable service ). Koneksi yang handal selalu memberikan keterangan apabila pengiriman data gagal, sedangkan koneksi yang tidak handal tidak akan mengirimkan keterangan meski pengiriman data gagal.
Dengan UDP kita dapat mengirim paket ke alamat IP tujuan (misalnya. 112.140.20.10) dan port (mengatakan 52.423), dan akan mendapatkan diteruskan dari komputer ke komputer sampai tiba di komputer tujuan atau hilang di sepanjang jalan. Pada sisi penerima, kami hanya duduk di sana mendengarkan pada port tertentu (misalnya. 52.423) dan ketika sebuah paket tiba dari komputer manapun (ingat tidak ada koneksi!), Kami mendapatkan pemberitahuan dari alamat dan port dari komputer yang mengirim paket, ukuran paket, dan dapat membaca data paket. kebanyakan paket yang dikirim akan melewati, tapi biasanya Anda akan memiliki sekitar 1-5% packet loss, dan kadang-kadang Anda akan mendapatkan periode di mana tidak ada paket melewati sama sekali (ingat bahwa ada banyak komputer antara Anda dan tujuan Anda di mana hal-hal yang bisa salah)
Q : Apa Aplikasi yang menggunakan protokol UDP ?
A :Meskipun UDP adalah protkol yang tidak dapat diandalkan (Unreliable Service) tapi masih banyak aplikasi yang membutuhkan UDP, bukan karena bagus atau semacamnya, melainkan dalam hal efektif terdapat beberapa aplikasi yang menganggap protokol UDP efektif dibandingkan TCP. salah satunya adalah Game Online.
Q : Kenapa Game Online memakai protokol UDP ?
A : Alasan kenapa Game Online menggunakan protokol UDP karena masalah koneksi dan banyaknya jumlah pengguna yang membutuhkan pelayanan. Pernahkan anda memikirkan saat kita bermain Game Online koneksinya kadang terasa cepat dan kadang terasa sangat lambat. Itu karena paket yang dikirim dari pengguna ke server Game Online dikirim terus meneurs tak peduli apakah paket itu sampai, itulah kenapa terkadang koneksinya lambat yang diakibatkan paket yang hilang ditengah jalan karena tidak adanya notifikasi yang dikirim tiap pengirim paket atau bahkan jika paket berhenti dikirmkan karena alasan koneksi putus maka Game akan secara langsung menutup tanpa mengunggu koneksi stabil kembali. Namun, kelebihan dengan menggunakan UDP adalah kita tidak harus menunggu lama untuk bermain, dikarenakan tidak diperlukan menunggu hingga semua paket sampai . Bayangkan saja jika Game Online menggunakan protokol TCP, maka kita harus mengunggu (loading) yang sangat lama karena harus dipastikan terlebih dahulu apakah semua paket dari server ke pengguna sudah sampai, bagaimana jika kita bermain game online yang mengirim dengan paket yang berjumlah besar ? Maka akan membuat pengguna akan lebih memilih untuk berhenti bermain.
Perbedaan TCP dan UDP
kita menggunakan TCP atau UDP ?
Mari kita melihat sifat-sifat masing-masing:
TCP:
- Koneksi berbasis
- Dijamin handal dan memerintahkan
- Secara otomatis memecah data menjadi paket-paket untuk Anda
- Membuat yakin itu tidak mengirim data terlalu cepat untuk koneksi internet untuk menangani (flow control)
- Mudah digunakan, Anda hanya membaca dan menulis data seperti yang file
UDP:
- Tidak ada konsep koneksi, Anda harus kode ini sendiri
- Tidak ada jaminan keandalan atau memesan paket, mereka mungkin tiba rusak, digandakan, atau tidak datang sama sekali!
- Anda harus secara manual memecah data Anda menjadi paket-paket dan mengirimkannya
- Anda harus memastikan bahwa Anda tidak mengirim data terlalu cepat untuk koneksi internet Anda untuk menangani
- Jika paket hilang, Anda perlu memikirkan beberapa cara untuk mendeteksi ini, dan mengirim ulang data jika diperlukan
Menggunakan TCP adalah kesalahan terburuk yang mungkin Anda dapat membuat ketika mengembangkan aksi permainan jaringan seperti FPS Untuk memahami mengapa, Anda perlu melihat apa TCP benar-benar melakukan di atas IP untuk membuat segalanya tampak begitu sederhana.
Bagaimana dengan video streaming ?
Dari hasil perbandingan TCP dan UDP dapat dipastikan bahwa TCP memang sangat handal dan sangat direkomendasikan. Namun, bagaimana dengan video streaming ? apakah streaming video menggunakan protokol TCP atau UDP ?. dari definisi protokol TCP dan UDP, dapat kita simpulkan bahwa video streaming sudah pasti menggunakan protokol UDP. Mengapa ? sesuai dengan penjelasan dari UDP, kita tidak harus menunggu semua paket sampai. lebih simpelnya kita tidak harus menunggu video yang kita akan nonton telah terdownload secara keseluruhan baru kita menontonnya, cara kerjanya adalah kita menonton sambil menerima paket sedikit demi sedikit seiring berjalannya koneksi internet. jika koneksi terputus maka paket akan berhenti dikirimkan, dan jika video yang kita tonton sudah berada pada akhir paket maka video akan buffering atau bahkan harus mengulang dari awal lagi.
Q : Bisakah Video Streaming menggunakan TCP ?
A : jawabannya adalah bisa, namun sebuah hal yang bodoh jika kita harus menunggu semua paket diterima oleh pengguna untuk menontonnya. itu sama saja kita mendownload sebuah video, menontonnya, kemudian menghapusnya begitu saja.
Dari pembahasan postingan ini, dapat kita simpulkan bahwa protokol TCP dan UDP memiliki kelebihan masing - masing. Bukan berarti kita harus memilih TCP daripada UDP, kita harus memperhatikan keefektifan dalam penggunaannya.
Sumber :
mantap mudah dipahami
BalasHapus