Aplikasi Remote Control Komputer Client-Server Menggunakan Delphi...

5
Seminar Nasional Pengaplikasian Telematika SINAPTIKA 2010 ISSN 2086-8251 173 Aplikasi Remote Control Komputer Client-Server Menggunakan Delphi dan Komponen Internet Direct (Indy) Dian Soni Amellia 1 , Andrew Fiade 2 , Lucky E. Santoso 3 Jurusan Teknik Informatika, Fakultas Ilmu Komputer, Universitas Mercubuana 1,3 Jl. Meruya Selatan, Kembangan, Jakarta 11650 Jurusan Teknik Informatika, Fakultas Sains dan Teknologi, UIN Syarif Hidayatullah 2 Jl. Ir. H. Juanda No. 95, Ciputat, Jakarta 15412 Email: [email protected] 1 , [email protected] 2 Abstrak Penelitian ini bertujuan membuat aplikasi yang dapat mengendalikan komputer dari jarak jauh menggunakan jaringan komputer. Aplikasi dibangun menggunakan IDE Delphi dan komponen Indy. Berdasarkan hasil pengujian, dapat disimpulkan bahwa aplikasi telah berjalan sesuai tujuan pembuatannya. Kata Kunci: Internet Direct, Remote Computer, Delphi, Socket Programming I. PENDAHULUAN Dewasa ini dunia IT berkembang dengan sangat pesat. Perkembangan itu memungkinkan orang untuk dapat melakukan apa saja melalui komputer. Melalui sebuah komputer, user dapat melakukan banyak aktifitas cukup hanya dengan mengendalikan dari suatu tempat. Untuk menghindari terjadinya hal-hal yang tidak diinginkan, maka ada baiknya agar administrator dapat memonitor kegiatan yang terjadi pada komputer lainnya. Kegiatan ini mungkin sudah tidak asing lagi bagi pecinta produk IT. Sebutlah seperti Radmin, Remote desktop pada windows, VNC, dan lain-lain. Dengan adanya aplikasi remote control komputer client-server, client dapat mengendalikan, monitor, bahkan berkuasa penuh terhadap server yang sedang dikendalikan, sehingga dampak negatif yang akan ditimbulkan oleh user dapat dihindari. Terinspirasi oleh hal ini, perlu adanya pengembangkan aplikasi Remote Control pada komputer client-server yang berbeda, menggunakan bahasa pemograman yang berbeda. Disini penulis mencoba mengembangkan aplikasi yang sejenis dengan menggunakan bahasa Pemograman Delphi dan komponen Internet Direct, (Network Media Library (NMM). Mengingat perkembangan Internet Direct (Indy) yang terus berkembang, maka ini merupakan keuntungan untuk dapat mempelajari cara menggunakan Indy dan kemudian mengembangkan aplikasi ini secara lebih, seperti menambahkan fitur baru untuk aplikasi remote control komputer client-control. II. METODE PENELITIAN Penelitian ini diawali dengan studi literatur tentang penelitian analisa kerja aplikasi remote control komputer. Beberapa hasil studi terhadap topik dalam penelitian ini diuraikan dalam beberapa paragraf berikut ini. 2.1. Jaringan Komputer Jaringan komputer adalah sebuah sistem yang terdiri atas komputer dan perangkat jaringan lainnya yang bekerja bersama-sama untuk mencapai suatu tujuan yang sama. Tujuan dari jaringan komputer adalah: 1. Membagi sumber daya, contohnya berbagi pemakaian printer, CPU, memori, harddisk. 2. Komunikasi, contohnya surat elektronik, instant messaging, chatting 3. Akses informasi, contohnya web browsing Berdasarkan topologi fungsi dikenal topologi peer to peer dan client-server. a. Peer to peer Pada jaringan ini semua komputer berkedudukan sama dalam berbagai informasi dan berkomunikasi. Model ini digunakan pada perumahan, kantor kecil, dan lainnya dengan sekala kecil. b. Client-Server Pada jaringan ini, terdapat sebuah komputer sebagai server dan beberapa komputer sebagai client. Pada jaringan ini, sangat disarankan menggunakan spesifikasi komputer server lebih tinggi dari komputer client. Hal ini disebabkan komputer server berkomunikasi data kepada komputer client secara terus-menerus. Client adalah terminal komputer yang merupakan komputer di mana pengguna jaringan bekerja, sedangkan server adalah komputer yang berperan sebagai manajemen komunikasi data dalam jaringan. Jaringan komputer client-server dibangun dalam bentuk dan ukuran yang sesuai dengan kebutuhan individu atau perusahaan. Berikut ini yang termasuk jaringan client-server, yaitu: a. Local Area Network (LAN) b. Wide Area Network (WAN)

Transcript of Aplikasi Remote Control Komputer Client-Server Menggunakan Delphi...

Page 1: Aplikasi Remote Control Komputer Client-Server Menggunakan Delphi …digilib.mercubuana.ac.id/manager/t!@file_artikel_abstrak/... ·  · 2016-04-26socket programming adalah pembuatan

Seminar Nasional Pengaplikasian Telematika SINAPTIKA 2010 – ISSN 2086-8251

173

Aplikasi Remote Control Komputer Client-Server

Menggunakan Delphi dan Komponen Internet

Direct (Indy)

Dian Soni Amellia1, Andrew Fiade

2, Lucky E. Santoso

3

Jurusan Teknik Informatika, Fakultas Ilmu Komputer, Universitas Mercubuana1,3

Jl. Meruya Selatan, Kembangan, Jakarta 11650

Jurusan Teknik Informatika, Fakultas Sains dan Teknologi, UIN Syarif Hidayatullah2

Jl. Ir. H. Juanda No. 95, Ciputat, Jakarta 15412 Email: [email protected]

1, [email protected]

2

Abstrak – Penelitian ini bertujuan membuat

aplikasi yang dapat mengendalikan komputer dari

jarak jauh menggunakan jaringan komputer.

Aplikasi dibangun menggunakan IDE Delphi dan

komponen Indy. Berdasarkan hasil pengujian,

dapat disimpulkan bahwa aplikasi telah berjalan

sesuai tujuan pembuatannya.

Kata Kunci: Internet Direct, Remote Computer,

Delphi, Socket Programming

I. PENDAHULUAN

Dewasa ini dunia IT berkembang dengan sangat

pesat. Perkembangan itu memungkinkan orang untuk

dapat melakukan apa saja melalui komputer. Melalui

sebuah komputer, user dapat melakukan banyak

aktifitas cukup hanya dengan mengendalikan dari

suatu tempat. Untuk menghindari terjadinya hal-hal yang tidak

diinginkan, maka ada baiknya agar administrator

dapat memonitor kegiatan yang terjadi pada komputer

lainnya. Kegiatan ini mungkin sudah tidak asing lagi

bagi pecinta produk IT. Sebutlah seperti Radmin,

Remote desktop pada windows, VNC, dan lain-lain.

Dengan adanya aplikasi remote control komputer

client-server, client dapat mengendalikan, monitor,

bahkan berkuasa penuh terhadap server yang sedang

dikendalikan, sehingga dampak negatif yang akan

ditimbulkan oleh user dapat dihindari. Terinspirasi oleh hal ini, perlu adanya

pengembangkan aplikasi Remote Control pada

komputer client-server yang berbeda, menggunakan

bahasa pemograman yang berbeda.

Disini penulis mencoba mengembangkan

aplikasi yang sejenis dengan menggunakan bahasa

Pemograman Delphi dan komponen Internet Direct,

(Network Media Library (NMM). Mengingat

perkembangan Internet Direct (Indy) yang terus

berkembang, maka ini merupakan keuntungan untuk

dapat mempelajari cara menggunakan Indy dan

kemudian mengembangkan aplikasi ini secara lebih, seperti menambahkan fitur baru untuk aplikasi remote

control komputer client-control.

II. METODE PENELITIAN

Penelitian ini diawali dengan studi literatur

tentang penelitian analisa kerja aplikasi remote

control komputer. Beberapa hasil studi terhadap topik

dalam penelitian ini diuraikan dalam beberapa

paragraf berikut ini.

2.1. Jaringan Komputer

Jaringan komputer adalah sebuah sistem yang

terdiri atas komputer dan perangkat jaringan lainnya

yang bekerja bersama-sama untuk mencapai suatu

tujuan yang sama. Tujuan dari jaringan komputer

adalah:

1. Membagi sumber daya, contohnya berbagi

pemakaian printer, CPU, memori, harddisk.

2. Komunikasi, contohnya surat elektronik, instant

messaging, chatting

3. Akses informasi, contohnya web browsing

Berdasarkan topologi fungsi dikenal topologi

peer to peer dan client-server.

a. Peer to peer

Pada jaringan ini semua komputer berkedudukan

sama dalam berbagai informasi dan berkomunikasi.

Model ini digunakan pada perumahan, kantor kecil,

dan lainnya dengan sekala kecil.

b. Client-Server

Pada jaringan ini, terdapat sebuah komputer sebagai

server dan beberapa komputer sebagai client. Pada jaringan ini, sangat disarankan menggunakan

spesifikasi komputer server lebih tinggi dari

komputer client. Hal ini disebabkan komputer

server berkomunikasi data kepada komputer client

secara terus-menerus. Client adalah terminal

komputer yang merupakan komputer di mana

pengguna jaringan bekerja, sedangkan server adalah

komputer yang berperan sebagai manajemen

komunikasi data dalam jaringan.

Jaringan komputer client-server dibangun dalam

bentuk dan ukuran yang sesuai dengan kebutuhan

individu atau perusahaan. Berikut ini yang termasuk jaringan client-server, yaitu:

a. Local Area Network (LAN)

b. Wide Area Network (WAN)

Page 2: Aplikasi Remote Control Komputer Client-Server Menggunakan Delphi …digilib.mercubuana.ac.id/manager/t!@file_artikel_abstrak/... ·  · 2016-04-26socket programming adalah pembuatan

Seminar Nasional Pengaplikasian Telematika SINAPTIKA 2010 – ISSN 2086-8251

174

c. Metropolitan Area Network (MAN)

2.2. Socket Programming

Penggunaan socket programming

memungkinkan adanya komunikasi antara client dan

server. Salah satu contoh sederhana penggunaan

socket programming adalah pembuatan program

untuk chatting. Program tersebut sebenarnya

merupakan bentuk aplikasi berupa komunikasi antara

client dan server. Ketika seorang user (client)

melakukan koneksi ke chat server, program akan membuka koneksi ke port yang diberikan, sehingga

server perlu membuka socket pada port tersebut dan

“mendengarkan” koneksi yang datang. Socket sendiri

merupakan gabungan antara host-adress dan port

adress. Dalam hal ini socket digunakan untuk

komunikasi antara client dan server.

Proses yang biasa terjadi pada sistem client-

server yaitu client akan melakukan looping terus

menerus selama server masih aktif mendengarkan

koneksi dan akan berhenti ketika menerima output

balik dari server berupa kata “keluar”. Ketika user mengetikkan input string, maka akan dibaca sebagai

sebagai pesan dan kemudian dikirimkan ke server.

Kemudian server yang menerima masukan itu

mengirimkannya kembali ke client, demikian

seterusnya hingga data yang dikirimkan client berupa

kata “keluar”, maka looping di server untuk

mengirimkan data ke client juga akan berhenti.

Protokol yang sering digunakan dalam internet adalah

TCP (Transmission Control Protocol) dan UDP (User

Datagram Prototocol).

2.3. Internet Direct Indy (Internet Direct) merupakan komponen

open source yang terdiri dari protocol internet yang

populer, Indy terdapat pada Delphi, Kylix dan

Borland C++ Builder.

Komponen–komponen indy memakai cara

tengah, yaitu memakai koneksi blocking secara

eksklusif dan dapat memasukan program ke dalam

sebuah thread atau memakai komponen pembantu,

yaitu IdAntiFreeze. Memakai koneksi blocking untuk

mengimplementasikan sebuah protokol akan

menyederhanakan logika program. Indy 9 dikembangkan untuk melengkapi

kebutuhan yang belum dapat diperoleh pada Indy

versi 8. Sebagai contoh: penggunaan SSL pada indy 8

digantikan oleh IOHandlers pada komponen klien

yang dapat dihubungkan dari TidSocketHandler.

Komponen lainnya yang juga sudah ada pada indy 9

yaitu SocksInfo. Dalam paket Indy juga diletakkan

IdAntiFreeze ke dalam desain-waktu paket bukan run-

time paket sehingga paket run-time hanya akan

tergantung pada RTL dan bukan visual Component

Library. Dalam Borland Delphi, ini bukan masalah

jika dimasukkan IdAntiFreeze dan karena unit itu tidak memiliki waktu desain-kode di dalamnya sama

sekali.

Indy 9 juga dirancang untuk mendukung

program C++, dan saat ini Indy sudah dikembangkan

lagi hingga Indy versi 10 dengan komponen yang

lebih bervariasi.

III. HASIL DAN PEMBAHASAN

3.1. Analisa dan Perancangan

Aplikasi Remote Control ini merupakan

pengembangan dari remote control yang sudah ada.

Sesuai dengan namanya, maka minimal dibutuhkan

dua komputer untuk menjalankan aplikasi ini, yang mana pada penelitian ini penulis hanya menggunakan

dua komputer saja. Satu komputer akan berfungsi

sebagai komputer server dan komputer lainnya akan

berfungsi sebagai client. Disamping juga juga

dibutuhkan kabel cross sebagai penghubung.

Aplikasi ini juga dirancang melalui beberapa tahapan,

diantaranya yaitu dengan terlebih dahulu membuat

use case diagram, diagram sekuensial, dan diagram

aktivitas, kemudian baru merancang pada programy

ang penulis gunakan. Dalam tulisan ini hanya akan

ditampilkan gambar use case dan sequence diagram, yang dapat dilihat pada Gambar 1 dan Gambar 2.

User

User

Aktifkan koneksi ke client

Aktifkan ‘paint’ pada

Komputer server’

Putuskan koneksi ke client

Aktifkan task manager

pada komputer server

Input IP address

milik komputer server

Putuskan koneksi

ke server

Kuasa penuh terhadap server

Gambar 1. Use case diagram aplikasi remote control

komputer client-server

Page 3: Aplikasi Remote Control Komputer Client-Server Menggunakan Delphi …digilib.mercubuana.ac.id/manager/t!@file_artikel_abstrak/... ·  · 2016-04-26socket programming adalah pembuatan

Seminar Nasional Pengaplikasian Telematika SINAPTIKA 2010 – ISSN 2086-8251

175

Server Client

User

Aktifkan aplikasi

Aktifkan aplikasiHalaman utama aplikasi

Halaman utama aplikasi

Aktifkan koneksi ke client

Terhubung ke client Aktifkan koneksi ke

server

Terhubung ke server

Aktifkan task manager server

Task manager server muncul di

client

Kuasa penuh terhadap server

Server di-remote penuh oleh

client

Menonaktifkan koneksi ke client

Koneksi ke client putusMenonaktifkan koneksi ke server

Koneksi ke server putus

Gambar 2. Sequence Diagram Aplikasi Remote Control Komputer Client-Server

3.2. Implementasi dan Pengujian

Implementasi merupakan penerapan

perancangan sistem yang telah dilakukan sebelumnya

ke dalam bentuk yang dapat dimengerti oleh mesin

dengan spesifikasi perangkat lunak serta perangkat

keras yang digunakan.

Pada Gambar 3, Gambar 4, Gambar 5, Gambar 6 dan Gambar 7, disajikan beberapa contoh kode

pemograman yang diimplementasikan pada aplikasi.

begin

edIP.Text:= LocalIP;

Server.Port:= edPort.Value;

Server.Active:= true;

Gambar 3. Potongan kode pemograman untuk

menghubungkan server dengan client

begin

acEnableRC.Checked:= not

acEnableRC.Checked;

end;

Gambar 4. Potongan kode pemograman pengaktifan

layanan pada server

begin Client.ServerHost:= edHost.Text

Client.ServerPort:= sedPort.Value;

try

if Client.Active then Client.Disconnect;

Client.Connect

except

acActive.Checked:= false;

Gambar 5. Potongan kode pemograman untuk

menghubungkan client dengan server

Page 4: Aplikasi Remote Control Komputer Client-Server Menggunakan Delphi …digilib.mercubuana.ac.id/manager/t!@file_artikel_abstrak/... ·  · 2016-04-26socket programming adalah pembuatan

Seminar Nasional Pengaplikasian Telematika SINAPTIKA 2010 – ISSN 2086-8251

176

acRunTaskManager.Enabled:=

acEnableRC.Checked;

paint.Enabled:= acEnableRC.Checked;

Gambar 6. Potongan kode pemograman pengaktifan

layanan pada client

Client.SendCustomCommand(cmdShellExec

+ 'P=' + 'taskmgr' + ';');

Client.SendCustomCommand(cmdShellExec

+ 'P=' + 'mspaint' + ';');

Gambar 7. Potongan kode pemograman menampilkan task manager dan paint pada client

Pengujian di sini berdasarkan pada pengujian

kotak hitam, bisanya orang menyebutnya dengan

Black Box Testing. Pada pengujian kotak hitam ini,

pengujian lebih ditekankan kepada ”apa”, yaitu apa

saja yang dapat dilakukan oleh sebuah aplikasi. Di

sini yang akan kita uji yaitu apa saja yang dapat

dilakukan oleh aplikasi Remote Control Komputer

Client-Server, apakah fitur-fitur tersebut dapat

berjalan dengan baik. Pada Gambar 8, Gambar 9, Gambar 10, Gambar

11 dan Gambar 12, disajikan hasil pengujian yang

telah dilakukan terhadap aplikasi yang telah dibangun.

Gambar 8 Tampilan awal saat aplikasi pada server

dijalankan

Gambar 9. Tampilan halaman awal saat aplikasi pada client dijalankan

Gambar 10. Tampilan saat menu „Connection‟ dan

sub menu „Active‟ dijalankan

Gambar 11. Tampilan saat komputer client berhasil

terhubung

ke komputer server

Gambar 12. Tampilan monitor server saat

dimunculkan ‟windows task manager‟ dari komputer client

Selama melakukan pengujian, penulis juga

melakukan analisa terhadap program server dan

client. Berikut ini hasil analisa terhadap program

antara server dan client:

1. Aplikasi server dapat berjalan dengan baik,

dengan kondisi tidak ada firewall yang aktif atau

firewall mengijinkan untuk mengaktifkan service

dari server.

2. Aplikasi client dapat terhubung ke server dengan terlebih dahulu mengetikkan alamat ip address dan

nomor port yang benar.

3. Aplikasi client dapat mengendalikan komputer

dengan server, dengan hasil percobaan komputer

server dapat digerakkan cursor mouse-nya melalui

komputer client.

4. Aplikasi ini masih memiliki kelemahan, ketika

pertama kali client dikenadalikan, hasil capture

belum sempurna terlihat pada gambar 4.15. Jika

banyak aplikasi lain yang berjalan, misalkan

mengunduh atau mengunggah mempengaruhi

kualitas gambar. 5. Secara keseluruhan aplikasi ini dapat

dikembangkan untuk meningkatkan performa

seperti aplikasi remote admin ataupun aplikasi

remote desktop yang terdapat pada windows,

dimana aplikasi remote admin mempunyai fitur

view only ataupun full of control

Page 5: Aplikasi Remote Control Komputer Client-Server Menggunakan Delphi …digilib.mercubuana.ac.id/manager/t!@file_artikel_abstrak/... ·  · 2016-04-26socket programming adalah pembuatan

Seminar Nasional Pengaplikasian Telematika SINAPTIKA 2010 – ISSN 2086-8251

177

IV. KESIMPULAN

Setelah melakukan desain, implementasi dan

pengujian pada aplikasi remote control komputer

client-server menggunakan Indy 9, diperoleh kesimpulan sebagai berikut:

1. Rancangan aplikasi remote control komputer

client-server dapat berjalan dengan baik

menggunakan Indy 9, Delphi 7 dan Network

Multimedia Library (NMM) pada sistem operasi

windows.

2. Beberapa fungsi yang disediakan bekerja seperti

memunculkan windows task manager,

mengaktifkan aplikasi „paint‟, shutdown, restart

pada komputer server dari komputer client , pada

komputer server yang dilakukan dari komputer

client dapat berjalan dengan baik. Ada beberapa faktor penyebab aplikasi yang

penulis kembangkan masih jauh dari kesempurnaan,

terutama keterbatasan waktu. Untuk itu ada beberapa

catatan dari penulis yang mungkin dapat menjadi

saran untuk pengembangan aplikasi ini selanjutnya.

Saran-sarannya sebagai berikut:

1. Pada aplikasi yang penulis kembangkan, proses

pengendalian untuk mematikan komputer server

tidak dapat berjalan dengan baik dikarenakan

sintaks pada aplikasi hanya mampu membaca

perintah satu kata, sementara perintah untuk mematikan lebih dari satu kata. Untuk

pengembangan, ke depan diharapkan proses

mematikan komputer server melalui komputer

client dapat dilakukan yaitu dengan merevisi

sintaks agar dapat membaca perintah lebih dari

satu kata.

2. Dari pengujian yang dilakukan, proses copy-paste

dari komputer client terhadap komputer server

hanya bisa dilakukan dari dan komputer server

saja. Diharapkan ke depannya ada pengembangan

proses copy-paste antara client-server.

3. Diharapkan ke depannya ada pengembangan aplikasi remote control client-server yang dapat

menjalankan diri sendiri tanpa harus dijalankan

secara manual oleh user.

4. Diharapkan ke depannya koneksi remote control

komputer client-server menggunakan Indy 9 tidak

hanya terbatas pada proses pengendalian, tetapi

juga untuk saling bertukar data, chatting, dan lain-

lain.

V. DAFTAR PUSTAKA

[1] Chairunnas, Andi dan Bernard Mediarman.

Rekayasa Perangkat Lunak. Ed.2. Bogor: 2006.

[2] Munawar. 2005. “Pemodelan Visual Dengan

UML”. Graha Ilmu.

[3] Pressman, Roger S. 1997. Sofware

Engineering, A practitioner’s Approach. Edisi

keempat. New york: McGraw-Hill Inc.

[4] Purbo, Onno W, dkk. Buku Pintar Internet

TCP/IP. Cet.2. Jakarta: PT. Elex Media

Komputindo.

[5] Utomo, Eko Priyo, ST. Pengantar Jaringan

Komputer bagi Pemula. Bandung: Yrama

Widya, 2006 [6] -----[online], http://www.i-software.narod.ru/ ;

[2009, Desember 01]

[7] -----[online], http://www.ilmukomputer/ ;

[2009, November 20]

[8] -----[online],

http://belajarit.um.ac.id/belajar/artikel/Arsitekt

ur%20Protokol%20TCP-IP.pdf ; [2009,

November 20]

[9] -----[online], http://www.sourcodeonlie.com/;

[2009, November 10]

[10] -----[online], http://www.indyproject.org/;

[2009, November 18] [11] -----[online], http://www.nevrona.com/ ; [2009,

November 15]