Pengenalan Socket Programming

Pemrograman jaringan memang begitu luas cakupannya, pada artikel edisi sekarang, saya ingin membuat tulisan mengenai pemrograman jaringan, khususnya mengenai socket programming. Sebelum ke pokok pembahasan, alangkah baiknya kalau mengingat selayang pandang mengenai konsep client server, karena untuk melakukan koneksi antara satu mesin dengan mesin yang lain, kebanyakan menggunakan konsep client server. 

Client server 
merupakan suatu model umum yang diterapkan pada jaringan komputer untuk mengerjakan tugas tertentu. Hal tersebut dinamakan client server karena memiliki dua karakteristik mesin yang berbeda dalam melakukan layanan. Perbedaanya adalah :

Client 
bertugas melakukan permintaan suatu perintah untuk suatu informasi atau mengirim sebuah perintah ke suatu aplikasi server

Server 
bertugas menerima permintaan dari client, kemudian memproses berdasarkan permintaan tersebut dan akan mengembalikan sesuatu ke client sebagai suatu hasil dari pemrosesan yang sudah dilakukan
Untuk terhubung dari suatu client ke server salahsatunya dengan menggunakan konsep pemrograman socket. 

Socket 
adalah sebuah abstraksi perangkat lunak yang digunakan sebagai suatu "terminal" dari suatu hubungan antara dua mesin atau proses, yang saling berinterkoneksi atau berhubungan. Adapun mekanisme hubungan client server pada socket dijelaskan pada gambar berikut ini :





























Keterangan gambar :
  • Pada sisi aplikasi server, suatu socket server dibentuk ( gambar 1) dan melakukan operasi listen (gambar 2). Operasi ini intinya menunggu permintaan koneksi dari sisi client.
  • Pada sisi client, dibentuk suatu socket biasa. Pada saat socket client (gambar 3), informasi alamat socket server dilewatkan sebagai argumen dan socket client akan otomatis mencoba meminta koneksi ke socket server.
  • Pada saat permintaan koneksi client sampai pada server, maka server akan membantu suatu socket biasa. Socket ini nantinya akan berkomunikasi dengan socket pada sisi client. Setelah itu socket server dapat kembali melakukan listen (gambar 4) untuk menunggu permintaan koneksi dari client lainnya. Langkah ke 4 ini umumnya hanya dilakukan jika aplikasi server mengimplementasikan multithreading (beberapa proses).
  • Setelah tercipta koneksi antara client dan server, maka keduanya dapat saling bertukar pesan (gambar 5). Salah satu atau keduanya kemudian dapat mengakhiri komunikasi dengan menutup socket (gambar 6).
Socket programming yang umum dibahas pada pemrograman java, diantaranya pemrograman socket tcp dan udp. Masing-masing contoh sederhananya akan dibahas pada artikel berikutnya (semoga sempat untuk publikasi). Terima Kasih

Referensi :

Artikel Wartawarga Universitas Gunadarma

Slide ppt yuliana setiowati






Postingan terkait:

Belum ada tanggapan untuk "Pengenalan Socket Programming"

Post a Comment