Client and Server

  • Aplikasi Client dan Server BerKomunikasi melalui Koneksi Soket (Socket Connection),
  • Sebuah Soket merupakan sebuah Koneksi antara dua Aplikasi yang dapat berjalan pada dua mesin fisik yang berbeda (Client dan Server),
  • Sebuah Client harus mengetahui Alamat IP (nama domain) dan nomor port TCP dari Aplikasi Server,
  • Sebuah Port TCP adalah angka unsigned 16-bit yang merupakan aplikasi khusus Server. Sejumlah TCP port mengizinkan sebuah Client yang berbeda untuk terhubung pada mesin Server yang sama tapi berkomunikasi pada aplikasi server yang berbeda. Cat. 1 mesin server dapat memiliki beberapa aplikasi server, hal itu ditentukan dengan jumlah port TCP yang berada pada status “mendengarkan” (listen).
  • Sejumlah Port TCP dari 0 hinga 1023 telah digunakan oleh servis yang sudah dikenal, cth. HTTP, FTP, SMTP, dll.
  • Sebuah Client terhubung ke Server menggunakan kode:

Socket s=new Socket(“127.0.0.1”, 4242);

  • Sekali terhubung, client dapat memperoleh Input dari server dan mengirim Output (Pesan) ke Server. Kode ini adalah Aliran Koneksi Level-Rendah (karena berbenruk bit-bit) : sock.getInputStream ( );
  • Untuk membaca data teks dari Server, kita memerlukan BufferedReader yang terhubung dengan InputStreamReader. InputStreamReader terhubung dengan Socket (Server sebagai Sumber Pesan).
  • InputStreamReader berperan sebagai “Jembatan” antara Bit-bit (Level Rendah) dari Socket (Server) ke bentuk karakter data (Level-Tinggi) di BufferedReader.
  • Untuk Menulis teks / data ke Server, hubungkan PrintWriter ke OutputStream dari Soket. Gunakan method print( ) atau println( ) untuk menulis (mengirim) teks ke Server (Soket).
  • Server menggunakan ServerSocket untuk MENUNGGU permintaan dari Client pada nomor port TCP tertentu.
  • Ketika ServerSocket mendapatkan permintaan (dari client), ia “menerima (accept)” permintaan itu, kemudian membuat sebuah koneksi Soket dengan Client tsb.
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s