Arnanda Mdl2

Anda mungkin juga menyukai

Anda di halaman 1dari 8

PEMROGRAMAN JARINGAN

LAPORAN PRAKTIKUM 2 SOCKET

Disusun Oleh :
Arnanda Fauzan Helmy
1155201122

DOSEN : Bibit W.J. M.Eng


PROGRAM STUDI INFORMATIKA
SEKOLAH TINGGI TEKNOLOGI DUMAI (STTD)
2014 2015

PRATIKUM
Mata Kuliah/SKS
Semester
Modul
Jumlah Pertemuan

: Pemograman Jaringan (TINF-326)/1


: 7 (Tujuh)
: II Pemograman Socket
: 3 SKS

A. Teori
Socket adalah sebuah abstraksi perangkat lunak yang digunakan sebagai suatu
"terminal" dari suatu hubungan antara dua mesin atau proses yang saling berinterkoneksi.
Pemrograman socket mengakses fitur-fitur sistem operasi dengan mengimplementasikan
antarmuka tingkat rendah dalam komunikasi data (melalui socket). Penggunaannya
memerlukan interaksi antara server dan client. Beberapa perintah (sintaks) dalam PHP yang
berkaitan dengan socket adalah sebagai
berikut :

socket_create ($domain , $type , $protocol)


contoh : socket(AF_INET, SOCK_STREAM, 0)
keterangan : untuk membuat socket dengan penjelasan AF_INET untuk penggunaan
Internet Protocol (IP) versi 4, SOCK_STREAM untuk pengiriman data stream diantaranya
melalui Transmission Control Protocol (TCP), dan nol sebagai tipe
protokol TCP yang digunakan.

socket_bind ($socket , $address, $port)


contoh : socket_bind($socket, $host, $port)
keterangan : untuk seting alamat socket yang dibuat di server dengan penjelasan
$socket sebagai variabel pembuatan socket, $address berupa nomor IP server dan $port
berupa nomor port.

socket_listen ( resource $socket [, $backlog])


contoh : socket_listen($socket,3) keterangan : untuk mendeteksi kedatangan data ke
server dari klien dengan penjelasan
$socket sebagai variabel pembuatan socket dan tiga sebagai jumlah maksimum antrian

koneksi (boleh ada atau tidak ada).

socket_connect (resource $socket , $address, $port)


contoh : socket_connect($socket, $host, $port)
keterangan : untuk menghubungi server socket dengan penjelasan $socket sebagai
variabel pembuatan socket, $address berupa nomor IP server dan $port berupa nomor
port.

socket_accept ($socket)
contoh : socket_accept($socket, $host, $port)
keterangan : untuk menerima data di server dengan penjelasan $socket sebagai variabel
pembuatan socket..

socket_write ( resource $socket , $buffer[, $length])


contoh : socket_write($socket, "Halo", 3)
keterangan : untuk menulis dan mengirim pesan / data dengan penjelasan $socket
sebagai variabel pembuatan socket, $buffer sebagai pesan yang akan dikirim dan tiga
sebagai jumlah koneksi yang diperbolehkan (boleh ada atau tidak ada).

socket_read ( resource $socket , $length)


contoh : socket_read ($socket, 1024)
keterangan : untuk membaca pesan / data dengan penjelasan $socket sebagai variabel
pembuatan socket dan $length adalah maksimum jumlah byte data yang bisa dibaca.

socket_close ( resource $socket )


contoh : socket_close($socket)
keterangan : berguna untuk menutup / hapus socket yang telah dibuat.

B. Pembahasan
Kegiatan yang dilakukan selama praktikum berlangsung :
Urutan cara pembuatan
1. Buat program socket server dulu.
2. Buat program socket client.
3. Jalankan socket server dulu di salah satu browser (setelah dijalankan, akan berlaku
menunggu dan belum ada tampilan). Jika muncul pesan kesalahan selain salah
tulis, ada beberapa kemungkinan yaitu

Nomor port sudah dipakai program lain, maka ganti nomornya.

Apache tidak merespon, maka restart Apache (jika tidak mau di-restart dari
programnya, restart dari control panel sistem operasi (Windows XP di
Control Panel | Administrative Tools | Services kemudian cari dan hentikan

layanan Apache, setelah berhenti tunggu sebentar lalu jalankan lagi))


4. Jalankan program socket client.
5. Lihat hasilnya

Contoh program (klien socket) yaitu :


