KOMPUTASI TERDISTRIBUSI

Latar Belakang Komputasi Terdistribusi

Perkembangan kecepatan prosesor berkembang sesuai dengan hukum Moore, meskipun demikian bandwidth jaringan komputer berkembang jauh lebih pesat. Semakin cepatnya jalur komunikasi ini membuka peluang untuk menggabungkan kekuatan komputasi dari sumber-sumber komputasi yang terpisah. Perkembangan ini memungkinkan skala komputasi terdistribusi ditingkatkan lebih jauh lagi secara geografis, melintasi batas-batas domain administrasi yang sudah ada. Pesatnya perkembangan teknologi di negara-negara maju, membuat para peneliti semakin haus akan tenaga komputasi yang dapat menjawab tantangan dan permasalahan yang mereka hadapi. Walaupun sudah memiliki super komputer dengan kapasitas yang sangat tinggi, apa yang sudah ada ini masih dirasa kurang, karena mereka berusaha memecahkan permasalahan yang lebih besar lagi. Setelah semua komputer yang dimiliki oleh seorang peneliti yang haus akan tenaga komputasi digunakan secara habis-habisan untuk memecahkan masalah, setelah berbagai cara untuk memecahkan masalah dicoba, dan dipilih yang paling efisien, tetapi tetap saja masalahnya belum juga dapat terpecahkan, maka komputasi terdistribusi adalah salah satu jawaban untuk memecahkan persoalan tersebut. Komputasi terdistribusi disusun dari kesepakatan-kesepakatan terhadap masalah yang fundamental, dibutuhkan untuk mewujudkan komputasi bersama dalam skala besar. Kesepakatan dan standar yang dibutuhkan adalah dalam bidang autentikasi, otorisasi, pencarian sumber daya, dan akses terhadap sumber daya terseebut. Komputasi terdistribusi berusaha untuk mencapai kualitas layanan yang canggih, (nontrivial quality of service) yang jauh diatas kualitas layanan komputer personal.

Apa yang dimaksud dengan Komputasi Terdistribusi?

Dalam memahami komputasi terdistribusi (distributed computing) dapat dilakukan dengan berbagai macam cara. Salah satu defenisi sederhana dari komputasi terdistribusi adalah proses berjalannya sebuah aktifitas komputasi yang dilakukan oleh lebih dari satu komputer yang berbeda. Pemahaman lain tentang komputasi terdistribusi adalah sebuah distribusi sebagian dari sebuah sistem informasi melalui banyak sistem komputer di banyak lokasi (Burd: 2003)

Sekarang ini banyak sekali produk-produk yang pasarkan juga telah banyak proyek yang mengembangkan apa yang disebut Komputasi Terdistribusi ini, yaitu pengembangan sebuah arsitektur system yang menciptakan adanya distribusi proses data antar jaringan system yang tersambung. Sebagai contoh proyek adalah proyek Seti@Home, sebuah proyek yang berupaya mengungkap adanya kehidupan yang centas (ET) di luar angkasa. Proyek lain yang dikembangkan saat ini dan dikembangkan dengan metode komputasi terdistribusi ( Brain H.Rudal, 2005), diantaranya;

a. Einstain@home, sebuah proyek yang mengungkap tentang teori Einstain tentang grafitasi serta hokum relativitas yang sampai saat ini belum bisa dibuktikan;

b. Brain Fingerprinting, sebuah proyek amerika yang akan membuat system yang dapat mengungkap informasi yang ada pada otak manusia;

c. Climate model forecast future, ini merupakan proyek yang akan memproyeksikan kondisi cuaca dunia akibat efek rumah kaca. Dengan

system ini kondisi cuaca bumi hingga setengah abad kemudian dapat segera diprediksi.

Komputasi terdistribusi ini banyak diminati disebabkan metode ini lebih efiein, yaitu memanfaatkan kondisi idle/diamnya sebuah proses kerja CPU, media penyimpanan yang terdapat pada ratusan maupun ribuan sistem komputer yang terkoneksi yang bekerja bersama-sama menyelesaikan satu pekerjaan. Walaupun masih banyak kelemahan, seperti terbatasnya aplikasi untuk kompilasi, maupun 'bottleneck' pada jalur bandwith, ditambah lagi masalah keamanan serta standarisasi juga merupakan masalah lain yang tidak dapat diabaikan.

