• Tidak ada hasil yang ditemukan

2.1 Penelitian Terdahulu

Sebagai bahan acuan dalam tugas akhir ini akan dipaparkan hasil penelitian terdahulu yang pernah dibaca oleh penulis, diantaranya :

Penelitian yang dilakukan oleh Stephanos Androutsellis-Theotokis dan

Diomidis Spinellis dari University of Economics and Business, dengan judul Survey of Peer-to-Peer Content Distribution Technologies, dengan tujuan untuk membuat sebuah pendistribusi penyimpanan prasarana aman dan efisien, mengorganisir, pengindeksan, pencarian, memperbarui, dan pengambilan data. (S. Androutsellis-Theotokis, and D. Spinellis, 2004)

Pada penelitian tersebut dijelaskan bahwa sistem Peer-to-peer adalah sistem P2P file sharing yang terdiri dari node yang saling berhubungan, mampu mengatur diri ke dalam topologi jaringan dengan tujuan berbagi resource seperti konten, siklus CPU, Penyimpanan, dan bandwidth. Distribusi konten area terkemuka yang biasa disebut aplikasi peer-to-peer sistem, didasarkan pada sistem dan infrastruktur yang dirancang untuk berbagi digital media dan data lainnya antara pengguna. (S. Androutsellis-Theotokis, and D. Spinellis, 2004)

Dalam survei ini, kami mengusulkan sebuah framework untuk menganalisis konten peer-to-peer. Pendekatan kami berfokus pada karakteristik nonfunctional

seperti potensi manajemen keamanan, skalabilitas, kinerja, keadilan, dan

resource, dan memeriksa cara di mana karakteristik ini tercermin dalam dan

dipengaruhi oleh keputusan desain arsitektur yang diadopsi oleh arus sistem peer-to-peer. Saat ini sistem peer-to-peer dan teknologi infrastruktur dalam hal lokasi objek dan routing mekanisme mereka didistribusikan, pendekatan mereka untuk konten replikasi, caching dan migrasi, dukungan mereka untuk enkripsi, kontrol akses, otentikasi dan identitas, anonimitas, penyangkalan, akuntabilitas dan reputasi, dan penggunaan sumber daya perdagangan dan skema manajemen (S. Androutsellis-Theotokis, and D. Spinellis, 2004)

Saat ini kami belajar sistem peer-to-peer, teknologi infrastruktur dalam hal lokasi objek dan routing objek mekanisme terdistribusi, pendekatan mereka untuk konten replikasi konten, caching dan migration, enkripsi, kontrol akses, otentikasi

dan identitas, anonynity, deniability, akuntabilitas dan reputasi, dan mereka menggunakan resource trading dan skema manajemen. (S. Androutsellis-Theotokis, and D. Spinellis, 2004)

2.2 Dasar Teori

Pada dasar terori ini akan dibahas mengenai client server, peer to peer, Netbeans IDE, Framework JXTA, CMS(Content Managemen System).

2.2.1 Client Server

Client server adalah sebuah jaringan komputer yang saling terhubung satu sama lain, dimana ada satu komputer sebagai server dan ada atau lebih klien (workstation). Komputer server bertugas untuk menyediakan fasilitas bagi komputer-komputer lain yang terhubung kepada jaringan. Fasilitas yang dimaksud bisa berupa service, data maupun akses. Jadi arsitektur client-server adalah desain sebuah aplikasi terdiri dari client dan server yang saling berkomunikasi ketika mengakses server dalam suatu jaringan. Bisa dilihat pada gambar 2.1 .

7

Gambar 2.1 Client Server Sumber Refrensi : (Saktiaji, 2012)

Sistem Client Server mempunyai beberapa kelebihan dan kekurangan yang antara lain.

Kelebihan sistem client ser ver antara lain :

a. Komputer server dapat difungsikan sebagai pusat data, sehingga komputer

client dapat mengakses data secara terpusat dari satu sumber. Apabila sebuah

client rusak, maka data masih terdapat di server, sehingga tidak mengganggu kinerja client jika diperlukan pergantian piranti.

