Socket Programming: Udp Echo Client/server
Socket Programming: Udp Echo Client/server
(PYTHON)
2 D4 TEKNIK KOMPUTER B
SURABAYA
2020
SOCKET PROGRAMMING: UDP ECHO CLIENT/SERVER
(PYTHON)
A. TUJUAN
1. Mahasiswa dapat menjelaskan konsep jaringan berbasis client-server
2. Mahasiswa dapat menjelaskan konsep pemrograman socket berbasis UDP
3. Mahasiswa dapat menjelaskan cara kerja program UDP echo client/server
B. PENDAHULUAN
User Datagram Protocol (UDP) merupakan protokol yang bersifat
connectionless. UDP tidak dapat menjamin pengiriman maupun urutan paket. Sealain
itu juga tidak ada mekanisme handshaking. Sehingga, reliabilitas UDP tidak sebaik
TCP. UDP menyediakan checksum untuk integritas data dan port number sebagai
pengalamatan. UDP diperlukan untuk aplikasi yang membutuhkan komunikasi efisien
dan cepat tanpa mempermasalahkan packet loss.
Pada gambar 1 menunjukkan proses pengiriman data untuk komunikasi
menggunakan protokol UDP. Bila dilihat pada gambar ataupun pada prosedur
percobaan, pada sisi server tidak ada proses listen dan accept seperti pada TCP.
Namun, hanya ada proses bind untuk menghubungkan socket dengan port dan proses
menunggu pesan yang dikirim dari client. Sedangkan pada sisi client menggunakan
sendto() untuk mengirimkan pesan secara langsung ke server, dan recvfrom() untuk
menerima pesan balasan dari server.
4. Jalankan program echo client secara terpisah terminal atau command prompt dari
program echo server. Tampilkan hasil pengujian anda.
Beberapa saat kemudian akan tampil tulisan seperti berikut pada sisi client
ANALISA
KESIMPULAN
UDP adalah kependekan dari User Datagram Protocol metupakan bagian dari internet
protocol. Dengan UDP, aplikasi komputer dapat mengirimkan pesan kepada komputer
lain dalam jaringan lain tanpa melakukan komunikasi awal. UDP melakukan
komunikasi secara sederhana dengan mekanisme yang sangat minimal. UDP
digunakan untuk komunikasi yang sederhana seperti query DNS (Domain Name
System), NTP (Network Time Protocol), DHCP (Dinamic Host Configuration
Protocol), dan RIP (Routing Information Protocol).
Pada query DNS, komputer meminta informasi suatu data dari suatu domain kepada
DNS server. Data ini mungkin alamat web server, alamat mail server dan data-data
yang lain terkait domain. DNS server akan membalas dengan memberikan informasi
yang diinginkan client Pada NTP, client meminta informasi waktu kepada NTP
server. NTP server akan membalas waktu pada saat itu. Dengan demikian maka client
akan memiliki system waktu yang akurat. Pada DHCP, client akan menghubungi
DHCP server untuk meminta alamat IP untuk dia pakai sendiri. DHCP server akan
memberikan informasi alamat IP supaya digunakan oleh client tersebut. Pada RIP,
server RIP akan melakukan broadcast informasi routing kepada router-router yang
lain.
UDP cocok untuk pengiriman informasi yang lebih menekankan kecepatan daripada
kehandalan. Contoh aplikasi ini adalah audio streaming dan video streaming.
Digunakan untuk
Membutuhkan overhead
Overhead memaksimalkan
yang lebih kecil.
performansi.
Ukuran header 20 byte 8 byte
Membutuhkan three-way- Tidak membutuhkan
Pembuatan koneksi
handshake*. pembuatan koneksi.
Data terjamin akan sampai Tidak terjamin data akan
Keandalan (reliability) sesuai urutannya dan tidak sama persis dengan yang
ada data yang hilang (utuh). dikirimkan.
Dapat mengijinkan transfer Hanya mengijinkan transfer
Besar paket dengan data yang besar per data untuk data kecil per
paketnya. paketnya.
Menawarkan keamanan Tidak dapat menawarkan
Keamanan yang lebih baik untuk keamanan pada data yang
spoofing attack. dikirimkan.
Tidak memiliki flow
Data flow control Memiliki flow control.
control.
TCP adalah protokol yang
memiliki karakteristik
Karakteristik UDP tidak berbasis koneksi
berdasarkan koneksi atau
berorientasi koneksi.
Komunikasi TCP memungkinkan UDP kurang dapat
beberapa komputer berbeda diandalkan dalam
untuk berkomunikasi dan memfasilitasi komunikasi
bertukar data. tanpa koneksi antara
beberapa komputer host,
yang berada di jaringan
TCIP / IP.
UDP menggunakan port
integer 16-bit tetapi juga
TCP menggunakan port dibagi menjadi tiga bagian,
yang mengadopsi bilangan yaitu port 1-1023 untuk port
Port bulat 16-bit (antara 0- terkenal, port 1024-49151
65535), yang harus unik atau untuk port terdaftar, dan
berbeda antar port. sisanya untuk port
ephemeral di nomor 49152-
65535.
UDP dapat mengirim data
dalam bentuk paket
TCP dapat menggunakan
datagram, tanpa nomor
jalur data dupleks penuh,
pengenal. Ini berarti bahwa
yang berarti bahwa antara
kemungkinan besar data
titik masuk dan keluar data
yang diperoleh tidak
Transmisi Data dipisahkan menjadi dua
berurutan, dan mungkin
baris. Sehingga proses
rusak atau bahkan hilang
pengiriman dan penerimaan
selama proses pengiriman
dapat dilakukan secara
dari host asli ke tujuan.
bersamaan.