Beberapa perusahaan telah bertahun-tahun membuat dan memasarkan sistem komputasi terdistribusi, dan juga telah mengembangkan berbagai macam inisiatif dan arsitektur sehingga memungkinkan adanya pendistribusian proses data dan obyek lintas jaringan system yang terkoneksi. Hal yang menarik dari sebuah komputasi terdistribusi telah ditemukan dan dirasakan pada perkembangannya yang terakhir. Dan ini akan menjadi fokus pembahasan di mana terdapat mengkondisikan 'idle'nya sebuah CPU, media penyimpanan dalam ratusan bahkan ribuan system yang terkoneksi untuk bersama-sama menyelesaikan satu permasalahan tertentu.

Perkembangan model pemprosesan tertentu sangat lah terbatas, sehingga kompilasi aplikasi, kondisi 'bottlenecks' pada bandwith, ditambah lagi tingkat keamanan, standarisasi menjadi sebuah tantangan sendiri. Pada tahun terakhir beberapa perusahaan seperti Napster, Intel, Microsoft, Sun dan Compaq akhirnya dapat berupaya menyelesaikan permasalahan di atas, yaitu bagaimana menjadikan komputasi terdistribusi ini menjadi sebuah konsep yang cerdas dalam perkembangan system informasi modern.

Dalam perkembangannya, untuk memahami konsep komputasi terdistribusi dapat dilakukan pembandingan dengan berbagai macam konsep lain yang masing-masing memiliki karakteristik yang berbeda, diantaranya adalah cluster computing dan grid computing.

Cara kerja komputasi terdistribusi

Cara kerja komputasi terdistribusi adalah membagikan beban kerja dan mendistribusikan ke komputer-komputer untuk diselesaikan. User hanya melakukan pengaturan sistem operasi, kemudian sistem operasilah yang melakukan tugas untuk mengorganisasi kemampuan dan tugas ke komputer-komputer itu.

Segmen internet yang paling dimengerti orang adalah World Wide Web, juga penggunaan yang paling diketahui tentang komputasi terdistribusi di arena publik. Banyak komputer yang berbeda membuat apapun ketika browsing diinternet, dengan setiap komputer diberikan peran khusus dalam sistem. Sebuah komputer di rumah misalnya digunakan untuk menjalankan browser dan untuk melihat informasi yang sedang dikirim sehingga dapat diakses oleh pengguna akhir. Sebuah server di internet sebagai penyedia layanan bertindak sebagai gateway dari sistem domain, untuk membantuk memutuskan mana komputer untuk berbicara dengan berdasarkan URL pengguna akhir. Selain itu, setiap halaman web ini dijalankan pada komputer lain.

Karakteristik Aplikasi Komputasi Terdistribusi

Pada dasarnya tidak semua aplikasi dapat digunakan pada komputasi terdistribusi ini. Jika aplikasi ini semakin real-time, maka semakin tidak cocok untuk digunakan. Meskipun setiap proses pekerjaan dapat diselesaikan dalam satu jam tidak akan memberikan manfaat jika 2 kondisi terjadi, yaitu lintas komunikasi antar system terdistribusi ini serta perubahan proses pelayanan pada klien mengalami 'bottleneck'.

Untuk itu, semua aplikasi dengan tugas tertentu dan memerlukan akses terhadap banyak data maka memerlukan system yang lebih besar lagi dibandingkan dengan sebuah PC. Jika data tersebut sebesar terabytes, sebuah supercomputer akan mungkin melakukan pekerjaan lintas system secara baik tanpa harus merusak atau membebani jaringan yang ada. Server ataupun system kluster yang lainnya akan lebih layak untuk aplikasi data yang lebih sedikit. Sedangkan untuk aplikasi terdistribusi dengan menggunakan banyak PC, kebutuhan data harus sesuai dengan kapasitas dari memory pada PC, dengan tetap menyediakan ruang kosong sebagai cadangan.

Berkenaan dengan hal tersebut, United device merekomendasikan bahwa sebuah aplikasi harus memiliki kemampuan untuk mengexploitasi apa yang disebut 'coarse-grained pallaelism' yang maksudnya adalah bahwa harus memiliki kemampuan untuk membagi aplikasi menjadi beberapa pekerjaan yang terpisah dan berdiri sendiri dan dapat dilakukan secara bersamaan. Hal yang paling penting untuk diperhatihan adalah kebutuhan adanya komunikasi antar pekerjaan tersebut, hal ini dikenal dengan interprocess communications.

