DiBuatTukDiLihat

-blog ini dibuat semata hanya untuk dilihat-


pada post kali ini saya akan menshare program untuk mengirim objek dengan soket untuk coding dapat dilihat di bawah:

Staff.java


class staff ini digunakan untuk menyimpan data yang dikirim oleh client. Pada class ini juga terdapat method yang digunakan untuk mencetak data staff yang dikirim client.

ObjectClient.java



class objekclient ini berfungsi untuk mengirim data staff kepada server.
ObjectServer.java



class objekserver ini berfungsi untuk menerima dan menampilkan data staff dari client. untuk output program dapat dilihat gambar dibawah ini:



post kali ini saya menshare program untuk mengirim pesan dengan smtp. program ini menggunakan bahasa pemrograman java scriptnya bisa dilihat di gambar dibawah.





coding  diatas dimulai dengan membuat objek smtpsoket, outputstream dan inputstream. kemudian buat kondisi  if (smtpSocket!=null && os!=null && is!=null) jika kondisi terpenuhi maka program akan melakukan pengiriman pesan melalui smtp. untuk output program dapat dilihat gambar di bawah.



Saat ini, penulis akan membahas mengenai cara membangun aplikasi Client-Server TCP sederhana dengan menggunakan Java. Adapun langkah – langkahnya adalah sebagai berikut :
1. Ketikkan kode sumber (source code) pada Notepad, Editplus, atau IDE lainnya, dan saya memilih menggunakan Notepad++ sebagai text editor. Pada aplikasi ini dibutuhkan dua source code, yang masing-masing saya beri nama Server_Client.java (untuk coding server) dan Client_Server.java(untuk coding client). Adapun source code-nya adalah sebagai berikut :
Aplikasi Server



Aplikasi Client



2. Kemudian simpan kedua program tadi pada direktori mana saja, dan saya menyimpannya di direktori “F:\pemjar”.
3. Setelah disimpan, kemudian buka 2 jendela cmd (command prompt) pada menu Start > Accessories > Command Prompt atau langsung ketikkan cmd pada menu Run untuk mengkompile dan menjalankan program tersebut. Kemudian compile program tersebut dan jalankan dengan cara sebagai berikut :




Pada nomor 1 Gambar cmd Server menunjukkan bahwa aplikasi server telah hidup dan sudah dapat menerima interaksi dari Client berupa kata “salam” (lihat nomor 4 pada Gambar cmd Client), sedangkan nomor 2 Gambar cmd Server menunjukkan bahwa aplikasi server telah hidup kembali dan siap menerima interaksi dari Client lagi, namun ketika Client mengetikkan selain kata “salam”, misalkan kata “haii” maka respon Server akan berbeda (lihat nomor 6 pada Gambar cmd Client).
Nomor 3 pada Gambar cmd Client menunjukkan kesalahan dalam menjalankan aplikasi Client, dimana untuk menjalankannya harus menuliskan nama lokal komputer yang dijadikan server saat menjalankan aplikasi Client.
Nomor 4 pada Gambar cmd Client menunjukkan cara yang benar untuk menjalankan aplikasi Client yakni dengan menuliskan nama lokal komputer yang dijadikan Server.
Nomor 5 pada Gambar cmd Client menunjukkan bahwa aplikasi Server hanya bisa menerima satu kali interaksi dari Client, sehingga bila ingin melakukan interaksi lagi harus menjalankan (menghidupkan) lagi aplikasi Server-nya.
Nomor 6 pada Gambar cmd Client menunjukkan bila Client mengetikkan kata selain “salam” maka Server tidak akan mengerti dan memberikan respon “Maaf. Saya tidak mengerti”.


Java menyediakan objek InetAddress yang memanfaatkan layanan sistem operasi dan jaringan untuk melakukan translasi nama dan IP komputer. Program dibawah ini memperlihatkan bagaimana menggunakan objek InetAddress untuk melakukan translasi nama komputer ke IP Address komputer.
1. Ketikkan kode sumber (source code) tentang translasi IP Address ke nama lokal komputer pada Notepad, Editplus, atau IDE lainnya, dan saya memilih menggunakan Notepad++ sebagai text editor. Source code tersebut saya beri nama NsLookup.java. Adapun source code-nya adalah sebagai berikut :




