Socket pada UDP. Husni Husni.trunojoyo.ac.id Komputasi.wordpress.com

dokumen-dokumen yang mirip
Pemrograman Socket menggunakan UDP

Network Programming 2010 Pertemuan-4. Pemrograman Socket. Husni. Husni.trunojoyo.ac.id Komputasi.wordpress.

MENGGUNAKAN TCP SOCKET. Oleh: M. Ghazali a.k.a. ghanoz 2480

Pemrograman Jaringan 9. Connectionless Oriented Programming

NETWORK PROGRAMMING. Yuliana Setiowati Politeknik Elektronika Negeri Surabaya D4 PENS-ITS

Pemrograman Jaringan

TCP (Transfer Control Protocol) SOCKET PROGRAMMING

Network Programming oleh : Yuliana Setiowati

Network Programming 2010 Jaringan & Aplikasinya. Husni Husni.trunojoyo.ac.id

Sistem Terdistribusi 4

PEMROGRAMAN SOCKET LANJUTAN

A. TUJUAN PEMBELAJARAN

PEMROGRAMAN JARINGAN

Pemrograman Socket TCP dan Socket UDP

A. TUJUAN : Dapat mengimplementasi-kan kelas-kelas Java yang digunakan dalam pemrogaman jaringan.

Pemrograman Berorientasi Obyek Lanjut (IT251) Ramos Somya, S.Kom., M.Cs.

10.1 Konsep dasar jaringan

LAMPIRAN. Berikut ini adalah kode program transmisi video yang diinstall pada sisi user. public static void main(string args[]) throws Exception

Pemrograman Jaringan

Riwayat Pendidikan: SDK Lemuel II, Pos Pengumben, Jakarta Barat SMPK Lemuel, Pos Pengumben, Jakarta Barat SMUN 78, Kemanggisan, Jakarta Barat

Protokol. Pemrograman Client/Server dengan Java Socket. Protokol TCP/IP. Tipe pemrograman jaringan. Java Socket

Pemrograman Socket menggunakan TCP

Membuat Aplikasi Chatting Dengan Java

Pemrograman Jaringan 6.

Topik. Stream I/O Cara menggunakan Stream Hierarchy Java I/O Membaca File Menulis File Menghapus File Cara membaca isi Direktori dalam file

Mobile Computing Tugas Individu 1

APLIKASI CHAT ANTAR PC

UJIAN TENGAH SEMESTER GENAP TA 2011/2012

Komunikasi Antar Proses

TASK V OBSERVING TCP/IP, PORT USING COMMAND PROMPT AND WIRESHARK

IF PEMROGRAMAN LANJUT EXCEPTION. Oleh : Andri Heryandi, M.T.

Sistem Terdistribusi

BAB II LANDASAN TEORI

MK. Pemrograman Berorientasi Objek. Input dari Keyboard. Karmilasari

IMPLEMENTASI TCP/IP UNTUK MEMBUAT SERVER DATABASE ACCESS ABSTRAK

TPI4202 e-tp.ub.ac.id. Lecture 4 Mas ud Effendi

Transport Layer El E ectro ect n ro ic En E gineerin ri g Pol o ytech tec nic In I stitu sti t of o Surabaya ITS Kampus ITS Sukolilo Surabaya 60111

LAPORAN RESMI ADMINISTRASI & MANAGEMENT JARINGAN. PRAKTIKUM 3 Pemrograman Socket dengan TCP

Modul 9 Protokol Transport (TCP/UDP)

Percabangan dan Perulangan

Sistem Terdistribusi

1. Mana diantara pilihan-pilihan berikut ini yang merupakan penulisan loop yang benar?

Connection Oriented. Kholid F.

TRANSPORT LAYER. Aplikasi dan Operasi pada TCP dan UDP

UJIAN TENGAH SEMESTER GENAP TA 2011/2012

OPERASI FILE & EXCEPTION HANDLING. Herman Tolle

DASAR PEMROGRAMAN JAVA. Astrid Lestari Tungadi, S.Kom., M.TI.

Lapisan Transport. Menjamin komunikasi yang handal antara dua buah komputer yang terhubung Terdiri atas :

BAB IV PENGUJIAN DAN ANALISA DATA

1. Pendahuluan. 2. Tinjauan Pustaka

PEMROGRAMAN JAVA. Yoannita, S.Kom. Input Kondisi (IF-ELSE, SWITCH)

BAB IV IMPLEMENTASI DAN PENGUJIAN

PRAKTIKUM PEMROGRAMAN LANJUT MODUL 1

UJIAN TENGAH SEMESTER GENAP TA 2011/2012

Pemanggilan RESTful Web Service PHP dari Client Java

DAFTAR ISI. Kata Pengantar...i. Daftar Gambar...ix. Daftar Tabel...xi Latar Belakang Rumusan Masalah Batasan Masalah...

