Network Programming
Oleh:
Outline
• Pengantar Jaringan Komputer • Pemrograman Client/Server • Dasar networking di Java
• Socket: class Socket dan SocketServer
– Mengimplementasikan network client
– Mengimplementasikan network client
– Mengimplementasikan a network server
• Datagram: Class DatagramPacket dan
DatagramSocket
• URL dan URLConnection class
Protokol
•
Satuan aliran atau mekanisme dimana dua
komputer atau lebih dapat saling
berkomunikasi
•
Protokol mendefinisikan suatu format paket
•
Protokol mendefinisikan suatu format paket
data yang akan dipertukarkan untuk
menunjang mekanisme tersebut
•
Protokol yang banyak digunakan adalah TCP/IP
Protokol TCP/IP
• Memiliki alamat unik untuk diatur dengan protokol IP dengan panjang 32 bit
• Memiliki port yang digunakan sebagai mekanisme untuk mengidentifikasi sebuah proses
untuk mengidentifikasi sebuah proses • Alamat port 0 – 65535
– Port 0 -1023 well known port
Misal: port 80 untuk http
– Port 1024 – 49151 registered port
Tipe pemrograman java
•
Connection Oriented
Connection Oriented
•
Memberi kepastian bahwa paket yang
dikirimkan dapat diterima oleh proses aplikasi
yang dituju dalam suatu urutan waktu
dikirimkan.
•
Analog dengan hubungan jaringan telepon
•
Pada TCP/IP, protokol connection oriented
adalah TCP.
•
Di java diimplementasikan dengan class
Socket
Connectionless
• Mengirim paket secara individu
• Keneksi antara pengirim dan penerima tidak harus terpelihara setelah paket diterima atau dikirim
• Pada TCP/IP, protokol connectionless adalah UDP. • Connectionless lebih cepat daripada Connection • Connectionless lebih cepat daripada Connection Oriented, namun connectionless tidak menjamin pengiriman
• Di java diimplementasikan dengan class
Program Client/Server
•
Melibatkan dua hal:
– Client – Server
•
Client adalah program yang terkoneksi dengan
•
Client adalah program yang terkoneksi dengan
sistem untuk menerima layanan
•
Server adalah program yang berjalan pada
Networking in Java
• Networking adalah kemampuan antar komputer
untuk saling berkomunikasi dan bertukan informasi. • Menggunakan class-class yang ada di package
java.net
• Package java.net mendukung berbagai macam • Package java.net mendukung berbagai macam
operasi networking, termasuk koneksi dan retrieving file dengan HTTP dan FTP, seperti yang dilakukan
InetAddress
• Class yang berfungsi untuk mengambil informasi alamat IP suatu komputer
• Pada java.net.InetAddress
• Bersifat static dan tidak memiliki konstruktor.
• Menyediakan fungsi yang dapat digunakan untuk • Menyediakan fungsi yang dapat digunakan untuk
mendapatkan alamat IP.
– getByName (namahost)
menerima sebuah string nama host dan mengembalikan alamat IP sesungguhnya
– getLocalHost ()
akan mengembalikan informasi alamat IP dan nama host pada komputer lokal