2. Simpan source code tadi dengan nama IPtoName.java ke direktori mana saja.
3. Setelah disimpan, kemudian buka cmd (command prompt) pada menu Start > Accessories > Command Prompt atau langsung ketikkan cmd pada menu Run untuk mengkompile dan menjalankan program tersebut. Kemudian compile program tersebut dan jalankan dengan cara sebagai berikut :



Setelah dijalankan maka akan muncul cara pemakaian dari program ini. Jadi, cara menjalankan program ini dengan mengetikkan java NsLookup (nama komputer saya) seperti yang terlihat dari gambar di atas.


Java menyediakan objek InetAddress yang memanfaatkan layanan sistem operasi dan jaringan untuk melakukan translasi nama dan IP komputer. Program dibawah ini memperlihatkan bagaimana menggunakan objek InetAddress untuk melakukan translasi IP ke nama komputer.
1. Ketikkan kode sumber (source code) tentang translasi IP Address ke nama lokal komputer pada Notepad, Editplus, atau IDE lainnya, dan saya memilih menggunakan Notepad++ sebagai text editor.Source code tersebut saya beri nama IPtoName.java. Adapun source code-nya adalah sebagai berikut :




 2. Simpan source code tadi dengan nama IPtoName.java ke direktori mana saja, dan saya menyimpannya di direktori “F:\pemjar”.
3. Setelah disimpan, kemudian buka cmd (command prompt) pada menu Start > Accessories > Command Prompt atau langsung ketikkan cmd pada menu Run untuk mengkompile dan menjalankan program tersebut. Kemudian compile program tersebut dan jalankan dengan cara sebagai berikut :

 Setelah dijalankan maka akan muncul cara pemakaian dari program ini. Jadi, cara menjalankan program ini dengan mengetikkan java IPtoName 10.10.10.2 (IP komputer saya) seperti yang terlihat dari gambar di atas.


1. Ketikkan kode sumber (source code) tentang pengambilan nama lokal komputer pada Notepad, Editplus, atau IDE lainnya, dan saya memilih menggunakan Notepad++ sebagai text editor. Source code tersebut saya beri nama getName.java. Adapun source code-nya adalah sebagai berikut :




2. Simpan source code tadi dengan nama getName.java ke direktori mana saja.
3. Setelah disimpan, kemudian buka cmd (command prompt) pada menu Start > Accessories > Command Prompt atau langsung ketikkan cmd pada menu Run untuk mengkompile dan menjalankan program tersebut. 
kemudian compile program tersebut dan jalankan dengan cara sebagai berikut :




Setelah program tersebut dijalankan maka nama  komputer saya akan terlihat disitu.


Pada postingan kali ini akan membahas cara mendapatkan IP Address menggunakan Java. untuk membuatnya langkah – langkahnya sebagai berikut :
1. Ketikkan kode sumber (source code) tentang pengambilan IP Address komputer pada Notepad, Editplus, atau IDE lainnya, dan saya memilih menggunakan Notepad sebagai text editor. Source code tersebut saya beri nama getIP. Adapun source code-nya adalah sebagai berikut :


2. Simpan source code tadi dengan nama getIP.java ke direktori mana saja.
3. kemudian buka cmd (command prompt) untuk mengkompile dan menjalankan program tersebut. Pada cmd tersebut masuk ke direktori file getIP.java disimpan. kemudian compile program tersebut dengan mengetik javac getIP.java. kemudian jalankan dengan mengetik java getIP maka akan tampil output seperti gambar dibawah :


Pada output program tersebut terlihat IP Address komputer yang saya gunakan. IP komputer dapat terlihat karena Java menyediakan objek InetAddress yang memanfaatkan layanan sistem operasi dan jaringan untuk melakukan translasi IP Address komputer.


