- Pengertian
Socket
Socket adalah
sebuah Class yang disediakan oleh beberapa bahasa pemrograman. Dengan socket,
sebuah aplikasi di suatu komputer dapat Tentu saja aplikasi di komputer yang
dihubungi menerima koneksi juga menggunakan socket. Dengan kata
lain socket adalah suatu Class yang digunakan oleh aplikasi untuk saling
berhubungan. berikut ini menunjukkan bagaimana suatu aplikasi berhubungan
dengan aplikasi lainnya. Paradigma pada aplikasi jaringan berlaku
model client-server. Aplikasi yang menginisialisasi koneksi, disebut aplikasi
client. Sedangkan aplikasi yang menerima inisialisasi disebut sebagai aplikasi
server. Oleh karena itu, jika kita membangun suatu aplikasi jaringan yang
lengkap, maka kita harus membuat aplikasi client maupun aplikasi server.
- Pemrograman
Socket Menggunakan TCP
Cara kerja
aplikasi yang menggunakan TCP dapat digambarkan oleh di bawah ini :
Detail dari
proses tersebut adalah :
Untuk bisa
melakukan koneksi client server, program server harus berjalan terlebih dahulu.
Di sisi server disediakan sebuah socket, yang disebut welcoming socket yang
fungsinya untuk mendeteksi adanya permintaan koneksi dari sisi client. Di sisi
client terdapat client socket. Jika ingin menghubungi server, maka melalui
client socket-nya, client membuat inisialisai koneksi ke welcoming socket milik
server, dengan mode three-way handshake. Setelah welcoming socket menerima
inisialisasi koneksi dari client socket, aplikasi server akan membuat
connection socket di sisi server. Dengan connection socket ini, client socket
dan connection socket berinteraksi satu sama lain untuk mengirim dan menerima
data.
Client membaca
data yang dikirim oleh server dari client socketnya. Kemudian menampilkan data
tersebut di monitor.
- Pemrograman
Socket Menggunakan UDP
Contoh aplikasi untuk UDP socket berikut ini
menggunakan kasus yang sama dengan kasus yang digunakan oleh TCP socket, yaitu
:
Client membaca
inputan dari keyboard, kemudian mengirimkan hasilnya ke server melalui
socket-nya. Server membaca data yang dikirim oleh client di connection socket
Server mengubah data menjadi huruf besar Server mengirimkan data yang telah
diubah menuju client melalui socket-nya. Client membaca data yang dikirim oleh
server dari client socket-nya. Kemudian menampilkan data tersebut di monitor.
Perbedaan utama antara aplikasi berbasis TCP dengan aplikasi berbasis UDP
adalah di aplikasi UDP tidak ada welcoming socket. Pada UDP tidak ada socket
khusus untuk permintaan inisialisai koneksi. Setiap data yang datang ditangani
lansung oleh server socket.