• Tidak ada hasil yang ditemukan

Analisis dan Perbandingan Performansi File Sharing Peer-to-Peer Menggunakan Framework JXTA dan Gnutella

N/A
N/A
Protected

Academic year: 2018

Membagikan "Analisis dan Perbandingan Performansi File Sharing Peer-to-Peer Menggunakan Framework JXTA dan Gnutella"

Copied!
8
0
0

Teks penuh

(1)

Fakultas Ilmu Komputer

Universitas Brawijaya

3771

Analisis dan Perbandingan Performansi File Sharing Peer-to-Peer

Menggunakan Framework JXTA dan Gnutella

Yoga Faodiansyah1, Kasyful Amron2, Eko Sakti Pramukantoro3

Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya Email: 1yogaf.informatika@gmail.com, 2kasyful@ub.ac.id, 3ekosakti@ub.ac.id

Abstrak

Teknologi informasi telah menjadi kebutuhan manusia dan salah satu bidang didalamnya yaitu sharing. Sharing adalah mekanisme yang dilakukan untuk berbagi resource berupa file, atau informasi lainnya kepada user lain dan bertujuan untuk memaksimalkan resource yang tersedia. Tujuan lainnya yaitu memberikan kemudahan untuk melakukan pencarian atau pembagian informasi pada user. File sharing merupakan kegiatan sharing yang banyak dilakukan dan berdasar pada arsiterktur yang digunakan dibagi menjadi dua yaitu client-server dan peer-to-peer. Muncul beberapa masalah saat arsitektur client-server digunakan yaitu salah satunya resource yang digunakan terbatas sehingga menghambat proses file sharing. Arsitektur peer-to-peer dapat menjadi solusi dari permasalahan tersebut karena pada arsitektur peer-to-peer, resource yang digunakan dapat dibagi pada setiap user yang terhubung. Mekanisme file sharing pada peer-to-peer berbeda-beda pada setiap generasi sehingga hasil kinerjanya pun berbeda. Penelitian ini dilakukan untuk mengetahui kinerja terhadap protocol yang digunakan yaitu JXTA dan Gnutella yang masing-masing pada generasi dua dan tiga untuk melakukan proses file sharing dengan trhoughput dan delay sebagai parameter. Untuk memperoleh nilai parameter dilakukan pengujian dengan melakukan proses file sharing sesuai dengan perancangan terhadap kedua protocol yang ditentukan. Hasil pengujian pada masing-masing protocol yang diperoleh kemudian dianalisis dan dibandingkan.

Kata kunci: file sharing, sharing, peer-to-peer, gnutella, jxta

Abstract

Information technology has become a human need and one of the areas in it is sharing. Sharing is a mechanism done to share resources in the form of files, or other information to other users and aims to maximize the available resources. Another goal is to make it easy to search or share information with the user. File sharing is a sharing activity that many do and based on arsiterktur used is divided into two namely client-server and peer-to-peer. Some problems arise when the client-server architecture is used, one of which is limited resources that hinder the process of file sharing. Peer-to-peer architecture can be the solution of the problem because in the peer-to-peer architecture, the resources used can be shared on each connected user. The mechanism of file sharing on peer-to-peer varies on each generation so that the performance results are different. This research is conducted to know the performance of the protocol used is JXTA and Gnutella which respectively in second and third generation to do file sharing process with trhoughput and delay as parameter. To obtain the value of the parameters are tested by doing the file sharing process in accordance with the design of the two protocols specified. The test results on each obtained protocol were then analyzed and compared.

Keywords: file sharing, sharing, peer-to-peer, gnutella, jxta

1. PENDAHULUAN

Saat ini teknologi informasi telah berkembang pesat dengan adanya internet dan telah menjadi kebutuhan manusia dan salah satu bidang didalamnya yaitu sharing. Sharing

(2)