b. Terdapat administrator yang akan memantau baik segi keamanan maupun administrasi jaringan, sehingga sistem akan tetap terkendali dan terkontrol. Hal-hal yang dapat mengganggu kinerja sistem dapat dihindari seminimal mungkin. Administrator di sini bisa berupa personal (orang) atau dapat juga sebuah sistem otomatis yang dirancang untuk melakukan tindakan preventif

jika terjadi kegagalan sistem.

c. Sistem back up lebih baik dan terkendali. Back up data terkendali disebabkan terdapat pusat data yang ada di dalam server. Apabila pada komputer client

mengalami kerusakan, maka data masih tersedia pada back up sistem yang terdapat di server. Tentu saja, hal ini sangat tergantung dari arsitektur pembuatan server sendiri.

d. Kerusakan pada client tidak berpengaruh pada server. Sistem server dapat berdiri sendiri tanpa adanya client namun sebaliknya, client tidak dapat berdiri sendiri tanpa adanya server. Jika sebuah client mengalami kerusakan, maka sistem terpusat yang ada di server tidak akan mengalami gangguan. Paling cepat hanya sistem yang berhubungan dengan client itu saja yang bermasalah. (Saktiaji, 2012)

Kelemahan sistem client ser ver antara lain:

a. Kelancaran kinerja jaringan sangat tergantung pada server, server memainkan peran penting pada sistem client server. Semua hal terkait dengan service,

data dan jaringan sangat tergantung kepada kualitas server. Jika server

mengalami gangguan, maka dapat dipastikan seluruh sistem client yang tergantung pada server tersebut akan turut mengalami gangguan juga. Namun gangguan yang terjadi pada sebuah client, tidak akan berpengaruh pada kelancara kinerja server.

b. Membutuhkan biaya yang mahal. Sebuah piranti komputer yang difungsikan sebagai server harus mempunyai spesifikasi tertentu sehingga dapat menopang beban komputasi yang tinggi. Server harus mampu melayani satu atau lebih client dengan sedikit atau tanpa gangguan sama sekali. Untuk

9

mendapatkan kriteria piranti komputer semacam itu, tentulah dibutuhkan biaya lebih. (Saktiaji, 2012)

2.2.2 Peer To Peer

Tahun 1979, Usenet, sebuah aplikasi terdistribusi yang dibuat oleh Tom Truscott dan Jim Ellis, lahir di Amerika Serikat. Aplikasi ini umumnya melayani penggunanya dengan newsgroup. Pada tahun-tahun itu, dunia belum mengenal dan mampu menikmati layanan internet sebaik dan secepat seperti saat ini. Umumnya, berkas-berkas yang berada di dalam komputer milik pengguna usenet dipertukarkan dalam bentuk batch files (berkas yang berisi data yang diproses atau ditransmisikan mulai dari awal hingga akhir). Biasanya, para pengguna P2P saat itu saling bertukar data di malam hari yang larut. Itu adalah waktu di sebuah negara besar ketika jalur telepon untuk SLJJ (sambungan langsung jarak jauh) sedang sepi. Akibatnya, tidak ada cara yang efektif untuk membuat fungsi aplikasi ini menjadi tidak terdistribusi. Dengan kata lain, aplikasi ini tetap menjadi aplikasi yang tidak memiliki pusat kendali (server). Bahkan hingga hari ini. Aplikasi P2P generasi awal lain yang sukses dan populer adalah FidoNet. Laiknya Usenet, FidoNet juga digunakan secara terdistribusi. Aplikasi ini dibuat oleh Tom Jennings pada tahun 1984 sebagai cara untuk bertukar pesan diantara pengguna-penggunanya yang memiliki BBS (Bulletin Board System) yang berbeda. Baik Usenet maupun FidoNet dapat menjadi contoh betapa hebatnya teknologi P2P. Sampai detik ini, keduanya masih lestari. Uniknya, sekarang keduanya sudah tidak sendiri lagi. “Cucu-cucu” mereka sudah lahir dan ikut menggebrak dunia maya. Sebut saja Gnutella, Kazaa, Napster, dsb. (Ismail, 2012)

