conection oriented dengan protocol TCP

I. TUJUAN :
Dapat mengimplementasikan aplikasi client-server yang menerapkan conection oriented dengan protocol TCP

II. PEMBAHASAN LAPORAN :
Pada praktikum kali ini saya bertindak sebagai klien dari server yang dioperasikan oleh teman saya. Computer client adalah computer yang meminta layanan tertentu kepada computer server sedangkan computer server adalah computer yang akan menawarkan layanan tertentu kepada computer client. Untuk melakukan komunikasi antara computer server dan client harus menggunakan cara yang sama sehingga proses share layanan dapat berlangsung.
1. Pembahasan program server
import java.io.BufferedReader;
//digunakan untuk mengimport kelas BufferedReader yang berada pada paket java.io
import java.io.DataOutputStream;
//digunakan untuk mengimport kelas dataoutputstream yang berada pada paket java.io
import java.io.IOException;
//digunakan untuk mengimport kelas IOException yang berada pada paket java.io
import java.io.InputStreamReader;
//digunakan untuk mengimport kelas InputStreamReader yang berada pada paket java.io
import java.net.InetAddress;
//digunakan untuk mengimport kelas InetAddress yang berada pada paket java.io
import java.net.ServerSocket;
//digunakan untuk mengimport kelas ServerSocket yang berada pada paket java.net
import java.net.Socket;
//digunakan untuk mengimport kelas Socket yang berada pada paket java.
public class server {
private static Socket socket;
//merupakan atribut daari kelas server
public static void main(String[] args){
//merupakan main method/method utama,tanpa adnya method ini program tidak bisa running
try{
//blok program tempat menuliskan statement yang akan di uji apakan ada kesalahan atau tidak
int port = 80;
ServerSocket serverSocket = new ServerSocket(port);
//merupakan sebuah objek dengan nama client socket yang akan memanggil kelas socket pada paket java.net dimana akan Membuat sebuah stream socket dan juga koneksi ke suatu port tertentu pada sebuah computer berdasar namanya
System.out.println("Server Yoga Started and listening to Firman the port 80");
//server akan menampilkan “Server Yoga Started and listening to Firman the port 80” jika tidak ada client yang terhubung dengan server
while(true)
//merupakan sebuah perulangan
{
socket = serverSocket.accept();
InputStream is = socket.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String number = br.readLine();
//digunakan untuk memenggil method readLine() ke dalam objek br
System.out.println("Nama Kelompok : ");
System.out.println("Yoga Aditya P. 163310004 ");
System.out.println("Firman Agus Saputro 163310023");
System.out.println("----------------------------");
System.out.println("Message received from client is : "+number);
//merupakan sebuah statement yang akan ditampilkan ketika ada sebuah client yang terhubung ke server.
String returnMessage;
try
{
int numberInIntFormat = Integer.parseInt(number);
int returnValue = numberInIntFormat*2;
returnMessage = String.valueOf(returnValue) + "\n";
//perintah-perintah yang dikerjakan
}
catch(NumberFormatException e)
{
//ketika terjadi kesalahan pada penomoran maka akan mengeksekusi blok program dibawah ini
returnMessage = "Please send a proper number\n";
}
OutputStream os = socket.getOutputStream();
//Merupakan objek untuk memanggil kelas outputstream dimana kelas outputstream merupakan kelas bawaan java
OutputStreamWriter osw = new OutputStreamWriter(os);
BufferedWriter bw = new BufferedWriter(osw);
bw.write(returnMessage);
//untuk memanggil method write() ke dalam objek bw
System.out.println("Message sent to client is "+returnMessage);
bw.flush();} }
//untuk memanggil method flush() ke dalam objek bw
catch (Exception e)
//jika terjadi sebuah exception maka statement yang akan ditampilkan sebagai berikut
{
e.printStackTrace();}
finally{
try {
socket.close(); }
//untuk menutup soket
catch(Exception e){}
}}}
Hasil :



Penjelasan :
Ketika program server dirunning dan belum ada client yang terhubung maka hanya akan didapati tampilan “server telah siap!!” akan tetapi setelah ada client yang terhubung dengan server maka akan ditampilkan sebuah pesan yang di dapat dari client yang disimpan oleh server.
2. Praktik 1 bertindak sebagai computer Client
import java.io.BufferedReader;
//digunakan untuk mengimport kelas BufferedReader yang berada pada paket java.io
import java.io.DataOutputStream;
//digunakan untuk mengimport kelas dataoutputstream yang berada pada paket java.io
import java.io.IOException;
//digunakan untuk mengimport kelas IOException yang berada pada paket java.io
import java.io.InputStreamReader;
//digunakan untuk mengimport kelas InputStreamReader yang berada pada paket java.io
import java.net.InetAddress;
//digunakan untuk mengimport kelas InetAddress yang berada pada paket java.io
import java.net.ServerSocket;
//digunakan untuk mengimport kelas ServerSocket yang berada pada paket java.net
import java.net.Socket;
//digunakan untuk mengimport kelas Socket yang berada pada paket java.
public class Client{
private static Socket socket;
//merupakan atribut dari kelas client
public static void main(String args[]){
try{
String host = "172.18.105.132";
//merupakan variable dari host yang berisi ip address dari pc server
int port = 80;
//pengisian port harus sama dengan port pada server
InetAddress address = InetAddress.getByName(host);
//merupakan objek dengan nama address yang digunakan untuk memanggil kelas inetaddress
socket = new Socket(address, port);
//akan mengirim pesan ke server
OutputStream os = socket.getOutputStream();
//merupakan objek untuk memanggil kelas outputstream yang merupakan kelas bawaan java
OutputStreamWriter osw = new OutputStreamWriter(os);
BufferedWriter bw = new BufferedWriter(osw);
String number = "FIRMAN";
String sendMessage = number + "\n";
bw.write(sendMessage);
bw.flush();
//statement yang akan ditampilkan pada tampilan client jika sudah terhubung dengan client adalah sebagai berikut :
System.out.println("Nama kelompok : " );
System.out.println("YOGA ADITYA PRATAMA 163310004 ");
System.out.println("FIRMAN AGUS SAPUTRO 163310023 ");
System.out.println("-------------------------------------- ");
System.out.println("pesan ke server dari client : "+sendMessage);
//akan mengembalikan pesan dari server
InputStream is = socket.getInputStream();
//Merupakan objek untuk memanggil kelas outputstream dimana kelas outputstream merupakan kelas bawaan java
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String message = br.readLine();
//untuk memanggil method readLine() ke dalam objek br
System.out.println("pesan disimpan server : " +message);
}
catch (Exception exception)
{
exception.printStackTrace();
}
finally
{
try
{
socket.close();
//untuk menutup soket
}
catch(Exception e)
{
e.printStackTrace(); }} }}
Hasil :

Pembahasan :
Ketika program client di running maka akan didapati tampilan sebuah pesan yang nantinya akan dikirimkan ke server untuk disimpan.

III. KESIMPULAN :
Penggunaan socket programming memungkinkan adanya komunikasi antara client dan server. Ketika seorang user (client) melakukan koneksi ke chat server, program akan membuka koneksi ke port yang diberikan, sehingga server perlu membuka socket pada port tersebut dan "mendengarkan" koneksi yang datang. Pada program ini, setelah program server di jalankan maka program client akan dapat mengirimkan pesan yang nantinya akan masuk di pc server.

0 Response to "conection oriented dengan protocol TCP"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel