menggunakan tcp socket · ¾langkah dalam langkah dalam mensetmenset proses proses serverserver ......

50
MENGGUNAKAN MENGGUNAKAN TCP TCP SOCKET SOCKET Oleh: M. Ghazali a.k.a. ghaNOZ 2480 http://ghanoz2480.wordpress.com

Upload: lyliem

Post on 17-Mar-2019

237 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

MENGGUNAKANMENGGUNAKANTCP TCP SOCKETSOCKET

Oleh: M. Ghazali a.k.a. ghaNOZ 2480

http://ghanoz2480.wordpress.com

Page 2: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 2

AgendaAgenda

PendahuluanPendahuluanSekilas Mengenai TCP SocketSekilas Mengenai TCP Socket

Membuat Program ServerMembuat Program ServerContoh Program ServerContoh Program Server

Membuat Program ClientMembuat Program ClientContoh Program ClientContoh Program Client

DemoDemoCatatanCatatan

ReferensiReferensi

Page 3: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

PendahuluanPendahuluan

Page 4: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 4

PendahuluanPendahuluan

Apa yang telah saya pelajari?Apa yang telah saya pelajari?SedikitSedikit mengenaimengenai TCP SocketTCP SocketLangkah dalam Langkah dalam mensetmenset proses proses serverserverLangkah dalam Langkah dalam mensetmenset proses proses clientclientMembuat program Membuat program clientclient//serverserver

Page 5: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

Sekilas Mengenai Sekilas Mengenai TCP SocketTCP Socket

Page 6: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 6

Sekilas Mengenai TCP SocketSekilas Mengenai TCP Socket

HubunganHubungan komunikasikomunikasi yang yang dibuatdibuat melaluimelalui TCP TCP socketsocket merupakanmerupakan hubunganhubungan connectionconnection--orientedoriented..HubunganHubungan antaraantara serverserver dandan clientclient tetaptetap terbukaterbukaselamaselama dialogdialogDalamDalam keadaankeadaan normal normal hanyahanya dapatdapat diputusdiputusketikaketika salahsalah satusatu endend--pointpoint (client (client atauatau server) server) menghentikanmenghentikan exchangeexchange melaluimelalui protokolprotokol yang yang disetujuidisetujui

Page 7: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

MembuatMembuat Program Program ServerServer

Page 8: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 8

MembuatMembuat Program ServerProgram Server

LangkahLangkah yang yang dibutuhkandibutuhkan dalamdalam mensetmensetprosesproses serverserver::

1.1. MembuatMembuat objectobject ServerSocketServerSocket

2.2. MenempatkanMenempatkan server server dalamdalam keadaankeadaan menunggumenunggu3.3. MensetMenset input input dandan output streamoutput stream4.4. MengirimMengirim dandan menerimamenerima datadata5.5. MengakhiriMengakhiri hubunganhubungan ((setelahsetelah penyelesaianpenyelesaian dialog)dialog)

Page 9: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 9

MembuatMembuat Program ServerProgram Server((LangkahLangkah keke--11))

MembuatMembuat objectobject ServerSocketServerSocket::Constructor ServerSocket membutuhkannomor port antara 1024-65535 (non-reserved) sebagaiargumen. Sebagai contoh:

ServerSocketServerSocket servSockservSock = new = new ServerSocket(2480);ServerSocket(2480);

Dengan begitu, server akan mendengarkan koneksidari client pada port 2480.

Page 10: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 10

MembuatMembuat Program ServerProgram Server((LangkahLangkah keke--22))

MenempatkanMenempatkan serverserver dalamdalam keadaankeadaan menunggumenunggu::Server Server menunggumenunggu untukuntuk jangkajangka waktuwaktu tidaktidakterbatasterbatas ((‘‘blocksblocks’’) ) untukuntuk menghubungkanmenghubungkan clientclient. . Dilakukan dengan memanggil method accept dariclass ServerSocket dimana akan me-return objectSocket ketika hubungan dibuat.Contoh:Socket link = Socket link = servSock.acceptservSock.accept();();