Jaringan komputer P2P termasuk sebuah cabang (subset) dari bidang komputasi terdistribusi. Namun komputasi terdistribusi sendiri bukanlah cabang dari P2P. Sebutan “peer-to-peer” mengisyaratkan sebuah hubungan kesetaraan (egalitarian relationship) diantara para peer Dan yang terpenting, hubungan ini haruslah menghasilkan interaksi langsung antara komputer pengguna yang satu dengan komputer pengguna lainnya. Tanpa embel-embel ada komputer yang berstatus sebagai client dan berstatus sebagai server. Secara teknis, jaringan P2P (peer-to-peer) adalah sebuah jaringan yang memungkinkan semua komputer dalam lingkungannya bertindak/berstatus sebagai server yang memiliki kemampuan untuk mendistribusikan sekaligus menerima berkas-berkas atau sumber. (Ismail, 2012)

Tugas Jaringan Komputer P2P 3daya (resource) yang ada dalam komputer mereka ke komputer lainnya. Jaringan bertipe ini sangat banyak dijumpai di kantor-kantor yang tidak membutuhkan sebuah sentral pengaturan laiknya jaringan client-server. Di internet, jaringan P2P hidup dan berkembang melalui aplikasi-aplikasi populer seperti Napster dan Gnutella. Klasifikasi P2P Berdasarkan tingkat/derajat sentralisasinya, jaringan P2P terbagi ke dalam 2 tipe, yakni:

1. P2P Murni (Pure P2P), dengan ciri-ciri sebagai berikut:

a. Masing-masing peer berstatus setara (egaliter), setiap peer berstatus sebagai client juga server.

b. Tidak ada server pusat yang mengatur jaringan. c. Tidak ada router yang menjadi pusat jaringan.

11

2. P2P Hybrid (Hybrid P2P), dengan ciri-ciri sebagai berikut:

a. Mempunyai server pusat yang memantau dan menjaga informasi yang berada di setiap peer sekaligus merespon peer ketika ada yang meminta informasi itu.

b. Setiap peer bertanggung jawab untuk menyediakan resource yang tersedia. Hal ini terjadi karena server pusat tentu diatur sedemikian rupa untuk tidak memilikinya. Selain itu, hal ini juga dilakukan agar server pusat tersebut dapat mengetahui resource apa saja yang akan didistribusikan di dalam jaringan.

c. Ada router yang menjadi pusat jaringan.

Manfaat peer to peer adalah agar semua peer dapat menyediakan sekaligus memanfaatkan resource komputer, termasuk bandwith, media penyimpanan, dan kemampuan komputasi yang ada di dalam jaringan tersebut. Dengan demikian, ketika node-node (komputer-komputer) telah banyak terhubung dan terjadi banyak permintaan terhadap sistem, kapasitas total yang dimiliki oleh sistem juga akan meningkat. Hal ini merupakan kontra produktif dengan apa yang terjadi pada sistem client-server. Dalam sistem client-server, bertambahnya client justru dapat menyebabkan melambatnya transfer data di dalam sistem. Sifat terdistribusi yang dimiliki oleh jaringan P2P ini juga dapat meningkatkan kestabilan/kekokohan (robustness) sistem dari kemungkinan kegagalan (system failure). Kestabilan ini disebabkan oleh dua faktor. Pertama, adanya replikasi/penggandaan data yang terjadi di antara para pengguna (peer). Kedua, dengan memanfaatkan resource komputer peer itu

sendiri untuk mencari data yang ada di dalam jaringan tanpa mengandalkan satu resource komputer server saja. (Ismail, 2012)

Topologi Jaringan P2P Shuman Ghosemajumder dalam makalahnya yang berjudul Advanced Peer-Based Technology Business Models yang diterbitkan pada tahun 2002 membagi topologi jaringan P2P ke dalam 2 tipe. Berikut tipe-tipe tersebut:

1. Centralized Model

Model ini adalah model yang digunakan oleh Napster. Semua

peer (pengguna) akan terhubung ke satu atau sekelompok (cluster) server.

Server ini berfungsi untuk memfasilitasi hubungan antara peer dalam jaringan tersebut.

Server tersebut dapat memainkan satu, dua atau ketiga peran berikut ini: a. Discovery. Server yang memainkan peran ini akan meyimpan

informasi tentang Tugas Jaringan Komputer : P2P 5 user yang sedang terhubung ke dalam sistem sekaligus memungkinkan semua user untuk mengetahui bagaimana cara menghubungi user tertentu yang sedang berada di dalam jaringan.

b. Lookup. Server dengan peran lookup memiliki kemampuan

