Socket TCP Dan UDP
Socket TCP Dan UDP
Oleh
Amalia Eka Hasti Adhana (8010022)
Devi Mega Sari (8010039)
Hendrik Hidayat (8010063)
Ita Amalia (8010073)
Rumusan Masalah yang dapat diambil dari aar belakang diatas adalah:
BAB II
PEMBAHASAN
A. Pengertian Socket
Socket adalah salah satu cara untuk komunikasi antar komputer, umumnya
lewat network atau internet. Socket biasa digunakan untuk pemrograman berbasis
client-server yang dapat menggunakan socket TCP/IP atau socket UDP
B. Socket Java
Model pemrograman client-server menggunakan dari dua macam koneksi
pada layer 4/ layer transport OSI, yaitu connection oriented dan connectionless
oriented. Untuk connection oriented menggunakan protokol TCP (Transmission
Control Protocol). Sedangkan connectionless oriented menggunakan UDP (User
Datagram Protocol ).
Pada beberapa aplikasi java telah disediakan paket java.net yang berisi
kelas-kelas dan interface yang menyediakan API (Application Programming
Interface) level rendah (Socket, ServerSocket,DatagramSocket) dan level tinggi
(URL, URLConnection). Berikut adalah contoh dari kelas Socket berikut method
dan eksepsi error yang tersedia.
Methods :
Exceptions :
C. Tipe-tipe Socket
b. Karakteristik UDP
Connectionless (tanpa koneksi): Pesan-pesan UDP akan dikirimkan
tanpa harus dilakukan proses negosiasi koneksi antara dua host yang
hendak berukar informasi. Hal ini berarti bahwa suatu paket yang
dikirim melalui jaringan dan mencapai komputer lain tanpa membuat
suatu koneksi. Sehingga dalam perjalanan ke tujuan paket dapat hilang
karena tidak ada koneksi langsung antara kedua host.
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.
c. Aplikasi UDP
Digunakan untuk multimedia streaming, yang sangat memberikan
toleransi kehilangan segment cukup baik dan yang sangat tidak
sensitive terhadap kerusakan atau kehilangan segment.
Contoh protokol aplikasi yang menggunakan UDP :
o DNS (Domain Name System) 53
o SNMP, (Simple Network Management Protocol) 161, 162
o TFTP (Trivial File Transfer Protocol) 69
o SunRPC port 111.
d. Kelebihan UDP
Tidak perlu adanya setup koneksi terlebih dahulu (hal ini dapat
menyebabkan tambahan delay)
sederhana, artinya antara penerima dan pengirim tidak perlu menjaga
session atau status koneksi
ukuran header segment sederhana
tidak perlu kontrol kemacetan koneksi, artinya UDP dapat
mengirimkan per segment tanpa dipengaruhi oleh kesibukan jaringan
e. Kelemahan UDP
segmen UDP mungkin akan hilang
paket diterima mungkin dalam keadaan yang tidak urut. Jika paket
yang diterima tidak urut, paket akan dibuang.
f. Pemrograman Socket mengguanakan UDP
1) Client membaca inputan dari keyboard, kemudian mengirimkan
hasilnya ke server melalui socket-nya.
2) Server membaca data yang dikirim oleh client di connection socket
3) Server mengubah data menjadi huruf besar
4) Server mengirimkan data yang telah diubah menuju client melalui
socket-nya.
5) Client membaca data yang dikirim oleh server dari client socket-
nya. Kemudian menampilkan data tersebut di monitor
b. Karakteristik TCP
Connection-oriented : Suatu arsitektur/mekanisme komunikasi data di
mana dua perangkat yang akan saling berkomunikasi diharuskan untuk
membuat sebuah sesi (session) terlebih dahulu.
Reliabel : Keandalan yang dimiliki oleh protokol ini disebabkan
karena beberapa mekanisme seperti : Checksum, Duplicate Data
Detection, Retransmisson, Sequencing, Timers.
Stream data transfer : TCP akan mengelompokkan byte-byte yang
sebelumnya tidak terstruktur ke dalam bentuk segmen untuk kemudian
dikirimkan ke IP. Layanan ini memberikan keuntungan bagi aplikasi-
aplikasi karena mereka tidak perlu lagi membuat blok- blok data.
Efficient flow control : Ketika mengirim ulang acknowledgement ke
alamat asal, proses TCP yang menerima mengindikasikan nomor
urutan yang bisa diterimanya tanpa harus meng-over flow buffer
internal miliknya.
Full-duplex operation : TCP bisa mengirim dan menerima dalam
waktu yang bersamaan.
Multiplexing : Komunikasi antar upper-layer yang terjadi secara
simultan bisa dimultiplexikan melalui satu koneksi tunggal
c. Kelebihan TCP adalah
Error Recovery
Pengirim dan penerima juga melengkapi data dengan sejumlah
informasi yang bisa digunakan untuk memeriksa data yang dikirimkan
bebas dari kesalahan. Jika ditemukan kesalahan pada paket data yang
diterima, maka penerima tidak akan menerima data tersebut. Pengirim
akan mengirim ulang paket data yang mengandung kesalahan tadi.
Namun hal ini dapat menimbulkan delay yang cukup berarti.
Flow Control
Flow control menentukan kapan data harus dikirim kembali , dan
kapan menghentikan aliran data paket sebelumnya , sampai berhasil
ditransfer . Hal ini karena jika paket data berhasil dikirim , tabrakan
dapat terjadi . Ketika ini terjadi , maka klien meminta kembali paket
dari server sampai seluruh paket lengkap di transfer dan identik dengan
aslinya.
d. Kelemahan TCP
Memungkinkan buffer overflow attack. Korban adalah aplikasi yang
tidak di tulis dengan baik, memanfaatkan kesalahan programming
untuk mengeksekusi kode sisipan, dapat dieksploitasi secara remote
atau lokal (tergantung aplikasi), dan spesifik pad prosesor dan system
operasi tertentu.
Memungkinkan terjadinya denial of service. Denial of sevice
menjadikan servis tidak dapat di gunakan lagi. Target denial of service,
yaitu koneksi jaringan penghubung antarservis dan user, system
operasi yang di gunakan dan aplikasi yang menyediakan servis.
e. Contoh protokol aplikasi yang menggunakan TCP
Telnet/TeleNetwork adalah remote login yang dapat terjadi di internet
karena ada service dari protocol TELNET. Dengan Telnet
memungkinkan kita untuk mengakses komputer lain secara remote
melalui internet.
FTP (File Transfer Protocol)
f. Pemrograman Socket Menggunakan TCP
Cara kerja aplikasi yang menggunakan TCP dapat digambarkan oleh di bawah ini :
Detail dari proses tersebut adalah :
TCP UDP
BAB III
PENUTUP
A. Kesimpulan
Socket adalah salah satu cara untuk komunikasi antar komputer, umumnya lewat
network atau internet.
UDP (User Datagram Protocol) adalah salah satu protocol lapisan transport
TCP/IP yang mendukung komunikasi yang tidak andal (unreliable), tanpa koneksi
(connectionless) antar host dalam jaringan yang mengunakan TCP/IP.