Saat ini volume lalulintas pada internet meningkat drastis. Unduhan konten multimedia dan software package mungkin berisi berkas dengan ukuran yang besar sehingga membutuhkan resource yang sangat besar pada sisi server (Leibnitz et al., 2007). Resource yang digunakan semua berasal dari sisi server pada client-server saat melakukan akses pada web untuk melakukan file sharing. Arsitektur peer-to-peer dapat menjadi solusi dari permasalahan tersebut karena pada arsitektur peer-to-peer, resource yang digunakan dapat dibagi pada setiap user yang terhubung. Peer-to-peer adalah salah satu cara untuk berbagi (sharing) sumberdaya pada komputer secara langsung, sehingga tidak diperlukan server terpusat (Androutsellis-Theotokis & Spinellis, 2004). Setiap komputer yang saling terhubung pada suatu jaringan Peer-to-peer disebutl sebagai node atau peer.

Hingga sekarang, arsitektur Peer-to-peer dibagi berdasarkan mekanismenya menjadi tiga generasi. Generasi pertama menyimpan informasi peer dan file pada suatu server terpusat. Napster, eDonkey2000, dan Pastry adalah contoh yang tergolong pada generasi pertama (Gong, 2014). Informasi-informasi disimpan pada masing-masing peer pada generasi kedua dan lingkungan jaringannya dibentuk sendiri oleh peer. Aplikasi yang termasuk pada generasi kedua yaitu Gnutella dan Kazaa (Watson, 2013). Pada generasi yang ketiga, beberapa peer memiliki fungsi sebagai server untuk menyimpan informasi dan pencarian peer dan resource sehingga traffic berkurang pada jaringan (Jabbar et al., 2012). Hasil kinerja yang dihasilkan dimungkinkan berbeda jika mekanisme dan sistemnya berbeda.

Tujuan dilakukan penelitian ini adalah untuk mengetahui bagaimana kinerja pada protokol-protokol yang digunakan sehingga dapat dibandingkan. Perbedaan kinerja yang dihasilkan dapat diketahui faktornya dengan menggunakan throughput dan rata-rata delay sebagai parameter pengujian.

1.1 File Sharing

File Sharing merupakan teknologi yang berfungsi untuk menjalankan proses distribusi terhadap konten data pada masing-masing perangkat yang terhubung dengan menggunakan protokol-protokol pada jaringan komputer sebagai media transfer. Multimedia, dokumen,

program komputer, grafis, e-book, dan gambar adalah data-data yang didistribusikan yang merupakan data digital.

Berdasarkan metodenya, mekanisme file Sharing dibagi menjadi dua, yaitu memanfaatkan peer-to-peer dan client-server. Pada client-server data diperoleh dari server sebagai penyedia konten sehingga client bisa mengunduh data didalam server (Department of Communications, Climate Action, & Environment, 2012). File Sharing pada peer-to-peer dilakukan oleh peer-peer pada jaringan komputer. Peer berperan sebagai client ataupun server sehingga dapat menyediakan konten sekaligus mendapatkan konten dari peer (Department of Communications, Climate Action, & Environment, 2012).

1.2 Peer-to-Peer

Peer-to-peer(P2P) merupakan arsitektur jaringan alternatif client-server. Jaringan P2P terbentuk dari peer-peer yang terhubung dan berperan sebagai client dan server sekaligus (The Government of Hong Kong Special Administration Region, 2008).

Berdasar pada karakteristik dari arsitekturnya, model P2P dibagi dua, yaitu (Androutsellis-Theotokis & Spinellis, 2004): • Resource dari komputer dibagikan langsung

tanpa perlu melalui server terpusat. penggunaan Server dilakukan hanya untuk melakukan penambahan node baru pada jaringan, memperoleh global key untuk enkripsi pada data dan bootstrapping terhadap sistem.

• P2P memiliki kemampuan untuk menangani ketidakstabilan di jaringan, penyesuaian diri secara otomatis saat terjadi kegagalan di jaringan, antar node, dan komputer.

P2P juga terbagi jadi beberapa fungsi berdasarkan service-nya, (Camarillo, 2009): • Data Storage Function merupakan fungsi

untuk memproses penyimpanan dan penerimaan data dari sistem.

Data Indexing Function merupakan fungsi untuk memproses indexing terhadap data yang tersimpan di sistem.

(3)

Computation Function merupakan fungsi untuk memproses perhitungan didalam sistem.

1.3 JXTA

JXTA merupakan projek penelitian kolaboratif terkait dengan peer-to-peer(P2P) computing (Gong et al., 2002). Platform P2P ini dikembangkan dengan memodelkan Apache open-source oleh Sun Microsystem. JXTA dibuat dengan beberapa tujuan, yaitu (Gradecki, 2002):

