Pemrograman Socket TCP dan Socket UDP

dokumen-dokumen yang mirip
PEMROGRAMAN JARINGAN

Pemrograman Jaringan

TRANSPORT LAYER DEFINISI

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

JARINGAN KOMPUTER Layanan Dari TCP dan UDP Protocol

TRANSPORT LAYER. Aplikasi dan Operasi pada TCP dan UDP

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

Deskripsi Layanan Protokol TCP dan UDP. (Tugas Mata Kuliah Jaringan Komputer) Nama: Azwar Hidayat NIM: Kelas: SK 4 C

A. TUJUAN PEMBELAJARAN

Fungsi Lapis Transport

Fungsi Lapis Transport

Transport Layer. Oleh : Akhmad Mukhammad

Pemrograman Jaringan 9. Connectionless Oriented Programming

: M Rasyid Darmawan NIM : TCP. Pengertian TCP. Karakteristik TCP

Pemrograman Jaringan

Minggu 6 Transport Layer

BAB II DASAR TEORI. Teknologi TCP/IP adalah hasil penelitian dan pengembangan protocol

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

TRANSPORT LAYER. Fikri Fadlillah, ST

Arsyad Dwiyankuntoko Pendahuluan. Lisensi Dokumen:

Modul 10 TCP/IP Lanjutan

Bab 5: Lapisan Transport

Sejarah TCP/IP TCP/IP

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

Pemrograman Jaringan

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

Refrensi OSI

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

BAB 2: INTRODUCTION TCP/IP

Materi Mata Kuliah Jaringan Komputer Universitas Indo Global Mandiri

Materi 7 Layer 4 Transport

adalah sebuah aturan atau standar yang mengatur hubungan, komunikasi, dan perpindahan data antara dua atau lebih titik komputer dalam Komunikasi Data

TRANSPORT LAYER. Oleh : Reza Chandra

MODUL 2 WIRESHARK Protokol TCP

MODEL REFERENSI OSI & TCP/IP. Budhi Irawan, S.Si, M.T

Pemrograman Socket menggunakan UDP

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

Komunikasi Data STMIK AMIKOM Yogyakarta Khusnawi, S.Kom, M.Eng. TCP/IP Architecture

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

Komunikasi end-to-end logik Segmenting enkapsulasi port address Reassembling data Identifikasi aplikasi (port-addressing)

Teknologi Streaming Streaming

We Can Start From Nothing

BAB II DASAR TEORI. Protokol adalah seperangkat aturan yang mengatur pembangunan koneksi

2.1. Sistem Komunikasi

MODUL 2 WIRESHARK Protokol TCP

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

LAPISAN TRANSPORT. Budhi Irawan, S.Si, M.T

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

Pertemuan III. Referensi Model TCP/IP

BAB II LANDASAN TEORI

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

Memahami cara kerja TCP dan UDP pada layer transport

Transport Layer. Flow Control

Tugas Jaringan Komputer

BAB II DASAR TEORI. 2.1 Pentingnya Efisiensi Energi pada Perangkat Komunikasi Bergerak

Modul 9 Protokol Transport (TCP/UDP)

User Datagram Protocol (UDP)

Pertemuan III. Referensi Model TCP/IP

BAB 4 PROTOKOL JARINGAN KOMPUTER

10.1 Konsep dasar jaringan

Pemrograman Socket menggunakan TCP

SISTEM PROTOKOL PADA JARINGAN KOMPUTER

Protokol TCP/IP. Oleh: Eko Marpanaji

ARSITEKTUR PROTOKOL TCP/IP

26/09/2013. Pertemuan III. Elisabeth, S.Kom - FTI UAJM. Referensi Model TCP/IP

1. Menggunakan model OSI dan TCP/IP dan protokol-protokol yang terkait untuk menjelaskan komunikasi data dalam network. 2. Mengidentifikasi dan

Tugas Jaringan Komputer

REVIEW MODEL OSI DAN TCP/IP

JURUSAN SISTEM KOMPUTER FAKULTAS ILMU KOMPUTER UNIVERSITAS SRIWIJAYA

TCP dan Pengalamatan IP

IP Address. Dedi Hermanto

MODEL OSI DAN DOD. Referensi Model OSI (Open System Interconnections).

HTTP Protocol Ketika sebuah alamat web (atau URL) yang diketik ke dalam web browser, web browser melakukan koneksi ke web service yang berjalan pada

