Socket Programming - 2 (UDP)

Slides:



Advertisements
Presentasi serupa
Dosen: Nahot Frastian, M.Kom
Advertisements

Kelas A & B Jonh Fredrik Ulysses STMIK PALANGKARAYA - JFU
TCP mengatur aliran data gram dari lapisan di atasnya (lapisan aplikasi) hingga lapisan IP, sebagaimana datagram yang datang dari lapisan IP hingga ke.
JAVA Network Programming. Apa itu JAVA? ● Bahasa pemrograman berorientasi objek yang dikembangkan oleh Sun Microsystems sejak tahun ● Dikembangkan.
Java Progamming Operasi I/O
Pemrograman Jaringan Socket Programming Aurelio Rahmadian.
Konsep Dasar Protokol Jaringan
Komunikasi antar Proses
Sistem Komunikasi.
Komponen Class Item (2) As’ad Djamalilleil
Pemrograman Client Server
Pengenalan Pemrograman Jaringan Materi 1 Pemrograman Jaringan Dosen: Eko Prasetyo Teknik Informatika UMG 2012.
INTERNETWORKING PROTOCOL
Struktur Kode Aplikasi Java (1)
(TRANSMISSION CONTROL PROTOCOL/INTERNET PROTOCOL)
Socket Programming Hernando Ivan Teddy S.Kom. Pertemuan 6 Pemrograman Jaringan STMIK GI MDP PALEMBANG 2013.
Network Software (Perangkat Lunak Jaringan)
Network Layer : IPv4 Protocol
Socket Programming Isbat Uzzin.
Pengembang aplikasi memiliki kemampuan untuk memperbaiki beberapa parameter TCP, seperti buffer dan maksimum ukuran segmen maksimum Socket Programming.
UDP Socket Programming
UDP.
Lab. Simulasi Pertemuan XIV.
DASAR SOCKET PROGRAMMING
- PERTEMUAN 8- NETWORK PBO. Pengantar Java mengijinkan anda untuk mempermudah mengembangkan aplikasi yang mengerjakan berbagai pekerjaan melalui jaringan.
TCP Socket Programmning
TCP/IP SOCKET Sujoko.
ACL (Access List) By Kustanto.
Lebih Jauh Tentang IP Address
Internet Layer Pertemuan 5.
INTERNET LAYER.
Pertemuan-VI PROTOCOL JARINGAN
As’ad Djamalilleil Membangun Aplikasi Database Berbasis Client-Server Menggunakan JDBC dan MySQL – Bagian 2 As’ad.
SISTEM TERDISTRIBUSI CSG3L3 ~SPO~
Socket Programming - 1 (TCP)
Multithreading As’ad Djamalilleil
Java Remote Object Invocation (RMI)
Jaringan.
File Stream.
INTERNETWORKING PROTOCOL
Zaini, PhD Jurusan Teknik Elektro Universitas Andalas 2012
Referensi Model TCP/IP
Yuliana Setiowati Politeknik Elektronika Negeri Surabaya
Transport Layer Electronic Engineering Polytechnic Institut of Surabaya – ITS Kampus ITS Sukolilo Surabaya
Networking Belajar bagaimana menerapkan sebuah MIDlet yang mempunyai kemampuan koneksi ke dalam jaringan Membuat koneksi HTTP, HTTP Redirects, HTTPS,
Materi 6 Lapis Transport
Aplikasi berbasis teks
Pertemuan 2 SINTAKS BAHASA, TIPE DATA, DAN OPERATOR
Constructor dan Overloading
INPUT DATA, PERCABANGAN & PERULANGAN DENGAN JAVA
THREAD Pertemuan 9.
OPERASI FILE & EXCEPTION HANDLING
Socket Programming - 1 (TCP)
As’ad Djamalilleil Function (method) As’ad Djamalilleil
As’ad Djamalilleil Komponen Class Item (2) As’ad Djamalilleil
As’ad Djamalilleil Membangun Aplikasi Database Berbasis Client-Server Menggunakan JDBC dan MySQL – Bagian 2 As’ad.
Exception Handling (Penanganan Error)
MATERI PENDUKUNG PENGGUNAAN THROW
As’ad Djamalilleil Multithreading As’ad Djamalilleil
UNICAST unicast adalah pengiriman pesan ke satu tujuan jaringan host di jaringan switching paket. Istilah unicast dibentuk dengan analogi siaran istilah.
Budi Rahardjo PPAU Mikroelektronika ITB
INPUT DATA DI JAVA.
Komunikasi antar Proses
INTERNETWORKING Didi Juardi,ST.,M.Kom.
Budi Rahardjo PPAU Mikroelektronika ITB
TCP Socket Programmning
LAPISAN NETWORK.
UDP Socket Programming
Budi Rahardjo PPAU Mikroelektronika ITB
TCP Socket Programming
Transcript presentasi:

Socket Programming - 2 (UDP) As’ad Djamalilleil http://kampusku.my.id asad.kom@gmail.com

Datagram Protokol UDP menyediakan sebuah mode dari komunikasi jaringan dimana aplikasi-aplikasi saling mengirimkan paket-paket data yang disebut datagram Datagram adalah sebuah pesan independen yang dikirim lewat jaringan, dimana isi, kedatangan, maupun waktu tibanya tidak dijamin Class DatagramPacket dan DatagramSocket pada paket java.net menerapkan komunikasi datagram menggunakan protokol UDP

Class MulticastSocket dapat digunakan untuk mengirimkan DatagramPacket ke banyak penerima yang mendengar lewat MulticastSocket

Method class DatagramSocket Keterangan public DatagramSocket() throws SocketException Membuat socket datagram dan mengikatnya dengan port yang tersedia pada komputer host lokal public DatagramSocket(SocketAddress bindaddr) throws SocketException Membuat socket datagram, diikat ke alamat socket lokal yang ditentukan. Jika alamatnya diisi null, maka yang dibuat adalah socket yang tidak terikat port public DatagramSocket(int port) throws SocketException Membuat socket datagram dan mengikatnya ke port tertentu pada komputer host lokal public DatagramSocket(int port, InetAddress laddr) throws SocketException Membuat socket datagram, diikat ke alamat lokal yang ditentukan. Port local bernilai antara 0 s/d 65535 public void bind(SocketAddress addr) throws SocketException Mengikat DatagramSocket ini ke alamat dan port tertentu. Jika alamat bernilai null, maka sistem akan menggunakan port sementara dan alamat lokal untuk mengikat socket public void connect(InetAddress address, int port) Menghubungkan socket ke alamat remote dari socket ini. Ketika socket terhubung ke alamat remote, packet hanya dikirim atau diterima dari alamat tersebut. Defaultnya, socket datagram tidak terhubung

Method Keterangan public void connect(SocketAddress addr) throws SocketException Menghubungkan socket ini ke alamat socket remote (alamat IP dan nomor port) public void disconnect() Memutuskan atau menutup socket public InetAddress getInetAddress() Memberikan alamat dimana socket ini terhubung. Memberikan nilai null jika socket tidak terhubung public int getPort() Memberikan nomor port dimana socket ini terhubung. Memberikan nilai -1 jika socket tidak terhubung public void send(DatagramPacket p) throws IOException Mengirimkan paket datagram dari socket ini. DatagramPacket berisi informasi berupa data yang akan dikirim, panjangnya, alamat IP dari host remote, dan nomor port pada host remote public void receive(DatagramPacket p) throws IOException Menerima paket datagram dari socket ini. Buffer dari DatagramPacket akan terisi dengan data yang diterima. Paket datagram juga berisi alamat IP pengirim, dan nomor port dari komputer pengirim public InetAddress getLocalAddress() Menerima alamat lokal dimana socket terhubung