server dengan peran discovery. Hanya saja, server ini juga akan menyediakan mekanisme pencarian yang tersentralisasi.

c. Content Delivery. Dalam peran ini, peer akan melakukan

upload pada semua atau beberapa data (content) milik mereka ke

13

lebih cepat ketimbang dengan kedua model peran sebelumnya. Dengan beberapa pertimbangan keadaan tentunya.

2. Decentralized Model

Model ini akan membuat semua peer memiliki status dan fitur yang sama dalam sebuah jaringan. Jadi, tidak akan ada server atau client di dalamnya. Contoh aplikasinya adalah Freenet. Dalam model terdesentralisasi, seorang

peer tidak akan dapat mengetahui Tugas Jaringan Komputer : P2P 6 jumlah

peer lainnya yang sedang terhubung di dalam jaringan. Selain itu, seorang peer

juga tidak akan dapat mengetahui alamat dari peer lain yang akan dihubunginya. Satu lagi kekurangan model ini adalah bahwa peer tidak dapat mengetahui isi (content) komputer milik peer lainnya yang sedang tersedia dalam jaringan. (Ismail, 2012)

Meskipun begitu, model desentralisasi juga memiliki kelebihan. Diantaranya berkaitan dengan masalah keamanan, baik itu dilihat dari segi teknologi maupun hukum hak cipta. Dari segi teknologi, model

desentralisasi menguntungkan karena akan lepas dari kemungkinan satu serangan tunggal yang dapat mematikan jaringan. Sedangkan dari segi hukum hak cipta, meskipun masih menyisakan bias, model ini relatif lebih bebas dari jerat undang-undang hak cipta karena content yang tersebar dalam jaringan merupakan data yang hendak saling dipertukarkan. Bukan untuk dijual atau dibajak. (Ismail, 2012)

Kesimpulan uraian di atas kita dapat mengambil beberapa poin sebagai kesimpulan. Berikut poin-poin tersebut:

a. Teknologi P2P masih akan terus berkembang selaras dengan perkembangan teknologi informasi dan komunikasi.

b. Semakin besar jumlah user yang menjadi peer dalam sebuah jaringan P2P maka akan semakin bagus pula jaringan tersebut. Baik jika dilihat dari sisi teknologi maupun sosial.

c. Berdasarkan derajat sentralisasinya, P2P terbagi ke dalam dua bagian, yakni; P2P Murni dan P2P Hybrid.

d. Berdasarkan topologinya, P2P terbagi ke dalam dua bagian, yakni; topologi model tersentralisasi, dan model terdesentralisasi. e. Masing-masing kategori P2P memiliki kelemahan dan

kelebihan masing-masing. User dapat memilih kategori mana yang paling sesuai dengan kebutuhan dan kemampuannya.

f. Keberadaan jaringan P2P masih sering menimbulkan konflik dalam hal hak cipta suatu karya intelektual. Terutama dalam dunia industri hiburan seperti musik, TV dan film. (Ismail, 2012)

2.2.3 Netbeans IDE

Netbeans Adalah sebuah lingkungan pengembangan - sebuah kakas untuk pemrogram menulis, mengompilasi, mencari kesalahan dan menyebarkan program. Netbeans IDE ditulis dalam Java - namun dapat mendukung bahasa pemrograman lain. Terdapat banyak modul untuk memperluas netbeans IDE. Netbeans IDE adalah sebuah produk bebas dengan tanpa batasan bagaimana digunakan. (Anonim, 2000)

15

Netbeans juga salah satu open source IDE berbasiskan Java dari Sun Microsystems yang berjalan di atas Swing. Swing sebuah teknologi Java untuk pengembangan aplikasi desktop yang multiframework. Netbeans IDE

mendukung pengembangan semua tipe aplikasi (Java J2SE, Web, EJB, Mobile Application). (Hendrawan, 2011)

2.2.4 Fr amewor k J XTA

JXTA adalah sebuah proyek open source yang menciptakan jaringan peer-to-peer overlay yang duduk di atas TCP/IP. Setiap peer pada jaringan diberikan nomor IP, bahkan jika mereka berada di belakang firewall atau tidak memiliki alamat IP yang stabil. Super peer di jaringan JXTA menjalankan router level aplikasi yang menyimpan informasi khusus seperti bagaimana untuk mencapai