Page 11: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 11

MembuatMembuat Program ServerProgram Server((LangkahLangkah keke--33))

MenggunakanMenggunakan methodmethod getInputStreamgetInputStreamdandan getOutputStreamgetOutputStream daridari class class SocketSocket

Method Method tersebuttersebut digunakandigunakan untukuntuk mengambilmengambilreferencereference keke streamstream yang yang berhubunganberhubungan dengandengansocketsocket yang yang didi--returnedreturned padapada langkahlangkah keke--22

Page 12: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 12

MembuatMembuat Program ServerProgram Server((LangkahLangkah keke--33))

MensetMenset input streaminput stream ::Untuk aplikasi non-GUI, kita dapat membungkusobject InputStream (yang di-returned oleh methodgetInputStream) dalam object Scanner, untuk memperoleh masukan string-oriented.Sebagai contoh:Scanner input = new Scanner input = new Scanner(link.getInputStreamScanner(link.getInputStream());());

Page 13: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 13

MembuatMembuat Program ServerProgram Server((LangkahLangkah keke--33))

Menset output stream :Membungkus (wrap) object OutputStream (yang di-returned oleh method getOutputStream) dalamobject PrintWriterSebagai contoh:PrintWriterPrintWriter output = new output = new PrintWriter(link.getOutputStream(),PrintWriter(link.getOutputStream(),truetrue););

Dengan argumen kedua (true) akan menyebabkanoutput buffer untuk di-flush setiap kali printlndipanggil

Page 14: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 14

MembuatMembuat Program ServerProgram Server((LangkahLangkah keke--44))

Mengirim dan menerima data:Menerima data dengan menggunakan method nextLine (class Scanner)Mengirim data dengan menggunakan method println (class PrintWriter)Sebagai contoh:String String messagemessage = = input.nextLineinput.nextLine();();