1.    Penjelasan UDP dan perbedaannya dengan TCP
-       UDP (Unit Datagram Protocol) adalah protocol connectionless message-based yang lebih sederhana. Di protocol connectionless, tidak ada usaha yang dibuat untuk koneksi end-to-end. Koumikasi dicapai dengan mengirimkan informasi satu arah, dari source ke destination tanpa mengecek untuk melihat apakah tujuan masih ada, atau apakah koneksi disiapkan untuk menerima informasi. Paket UDP melewati jaringan dalam unit-unit yang berdiri sendiri.
Ciri-ciri UDP adalah:
  • Tidak terpercaya
    Ketika pesan dikirimkan, tidak dapat diketahui apakah akan sampai tujuan. Paket dapat hilang di jalan. Tidak ada konsep acknoweledgment, retransimission, dan timeout.
  • Tidak terurutJika dua pesan dikirimkan ke penerima yang sama, urutan sampainya tidak dapat diprediksi.
  • Lightweight
    Tidak ada pemesanan pesan, tidak ada pelacakan koneksi, dll. Layer transport yang kecil yang didesain di atas IP.
  • Datagrams
    Paket yang dikirimkan secara individu dan dijamin akan utuh jika sampai. Paket-paket memiliki batas-batas yang pasti, dan tidak dipisan dan dibagi ke dalam data stream yang mungkin ada

2.     PERBEDAAN TCP DAN UDP

Berbeda dengan TCP, UDP merupakan connectionless dan tidak ada keandalan, windowing, serta fungsi untuk memastikan data diterima dengan benar. Namun, UDP juga menyediakan fungsi yang sama dengan TCP, seperti transfer data dan multiplexing, tetapi ia melakukannya dengan byte tambahan yang lebih sedikit dalam header UDP.
UDP melakukan multiplexing UDP menggunakan cara yang sama seperti TCP. Satu-satunya perbedaan adalah transport protocol yang digunakan, yaitu UDP. Suatu aplikasi dapat membuka nomor port yang sama pada satu host, tetapi satu menggunakan TCP dan yang satu lagi menggunakan UDP—hal ini tidak biasa, tetapi diperbolehkan. Jika suatu layanan mendukung TCP dan UDP, ia menggunakan nilai yang sama untuk nomor port TCP dan UDP.
UDP mempunyai keuntungan dibandingkan TCP dengan tidak menggunakan field sequence dan acknowledgement. Keuntungan UDP yang paling jelas dari TCP adalah byte tambahan yang lebih sedikit. Di samping itu, UDP tidak perlu menunggu penerimaan atau menyimpan data dalam memory sampai data tersebut diterima. Ini berarti, aplikasi UDP tidak diperlambat oleh proses penerimaan dan memory dapat dibebaskan lebih cepat. Pada tabel, Anda dapat melihat fungsi yang dilakukan (atau tidak dilakukan) oleh UDP atau TCP.\



3.     Contoh protokol aplikasi yang menggunakan UDP :
• DNS (Domain Name System) 53
• SNMP, (Simple Network Management Protocol) 161, 162
• TFTP (Trivial File Transfer Protocol) 69
• SunRPC port 111.
Cara Kerja DNS (Domain Name System)

Secara sederhana cara kerja DNS bisa dilihat pada gambar berikut ini:


DNS menggunakan relasi client – server untuk resolusi nama. Pada saat client mencari satu host, maka ia akan mengirimkan query ke server DNS. Query adalah satu permintaan untuk resolusi nama yang dikirimkan ke server DNS.
o   Pada komputer Client, sebuah program aplikasi misalnya http, meminta pemetaan IP Address (forward lookup query). Sebuah program aplikasi pada host yang mengakses domain system disebut sebagai resolver, resolver menghubungi DNS server, yang biasa disebut name server.
o   Name server meng-cek ke local database, jika ditemukan, name server mengembalikan IP Address ke resolver jika tidak ditemukan akan meneruskan query tersebut ke name server  root server.
o   Terakhir barulah si client bisa secara langsung menghubungi sebuah website / server yang diminta dengan menggunakan IP Address yang diberikan oleh DNS server 

