180 likes | 312 Views
Pemrograman Client Server. Pustaka. TCP/IP Socket in Java Practical Guide for Programmers Oleh : Kenneth L. Calvert (University of Kentucky), Michael Donahoo (Baylor University) An Introduction to Network Programming With Java Oleh : Jan Graba Sheffield Hallam Universisty, UK
E N D
Pemrograman Client Server Pustaka • TCP/IP Socket in Java Practical Guide for Programmers • Oleh : Kenneth L. Calvert (University of Kentucky), • Michael Donahoo (Baylor University) • An Introduction to Network Programming With Java • Oleh : Jan Graba • Sheffield Hallam Universisty, UK • Pemrograman Client/Server dengan Java 2 • Oleh : Budi Susanto • Elex Media
Client, Server, peer to peer • Client • Bagian yang meminta layanan pada server • Server • Bagian yang melayani permintaan client • Peer to peer • Diantara host mempunyai kedudukan yang sama • Contoh : sharing, file, direktori
Client - server • Sebuah proses pada client melakukan permintaan ke Server • Aplikasi server menerima permintaan dari client request Server Client response
Protocol TCP/IP • Protocol Standar Internet Application 5 Presentation 4 Application Session 3 Transport Transport 2 Network Internet 1 Data-Link Data-Link Physical Physical Tcp/ip osi
Application Layer File Transfer - TFTP* - FTP* - NFS E-Mail - SMTP Remote Login - Telnet* - rlogin* Network Management - SNMP* Name Management - DNS* Application Transport Internet Data-Link Physical
Transport Layer Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Connection-OrientedConnectionless Application Transport Internet Data-Link Physical
Port Numbers RIP FTP TELNET SMTP DNS TFTP SNMP ApplicationLayer 520 21 23 25 53 69 161 TCP UDP
Internet Layer Internet Protocol (IP) Internet Control Message Protocol (ICMP) Address Resolution Protocol (ARP) Reverse Address Resolution Protocol (RARP) Application Transport Internet Data-Link Physical
Port dan Socket Socket • Sebuah Abstraksi perangkat lunak yang digunakan sebagai “terminal” dari suatu hubungan dua mesin, proses yang saling koneksi • Setiap mesin yang berkomunikasi harus terpasang socket Port • Nomor untuk identifikasi proses • Menggunajan nilai 16 bit • Baberapa layanan port, mengunakan nilai baku
Java Socket • Terdapat pada paket java.net • Berisi kelas-kelas dan interface • Menyediakan API protokol UDP, TCP • Terdiri misal • java.net.ServerSocket • java.net.Socket • java.net.DatagramSocket • java.net.InetAddress
Class Socket Kelas ini klien mengimplementasikan soket (juga disebut hanya "socket"). Sebuah socket adalah sebuah endpoint untuk komunikasi antara dua mesin. • Constructor Socket() Menciptakan soket tidak berhubungan, dengan sistem-default jenis SocketImpl .
Socket java • Socket(InetAddress address, int port) Menciptakan stream soket dan menghubungkan ke nomor port tertentu pada alamat IP yang ditentukan. • Socket(InetAddress host, int port, boolean stream) Deprecated. Gunakan UDP DatagramSocket bukan untuk transportasi. • Socket(InetAddress address, int port, InetAddress localAddr, int localPort) Menciptakan soket dan menghubungkan ke alamat remote tertentu pada remote port yang disyaratkan.
Construktor • Socket(SocketImpl impl) Socket memciptakan nonkoneksi dengan user-SocketImpl ditentukan.. • void bind(SocketAddress bindpoint) Mengikat socket ke alamat lokal. . • void close() Menututup socket • void connect(SocketAddress endpoint) Soket ini menghubungkan ke server. • void connect(SocketAddress endpoint, int timeout) Soket ini menghubungkan ke server dengan nilai timeout tertentu.
Methode • getInetAddress • public InetAddressgetInetAddress() Mengembalikan alamat yang soket tersambung.Pengembalian:alamat IP remote yang terhubung socket ini, atau null jika soket tidak tersambung. • getLocalAddress • public InetAddressgetLocalAddress() • Mendapatkan alamat lokal yang soket diikat.Pengembalian:alamat lokal yang soket diikat atau InetAddress.anyLocalAddress () jika tidak terikat soket tidak terikat.
Methode • getPort public int getPort () Mengembalikan port remote yang soket ini tersambung. Pengembalian: nomor port remote yang terhubung socket ini, atau 0 jika soket tidak terhubung. getLocalPort public int getLocalPort () • Mengembalikan port lokal yang soket ini terikat. Pengembalian: nomor port setempat yang soket ini diikat atau -1 jika socket tidak terikat belum.
Methode • getRemoteSocketAddress SocketAddress publik getRemoteSocketAddress () Mengembalikan alamat titik akhir soket ini terhubung ke, atau null jika tidak tersambung. • Pengembalian: SocketAddress reprensentasi sebuah titik akhir jauh soket ini, atau null jika tidak terhubung . • getLocalSocketAddress • SocketAddress publik getLocalSocketAddress () • Mengembalikan alamat endpoint soket ini terikat pada, atau null jika tidak terikat. Pengembalian: SocketAddress mewakili sebuah titik akhir lokal soket ini, atau null jika tidak terikat be.