Arsenal FC

s

s

Senin, 05 Mei 2014

PEMROGRAMAN JARINGAN

1. PEMROGRAMAN JARINGAN (Pertemuan ke-1)
Komunikasi --> Socket (16bit):

 1.  TCP/IP (Transmission Control Protokol): 7 layer pada lapisan OSI harus             
                                                                     online terlebih dahulu atau harus dikoneksikan dulu.


 2.  UDP (User Datagram Protocol): 5  layer pada lapisan OSI tidak perlu
                                                        dikoneksikan terlebih dahulu.


·        * Elemen-elemen pada Socket: 

          1. Local IP
          2. Remote IP
          3. Local Port
          4. Remote Port
          5. Protocol

·        * Bentuk-bentuk Port: 

         1. Serial Port
         2. Paralel Port
         3. USB Port
         4. SCSI Port

·        * Type Port : 

      1. Well-known Port: 0 – 1023
      2. Registered Port: 1024 – 49151
      3. Dynamic Port: 49152 – 65535

Socket ==> merupakan suatu abstraksi perangkat lunak yang digunakan pada suatu terminal untuk menghubungkan 2 atau lebih proses atau mesin yang saling berinteraksi.

2. PEMROGRAMAN SOCKET (Pertemuan ke-2)

     1. Package (paket) java, yang digunakan dalam pemrograman jaringan:
1.      Java.net --> TCP/IP
2.      Java.io --> IO Stream (Input/Output Streaming)
3.      Java.RMI --> Remote Method Invocation
4.      Java.security --> Crytograph : => Enkripsi (encryption)

                                                        => Deskripsi (decryption)
5.      Java.lang --> Multithreading class

   2.  Metode-metode Server Socket
1.      Server Socket (Int Port);
2.      Pub;ic Socket Accept ();
3.      Public Void Close ();
4.      Public Int GetLocal Port ();
5.      Public Boolean Isclose ();

  3.  Membuka Posisi Client
1.      Socket String Host, Int Port
2.      Socket (InetAddress Address, Int Port)
3.      Public Int GetPort ();
4.      Public Void Close ();

3.      PEMROGRAMAN JARINGAN (Pertemuan ke-3)
1.      Membuka Socket 

        * Client
Socket MyClient = Null;
Try {
      MyClient = New Socket (*Host*, Nomor Port);
      }
      Catch (UnknownHostException UHE) {
                  UHE.PrintStrackTrace();
      }
      Catch (IOException E) {
                  E.PrintStrackTrace();
      }


     * Server
Public static Final Int Nomor Port = 1234;
Serversocket layanan = Null;
Try {
      Layanan = new ServerSocket (Nomor Port);
      }
      Catch (IOException IOE) {
      IOE.PrintStrackTrace();
      }
Selain itu server harus dibuat sebagai objek socket dari class server socket untuk layanan socket = null;
Try {
      Layanan socket = layanan.Accept ();
      }
      Catch (IOException IEx) {
      IEx.PrintStrackTrace();
      }

2. Membuka Data Output Stream

* Client
DataOutputStream OS = null;
Try {
      OS = new DataOutputStream (MyClient.GetOutputStream());
      }
      Catch (IOException Ix) {
      Ix.PrintStrackTrace(); }

  * Server
DataOutputStream OS = null;
Try {
      OS = new DataOutputStream (Layanan.GetOutputStream());
      }
      Catch (IOException IE) {
      IE.PrintStrackTrace();
}

3. Mengirim dan Menerima Pesan
1.  Untuk mengirim pesan menggunakan DataOutputStream OS.WriteBytes (data output);
2.  Untuk menerima pesan menggunakan BufferedReader, DataOutput = IS.Readline ();


4. Menutup Socket
    * Client
Try {
      OS.Close (); à untuk menutup OutputStream
      IS.Close (); à untuk menutup BufferedReader
      MyClient.close(); à untuk menutup data client
      }
      Catch (IOException IO) {
      IO.PrintStrackTrace ();
}


   * Server
Try {
      OS.close ();
Is.close ();
Layanan Socket.close (); à untuk menutup objek pada server
}
Catch (IOException Io) {
IoPrintStrackTrace ();
}


5. Membuat Data Input Stream
1.  Menerima respon dari server