Pemrograman Database Java

2.1. Sistem Komunikasi

Mobile Computing. Ramos Somya

BAB II VARIABEL DAN TIPE DATA

2 TIPE DATA DAN VARIABEL

TCP DAN UDP. Budhi Irawan, S.Si, M.T

PRAKTIKUM 6 EXCEPTION

IMPLEMENTASI APLIKASI CHEPPYCHAT UNTUK JARINGAN KOMPUTER PADA LOCAL AREA NETWORK

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

PRAKTIKUM 3 KONSTRUKTOR DAN OVERLOADING

Bahasa Pemrograman :: Dasar Pemrograman Java

JARINGAN KOMPUTER. Disusun Oleh : Nama : Febrina Setianingsih NIM : Dosen Pembimbing : Dr. Deris Stiawan, M.T., Ph.D.

Variabel tersebut seharusnya bisa dideklarasikan didalam try block dan block catch

PRAKTIKUM 7 DASAR INPUT OUTPUT

Waktu Sisa : 0:43:4. Sukses. Kesalahan pada URL. File tidak lengkap. Kesalahan umum. Mengerjakan finally. Diluar block

Minggu 6 Transport Layer

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

Bubble Sort dan Selection Sort di Java Console

Network Programming. Oleh: Idris Winarno (thanks to my sist)

BAB 3 PERANCANGAN SISTEM

BAB Argument Command-Line dan System Properties

Topik. 1. Statement if 2. Statement if..else.. 3. Statement if..else.. If (bertingkat ) 4. Penggunaan Input Keyboard

BAB 4 PROTOKOL TCP UDP - REMOTE

Exception Handling. Prepared by Viska Mutiawani. 1

BAB IV HASIL DAN PEMBAHASAN. perangkat software dan hardware untuk mendukung dalam penelitian analisis

1. Apa yang harus dilakukan oleh programmer untuk menangani user-defined exception? Menuliskan exception sebagai start method

Sukses. Kesalahan pada URL. File tidak lengkap. Kesalahan umum

PEMROGRAMAN JARINGAN MODUL 3 STREAM

PEMOGRAMAN JAVA. Yoannita. Tipe Data (ii) : Array Exception Handling

BAB 5 Mendapatkan Input dari Keyboard

pembuat game seperti yang kita rasakan saat ini dimana banyak game online

Struktur Data dan Algoritma IKI10400 Semester Gasal 2010/2011 Fakultas Ilmu Komputer Universitas Indonesia

TIPE DATA Pertemuan (K-03/L-03)

IF PEMROGRAMAN LANJUT TUGAS 1. Oleh : Andri Heryandi, M.T.

J2ME GUI dan Interkoneksi Client Server

Method / Fungsi / Sub Program

Agenda. Protokol TCP/IP dan OSI Keluarga Protokol TCP/IP

Introduction To Stream

Modul Praktikum 4 Pemograman Berorientasi Objek

Exception. Oleh: Mike Yuliana PENS-ITS

MODUL III ARRAYLIST TUGAS PENDAHULUAN

Tidak ada satupun dari pilihan di atas yang benar karena checked exception tidak bisa ditulis

SEKUEN, PERCABANGAN & PENGULANGAN

Transkripsi:

Socket pada UDP Husni husni@if.trunojoyo.ac.id Husni.trunojoyo.ac.id Komputasi.wordpress.com

UDP Bersifat connectionless Tidak ada koneksi yang antara client & server yang dipelihara selama dialog Paket datagram langsung dikirim saat diperlukan Lebih cepat daripada transmisi paket TCP Unreliable 2

Server UDP Tidak membuat obyek socket untuk setiap client Tidak membuat obyek dari kelas ServerSocket, tetapi DatagramSocket Obyek DatagramPacket dibuat dan dikirim pada kedua ujung, bukan string sederhana. 3

Pembuatan Server UDP 1. Buat obyek DatagramSocket DatagramSocket datagramsocket = new DatagramSocket(1234); 2. Buat buffer untuk datagram yang masuk byte[] buffer = new byte[256]; 3. Buat obyek DatagramPacket untuk datagram yang masuk. Parameter untuk constructor adalah array byte dari buffer dan ukuran array tersebut. DatagramPacket inpacket = new DatagramPacket(buffer, buffer.length); 4

Pembuatan Server UDP 4. Terima datagram yang masuk datagramsocket.receive(inpacket); 5. Terima address dan port pengirim dari paket InetAddress clientaddress = inpacket.getaddress(); int clientport = inpacket.getport(); 6. Ambil (retrieve) data dari buffer. Gunakan constructor kelas String dengan parameter array paket masuk, posisi awal dan jumlah byte yang akan diambil. String message = new String(inPacket.getData(), 0,inPacket.getLength()); 5