peer, bagaimana untuk bergabung dengan sub-kelompok peer, dan peer konten apa membuat tersedia. JXTA level aplikasi relay dapat permintaan proxy antara

peer yang tidak biasanya akan mampu berkomunikasi firewall atau NAT perangkat. peer mengorganisir diri dalam peer group, yang lingkup seluruh permintaan pencarian dan bertindak sebagai tempat keamanan. Peer apapun dapat mempublikasikan dan membuat peer group dengan cara desentralisasi, dan peer

lain dapat mencari dan menemukan peer group ini menggunakan peer super. peer

berkomunikasi menggunakan pipe, sangat mirip dengan Unix pipe. Pipe abstrak dengan cara yang persis di mana dua peer berkomunikasi, memungkinkan teman-teman untuk berkomunikasi menggunakan peer lain sebagai perantara jika mereka biasanya tidak akan mampu berkomunikasi karena jaringan partisi. (Scott Oaks, Bernard Traversat, Li Gong, 2002)

Manfaat dari mengambil pendekatan ini beberapa kali lipat. Pertama, pemrograman dapat dengan mudah memanfaatkan pengetahuan mereka tentang standar TCP/IP socket dan socket server untuk bekerja di jaringan peer-to-peer

JXTA tanpa perlu belajar tentang JXTA. Kedua, Semua socket P2P kode subclass

standar java.net objek, seperti java.net.Socket, sehingga aplikasi jaringan yang ada dapat dengan cepat dipindahkan untuk bekerja di jaringan peer-to-peer. Proyek P2P socket sudah mencakup sejumlah besar perangkat lunak porting menggunakan peer-to-peer jaringan, termasuk web server (Jetty) yang dapat menerima permintaan dan melayani konten melalui jaringan peer-to-peer; servlet

dan JSP mesin (Dermaga dan Jasper) yang memungkinkan servlets yang ada dan JSP untuk melayani klien P2P; XML-RPC client dan server (Apache XML-RPC) untuk mengakses dan mengekspos Endpoint P2P XML-RPC; HTTP/1.1 klien (Apache Commons HTTP-klien) yang dapat akses P2P web server; gateway

(Smart Cache) untuk membuatnya mungkin untuk browser yang ada untuk mengakses P2P situs web; dan WikiWiki (JSPWiki) yang dapat digunakan untuk host WikiWikis pada komputer lokal Anda bahwa rekan-rekan lain dapat mengakses dan mengedit melalui jaringan P2P. Bahkan lebih baik, Semua software ini bekerja dan terlihat persis seperti yang terjadi sebelumnya sedang porting. Abstraksi P2P socket begitu kuat bahwa Port masing-masing dari potongan-potongan dari perangkat lunak mengambil sesedikit 30 menit sampai beberapa jam. Semuanya termasuk dalam proyek soket P2P adalah open source, sebagian besar di bawah lisensi BSD-jenis, dan karena lintas-framework, yang ditulis di Java. (Scott Oaks, Bernard Traversat, Li Gong, 2002)

17

2.2.5 Konsep Detail J XTA

Dibawah ini beberapa konsep yang terdapat pada framework JXTA:

a. Peer

Peer adalah perangkat jaringan yang mengimplementasikan satu atau lebih protokol JXTA. Peer dapat termasuk sensor, telepon, dan PDA, serta PC, server, dan super komputer. Setiap peer beroperasi secara independen dan asynchronous dari semua peer lainnya, dan secara unik diidentifikasi oleh peer ID. Peer mempublish satu atau lebih interface

jaringan untuk digunakan pada protokol JXTA.

Setiap interface di-publish sebagai peer terakhir, yang unik mengidentifikasi interface jaringan. Peer endpoints digunakan oleh peer

untuk membangun langsung koneksi point-to-point antara dua peer. Peer

tidak diharuskan untuk memiliki koneksi jaringan langsung point-to-point

antara mereka. peer perantara dapat digunakan untuk pesan rute ke peer

yang dipisahkan karena koneksi jaringan fisik atau konfigurasi jaringan (mis, Nat, firewall, proxy). Peer biasanya dikonfigurasi untuk secara spontan agar menemukan satu sama lain pada jaringan untuk membentuk grup sementara atau persisten hubungan yang disebut peer group. (Microsystems, 2003)