4.     Konsep client server
Jaringan client atau server adalah jaringan dimana komputer client bertugas melakukan permintaan data dan server bertugas melayani permintaan tersebut.
Client
·         User akan membuat permintaan melalui software client. Aplikasi ini berfungsi :
·         Memberikan interface bagi user untuk melakukan jobs.
·         Format request data ke bentuk yang dapat dimengerti oleh server
·         Menampilkan hasil yang diminta pada layar
Server
Jaringan client atau server, server khusus digunakan untuk pemrosesan, penyimpanan dan manajemen data. Server bertugas menerima request dari client, mengolahnya, dan mengirimkan kembali hasilnya ke client. Untuk itu, server membutuhkan komputer khusus dengan spesifikasi hardware yang jauh lebih baik dan bertenaga dibandingkan hardware untuk client karena komputer harus mampu melayani :
·         Request secara simultan dalam jumlah besar
·         Aktivitas manajemen jaringan
·         Menjamin keamanan pada resource jaringan

5.     Protokol transport = protocol tcp dan protocol udp. Protokol TCP ( Transmission Control Protocol ) adalah salah satu jenis protokol transfer data. Sedangkan UDP ( User Datagram Protocol) adalah jenis transfer data yang lain dari TCP. UDP mempunyai karateristik connectionless (tidak berbasis koneksi).
  

6.     Dalam protokol transport terdapat dua protokol utama yaitu TCP and UDP, jelaskan perbedaan TCP dan UDP.

A.   Protokol TCP ( Transmission Control Protocol ) adalah salah satu jenis protokol transfer data. TCP mempunyai karakteristik sebagai protokol yang berorientasi koneksi (Connection oriented). Sebelum terjadi proses tranfer data, maka yang pertama dilakukan adalah kedua belah pihak melakukan caal request dan call accept. Protokol TCP menggunakan jalur data full duplex yang berarti antara kedua host terdapat dua buah jalur, jalur masuk dan jalur keluar sehingga data dapat dikirimkan secara simultan. Sebuah circuit virtual disiapkan sebelum packet-packet dikirimkan. Pada masing-masing packet terdapat virual circuit identifier yang berisi alamat tujuan packet tersebut. Data yang dikirimkan dalam sebuah protokol TCP maka akan diurutkan dengan sebuah nomor urut dan akan mengharap packet positive acknowledgment. Apabila tidak ada packet positive acknowledgment, maka packet akan dikirim ulang. Oleh karena itu, protokol TCP reliable. Akan tetapi karena harus mengecek setiap packet yang dikirmkan, maka protokol TCP relatif lambat. Pada TCP, hanya bisa melakukan koneksi one-to-one dan tidak bisa melakukan koneksi one-to-many. Karena rute-rute packet sudah ditentukan sebelumnya, maka akan lebih sulit bagi jaringan untuk beradaptasi dengan kemacetan. Apabila sebuah simpul/node mengalami kerusakan/kegagalan, maka seluruh virtual circuit yang melewati simpul tersebut akan hilang.

B.   Protokol UDP
UDP ( User Datagram Protocol) adalah jenis transfer data yang lain dari TCP. UDP mempunyai karateristik connectionless (tidak berbasis koneksi). Dengan kata lain, data yang dikirimkan dalam bentuk packet tidak harus melakukan call setup seperti pada TCP. Selain itu, data dalam protokol UDP akan dikirimkan sebagai datagram tanpa adanya nomor identifier. Sehingga sangat besar sekali kemungkinan data sampai tidak berurutan dan sangat mungkin hilang/rusak dalam perjalananan dari host asal ke host tujuan. Tergantung pada host penerima/tujuan, apakah akan meminta kembali pakcet yang rusak atau hilang. Kelebihan UDP adalah pada saat digunakan pada lightweight protokol, misalnya saja DNS(Domain Name Service). Selain itu protokol UDP lebih fleksibel karena misalnya saja terjadi kemacetan pada salah satu bagian jaringan, maka datagram dapat dialihkan menghindari bagian yang mengalami kemacetan tersebut. Kemudian apabila sebuah simpul(node) mengalami kerusakan/kegagalan, maka pacekt packet berikutnya dapat menemukan jalan/rute pengganti yang melewati simpul tersebut.