Peer-peer dapat bertemu satu sama lain. • Dapat menjalankan self-organize sehingga

terbentuk peergroups sendiri oleh peer.Advertise dan discovery dapat dilakukan

pada resource yang ada oleh peer. • Komunikasi antar peer dapat dilakukan. • Tidak tergantung dengan bahasa komputer

dan sistem operasi untuk menggunakan platformnya.

• Tidak tergantung dengan encryption, security, dan authentication untuk menggunakan platformnya.

Arsitektur JXTA dibutuhkan sehingga protokol-protokolnya dapat dijalankan dan Arsitektur JXTA dimodelkan dengan Gambar 1.1 (Gradecki, 2002)

.

Gambar 1 Model arsitektur peer-to-peer JXTA

Sumber: (Gradecki, 2002)

Dibagi menjadi tiga bagian, yaitu:

Core layer adalah tempat code untuk pengimplementasian protokol. Protokol-protokol ini menyediakan fungsionalitas untuk peers, peer groups, security, monitoring, message-passing, dan protokol jaringan

Service layer terdapat service-service yang disediakan oleh JXTA

Application layer adalah tempat untuk

pengembangan aplikasi peer-to-peer yang didalamnya terdapat code-code yang menarik peer-peer individu menjadi suatu fungsionalitas

1.4 Gnutella

Gnutella merupakan sebuah protocol pada peer-to-peer untuk melakukan pencarian file dan file sharing pada fungsi utamanya yang bersifat terpusat dan open-source (Ripeanu, 2002). Tujuan dari desain Gnutella yang dikembangkan yaitu (Ripeanu, 2002):

• Peer mampu beroperasi didalam sebuah lingkungan yang dinamis, dimana peer-peer dapat berulang kali masuk ataupun keluar dari jaringan.

Performance and Stability. Hasil kinerja dari Gnutella harus lebih bagus jika dibandingkan dengan arsitektur client-server dalam jaringan yang luas. Stabilitas terhadap kinerja juga harus tetap dijaga sehingga hasil kinerja tetap stabil ketika jumlah pengguna bertambah dengan acuan nilai throughput tetap tinggi dan response time yang konstan.

Reliability. Hasil kinerja yang konsisten dihasilkan oleh Gnutella dan dijaminnya data walaupun menerima serangan dari luar. • Anonimity. Privasi diperlukan untuk menjaga identitas pengguna sebagai pencari maupun penyedia informasi.

Pada Gambar 2 ditunjukkan bagaimana peer Gnutella berkomunikasi dengan peer yang lain. Tahapannya adalah sebagai berikut:

• Pembaruan informasi dilakukan oleh p1 pada web-cache yaitu Gnutella host-Cache Server. • Setelah p1 bergabung selanjutnya p1 akan menginformasikan pada peer lain bahwa p1 bergabung di jaringan Gnutella yang sama. • Untuk mengetahui status dari peer lainnya,

dilakukan dengan mengirimkan PING oleh peer p1 dan peer p2 membalas dengan PONG.

• Pencarian file dilakukan dengan

mengirimkan QUERY pada semua peer yang tergabung pada jaringan, dan jika ada peer lain yang memiliki file tersebut, maka peer itu akan membalas dengan mengirimkan PONG.

(4)

meminta file. Selanjutnya pemilik file akan mengirimkan file yang diminta melalui protokol HTTP.

Gambar 2 Arsitektur peer-to-peer Gnutella

Sumber: (Tribhuvan, 2007)

2. METODOLOGI DAN PERANCANGAN

Metodologi dan perancangan berisikan langkah yang dilakukan untuk perancangan, implementasi, dan pengujian. Berikut adalah diagram alirnya.

Gambar 3 Tahapan Penelitian

Gambar 3 di atas menunjukkan bahwa penelitian dimulai dengan melakukan studi literatur terhadap sumber pustaka protokol yang digunakan dalam penelitian sehingga dapat diketahui kebutuhannya. Proses selanjutnya adalah perancangan pengujian yang akan dilakukan dan analisis kebutuhan untuk

menentukan kebutuhan yang dibutuhkan untuk melakukan pengujian. Selanjutnya dilakukan proses implementasi dan pengujian yang menjelaskan bagaimana implementasi dilakukan sesuai dengan perancangan yang dibuat dan dilakukan pengujian setelah implementasi selesai dilakukan. Pada bagian hasil pengujian dan analisis dijelaskan hasil dari pengujian yang dilakukan yaitu pengujian file sharing. Selanjutnya hasil dari pengujian akan dilakukan analisis untuk memperoleh hasil kinerja dari setiap protokol yang digunakan untuk melakukan mekanisme file sharing. Setelah didapatkan hasil dan dilakukan analisis selanjutnya dapat ditarik kesimpulan untuk menjawab rumusan masalah yang dibuat pada awal penelitian dan dapat menghasilkan saran untuk penelitian selanjutnya.

Penelitian ini dilakukan untuk mendapatkan hasil performansi dari dua protokol yang telah ditentukan untuk melakukan mekanisme file sharing sehingga diperlukan desain terhadap lingkungan pengujian yang akan digunakan

.

Gambar 4 Desain Arsitektur Sistem

Pada Gambar 4 ditunjukkan desain arsitektur sistem yang akan digunakan sebagai lingkungan pengujian yang akan dilakukan. Jaringan dibentuk oleh peer yang berperan sebagai RDV/Ultrapeer (10.34.17.244) dan (10.34.9.103) yang saling terhubung yang selanjutnya melakukan advertisement untuk bertukar informasi yang didalamnya terdapat alamat IP setiap peer dan nama file yang dibagikan oleh setiap peer. Selanjutnya peer

yang berperan sebagai Edge/Leaf

(5)

3. IMPLEMENTASI

Implementasi dalam penelitian bertujuan untuk mempersiapkan lingkungan pengujian yang akan digunakan pada pengujian file sharing yang akan dilakukan. Implementasi dimulai dengan mempersiapkan lingkungan pengujian sistem yaitu dengan mempersiapkan komputer-komputer beserta Virtual Machine yang digunakan pada pengujian disesuai dengan perancangan yang dibuat pada bagian 2.

Selanjutnya dilakukan implementasi aplikasi file sharing yang digunakan yaitu aplikasi myjxta dan aplikasi Gnucleus. Implementasi aplikasi file sharing dilakukan pada setiap komputer dan VM yang telah dipersiapkan.

3.1 Implementasi myjxta

Implementasi aplikasi file sharing dimulai dengan implementasi aplikasi myjxta yaitu dengan melakukan complie terhadap source code pada compiler seperti pada Gambar 5

Gambar 5 Output build project

Setelah compile pada source code berhasil dilakukan akan ditunjukkan seperti pada Gambar 5 dan aplikasi myjxta.

3.2 Implementasi Gnucleus

Implementasi aplikasi Gnucleus dilakukan di setiap komputer-komputer dan VM yang digunakan pada pengujian. Dimulai dengan melakukan eksekusi terhadap file instalasi Gnucleus. Pada sistem operasi Windows instalasi dilakukan dengan mengeksekusi file Gnucleus.exe dan proses instalasi akan berjalan.

Berbeda dengan instalasi pada sistem operasi Ubuntu, instalasi dilakukan dengan menjalankan beberapa perintah pada terminal dan perintah untuk melakukan instalasi Gnucleus pada Ubuntu LTS 14.04 ditunjukkan pada Gambar 6.

Gambar 6 Perintah instalasi Gnucleus

Pada Gambar 6 ditunjukkan perintah-perintah yang perlu dijalankan untuk melakukan instalasi Gnucleus pada sistem operasi Ubuntu LTS 14.04. Dimulai dengan mempersiapkan

lingkungan sistem dan memperbarui repository sehingga dapat memperoleh data untuk melakukan persiapan lingkungan sistem yang dijalankan oleh perintah pada baris ke 1 sampai baris ke 4. Selanjutnya dilakukan eksekusi terhadap file instalasi aplikasi yaitu Gnucleus.exe dengan menjalankan perintah pada baris ke 5.

4. PENGUJIAN

Pada bagian ini akan membahas pengujian pada masing-masing aplikasi file sharing yang telah diimplementasikan pada masing-masing komputer dan VM yang digunakan untuk pengujian. Pengujian dilakukan dengan melakukan mekanisme file sharing sesuai dengan skenario yang dibuat pada bagian 3 yaitu pada perancangan.