b. Peer Goup

Peer group adalah kumpulan peer yang telah disepakati pada

service. Peer mengatur dirinya sendiri menjadi peer group, masing-masing diidentifikasi dengan ID peer group yang unik. Setiap peer group dapat

menetapkan kebijakan keanggotaan sendiri dari terbuka (siapa saja dapat bergabung) sangat aman dan dilindungi (kredensial yang cukup diperlukan untuk bergabung).

Peer mungkin milik lebih dari satu peer group secara bersamaan. Secara default, kelompok pertama yang dipakai adalah Net Peer Group. Semua peer tergabung pada Net Peer Group. Peer dapat memilih untuk bergabung dengan peer group tambahan. Protokol JXTA menggambarkan bagaimana peer dapat menerbitkan, menemukan, bergabung, dan memantau peer group, mereka tidak mendeteksi kapan atau mengapa peer group dibuat. (Microsystems, 2003)

c. Network Service

Peer bekerja sama dan berkomunikasi untuk mempublikasikan, menemukan, dan aktifkan network service. Peer dapat mempublikasikan beberapa service. Peer menemukan network service melalui peer discoveryprotocol. Protokol JXTA mengakui dua tingkat network service. (Microsystems, 2003)

d. Peer Service

Peer service diakses hanya pada peer yang mempublishkan service

tersebut. Jika peer gagal, maka service juga gagal. Beberapa contoh

service dapat dijalankan pada peer yang berbeda, tetapi masing-masing contoh menerbitkan advertisement sendiri. (Microsystems, 2003)

19

e. Peer Group Service

Sebuah peer group service terdiri dari kumpulan contoh (berpotensi bekerja sama dengan satu sama lain) service berjalan pada beberapa anggota peer group. Jika salah satu peer gagal, peer group service tidak terpengaruh (dengan asumsi service ini masih tersedia dari anggota peer lain). Mengintai service grup yang diterbitkan sebagai bagian dari advertisement peer group. Service dapat berupa memberikan instal ke

peer atau diambil dari jaringan. Dalam rangka untuk benar-benar menjalankan Service, peer mungkin harus mencari implementasi yang cocok untuk runtime proses environment. Dalam proses melakukan

download dan memasang service pada jaringan mirip dengan melakukan pencarian di Internet untuk halaman web, mengambil halaman, dan kemudian menginstal yang diperlukan plugin. (Microsystems, 2003)

f. Advertisement

Semua resource jaringan JXTA - seperti peer, peer group, pipe, dan service yang diwakili oleh advertisement. Advertisement adalah bahasa netral struktur metadata direpresentasikan sebagai dokumen XML. JXTA protokol menggunakan advertisement untuk menggambarkan dan mempublikasikan keberadaan resource. Peers menemukan resource

pencarian advertisement yang sesuai dengan mereka, dan mungkin cache

setiap advertisement yang ditemukan secara lokal. Setiap advertisement

yang diterbitkan dengan jangka waktu lama yang menentukan ketersediaan

resource yang terkait. Jangka waktu lama memungkinkan penghapusannya

reosurce usang tanpa memerlukan kontrol terpusat. Sebuah advertisement

dapat dipublikasikan ulang (sebelum advertisement asli berakhir) untuk memperpanjang masa hidup resource. (Microsystems, 2003)

2.2.6 CMS (Content Management Service)

Content Management Service (CMS) memungkinkan peer untuk berbagi-data seperti dokumen teks, file grafis, file suara, dan media lainnya dengan peer

lainnya. Untuk menjaga konsistensi dengan spesifikasi, CMS bergantung pada

advertisement untuk memberikan informasi tentang media atau file yang akan

di-share, dan bergantung pada pipe JXTA pada mentransfer konten. CMS adalah contoh yang sangat baik dari layanan yang telah dibangun ke dalam sistem JXTA.

Peer dapat memilih untuk menggunakan layanan ini atau tidak, tergantung pada keinginannya untuk berbagi konten dalam peer group. Dengan menggunakan CMS, peer dibebaskan dari Rincian berbagi konten dan membuatnya tersedia untuk pencarian dan transfer. (Gradecki, 2002)

21

BAB III

Dokumen terkait