Layer Transport OSI. Network Fundamentals Chapter 4. ITE PC v4.0 Chapter Cisco Systems, Inc. All rights reserved.

DHCP client merupakan mesin klien yang menjalankan perangkat lunak klien DHCP yang memungkinkan mereka untuk dapat berkomunikasi dengan DHCP Server.

Kelompok 1. Anggota : BOBBY KURNIAWAN NIA FITRIANA ARI FEBRYANSYAH DIAN ULUMIA ORIN HARITSA YASSER

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

AMALIA ZAKIYAH 1 D4LJ-TI

TUGAS JARINGAN KOMPUTER

Pemrograman Jaringan 6.

CARA KERJA TCP/IP. Bab 1. Pendahuluan

Networking Model. Oleh : Akhmad Mukhammad

KOMUNIKASI PENGANTAR DATA TERDISTRIBUSI. Materi: 1. Komunikasi Data 2. Protocol 3. Remote Procedure Call 4. Object Remote

Connection Oriented. Kholid F.

A I S Y A T U L K A R I M A

Modul 2. Network Analysis Tool, Application Layer Protocol, dan Transport Layer Protocol

Protokol Jaringan. Oleh : Tengku Mohd Diansyah,ST,M.Kom

Cara kerja aplikasi yang menggunakan TCP dapat digambarkan oleh di bawah ini :

IMPLEMENTASI APLIKASI CHEPPYCHAT UNTUK JARINGAN KOMPUTER PADA LOCAL AREA NETWORK

BAB 2 DASAR TEORI. Iklan berasal dari sebuah kata dalam bahasa melayu, yaitu i lan atau i lanun

TCP/IP (singkatan dari "Transmission Control Protocol")

Dosen Pengampu : Muhammad Riza Hilmi, ST.

Seminar Proposal Tugas Akhir I Deteksi Serangan Denial of Service Pada Mesin Virtual Dengan Memanfaatkan Kelemahan Pada Transport Layer Protocol

1. Pendahuluan. 2. Tinjauan Pustaka

Komunikasi Antar Proses

Dasar Dasar Jaringan

Monitoring Jaringan. Rijal Fadilah, S.Si

APPLICATION LAYER. Oleh : Reza Chandra

Application Layer. Electronic Engineering Polytechnic Institut of Surabaya ITS Kampus ITS Sukolilo Surabaya 60111

Transkripsi:

Pemrograman Socket TCP dan Socket UDP Makalah ini disusun guna memenuhi tugas mata kuliah Pemrograman jaringan Yang diampu oleh Bapak Mahmudi, S.Kom Oleh Amalia Eka Hasti Adhana (8010022) Devi Mega Sari (8010039) Hendrik Hidayat (8010063) Ita Amalia (8010073) FAKULTAS TEKNIK DAN ILMU KOMPUTER UNIVERSITAS SAINS AL-QUR AN JAWA TENGAH DI WONOSOBO 2013

PENDAHULUAN A. Latar Belakang Masalah Perkembangan teknologi informasi tidak lepas dari pesatnya pertumbuhan pengguna internet. Internet adalah sistem jaringan komputer yang terhubung secara global yang dapat melakukan pertukaran data. Dalam melakukan transkasinya dikenal paradigma client-server; yang menitikberatkan pada pendistribusian data ke dua pihak: kepada klien maupun server. Klien adalah komponen yang meminta request panggilan kepada server. Sementara server adalah komponen yang memproses request dari klien; dan langsung mengembalikan hasilnya kepada klien. Sebuah server dapat menerima banyak request dari klien. Client-Server merupakan sebuah model komputerisasi dimana sebuah aplikasi client dijalankan di komputer desktop atau komputer pribadi yang mengakses informasi pada server atau host yang terletak di lain tempat. Bagian dari aplikasi yang dijalankan di client biasanya digunakan untuk mengoptimalkan interaksi dengan user, dimana server menyediakan proses tersentralisasi dan bekerja secara multiuser Socket adalah sebuah cara untuk berkomunikasi dengan program atau node lain menggunakan file deskriptor. Penggunaan socket programming memungkinkan adanya komunikasi antara client dan server. Salah satu contoh sederhana penggunaan socket programming adalah pembuatan program untuk chatting. ada dua jenis socket yang bisa digunakan untuk membangun aplikasi, yakni TCP Socket dan UDP Socket. Perbedaan utamanya adalah, di model TCP digunakan konsep connection oriented dan reliable data transfer, sedangkan di model UDP digunakan konsep connectionless oriented dan unreliable data transfer.