Pengujian dimulai dengan mempersiapkan file yang akan diujikan. Selanjutnya dilakukan konfigurasi terhadap masing-masing aplikasi file sharing yaitu mxjta dan Gnucleus.

Konfigurasi dilakukan pada aplikasi myjxta sebelum pengujian dilakukan yang disesuaikan dengan perancangan. Dua macam konfigurasi dilakukan yaitu peer sebagai rdv/relay dan edge.

(6)

Gambar 7 konfigurasi sebagai edge pada peer

Gambar 8 konfigurasi sebagai RDV/Relay pada peer

Selanjutnya konfigurasi pada komputer-komputer dilakukan untuk menentukan peran peer sebagai rdv/relay yang ditunjukkan pada Gambar 8. Dimulai dengan memilih Act as a Relay dan Act as a Rendezvous pada checkbox yang diberikan dan kemudian mengaktifkan

fungsi untuk menggunakan TCP dan HTTP dengan memilh enable pada checkbox yang tersedia. Agar koneksi TCP dan HTTP dapat digunakan untuk keluar masuk pada jaringan, perlu mengaktifkan pada checkbox Enable Outgoing connections dan Enable Incoming connections.

Sebelum proses file sharing dapat dijalankan perlu ditentukan file yang akan diuji setelah semua konfigurasi dilakukan. Selanjutnya pengujian dapat dijalankan sesuai dengan perancangan.

Pengujian Gnucleus dilakukan dengan melakukan konfigurasi terlebih dahulu dan sesuai dengan perancangan yang dibuat. Ada dua konfigurasi yang dilakukan yaitu peer sebagai leafpeer dan ultrapeer seperti pada Gambar 9 dan Gambar 10.

Gambar 9 Konfigurasi peer sebagai leaf

Gambar 10 Konfigurasi peer sebagai Ultrapeer

(7)

5. HASIL DAN PEMBAHASAN

Hasil yang diperoleh dari pengujian myxjta berupa throughput dan rata-rata delay didapatkan saat proses file sharing berlansung yang ditunjukkan pada Tabel 1. Skema yang digunakan untuk pengujian aplikasi myjxta adalah skema yang hanya menggunakan satu seeder karena seeder lain tidak dapat mengirimkan file uji yang sama.

Tabel 1 Hasil pengujian aplikasi myjxta

Tabel 2 Hasil pengujian aplikasi Gnucleus

Pada Tabel 2 ditunjukkan hasil dari pengujian pada Gnucleus berupa nilai yang sama pada pengujian myjxta yaitu nilai throughput dan rata-rata delay. Kedua hasil yang diperoleh menggunakan file uji yang sama yaitu file berukuran 50MB, 100MB, 200MB, 512MB.

Masing-masing pada hasil pengujian aplikasi myjxta dan Gnucleus dilakukan perbandingan pada grafik yang ditunjukkan pada Gambar 11 dan Gambar 12

Gambar 11 Grafik perbandingan throughput antara JXTA dan Gnutella

Gambar 12 Grafik perbandingan rata-rata delay antara JXTA dan Gnutella

6. KESIMPULAN

Kesimpulan yang dapat diperoleh dari tahapan sebelumnya dalam analisis dan perbandingan performansi pada JXTA dan Gnutella antara lain:

(8)

membuat kinerja dari JXTA terlihat lebih baik dari Gnutella. Tetapi Gnutella lebih baik dari JXTA dalam melakukan pengambilan file, yaitu dapat menerima file dari beberapa peer sekaligus sebagai seeder sedangkan JXTA hanya menerima dari satu seeder.

2.

Perbedaan performansi yang dihasilkan

JXTA dan Gnutella dipengaruhi oleh perbedaan desain arsitektur yang digunakan yang merupakan faktor utama sehingga hasil yang diperoleh berbeda

.

Faktor lainnya

adalah metode pengiriman query pada peer yang digunakan berbeda pada JXTA dan Gnutella.

7. SARAN

Dari penelitian yang telah dilakukan dapat diberikan saran untuk pengembangan penelitian selanjutnya, yaitu:

1. Penggunaan protokol lain yang digunakan dalam melakukan proses file sharing yang dijalankan jaringan peer-to-peer pada penelitian selanjutnya sehingga dapat dihasilkan nilai yang lebih akurat.

2. Lingkungan pengujian yang berbeda diperlukan untuk penelitian lebih lanjut sehingga hasil yang diperoleh lebih akurat.

9. DAFTAR PUSTAKA

Androutsellis-Theotokis, S. & Spinellis, D., 2004. A Survey of Peer-to-Peer Content

Distribution Technologies. ACM

Computing Surveys, Volume 36.

Camarillo, G., 2009. Peer-to-Peer (P2P)

Architecture: Definition, Taxonomies,

Examples,

and

Applicability.

California: Internet Engineering Task

Force.

Department of Communications, Climate

Action, & Environment, 2012.

File

Sharing.

[Online]

Available

at:

http://www.makeitsecure.org/en/file-sharing.html [Accessed 17 Februari

2017]

Gong, L., Oaks, S. & Traversat, B., 2002.

JXTA in a Nutshell. Sebastopol,

California, United States of America:

O'Reilly & Associates, Inc.

Gong, Y., 2014. Identifying P2P users using

traffic analysis. [Online] Available at:

https://www.symantec.com/connect/art

icles/identifying-p2p-users-using-traffic-analysis [Accessed 2 Februari

2017].

Gradecki, J.D., 2002.

Mastering JXTA:

Building Java Peer-to-peer Application.

Indianapolis: Wiley Publishing.

Jabbar, W.A., Ismail, M. & Nordin, R.,

2012. Framework for Enhancing P2P

Communication Protocol on Mobile

Platform. p.11.

Leibnitz, K., Hoßfeld, T., Wakamiya, N. & Murata, M., 2007. Peer-to-Peer vs. Client/Server: Reliability and Efficiency of a Content Distribution Service.

Ripeanu,

M.,

2002.

Peer-to-Peer

Architecture Case Study: Gnutella

Network.

The Government of Hong Kong Special

Administration Region, 2008.

Peer-to-Peer Network. p.15.

Tribhuvan,

G.,

2007.

A

BRIEF

INTRODUCTION AND ANALYSIS

OF THE GNUTELLA PROTOCOL.

Watson, S., 2013.

How Kazaa Works.

[Online]

Available

at:

Gambar

Gambar 1 Model arsitektur peer-to-peer JXTA
Gambar 4 Desain Arsitektur Sistem
Gambar 8  konfigurasi sebagai RDV/Relay pada peer
Tabel 2 Hasil pengujian aplikasi Gnucleus

Referensi

Dokumen terkait

Bila ditinjau dari lapangan pekerjaan utama tersebut, selama satu tahun terakhir persentase penduduk yang bekerja di Sektor Industri, Sektor Perdagangan, rumah

Rencana Aksi Kegiatan BBPK Makassar tahun 2015-2019 merupakan rencana pengembangan Sumber Daya Manusia (SDM) Kesehatan untuk jangka waktu lima tahun ke depan, hal

Tabel 4.9 Data impedasi ekivalen penyulang 20 KV Gardu Induk Talang Ratu Tabel 4.10 Hasil perhitungan arus gangguan satu fasa ketanah pada penyulang 20. KV di Gardu Induk

Puji dan syukur Penulis panjatkan kehadirat Tuhan Yang Maha Esa atas berkat dan rahmat-Nya penulis dapat menyelesaikan penulisan skripsi yang dilakukan untuk melengkapi tugas

Mahasiswa Ju- rusan Pendidikan Matematika sebagai calon guru matematika di masa yang akan datang pun memiliki kewajiban untuk mengetahui bagaimana perangkat

Jika assignment telah dbuat maka secara otomatis karyawan yang baru masuk ke suatu bagian atau jabatan akan diwarisi training yang telah di”assign” pada bagian atau

Hal yang hampir sama juga dikemukakan oleh Riyana (2007 : 6) bahwa multimedia interaktif dapat: (1) memperjelas dan mempermudah penyajian pesan agar tidak

Ketika melakukan penelitian tentang mode operasi dari pabrik percontohan eksperimental oleh laboratorium termofisika NPO TsAT LLC, bersama dengan pemurnian gas