UDP: UDP ( (User Datagram Protocol) adalah
protokol yang bersifat connectionless, dan bersifat kebalikan dari TCP yang
berorientasi connection. UDP merujuk kepada paket data yang tidak menyediakan
keterangan mengenai alamat asalnya saat paket data tersebut diterima. Protokol
UDP ini cukup simpel sehingga untuk tujuan tertentu, bisa membantu penyelesain
tumpukan protokol TCP/IP. UDP (User Datagram Protocol) adalah salah satu
protokol lapisan transpor TCP/IP yang mendukung komunikasi yang tidak andal
(unreliable), tanpa koneksi (connectionless) antara host-host dalam jaringan
yang menggunakan TCP/IP.
UDP memiliki
karakteristik-karakteristik berikut:
- Connectionless
(tanpa koneksi): Pesan-pesan UDP akan dikirimkan tanpa harus dilakukan proses
negosiasi koneksi antara dua host yang hendak berukar informasi.
- Unreliable
(tidak andal): Pesan-pesan UDP akan dikirimkan sebagai datagram tanpa adanya
nomor urut atau pesan acknowledgment. Protokol lapisan aplikasi yang berjalan
di atas UDP harus melakukan pemulihan terhadap pesan-pesan yang hilang selama
transmisi. Umumnya, protokol lapisan aplikasi yang berjalan di atas UDP
mengimplementasikan layanan keandalan mereka masing-masing, atau mengirim pesan
secara periodik atau dengan menggunakan waktu yang telah didefinisikan.
- UDP
menyediakan mekanisme untuk mengirim pesan-pesan ke sebuah protokol lapisan
aplikasi atau proses tertentu di dalam sebuah host dalam jaringan yang
menggunakan TCP/IP. Header UDP berisi field Source Process Identification dan
Destination Process Identification.
- UDP
menyediakan penghitungan checksum berukuran 16-bit terhadap keseluruhan pesan
UDP.
UDP tidak
menyediakan layanan-layanan antar-host berikut:
- UDP tidak
menyediakan mekanisme penyanggaan (buffering) dari data yang masuk ataupun data
yang keluar. Tugas buffering merupakan tugas yang harus diimplementasikan oleh
protokol lapisan aplikasi yang berjalan di atas UDP.
- UDP tidak
menyediakan mekanisme segmentasi data yang besar ke dalam segmen-segmen data,
seperti yang terjadi dalam protokol TCP. Karena itulah, protokol lapisan
aplikasi yang berjalan di atas UDP harus mengirimkan data yang berukuran kecil
(tidak lebih besar dari nilai Maximum Transfer Unit/MTU) yang dimiliki oleh
sebuah antarmuka di mana data tersebut dikirim. Karena, jika ukuran paket data
yang dikirim lebih besar dibandingkan nilai MTU, paket data yang dikirimkan
bisa saja terpecah menjadi beberapa fragmen yang akhirnya tidak jadi terkirim
dengan benar.
- UDP tidak
menyediakan mekanisme flow-control, seperti yang dimiliki oleh TCP.
Fungsi UDP
sebagai berikut:
ü Protokol yang “ringan” (lightweight): Untuk
menghemat sumber daya memori dan prosesor, beberapa protokol lapisan aplikasi
membutuhkan penggunaan protokol yang ringan yang dapat melakukan fungsi-fungsi
spesifik dengan saling bertukar pesan. Contoh dari protokol yang ringan adalah
fungsi query nama dalam protokol lapisan aplikasi Domain Name System.
ü Protokol lapisan aplikasi yang
mengimplementasikan layanan keandalan: Jika protokol lapisan aplikasi
menyediakan layanan transfer data yang andal, maka kebutuhan terhadap keandalan
yang ditawarkan oleh TCP pun menjadi tidak ada. Contoh dari protokol seperti
ini adalah Trivial File Transfer Protocol (TFTP) dan Network File System (NFS)
ü Protokol yang tidak membutuhkan keandalan.
Contoh protokol ini adalah protokol Routing Information Protocol (RIP).
ü Transmisi broadcast: Karena UDP merupakan
protokol yang tidak perlu membuat koneksi terlebih dahulu dengan sebuah host
tertentu, maka transmisi broadcast pun dimungkinkan. Sebuah protokol lapisan
aplikasi dapat mengirimkan paket data ke beberapa tujuan dengan menggunakan
alamat multicast atau broadcast. Hal ini kontras dengan protokol TCP yang hanya
dapat mengirimkan transmisi one-to-one. Contoh: query nama dalam protokol
NetBIOS Name Service.
UDP berbeda
dengan TCP yang memiliki satuan paket data yang disebut dengan segmen,
melakukan pengepakan terhadap data ke dalam pesan-pesan UDP (UDP Messages).
Sebuah pesan UDP berisi header UDP dan akan dikirimkan ke protokol lapisan
selanjutnya (lapisan internetwork) setelah mengepaknya menjadi datagram IP.
Enkapsulasi terhadap pesan-pesan UDP oleh protokol IP dilakukan dengan
menambahkan header IP dengan protokol IP nomor 17 (0×11). Pesan UDP dapat
memiliki besar maksimum 65507 byte: 65535 (216)-20 (ukuran terkecil dari header
IP)-8 (ukuran dari header UDP) byte. Datagram IP yang dihasilkan dari proses
enkapsulasi tersebut, akan dienkapsulasi kembali dengan menggunakan header dan
trailer protokol lapisan Network Interface yang digunakan oleh host tersebut.
Dalam header
IP dari sebuah pesan UDP, field Source IP Address akan diset ke antarmuka host
yang mengirimkan pesan UDP yang bersangkutan; sementara field Destination IP
Address akan diset ke alamat IP unicast dari sebuah host tertentu, alamat IP
broadcast, atau alamat IP multicast.
Terimakasih sudah membaca artikel ini, semoga infonya bermanfaat :)
Baca juga ya Artikel Apa yang dimaksud TCP/IP