B. Rumusan Masalah Rumusan Masalah yang dapat diambil dari aar belakang diatas adalah: 1. Apa pengertian socket 2. Bagaimana pengaplikasian Socket pada Java 3. Apa pengertian socket UDP dan TCP (pengertian, karakteristik, kelebihan dan kekurangan, cara penggunaan, contoh pengaplikasiannya) 4. Apa Perbedaan Socket TCP dan UDP 5. Contoh Aplikasi TCP dan UDP dengan Java BAB II

PEMBAHASAN A. Pengertian Socket Socket adalah salah satu cara untuk komunikasi antar komputer, umumnya lewat network atau internet. Socket biasa digunakan untuk pemrograman berbasis client-server yang dapat menggunakan socket TCP/IP atau socket UDP Socket berfungsi sebagai jalan untuk melakukan komunikasi antar mesin seperti transfer data dan informasi jaringan. Untuk berkomunikasi dengan server, client harus tahu nomor IP server begitu juga nomor port yang dituju, nomor port menunjukkan service yang dijalankan. Contoh port 23 untuk Telnet Server, port 25 untuk Mail Server dan port 80 untuk Web Server. Dalam hal ini aplikasi di client sudah mengetahui port yang akan dituju. Contoh program aplikasi di client yang meminta service di server adalah ftp, telnet, ssh. Program yang berjalan di server, akan berjalan sepanjang waktu (disebut sebagai daemon) sampai mesin/service dimatikan, menunggu request dari client sesuai service yang diminta B. Socket Java

Model pemrograman client-server menggunakan dari dua macam koneksi pada layer 4/ layer transport OSI, yaitu connection oriented dan connectionless oriented. Untuk connection oriented menggunakan protokol TCP (Transmission Control Protocol). Sedangkan connectionless oriented menggunakan UDP (User Datagram Protocol ). Pada beberapa aplikasi java telah disediakan paket java.net yang berisi kelas-kelas dan interface yang menyediakan API (Application Programming Interface) level rendah (Socket, ServerSocket,DatagramSocket) dan level tinggi (URL, URLConnection). Berikut adalah contoh dari kelas Socket berikut method dan eksepsi error yang tersedia. Socket (String host, int port, InetAddress localaddr, intlocalport); membuat sebuah socket dan mengkoneksikannya ke port yang dituju pada alamat IP yang disebutkan pada parameter address atau nama host. Selain itu juga akan dilakukan bind socket ke alamat lokal dan port lokal. Hal ini dilakukan jika koneksi antara client dan server membutuhkan nomor port yang sudah ditentukan. Methods : getinetaddress() : untuk mendapatkan nama host yang dituju dan alamat IPnya getport() : untuk mendapatkan nomor remote host getlocalport(): untuk mendapatkan nomor port localhost getlocaladdress(): untuk mendapatkan alamat local dimana socket digunakan getinputstream(): mengembalikan objek input stream dari socket getoutputstream(): mengembalikan objek output stream ke socket setsotimeout(int timeout) dan getsotimeout() : Kedua method tersebut digunakan untuk memberi (set) dan mengambil (get) nilai opsi Socket untuk time out block (dalam milidetik) reading dari socket (SO_TIMEOUT).

Jika dalam waktu timeout tidak mendapat suatu nilai maka, akan dilemparkan ke exception java.net.sockettimeoutexception. Nilai default timeoutnya adalah 0, yang berarti tanpa batas. Exceptions : SocketException : Kelas ini merupakan kelas yang diturunkan dari kelas IOException. Kelas exception ini dipanggil atau dipicu ketika ada kegagalan dalam pemakaian socket, sebagai contoh adalah kegagalan dalam protokol TCP. Salah satu penyebabnya yang mungkin terjadi adalah ketika port yang akan digunakan sudah digunakan sebelumnya pada localhost. Penyebab yang lain adalah user tidak dapat melakukan bind ke port yang dituju. Misalnya saja, Anda ingin menggunakan port 80 untuk aplikasi Anda, namun ternyata pada komputer Anda tersebut sudah berjalan HTTP Server yang juga menggunakan port 80. Bila hal ini terjadi, maka JVM akan melemparkan kegagalan yang ada ke kelas exception SocketException. BindException : Exception ini akan dipanggil ketika ada port lokal yang akan digunakan sudah terpakai oleh yang lain, atau ada kegagalan dalam permintaan untuk menggunakan alamat. ConnectException : Exception ini akan dipanggil ketika sebuah koneksi ditolak oleh host yang dituju, oleh karena tidak ada proses yang siap menerima data pada port yang dituju. NoRouteToHostException: Koneksi yang akan dibangun tidak dapat dipenuhi oleh karena melebihi waktu timeout yang tersedia atau host yang dituju tidak dapat dicapai (unreachable). C. Tipe-tipe Socket 1. User Datagram Protocol ( UDP ) a. Apa itu UDP