socketserver.php
<?php
echo "<h2>Server</h2>";
$soketserver=socket_create(AF_INET, SOCK_STREAM, 0) or die("Tak bisa bikin
soket server!");
//---khusus server
socket_bind($soketserver, "localhost", 9002) or die("Tak bisa seting alama
t soket server!");
socket_listen($soketserver) or die("Tak bisa memeriksa kedatangan data dar
i klien!");
echo "Memeriksa kedatangan data...</br>";
$trima=socket_accept($soketserver) or die("Tak bisa menerima data dari kli
en!");
//---end
$baca=socket_read($trima, 1024) or die("Tak bisa baca data dari klien!");

echo $baca;
//---opsional kirim pesan balik
socket_write($trima, "Server [".date('d/m/Y H:i:s')."] : Halo client.
..") or die("Tak bisa menulis data ke
klien!");
//---end
socket_close($soketserver);
?>

Contoh program (klien socket) yaitu


socketclient.php
<?php
echo "<h2>Client</h2>";
$soketklien=socket_create(AF_INET, SOCK_STREAM, 0) or die("Tak bisa bikin
soket klien!");
//---khusus cllient
socket_connect($soketklien, "127.0.0.1", 9002) or die("Tak bisa konek ke s
oket server!");
//---end
socket_write($soketklien,
"Client
[".$_SERVER['REMOTE_ADDR']."
('d/m/Y H:i:s')."]
: Halo
server...") or die("Tak bisa kirim data ke server!");

".date

$baca=socket_read($soketklien,1024) or die("Tak bisa baca data dari server


!");
echo $baca;
socket_close($soketklien);
?>

C. Tugas
1. Gantilah pesan dan lihat hasilnya!
2. Gantilah nomor port dan lihat hasilnya!
3. Gantilah nomor IP dan lihat hasilnya (coba ke socket server di komputer lain dari socket
client komputer sendiri)!
4. Buat program agar socket server bisa tetap dalam kondisi listening (tetap mendeteksi
kedatangan data dari client) tanpa harus keluar program setelah menerima data dari client!
5. Buat program agar socket client bisa menginput data dinamis dari luar program!

Hasil Pembahasan Tugas :

Membuat file socketserver berikut ini listing source code nya :


socket.php
<!--untuk refresh agar kondisi selalu listening -->
<meta http-equiv="refresh" content="1">
<h1> soket server </h1>
<?php
$soketserver = socket_create(AF_INET,SOCK_STREAM,0)OR die("socket
server KO");
socket_bind($soketserver,"172.18.1.80",4999)OR die("tak bisa setting &
port server");
socket_listen($soketserver)or die ("tak bisa monitor kedatangan data
dari klien");
echo"mulai memonitor...<br/>";
$terima = socket_accept($soketserver)or die("tak bisa terima data");
$baca = socket_read($terima,1024)or die ("tak bisa baca");
echo "<br/> data dari klien =".$baca;
socket_write($terima,"<br/>hallo ini dari server,pesanmu=".$baca)or
die("tak bisa tulis");;
//socket_close($soketserver);
?>

Dapat di buat melalui notepad++ atau adobe dreamweaver dan di simpan dengan nama
socket.php
Membuat file socketklient.php
socketklient.php
<h1> soket client </h1>
<form method="get">
Masukan Pesan<br />
<input type="text" name="pesan"/><br />
</form>
<?php
$soketklient = socket_create(AF_INET,SOCK_STREAM,0)OR die("socket
client KO");
connect($soketklient,"172.18.1.80",4999)OR
",4999)OR die ("Koneksi KO");
socket_connect($soketklient,"172.18.1.80
//echo "<br/> Hallo, Ini dari klient";
socket_write($soketklient,$_REQUEST['pesan'])OR die ("tak bisa kirim");
$baca = socket_read($soketklient,1024)or die ("tak bisa baca");
echo $baca;
socket_close($soketklient);
?>

Dapat di simpan dalam notepad++ atau adobe dreamweaver simpan dengan nama
socketklient.php
Menjalankan Program yang telah di buat di simpan , pertama menjalankan file socket server
(socket.php) socket server di jalankan pada computer dengan IP address 172.18.1.80
172.18.
serta
file socket client (socketklient.
ketklient.php) secara bersamaan pada browser

Socket Server Mulai Memonitor (Listening) dengan tanda favicon di browser memutar

File socket server dan socket client di jalankan secara bersamaan di browser dan di socket
client mencoba mengirim pesan ke socket server dan kemudian socket server mengirim
pesan kembali ke socket client

D. Kesimpulan
Pemograman socket di perlukan untuk menjali
menjalin
n komunikasi program secara langsung
real-time
time di perlukan dua buah file utama yaitu file untuk socketserver dan file untuk
socketclient. Dimana file socketserver bisa di letakan pada serverA
A atau file socketclient bisa di
letakan pada ServerB dan socket ada yang menggunakaan protocol TCP dan UDP.
UDP

Anda mungkin juga menyukai