Dalam penyediaan akses yang terdistribusi, bukankah system operasi harus bisa melayani pengguna dalam mengakses sumber-sumber tersebut baik dari dalam maupun dari luar. Bagaimana membedakan bahwa itu adalah sumber luar maupun dalam, serta bagaimana mengakses sumber yang diluar?

Untuk menjawab masalah tersebut, komponen system operasi memiliki fungsi, diantaranya disebut Protocol Stacks dan Remote Resource Access.

Protocol Stacks

Protocol stack adalah perangkat lunak yang khusus digunakan pada sebuah kumpulan protocol jaringan komputer (a computer protocol suite). Istilah ini kadang-kadang sering tertukar, jelasnya istilah suite adalah defenisinya sedangkan protocol adalah perangkat lunak yang melaksanakannya.

Protocol sendiri di dalam suite sering dianggap memiliki satu tujuan. Persepsi ini akan memudahkan dalam melakukan evaluasi dan desain, sebab setiap modul protocol biasanya akan melakukan komunikasi antar 'dua' dari suatu yang diayangkan sebagai lapisan dari irisan protocols. Protocol terendah dikenal dengan 'low level' yang secara fisik berinterkasi dengan perangkat keras. Semakin tinggi lapisannya semakin banyak fitur yang dimiliki. Pengguna aplikasi acapkali berhubungan dengan lapisan paling atas.

OSI Reference Model memiliki 7 (tujuh) layer yang mendefinisikan fungsi-fungsi dari data communications protocols. Masing-masing layer dari OSI model merepresentasikan fungsi yang akan dilakukan ketika data di transfer antara cooperating applications across dan intervening network.

protocol TCP/IP dapat diilustrasikan seperti pile dari susunan balok-balok bangunan antar satu dan lainnya. Karenanya, struktur ini juga dikenal sebagai stack atau protocol stack.

TCP/IP terdiri dari 4 lapisan (layer), berupa sekumpulan protokol yang bertingkat (protokol stack). Lapisan lapisan tersebut adalah:

• Lapisan Hubungan Antarmuka Jaringan (Network Interface Layer), Bertanggung jawab untuk mengirim dan menerima data dari media fisik.

• Lapisan_Internet, Bertanggung jawab dalam proses pengiriman ke alamat yang tepat (IP, ARP, dan ICMP).

• Lapisan Transportasi, Bertangung jawab dalam mengadakan komunikasi antar host.

• Lapisan Aplikasi, Tempat aplikasi-aplikasi yang menggunakan TCP/IP stack berada.

Dalam prakteknya, protocol stacks selalu dibagi menjadi 3 bagian besar, media, transport dan aplikasi. Sistem operasi tertentu akan memiliki minimal 2 sistem interface yang baik , yaitu satu antara lapisan media dan lapisan transport, sedang yang satunya antara lapisan transport dan lapisan aplikasi.

Sedangkan apa yang dimaksud dengan Assessing Remote Resources?

Dalam melakukan koneksi dengan sumber yang jauh, dapat dilakukan secara static maupun dinamis. Koneksi yang static dapat diketahui oleh pengguna atau syatem administrator sebelum akses ke sumber jauh tersebut terjadi. Sumber jauh tersebut akan memberikan local obyek, sumber2 dan nama layanan. Jenis koneksi ini pada dasarnya sangat sukar dikenal dan dikelola. Pengguna ataupun admin harus melakukan konfigurasi lebih dahulu setiap dilakukannya BootsUp. Jika alamat atau nama sumber jauh tersebut berubah, maka konfigurasi pada computer yang menggunakan koneksi statis harus juga dirubah.

Sedangkan yang dimaksud dengan koneksi yang dinamis adalah koneksi dimana terjadi interaksi antara resource locator dengan primary resource registration repository terjadi.

Namun hal yang paling penting dalam prinsip desain protocol jaringan adalah;

- effective

- reliability

- resiliency

Sebelum menjelaskan tentang Interprocess Communication yang pernah disinggung diatas, bagaimana bentuk-bentuk aplikasi komputasi terdistribusi yang sedang berkembang saat ini?