UDP (User Datagram Protocol) adalah salah satu protocol lapisan transport TCP/IP yang mendukung komunikasi yang tidak andal (unreliable), tanpa koneksi (connectionless) antar host dalam jaringan yang mengunakan TCP/IP. Dalam UDP tidak ada kontrol kemacetan koneksi (congestion control), artinya UDP dapat mengirimkan per segment tanpa dipengaruhi oleh kesibukan jaringan. UDP digunakan untuk pengiriman data secara cepat tanpa memperhatikan ketepatan pengiriman data. UDP tidak pernah digunakan untuk mengirim data penting seperti halaman web, informasi database, dan lain-lain. UDP biasanya digunakan untuk streaming audio dan video. b. Karakteristik UDP Connectionless (tanpa koneksi): Pesan-pesan UDP akan dikirimkan tanpa harus dilakukan proses negosiasi koneksi antara dua host yang hendak berukar informasi. Hal ini berarti bahwa suatu paket yang dikirim melalui jaringan dan mencapai komputer lain tanpa membuat suatu koneksi. Sehingga dalam perjalanan ke tujuan paket dapat hilang karena tidak ada koneksi langsung antara kedua host. Unreliable (tidak andal): Pesan-pesan UDP akan dikirimkan sebagai datagram tanpa adanya nomor urut atau pesan acknowledgment. Protokol lapisan aplikasi yang berjalan di atas UDP harus melakukan pemulihan terhadap pesan-pesan yang hilang selama transmisi. Umumnya, protokol lapisan aplikasi yang berjalan di atas UDP mengimplementasikan layanan keandalan mereka masing-masing, atau mengirim pesan secara periodik atau dengan menggunakan waktu yang telah didefinisikan. c. Aplikasi UDP Digunakan untuk multimedia streaming, yang sangat memberikan toleransi kehilangan segment cukup baik dan yang sangat tidak sensitive terhadap kerusakan atau kehilangan segment. Contoh protokol aplikasi yang menggunakan UDP :

o DNS (Domain Name System) 53 o SNMP, (Simple Network Management Protocol) 161, 162 o TFTP (Trivial File Transfer Protocol) 69 o SunRPC port 111. d. Kelebihan UDP Tidak perlu adanya setup koneksi terlebih dahulu (hal ini dapat menyebabkan tambahan delay) sederhana, artinya antara penerima dan pengirim tidak perlu menjaga session atau status koneksi ukuran header segment sederhana tidak perlu kontrol kemacetan koneksi, artinya UDP dapat mengirimkan per segment tanpa dipengaruhi oleh kesibukan jaringan e. Kelemahan UDP segmen UDP mungkin akan hilang paket diterima mungkin dalam keadaan yang tidak urut. Jika paket yang diterima tidak urut, paket akan dibuang. f. Pemrograman Socket mengguanakan UDP

1) Client membaca inputan dari keyboard, kemudian mengirimkan hasilnya ke server melalui socket-nya. 2) Server membaca data yang dikirim oleh client di connection socket 3) Server mengubah data menjadi huruf besar 4) Server mengirimkan data yang telah diubah menuju client melalui socket-nya. 5) Client membaca data yang dikirim oleh server dari client socketnya. Kemudian menampilkan data tersebut di monitor 2. Transport Layer Protocol ( TCP ) a. Apa Itu TCP TCP adalah komunikasi yang berorientasi koneksi (Connection oriented communication). karena TCP menerapkan model koneksi connection oriented, maka ketika setup data sudah terbentuk, antara pengirim dan penerima dapat saling mempertukarkan data secara full duplex dengan tetap menjaga session koneksi diantara penerima dan pengirim (stateful). Untuk dapat melaksanakan mekanisme tersebut, di bawah ini adalah contoh, bagaimana mekanisme threeway handshake terjadi pada TCP dengan menggunakan field sequence number dan acknowledge number : b. Karakteristik TCP