Method class DatagramPacket Keterangan DatagramPacket(byte[] buf, int length) Membuat objek DatagramPacket untuk menerima paket dengan panjang yang ditentukan DatagramPacket(byte[] buf, int length, InetAddress address, int port) Membuat paket datagram untuk mengirim paket dengan panjang dan nomor port pada host yang ditentukan DatagramPacket(byte[] buf, int length, SocketAddress address) public InetAddress getAddress() Memberikan alamat IP dari komputer ke tujuan pengiriman datagram atau dari mana datagram tersebut diterima public int getPort() Memberikan nomor port pada host remote dimana datagram ini dikirim atau darimana datagram tersebut diterima public byte[] getData() Memberikan data dalam buffer. Data yang diterima atau yang dikirim public int getLength() Memberikan panjang dari data yang dikiirm atau yang diterima

Method Keterangan public void setAddress(InetAddress iaddr) Menentukan alamat IP dari komputer dimana datagram akan dikirim public void setPort(int iport) Menentukan nomor port pada host remote dimana datagram akan dikirim public void setSocketAddress(SocketAddress address) Menentukan alamat IP dan nomor port dari host remote dimana datagram akan dikirim public SocketAddress getSocketAddress() Mendapatkan alamat IP dan nomor port dari host remote dimana datagram akan dikirim public void setData(byte[] buf) Mengisi buffer atau paket dengan data yang akan dikirim public void setLength(int length) Menentukan panjang buffer atau paket yang akan dikirim

Contoh aplikasi client import java.net.*; import java.io.*; public class UDPClient{ public static void main(String args[]){ // args give message contents and server hostname DatagramSocket aSocket = null; try { aSocket = new DatagramSocket(); byte[] m = args[0].getBytes(); InetAddress aHost = InetAddress.getByName(args[1]); int serverPort = 6789; DatagramPacket request = new DatagramPacket(m, m.length, aHost, serverPort); aSocket.send(request); byte[] buffer = new byte[128]; DatagramPacket reply = new DatagramPacket(buffer, buffer.length); aSocket.receive(reply);

System.out.println("Reply: " + new String(reply.getData())); } catch (SocketException e){ System.out.println("Socket: " + e.getMessage()); catch (IOException e){ System.out.println("IO: " + e.getMessage()); finally { if(aSocket != null) aSocket.close();

Contoh aplikasi server import java.net.*; import java.io.*; public class UDPServer{ public static void main(String args[]){ DatagramSocket aSocket = null; try{ aSocket = new DatagramSocket(6789); byte[] buffer = new byte[128]; while(true){ DatagramPacket request = new DatagramPacket(buffer, buffer.length); aSocket.receive(request); System.out.println(new String(request.getData())); DatagramPacket reply = new DatagramPacket(request.getData(), request.getLength(), request.getAddress(), request.getPort()); aSocket.send(reply); }

} catch(SocketException e){ System.out.println("Socket: " + e.getMessage()); catch(IOException e){ System.out.println("IO: " + e.getMessage()); finally{ if (aSocket != null) aSocket.close();

Contoh aplikasi peer-to-peer import java.net.*; import java.io.*; public class MulticastPeer{ public static void main(String args[]){ // args give message contents & destination multicast group (e.g. "228.5.6.7") MulticastSocket s =null; try { InetAddress group = InetAddress.getByName(args[1]); s = new MulticastSocket(6789); s.joinGroup(group); byte[] m = args[0].getBytes(); DatagramPacket messageOut = new DatagramPacket(m, m.length, group, 6789); s.send(messageOut); byte[] buffer = new byte[128]; for(int i=0; i< 3; i++) { // get messages from others in group

DatagramPacket messageIn = new DatagramPacket(buffer, buffer.length); s.receive(messageIn); System.out.println("Received:" + new String(messageIn.getData())); } s.leaveGroup(group); catch(SocketException e){ System.out.println("Socket: " + e.getMessage()); catch (IOException e){ System.out.println("IO: " + e.getMessage()); finally { if(s != null) s.close();