Berikut ini merupakan contoh dari bentuk aplikasi yang bisa dianggap sebagai kelebihan dari komputasi terdistribusi, yaitu;

1. daftar pencarian dari database dapat dibagi menjadi bagian yang lebih kecil antar computer yang ada. Pencarian dapat dilakukan bersamaan untuk setiap irisan database yang ada pada setiap computer.

2. teknik simulasi dan pemodelan yang kompleks dapat meningkatkan hasil yang akurat dengan melakukan banyak percobaan yang dilakukan secara random dan berlangsung bersamaan.

3. tehnik pencarian yang komprehensif dengan menggunakan sejumlah hasil yang telah diketahui untuk mnyelesaikan suatu masalah.

4. Model keuangan yang kompleks, perkiraan cuaca serta eksplorasi geografis, tabrakan mobil adalah contoh simulasi yang dapat dilakukan oleh komputasi terdistribusi

Kegunaan Komputasi Terdistribusi

Terdapat berbagai tipe sistem komputer terdistribusi dan banyak tantangan selama perancangan dan implementasinya. Tujuan utama dari sistem komputasi terdistribusi adalah untuk menghubungkan para pengguna dan sumber daya dalam cara yang transparent, open dan scalable. Idealnya, ini akan membuat sistem lebih fault-tolerant daripada sistem komputer stand-alone.

Openness merupakan properti dari sistem terdistribusi dimana setiap sub-sistem secara kontinu terbuka untuk berinteraksi dengan sistem lain. Protokol web services adalah standard yang memungkinkan sistem terdistribusi di-extend dan di-scale. Secara umum, suatu sistem terbuka yang bersifat scalable memberikan keuntungan lebih dibandingkan sistem yang tertutup dan self-contained (menyatu).

Konsekuensinya, sistem terdistribusi terbuka memberikan beberapa tantangan berikut:

  • Monotonicity. Begitu sesuatu dipublikasikan di dalam sistem terbuka (open system) maka tidak dapat diambil kembali.
  • Pluralism. Sub-sistem-subsistem berbeda dalam sistem open distributed dapat mempunyai informasi yang heterogen, mungkin pula overlap dan menyebabkan konflik. Tidak ada pengatur kebenaran sentral dalam sistem open distributed.
  • Unbounded nondeterminism. Secara asinkron, subsistem-subsistem dapat naik dan turun, dan link komunikasi dapat masuk dan keluar antar sub-sistem dalam sistem open distributed. Karena itu, waktu yang diperlukan untuk menyelesakan suatu operasi tidak dapat dibatasi dan dipastikan.

Dampak Adanya Komputasi Terdistribusi

Dampak dengan adanya komputasi terdistribusi adalah mempercepat penyelesaian tugas oleh komputer. Karena pengerjaannya paralel oleh karena itu dapat selesai dengan cepat dan dapat mengatur beberapa komputer dengan sistem operasi. Dampak yang paling terasa adalah pada bidang animasi. Jika pada saat merender suatu video animasi yang berdurasi panjang dengan menggunakan 1 komputer maka penikmat film akan dapat menonton film animasi tersebut beribu-ribu tahun lamanya. Dengan komputasi terdistribusi dapat dipercepat proses renderingnya dengan membagikan tugas-tigas kesetiap komputer yang saling terhubung.

Kesimpulan

Komputasi terdistribusi adalah suatu sistem yang dibuat sedemikian rupa sehingga dapat menyelesaikan masalah-masalah yang timbul dalam kehidupan manusia sehari-hari. Mungkin apabila komputasi terdistribusi tidak ditemukan kita masih menunggu waktu yang cukup lama untuk menyelesaikan tugas yang kompleks dengan menggunakan komputer. Komputasi terdistribusi ini tidak lepas dari namanya jaringan komputer kerena dengan jaringan komputer inilah beberapa komputer dapat bekerja sama.

http://www.wisegeek.com/what-is-distributed-computing.htm

http://bebas.vlsm.org/v06/Kuliah/MTI-PSOKS/2005/PSOSK-13-Distributed_Computing_Supp.pdf

http://tayerpups.wordpress.com/2011/02/22/komputasi-terdistribusi/

http://dh1m45.blogspot.com/2011/02/komputasi-terdistribusi.html

http://dinardo89.blogspot.com/2011/02/komputasi-terdistribusi.html

0 Responses

Posting Komentar

  • Cari Blog Ini