BufferedReader Is = null;
Try {
      Is = new BufferedReader (new InputStreamReader (MyClient.GetInputStream()));
      Catch (IOException IOE) {
      IOE.PrintStrackTrace ();
      }

2.  Menerima Input dari client
BufferedReader Is = null;
Try {
      Is = new BufferedReader (new InputStreamReader (Layanan.GetInputStream()));
      Catch (IOException IOE) {
      IOE.PrintStrackTrace ();
      }


4. Membangun Server TCP dan Client TCP (Pertemuan ke- 4)
1. Membangun Server TCP
1. Buat objek server socket, ikat socket tersebut pada port tertentu.
Contoh:  Server socket  ServSocks = new ServerSocket (4567);
2. Buat server dalam status menunggu

--> Gunakan metode Accept() dari objek server socket, mengembalikan objek server socket pada saat koneksi terjadi.
Contoh: SocketLink = ServSocks.Accept ();
3. Setup Stream Input dan Output
--> Buat objek  scanner dan printwriter.
Contoh: ScannerInput = new Scanner (Link.GetInputStrean (), true);
            PrintWriter Output = new PrintWriter (Link.GetOutputStream (), true);
4. Kirim dan Terima Data
--> Gunakan metode println dari printwriter dan nextline () dari scanner.
Contoh: Output.Println (“sedang dikoneksikan…”);
            String.Input = Input.NextLine ();
5. Tutup Koneksi
--> Panggil metode close () dari objek socket.
Contoh: Link.close ();

2. Membangun Client TCP
1.      Bangun koneksi ke server
--> buat objek server.
Contoh: tentukan IP address atau Hostname mesin server dan nomor port dimana aplikasi server berjalan.
Contoh: Socket Link = new Socket (IP_Address, No_Port);
            Socket Link = new Socket (InetAddress.GetLocalHost (), 4567);
2. Setup Stream Input dan Output
--> panggil metode GetInputStream () dan GetOutputStream () dari objek socket.
Contoh: Scanner Input = new Scanner (Link.GetInputStream ());
            PrintWriterOuput = new PrintWriterv(Link.GetOutputStream (), true);
3. Kirim dan Terima Data
--> objek scanner menerima data dari server (input), objek printwriter mengirimkan data ke server (output).
Contoh: Output.Println (Message);
            Response = Input.NextLine ();
4. Tutup koneksi
--> panggil metode close () dari server.
Contoh: LinkClose ();

5.  UDP (User Datagram Protocol) (Pertemuan ke-5)
1.  Komunikasi Socket:
1.      Komunikasi Stream --> protocol (https/browser, telnet) = TCP è sifatnya oriented connection communication (online terus bebas dari error berurut).
2.      Komunikasi Datagram --> protocol UDP è sifatnya connectionless communication (tidak mutlak online atau koneksi).

2.  Keuntungan UDP
1.      Simple, karena utility
2.      Fleksibel
3.      Efisien, karena paket data yang dikirimkan relative sedikit kapasitasnya.

6. Pertemuan ke-6
1. Class Java.net_datagram Pocket
Class ini mengirim dan menerima datagram pocket dari atau ke jaringan.
-->  Constructor:
1. Datagram Socket (IntPort)
Untuk menyatakan penggunaan suatu nomor port sebagai pintu untuk menerima koneksi dari client.
2. Datagram Socket (IntPort, InetAddress LARD)
Membentuk koneksi dan protocol UDP pada alamat IP local tertentu dan pada port tertentu.
3. Datagram Socket ()
Membuat koneksi dengan protocol UDP alamat IP local host dengan penentuan nomor port secara random berdasarkan tersedianya nomor port yang digunakan.

2. Class Java.net.Dtagram Packet
Class yang menyatakan/mewakili sebuah paket informasi yaitu sebuah array byte yang dipertukarkan pada jaringan.
-->  Constructor
1.      Datagram Packet (Byte[] Buf, IntLength)
Digunakan untuk mengambil informasi. Array byte berfungsi untuk menyimpan data dan informasi ukuran data yang diterima.
2.      Datagram Packet (Byte[] Buf, IntLength, InetAddress Address, IntPort)
Membuat paket datagram yang akan mengirim data.

*  Method
1. Getdata (); --> untuk mengambil informasi data.
2. Getlength (); --> untuk mengambil panjang dtagram.
3. GetAddress (); --> untuk mengambil alamat IP.
4. GetPort (); --> untuk mengambil nomor port.
5. Send (Datagram Packet Data); --> untuk mengirim datagram dan port tertentu.
6. Receive (Datagram Packet Data); --> untuk memblock eksekusi sampai suatu paket data diterima dengan baik.

*  Encupsulation
Data yang dikirim melalui UDP dilakukan melalui proses encapsulation.
Encupsulation oleh:
 1. Header & Protocol TFTP + IP --> berjalan pada aplikasi layer.
2. yang kedua dibungkus lagi oleh header & protocol UDP + IP menggunakan transport layer dari lapisan OSI.
3. Header & Protocol Ethernet Protocol à Pasycal layer dari lapisan OSI.