Pembuatan Server UDP 7. Buat datagram respon. Buat obyek Datagram- Packet dengn constructor array byte yang berisi pesan respon, ukuran respon, alamat dan port dari client DatagramPacket outpacket = new DatagramPacket(response.getBytes(), response.length(),clientaddress, clientport); 8. Kirim datagram respon datagramsocket.send(outpacket); 9. Tutup socket datagram datagramsocket.close(); 6

import java.io.*; import java.net.*; public class UDPEchoServer { private static final int PORT = 1234; private static DatagramSocket datagramsocket; private static DatagramPacket inpacket, outpacket; private static byte[] buffer; public static void main(string[] args) { System.out.println("Opening port...\n"); try { datagramsocket = new DatagramSocket(PORT); //Langkah 1. catch(socketexception sockex) { System.out.println("Unable to attach to port!"); System.exit(1); handleclient(); 7

private static void handleclient() { try { String messagein,messageout; int nummessages = 0; do { buffer = new byte[256]; //Langkah2. inpacket = new DatagramPacket( buffer, buffer.length); // Langkah 3. datagramsocket.receive(inpacket);// Langkah 4. InetAddress clientaddress = inpacket.getaddress(); int clientport = inpacket.getport(); // Langkah 5. messagein = new String(inPacket.getData(), 0,inPacket.getLength()); // Langkah 6. 8

System.out.println("Message received."); nummessages++; messageout = "Message " + nummessages + ": " + messagein; outpacket = new DatagramPacket(messageOut.getBytes(), messageout.length(),clientaddress, clientport); //Langkah 7. datagramsocket.send(outpacket); //Langkah8. while (true); catch(ioexception ioex) { ioex.printstacktrace(); finally { //jika terjadi exception thrown, tutup koneksi. System.out.println("\n* Closing connection... *"); datagramsocket.close(); //Langkah9. 9

Pembuatan Client UDP 1. Buat obyek DatagramSocket. Tanpa port. DatagramSocket datagramsocket = new DatagramSocket(); 2. Buat obyek datagram keluar. Sama dengan langkah 7 pada server UDP DatagramPacket outpacket = new DatagramPacket(message.getBytes(), message.length(), host, PORT); 10

Pembuatan Client UDP 3. Kirim pesan datagram datagramsocket.send(outpacket); 4. Buat buffer untuk datagram yang masuk byte[] buffer = new byte[256]; 5. Buatobyek DatagramPacket untuk datagram yang masuk DatagramPacket inpacket = new DatagramPacket(buffer, buffer.length); 11

Pembuatan Client UDP 6. Terima datagram yanag masuk datagramsocket.receive(inpacket); 7. Ambil data masuk dibuffer String response = new String(inPacket.getData(), 0, inpacket.getlength()); 8. Tutup DatagramSocket datagramsocket.close(); 12

import java.io.*; import java.net.*; import java.util.*; public class UDPEchoClient { private static InetAddress host; private static final int PORT = 1234; private static DatagramSocket datagramsocket; private static DatagramPacket inpacket, outpacket; private static byte[] buffer; 13

public static void main(string[] args) { try { host = InetAddress.getLocalHost(); catch(unknownhostexception uhex) { System.out.println("Host ID not found!"); System.exit(1); accessserver(); 14

private static void accessserver() { try { //Langkah1... datagramsocket = new DatagramSocket(); //Set up stream untuk masukan dari keyboard Scanner userentry = new Scanner(System.in); String message="", response=""; do { System.out.print("Enter message: "); message = userentry.nextline(); if (!message.equals("***close***")) { outpacket = new DatagramPacket( message.getbytes(), message.length(), host,port); //Langkah 2. //Langkah 3... datagramsocket.send(outpacket); buffer = new byte[256]; // Langkah 4. inpacket = new DatagramPacket( buffer, buffer.length);// Langkah 15 5

//Langkah 6... datagramsocket.receive(inpacket); response = new String(inPacket.getData(), 0, inpacket.getlength()); //Langkah 7. System.out.println("\nSERVER> "+response); while (!message.equals("***close***")); catch(ioexception ioex) { ioex.printstacktrace(); finally { System.out.println("\n* Closing connection... *"); datagramsocket.close(); //Langkah8. 16

Tugas Lanjutkan tugas program RandomFileAccess. Dikumpulkan hardcopy berisi source code, penjelasan dan capture hasil ujicoba. Deadline: UTS Pelajari tentang konsep dan pemrograman Thread (Sistem Operasi dan Java) Buat diagram alir dari proses (process states) dan diagram alir thread (thread states). Apa bedanya? Dikumpulkan hardcopy dan upload diblog. Deadline: 26 Oktober 2010 17