Connection-oriented : Suatu arsitektur/mekanisme komunikasi data di mana dua perangkat yang akan saling berkomunikasi diharuskan untuk membuat sebuah sesi (session) terlebih dahulu. Reliabel : Keandalan yang dimiliki oleh protokol ini disebabkan karena beberapa mekanisme seperti : Checksum, Duplicate Data Detection, Retransmisson, Sequencing, Timers. Stream data transfer : TCP akan mengelompokkan byte-byte yang sebelumnya tidak terstruktur ke dalam bentuk segmen untuk kemudian dikirimkan ke IP. Layanan ini memberikan keuntungan bagi aplikasiaplikasi karena mereka tidak perlu lagi membuat blok- blok data. Efficient flow control : Ketika mengirim ulang acknowledgement ke alamat asal, proses TCP yang menerima mengindikasikan nomor urutan yang bisa diterimanya tanpa harus meng-over flow buffer internal miliknya. Full-duplex operation : TCP bisa mengirim dan menerima dalam waktu yang bersamaan. Multiplexing : Komunikasi antar upper-layer yang terjadi secara simultan bisa dimultiplexikan melalui satu koneksi tunggal c. Kelebihan TCP adalah Error Recovery Pengirim dan penerima juga melengkapi data dengan sejumlah informasi yang bisa digunakan untuk memeriksa data yang dikirimkan bebas dari kesalahan. Jika ditemukan kesalahan pada paket data yang diterima, maka penerima tidak akan menerima data tersebut. Pengirim akan mengirim ulang paket data yang mengandung kesalahan tadi. Namun hal ini dapat menimbulkan delay yang cukup berarti. Flow Control Flow control menentukan kapan data harus dikirim kembali, dan kapan menghentikan aliran data paket sebelumnya, sampai berhasil ditransfer. Hal ini karena jika paket data berhasil dikirim, tabrakan

dapat terjadi. Ketika ini terjadi, maka klien meminta kembali paket dari server sampai seluruh paket lengkap di transfer dan identik dengan aslinya. d. Kelemahan TCP Memungkinkan buffer overflow attack. Korban adalah aplikasi yang tidak di tulis dengan baik, memanfaatkan kesalahan programming untuk mengeksekusi kode sisipan, dapat dieksploitasi secara remote atau lokal (tergantung aplikasi), dan spesifik pad prosesor dan system operasi tertentu. Memungkinkan terjadinya denial of service. Denial of sevice menjadikan servis tidak dapat di gunakan lagi. Target denial of service, yaitu koneksi jaringan penghubung antarservis dan user, system operasi yang di gunakan dan aplikasi yang menyediakan servis. e. Contoh protokol aplikasi yang menggunakan TCP Telnet/TeleNetwork adalah remote login yang dapat terjadi di internet karena ada service dari protocol TELNET. Dengan Telnet memungkinkan kita untuk mengakses komputer lain secara remote melalui internet. FTP (File Transfer Protocol) f. Pemrograman Socket Menggunakan TCP Cara kerja aplikasi yang menggunakan TCP dapat digambarkan oleh di bawah ini :

Detail dari proses tersebut adalah : 1. Untuk bisa melakukan koneksi client server, program server harus berjalan terlebih dahulu 2. Di sisi server disediakan sebuah socket, yang disebut welcoming socket yang fungsinya untuk mendeteksi adanya permintaan koneksi dari sisi client. 3. Di sisi client terdapat client socket. Jika ingin menghubungi server, maka melalui client socket-nya, client membuat inisialisai koneksi ke welcoming socket milik server, dengan mode three-way handshake. 4. Setelah welcoming socket menerima inisialisasi koneksi dari client socket, aplikasi server akan membuat connection socket di sisi server. Dengan connection socket ini, client socket dan connection socket berinteraksi satu sama lain untuk mengirim dan menerima data.

