Perbedaan
antara UDP dan TCP adalah :
a.
Protokol TCP
TCP(
Transmission Control Protocol ) adalah salah satu jenis protokol transfer data.
TCP mempunyai karakteristik sebagai protokol yang berorientasi koneksi
(Connection oriented). Sebelum terjadi proses tranfer data, maka yang pertama
dilakukan adalah kedua belah pihak melakukan caal request dan call accept.
Protokol TCP menggunakan jalur data full duplex yang berarti antara kedua host
terdapat dua buah jalur, jalur masuk dan jalur keluar sehingga data dapat
dikirimkan secara simultan.
Sebuah circuit virtual
disiapkan sebelum packet-packet dikirimkan. Pada masing-masing packet terdapat
virual circuit identifier yang berisi alamat tujuan packet tersebut. Data yang
dikirimkan dalam sebuah protokol TCP maka akan diurutkan dengan sebuah nomor
urut dan akan mengharap packet positive acknowledgment. Apabila tidak ada
packet positive acknowledgment, maka packet akan dikirim ulang. Oleh karena
itu, protokol TCP reliable. Akan tetapi karena harus mengecek setiap packet
yang dikirmkan, maka protokol TCP relatif lambat. Pada TCP, hanya bisa
melakukan koneksi one-to-one dan tidak bisa melakukan koneksi one-to-many.
Karena rute-rute packet sudah ditentukan sebelumnya, maka akan lebih sulit bagi
jaringan untuk beradaptasi dengan kemacetan. Apabila sebuah simpul/node
mengalami kerusakan/kegagalan, maka seluruh virtual circuit yang melewati
simpul tersebut akan hilang.
b.Protokol
UDP
UDP (
User Datagram Protocol) adalah jenis transfer data yang lain dari TCP. UDP
mempunyai karateristik connectionless (tidak berbasis koneksi). Dengan kata
lain, data yang dikirimkan dalam bentuk packet tidak harus melakukan call setup
seperti pada TCP. Selain itu, data dalam protokol UDP akan dikirimkan sebagai
datagram tanpa adanya nomor identifier. Sehingga sangat besar sekali
kemungkinan data sampai tidak berurutan dan sangat mungkin hilang/rusak dalam
perjalananan dari host asal ke host tujuan. Tergantung pada host
penerima/tujuan, apakah akan meminta kembali pakcet yang rusak atau hilang.
Kelebihan
UDP adalah pada saat digunakan pada lightweight protokol, misalnya saja
DNS(Domain Name Service). Selain itu protokol UDP lebih fleksibel karena
misalnya saja terjadi kemacetan pada salah satu bagian jaringan, maka datagram
dapat dialihkan menghindari bagian yang mengalami kemacetan tersebut. Kemudian
apabila sebuah simpul(node) mengalami kerusakan/kegagalan, maka pacekt packet
berikutnya dapat menemukan jalan/rute pengganti yang melewati simpul tersebut.
1. UDP adalah “datagram-oriented”, sedangkan TCP adalah “session-oriented”. Datagram adalah paket informasi self-contained. UDP berhubungan dengan datagram atau paket individu yang dikirim dari client ke server dan atau sebaliknya.
1. UDP adalah “datagram-oriented”, sedangkan TCP adalah “session-oriented”. Datagram adalah paket informasi self-contained. UDP berhubungan dengan datagram atau paket individu yang dikirim dari client ke server dan atau sebaliknya.
2. UDP adalah
connection-less. Client tidak membangun koneksi ke server sebelum mengirim
data, client hanya mengirim data secara langsung.
3. UDP adalah protokol yang
tidak andal, dalam artian :
* Paket dapat hilang. UDP
tidak dapat mendeteksinya, sehingga pada program aplikasi client – server,
metode transmisi ulang dikarenakan data rusak atau hilang harus dilakukan pada
level aplikasi. Biasanya aplikasi menunggu hingga timeout habis, dan kemudian
mencoba lagi.
* Paket dapat mengalami
kerusakan. Paket UDP berisi checksum semua data dalam paket. Checksum ini
memungkinkan UDP mendeteksi kapan suatu paket mengalami kerusakan. Jika hal ini
terjadi, maka paket tersebut dikeluarkan, dan sebagaimana biasa aplikasilah
yang mendeteksi hal ini dan melakukan transmisi ulang seperlunya.
* Karena UDP adalah
datagram-oriented dan pada level protokol setiap paket berdiri sendiri, maka
UDP tidak memiliki konsep paket sesuai urutan, yang selanjutnya berarti tidak
memerlukan nomor urut pada paket tersebut.
* Karena UDP tidak memerlukan
mekanisme kontrol yang rumit, maka UDP dapat dianggap lebih mudah dan lebih
kecil ( dalam hal baris data dan memori ) untuk diimplementasikan. Namun hal
tersebut juga membuat UDP tidak cocok untuk sejumlah besar data.
Port
in UDP
Tidak ada perbedaan fungsi
yang signifikan antara port di UDP dan TCP. Seperti halnya TCP, port dalam UDP
menggunakan 16-bit integer, port – port yang bisa digunakan adalah antara 1
sampai 65535. Port – port yang digunakan dibagi menjadi 3 bagian yaitu
well-known port ( antara 1 – 1023), registered port ( 1024 – 49151 ) dan
ephemeral port ( 49152 – 65535 ).
Port
in TCP
Aplikasi client menggunakan nomor port untuk memberitahu mesin tujuan dan service TCP mana yang diinginkannya. Server untuk aplikasi tertentu menggunakan well-known port untuk mengetahui koneksi dari client yang meminta servicenya.
Aplikasi client menggunakan nomor port untuk memberitahu mesin tujuan dan service TCP mana yang diinginkannya. Server untuk aplikasi tertentu menggunakan well-known port untuk mengetahui koneksi dari client yang meminta servicenya.
Port – port yang digunakan
dalam transport layer menggunakan 16-bit integer (0 – 65535), dengan satu sama
lain harus berbeda (unique).
Pada saat client ingin
membangun koneksi dengan Server, client harus mengetahui port dari server yang
dituju dan protokol apa yang digunakan (UDP or TCP or SCTP).
Client di sisi sebaliknya,
umumnya menggunakan ephemeral port atau biasa disebut short-lived ports. Nomor
pada port ephemeral yang digunakan oleh client diberikan oleh Transport
Protocol. Client tidak perlu tahu nomor port ephemeral yang digunakan, yang
jelas semua port ephemeral yang digunakan pasti bersifat unique.
The Internet Assigned Numbers
Authority (IANA) telah mengelompokkan nomor – nomor port yang dibagi menjadi
tiga bagian :
1.
well-known ports: 0 – 1023. Pada range ini merupakan nomor – nomor port yang
telah digunakan oleh IANA. Contoh nya adalah Web server yang menggunakan port
80, FTP menggunakan 21 dll.
2. Registered ports: 1024 – 49252. Nomor – nomor port pada range ini tidak digunakan oleh IANA, IANA mengelompokkan port – port ini untuk dapat digunakan sebagai server untuk TCP atau UDP. Contohnya antara port 6000 sampai 6063 digunakan untuk X Windows server. Aplikasi yang kita gunakan juga bisa menggunakan port ini.
3. Private ports: 49152 – 65535. Nomor – nomor port pada range ini adalah ephemeral port. Namun tentu saja tidak menutup kemungkinan nilai ephemeral port mempunya nilai diluar range ini, hal tersebut bergantung juga dari Sistem Operasi yang digunakan.
2. Registered ports: 1024 – 49252. Nomor – nomor port pada range ini tidak digunakan oleh IANA, IANA mengelompokkan port – port ini untuk dapat digunakan sebagai server untuk TCP atau UDP. Contohnya antara port 6000 sampai 6063 digunakan untuk X Windows server. Aplikasi yang kita gunakan juga bisa menggunakan port ini.
3. Private ports: 49152 – 65535. Nomor – nomor port pada range ini adalah ephemeral port. Namun tentu saja tidak menutup kemungkinan nilai ephemeral port mempunya nilai diluar range ini, hal tersebut bergantung juga dari Sistem Operasi yang digunakan.
Jadi dapat disimpulkan bahwa
koneksi TCP memiliki 1 buah local ip address, local port number, foreign ip
address dan foreign port number.
Contoh aplikasi – aplikasi
yang menggunakan well-known port dan TCP sebagai transport layernya adalah :
SMTP, POP, e-mail IMAP, HTTP, telnet dll.
Tidak ada komentar:
Posting Komentar