-       UDP adalah “datagram-oriented”, sedangkan TCP adalah “session-oriented”. Datagram adalah paket informasi self-contained. UDP berhubungan dengan datagram atau paket individu yang dikirim dari client ke server dan atau sebaliknya.
-       UDP adalah connection-less. Client tidak membangun koneksi ke server sebelum mengirim data, client hanya mengirim data secara langsung.
-       UDP adalah protokol yang tidak andal, dalam artian :
·         Paket dapat hilang. UDP tidak dapat mendeteksinya, sehingga pada program aplikasi client – server, metode transmisi ulang dikarenakan data rusak atau hilang harus dilakukan pada level aplikasi. Biasanya aplikasi menunggu hingga timeout habis, dan kemudian mencoba lagi
·         Paket dapat mengalami kerusakan. Paket UDP berisi checksum semua data dalam paket. Checksum ini memungkinkan UDP mendeteksi kapan suatu paket mengalami kerusakan. Jika hal ini terjadi, maka paket tersebut dikeluarkan, dan sebagaimana biasa aplikasilah yang mendeteksi hal ini dan melakukan transmisi ulang seperlunya.
·         Karena UDP adalah datagram-oriented dan pada level protokol setiap paket berdiri sendiri, maka UDP tidak memiliki konsep paket sesuai urutan, yang selanjutnya berarti tidak memerlukan nomor urut pada paket tersebut.
·         Karena UDP tidak memerlukan mekanisme kontrol yang rumit, maka UDP dapat dianggap lebih mudah dan lebih kecil ( dalam hal baris data dan memori ) untuk diimplementasikan. Namun hal tersebut juga membuat UDP tidak cocok untuk sejumlah besar data.


7.     Contoh protokol aplikasi yang menggunakan TCP :
  • HTTP (Hypertext Transfer Protocol)
  • FTP (File Transfer Protocol)
  • SMTP (Simple Mail Transfer Protocol)
Cara kerja http
Bila kita mengklik link hypertext atau kita mengetikkan suatu alamat atau URL pada internet browser, maka Anda sedang mentransfer URL ke browser, dan Dari URL ini browser Anda tahu server mana yang akan dihubungi dan file apa yang diminta kemudian web browser akan mengirimkan perintah HTTP ke web server. Web server selanjutnya akan menerima perintah ini dan melakukan aktivitas sesuai dengan perintah yang diminta oleh web browser. Hasil aktivitas tadi akan dikirimkan kembali ke web browser untuk ditampilkan kepada kita.

8.     Jelaskan langkah dan prinsip kerja socket programming untuk komunikasi dua arah

1.       Client, meminta layanan, langkah :
·         Membuka koneksi client ke server, yang di dalamnya adalah :
o   Membuat socket dengan perintah socket()
o   melakukan pengalamatan ke server.
o   Menghubungi server dengan connect()
·         Melakukan komunikasi (mengirim dan menerima data), dengan menggunakan perintah write() dan read()
·         Menutup hubungan

2.       Server, menyediakan layanan, langkah:
·         Melakukan prosedur pembukaan koneksi yang di dalamnya berupa langkah – langkah : membuat socket, mengikat socket, menyiapkan socket menerima koneksi, pengalamatan socket
·         Looping utama adalah menerima koneksi, dan melakukan komunikasi data (mengirim dan menerima).



Just Watch And Learn

Mengenai Saya

Foto saya
seorang anak laki-laki pertama dari tiga bersaudara.... haha

Indonesia itu?

Islamic Clock

Pingbox

Comment Here..


ShoutMix chat widget

Labels

Follower

Dilema