ooutput.printlnutput.println((““echo backecho back...");...");

Page 15: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 15

MembuatMembuat Program ServerProgram Server((LangkahLangkah keke--55))

MengakhiriMengakhiri hubunganhubungan ((setelahsetelah penyelesaianpenyelesaiandialog)dialog) :

Menggunakan method close (class Socket)Sebagai contoh:link.closelink.close();();

Page 16: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

Contoh Program Contoh Program ServerServer

Page 17: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 17

ContohContoh Program ServerProgram Serverimport import java.iojava.io.*;.*;import import java.netjava.net.*;.*;import import java.utiljava.util.*;.*;

public class TCPEchoServer1{public class TCPEchoServer1{private static private static ServerSocketServerSocket servSocketservSocket;;private static final private static final intint PORT = 2480;PORT = 2480;

public static void public static void main(Stringmain(String argsargs[]){[]){System.out.println("OpeningSystem.out.println("Opening port...");port...");System.out.println("AwaitingSystem.out.println("Awaiting for data...");for data...");

try{try{// STEP1: Create // STEP1: Create ServerSocketServerSocket objectobjectservSocketservSocket = new = new ServerSocket(PORTServerSocket(PORT););

}}

Page 18: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 18

ContohContoh Program ServerProgram Servercatch(IOExceptioncatch(IOException ioExioEx){){

System.out.println("UnableSystem.out.println("Unable to attach to to attach to port!");port!");

System.exit(1);System.exit(1);}}

do{do{handleClienthandleClient();();

}}while(truewhile(true););

}}

private static void private static void handleClienthandleClient(){(){Socket link = null; // STEP 2Socket link = null; // STEP 2

Page 19: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 19

ContohContoh Program ServerProgram Servertry{try{

link = link = servSocket.acceptservSocket.accept(); // STEP 2(); // STEP 2

Scanner input = new Scanner input = new Scanner(link.getInputStreamScanner(link.getInputStream()); // STEP 3 ()); // STEP 3

PrintWriterPrintWriter output = new output = new PrintWriter(link.getOutputStreamPrintWriter(link.getOutputStream(), true); // STEP 3(), true); // STEP 3

intint numMessagesnumMessages = 0;= 0;String message = "";String message = "";do{do{

message = message = input.nextLineinput.nextLine(); (); // STEP 4// STEP 4

Page 20: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 20

ContohContoh Program ServerProgram Serverif(!message.equals("QUITif(!message.equals("QUIT")){")){

System.out.println("MessageSystem.out.println("Message received received --> " + message); > " + message);

numMessagesnumMessages++;++;output.println("Messageoutput.println("Message " + " +

numMessagesnumMessages + ": " + message);+ ": " + message);}}

}}while(!message.equals("QUITwhile(!message.equals("QUIT")); "));

output.println(numMessagesoutput.println(numMessages + " messages + " messages received."); // STEP 4received."); // STEP 4

}}catch(IOExceptioncatch(IOException ioExioEx){){

ioEx.printStackTraceioEx.printStackTrace();();}}

Page 21: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 21

ContohContoh Program ServerProgram Serverfinally{finally{

try{ try{ System.out.println("System.out.println("\\nn* Closing * Closing

connection... *");connection... *");link.closelink.close(); // STEP 5(); // STEP 5System.out.println("WaitingSystem.out.println("Waiting new new

connection...");connection...");}}catch(IOExceptioncatch(IOException ioExioEx){){

System.out.println("UnableSystem.out.println("Unable to to disconnect");disconnect");

System.exit(1);System.exit(1);}}

}}}}

}}

Page 22: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

MembuatMembuat Program Program ClientClient

Page 23: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 23

MembuatMembuat Program ClientProgram Client

Dalam membuat program client terdapat 5 langkah:

1. Membuat sebuah koneksi ke server2. Menset input dan output stream3. Mengirim dan menerima data4. Mengakhiri hubungan (setelah penyelesaian dialog)

Page 24: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 24

MembuatMembuat Program Program ClientClient((LangkahLangkah keke--11))

Membuat koneksi ke server :Kita buat objek Socket, memberikan constructor-nya dengan dua argumen berikut:

1. IP address dari server2. Nomor port yang digunakan (pada server). Dan tentunya nomor port

yang digunakan harus sama antara client dengan server.

Sebagai contoh:Socket link = new

Socket(InetAddress.getByName(“ghanoz2480”),1234);

Page 25: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 25

MembuatMembuat Program Program ClientClient((LangkahLangkah keke--22))

Menset input dan output stream:Langkah ini sama saja dengan langkah ke-3 dalam membuat program server (Anda bisa melihat kembali pada slide 11-13)

Page 26: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 26

MembuatMembuat Program Program ClientClient((LangkahLangkah keke--33))

MengirimMengirim dandan menerimamenerima data:data:Objek Objek ScannerScanner pada pada clientclient akan menerima pesan yang akan menerima pesan yang dikirim oleh objek dikirim oleh objek PrintWriterPrintWriter pada pada serverserver, sementara , sementara objek objek PrintWriterPrintWriter pada pada clientclient akan mengirim pesan akan mengirim pesan yang akan diterima oleh objek yang akan diterima oleh objek ScannerScanner pada pada serverserver(dengan menggunakan (dengan menggunakan methodmethod nextLinenextLine dan dan printlnprintln).).Sebagai contoh:Sebagai contoh:String String messagemessage = = input.nextLineinput.nextLine();();

ooutput.printlnutput.println((messagemessage););

Page 27: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 27

MembuatMembuat Program Program ClientClient((LangkahLangkah keke--44))

MengakhiriMengakhiri hubunganhubungan ((setelahsetelah penyelesaianpenyelesaiandialog)dialog):

Menggunakan method close (class Socket)Sebagai contoh:link.closelink.close();();

Page 28: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

Contoh Program Contoh Program ClientClient

Page 29: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 29

ContohContoh Program Program ClientClientimport import java.iojava.io.*;.*;import import java.netjava.net.*;.*;import import java.utiljava.util.*;.*;

public class public class TCPEchoClientTCPEchoClient{{private static private static InetAddressInetAddress host;host;private static final private static final intint PORT = 2480;PORT = 2480;

public static void public static void main(Stringmain(String argsargs[]){[]){try{try{

host = host = InetAddress.getLocalHostInetAddress.getLocalHost();();}}

catch(UnknownHostExceptioncatch(UnknownHostException uhExuhEx){){System.out.println("HostSystem.out.println("Host ID not found!");ID not found!");System.exit(1);System.exit(1);

}}

Page 30: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 30

ContohContoh Program Program ClientClientaccessServeraccessServer();();

}}

private static void private static void accessServeraccessServer(){(){Socket link = null; // STEP 1Socket link = null; // STEP 1

try{try{link = new link = new Socket(hostSocket(host, PORT); // STEP 1, PORT); // STEP 1

Scanner input = new Scanner input = new Scanner(link.getInputStreamScanner(link.getInputStream()); // STEP 2 ()); // STEP 2

PrintWriterPrintWriter output = new output = new PrintWriter(link.getOutputStreamPrintWriter(link.getOutputStream(), true); // STEP 2(), true); // STEP 2

Page 31: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 31

ContohContoh Program Program ClientClient// Set up stream for keyboard entry...// Set up stream for keyboard entry...

Scanner Scanner userEntryuserEntry = new = new Scanner(System.inScanner(System.in););

String message, response;String message, response;

do{do{System.out.print("ClientSystem.out.print("Client> Enter message: ");> Enter message: ");message = message = userEntry.nextLineuserEntry.nextLine();();output.println(messageoutput.println(message); );

// STEP 3// STEP 3

if(!message.equals("QUITif(!message.equals("QUIT")){")){response = response = input.nextLineinput.nextLine(); ();

// STEP 3// STEP 3System.out.println("System.out.println("\\nServernServer> " + > " +

response);response);}}

}}while(!message.equals("QUITwhile(!message.equals("QUIT"));"));

Page 32: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 32

ContohContoh Program Program ClientClientresponse = response = input.nextLineinput.nextLine(); // STEP 3(); // STEP 3

System.out.println(responseSystem.out.println(response););}}catch(IOExceptioncatch(IOException ioExioEx){){

ioEx.printStackTraceioEx.printStackTrace();();}}finally{finally{

try{try{System.out.println("System.out.println("\\nn* Closing connection... * Closing connection...

*");*");link.closelink.close(); ();

// STEP 4// STEP 4}}catch(IOExceptioncatch(IOException ioExioEx){){

System.out.println("UnableSystem.out.println("Unable to disconnect!");to disconnect!");System.exit(1);System.exit(1);

} } }}

}}}}

Page 33: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

DemoDemo

Page 34: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

Demo Demo (localhost)(localhost)

Page 35: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 35

Demo Demo (localhost)(localhost)

Sebelum mencoba program antar komputer, Sebelum mencoba program antar komputer, kita coba dulu secara kita coba dulu secara localhostlocalhostBuka dua Buka dua commandcommand, satu untuk menjalankan , satu untuk menjalankan program program serverserver, satu lagi untuk menjalankan , satu lagi untuk menjalankan program program clientclient

Page 36: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 36

Demo Demo (localhost)(localhost)

Jalankan program Jalankan program serverserver (TCPEchoServer) terlebih (TCPEchoServer) terlebih dahulu karena jika tidak saat program dahulu karena jika tidak saat program clientclient(TCPEchoClient) dijalankan akan mengalami (TCPEchoClient) dijalankan akan mengalami crashcrashSetelah dijalankan Setelah dijalankan serverserver akan menunggu koneksi dari akan menunggu koneksi dari clientclient

Page 37: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 37

Demo Demo (localhost)(localhost)

Jalankan program Jalankan program clientclientClientClient siap untuk mengirim pesansiap untuk mengirim pesan

Page 38: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 38

Demo Demo (localhost)(localhost)

Mengirim pesan (Mengirim pesan (““HalloHallo””) ke server) ke serverServer mengServer meng--echoecho pesan yang kita kirim tersebutpesan yang kita kirim tersebut

Page 39: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 39

Demo Demo (localhost)(localhost)

ServerServer menampilkan pesan (menampilkan pesan (““HalloHallo””) yang dikirim oleh ) yang dikirim oleh clientclient

Page 40: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 40

Demo Demo (localhost)(localhost)

Client memutuskan koneksi dari serverClient memutuskan koneksi dari serverServer menunggu koneksi baru dari clientServer menunggu koneksi baru dari client

Page 41: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

Demo Demo (antar komputer)(antar komputer)

Page 42: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 42

Demo Demo (antar komputer)(antar komputer)

Saya akan menunjukkan bagaimana jika programSaya akan menunjukkan bagaimana jika program--program program tersebut dijalankan antar komputertersebut dijalankan antar komputerDilakukan dalam jaringan lokal sayaDilakukan dalam jaringan lokal sayaPada program client ada statement yang perlu dirubah:Pada program client ada statement yang perlu dirubah:host = InetAddress.getLocalHost();host = InetAddress.getLocalHost();

Menjadi:Menjadi:host = InetAddress.getByName("ghanoz2480");host = InetAddress.getByName("ghanoz2480");

Note:Note:dengan argumen nama host dimana program server beradadengan argumen nama host dimana program server berada

Page 43: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 43

Demo Demo (antar komputer)(antar komputer)

Pada komputer yang menjalankan program Pada komputer yang menjalankan program serverserver

Page 44: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 44

Demo Demo (antar komputer)(antar komputer)

Pada komputer yang menjalankan program Pada komputer yang menjalankan program clientclient

Page 45: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

CatatanCatatan

Page 46: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 46

CatatanCatatanContoh program yang saya tunjukkan tersebut merupakan Contoh program yang saya tunjukkan tersebut merupakan contoh program dari buku contoh program dari buku ““An Introduction to Network Programming with Java”” yang ditulis oleh Jan Graba.yang ditulis oleh Jan Graba.Pada contoh program (TCPEchoServer.java dan Pada contoh program (TCPEchoServer.java dan TCPEchoClient.java) tersebut saya lakukan sedikit perubahan TCPEchoClient.java) tersebut saya lakukan sedikit perubahan (yang lebih baik tentunya) pada beberapa bagian.(yang lebih baik tentunya) pada beberapa bagian.Bila Anda ingin melihat contoh program (dari buku) aslinya, Bila Anda ingin melihat contoh program (dari buku) aslinya, saya sertakan pula dengan nama (TCPEchoServerA.java dan saya sertakan pula dengan nama (TCPEchoServerA.java dan TCPEchoClientA.java)TCPEchoClientA.java)Demo program tersebut saya lakukan secara Demo program tersebut saya lakukan secara localhostlocalhostDemo program tersebut juga saya lakukan dengan Demo program tersebut juga saya lakukan dengan menggunakan dua komputer.menggunakan dua komputer.Program tersebut hanya bisa menangani satu koneksi saja, jika Program tersebut hanya bisa menangani satu koneksi saja, jika ada client lain mencoba untuk membuat hubungan, client ada client lain mencoba untuk membuat hubungan, client tersebut harus menunggutersebut harus menunggu

Page 47: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

ReferensiReferensi

Page 48: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 48

ReferensiReferensi1. Jan Graba, “An Introduction to Network Programming with

Java”, Springer, 2007.2. “JDK6 Documentation”,

http://java.sun.com/javase/6/download.jsp#docs

Page 49: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

09/03/2009 49

Kritik, saran, dan tanggapan silahkan kirim email ke:Kritik, saran, dan tanggapan silahkan kirim email ke:[email protected]@widyatama.ac.id

[email protected]@gmail.com

Page 50: Menggunakan TCP Socket · ¾Langkah dalam Langkah dalam mensetmenset proses proses serverserver ... import java.io.*; ... (message); 09/03/2009 27

Terima KasihTerima Kasih

TheONEmAn2480