5. Client membaca data yang dikirim oleh server dari client socketnya. Kemudian menampilkan data tersebut di monitor. D. Perbedaan TCP dan UDP TCP UDP Connection-Oriented (koneksi bersambungan) : Sebelum data dapat ditransmisikan antara dua host, dua proses yang berjalan pada lapisan aplikasi harus melakukan negosiasi untuk membuat sesi koneksi terlebih dahulu. Koneksi TCP ditutup dengan menggunakan proses terminasi koneksi TCP (TCP connection termination). Connectionless (tanpa koneksi): Pesan-pesan UDP akan dikirimkan tanpa harus dilakukan proses negosiasi koneksi antara dua host yang hendak berukar informasi. Reliable (dapat diandalkan): Data yang dikirimkan ke sebuah koneksi TCP akan diurutkan dengan sebuah nomor urut paket dan akan mengharapkan paket positive acknowledgment dari penerima. Jika tidak ada paket Acknowledgment dari penerima, maka segmen TCP (protocol data unit dalam protokol TCP) akan ditransmisikan ulang. Pada pihak penerima, segmen-segmen duplikat akan diabaikan dan segmen-segmen yang datang tidak sesuai dengan urutannya akan diletakkan di belakang untuk mengurutkan segmen-segmen TCP. Untuk menjamin integritas setiap segmen TCP, Unreliable (tidak andal): Pesanpesan UDP akan dikirimkan sebagai datagram tanpa adanya nomor urut atau pesan acknowledgment. Protokol lapisan aplikasi yang berjalan di atas UDP harus melakukan pemulihan terhadap pesan-pesan yang hilang selama transmisi. Umumnya, protokol lapisan aplikasi yang berjalan di atas UDP mengimplementasikan layanan keandalan mereka masingmasing, atau mengirim pesan secara periodik atau dengan menggunakan waktu yang telah didefinisikan.

public class TCPprofilClient { //private static String strhost; private static InetAddress host; private static final int PORT = 1745; TCP mengimplementasikan penghitungan TCP Checksum. Memiliki layanan flow control: Untuk mencegah data terlalu banyak dikirimkan pada satu waktu, yang akhirnya membuat "macet" jaringan internetwork IP, TCP mengimplementasikan layanan flow control yang dimiliki oleh pihak pengirim yang secara terus menerus memantau dan membatasi jumlah data yang dikirimkan pada satu waktu. Untuk mencegah pihak penerima untuk memperoleh data yang tidak dapat disangganya (buffer), TCP juga mengimplementasikan flow control dalam pihak penerima, yang mengindikasikan jumlah buffer yang masih tersedia dalam pihak penerima Melakukan segmentasi terhadap data yang datang dari lapisan aplikasi. UDP tidak menyediakan mekanisme flow-control, seperti yang dimiliki oleh TCP. UDP tidak menyediakan mekanisme segmentasi data yang besar ke dalam segmen-segmen data, seperti yang terjadi dalam protokol TCP. E. Contoh Pemrograman Socket TCP dan UDP pada Java 1. UTPProfilClient import java.io.*; import java.net.*; import java.util.*;

public static void main(string[] args) { System.out.println("Membuka Socket...\n"); try{ UTPProfilServer import java.io.*; import java.net.*; import java.util.*; public class TCPprofilServer { private static ServerSocket servsock; private static final int PORT = 1745;

2. UDPserver import java.net.*; import java.io.*; import java.util.*; public class UDPServer { public static void main(string[] args) {

UDPClient

import java.net.*; import java.io.*; import java.util.*; public class UDPClient { public static void main (String args[ ]) { try{ // buat socket UDP untuk port 2000 DatagramSocket socket = new DatagramSocket(2000); // buat paket UDP yang berisi buffer 256 byte DatagramPacket packet = new DatagramPacket( new byte[256], 256 ); // terima paket ini adalah operasi terblok socket.receive(packet); // tampilkan informasi paket InetAddress remote_addr = packet.getaddress(); System.out.println ("Pengirim : " + remote_addr.gethostaddress( ) ); System.out.println ("dari Port: " + packet.getport()); // tampilkan isi paket ByteArrayInputStream bin = new ByteArrayInputStream(packet.getData()); for (int i=0; i < packet.getlength(); i++) { int data = bin.read(); if (data == -1) break; else System.out.print ( (char) data) ; } socket.close( ); } catch (IOException e) { System.out.println ("Error - " + e); } } //akhir dari main() } //akhir dari class BAB III

PENUTUP A. Kesimpulan Socket adalah salah satu cara untuk komunikasi antar komputer, umumnya lewat network atau internet. UDP (User Datagram Protocol) adalah salah satu protocol lapisan transport TCP/IP yang mendukung komunikasi yang tidak andal (unreliable), tanpa koneksi (connectionless) antar host dalam jaringan yang mengunakan TCP/IP. TCP adalah komunikasi yang berorientasi koneksi (Connection oriented communication). Perbedaan utamanya antara keduanya adalah, di model TCP digunakan konsep connection oriented dan reliable data transfer, sedangkan di model UDP digunakan konsep connectionless oriented dan unreliable data transfer.