BAB II TINJAUAN PUSTAKA
2.1. Sistem Terdistribusi
Sistem terdistribusi adalah kumpulan beberapa komputer yang saling bebas namun tampak sebagai sebuah sistem tunggal Tanenbaum Steen 2002.
Definisi tersebut memiliki dua aspek yang menjadi perhatian, masing- masing adalah aspek perangkat lunak dan perangkat keras. Dari sisi perangkat keras,
setiap komputer adalah saling bebas otonom. Sedangkan dari sisi perangkat lunak, pengguna disuguhkan sebuah sistem yang oleh mereka dianggap sebagi
sebuah sistem tunggal. Dari kedua aspek tersebut, perangkat lunak memiliki peran yang lebih besar dalam menentukan seperti apa sistem terdistribusi tersebut.
Lebih lanjut dijelaskan bahwa kedua aspek tersebut membentuk karakteristik dari sistem terdistribusi sebagai berikut.
a. Perbedaan komputer dan cara bagaimana setiap komputer saling
berkomunikasi tidak tampak bagi pengguna sistem. b.
Interaksi pengguna dengan sistem terdistribusi menggunakan cara yang seragam dan konsisten, meski dilakukan di tempat dan waktu yang berbeda.
c. Scalable.
d. Sistem terdistribusi tetap dapat beroperasi meski beberapa bagian sedang
tidak dapat digunakan tanpa diketahui pengguna.
Untuk mend ukung keberagaman komputer dan jaringan sehingga tampak sebagai sebuah sistem tunggal bagi pengguna, sistem terdistribusi diorganisasi
dalam beberapa lapis perangkat lunak. Lapis teratas ditempati oleh aplikasi dan pengguna, sedangkan lapis terbawah adalah sistem operasi pada setiap komputer
yang otonom serta jaringannya. Di antara kedua lapis tersebut adalah middleware, yang tidak menangani komputer secara individu, namun memberikannya kepada
sistem operasi lokal, seperti pada Gambar 1.
Gambar 1 Ilustrasi umum sistem terdistribusi dengan middleware Tanenbaum Steen 2002
Kemudian, untuk memudahkan pengembangan dan integrasi aplikasi pada sistem terdistribusi, digunakan beberapa model untuk menggambarkan
mekanisme distribusi dan komunikasi yang dilakukan middleware. Mahmoud 2000 membagi model sistem terdistribusi menjadi dua, yaitu model clientserver
dan model berbasis obyek. Client
server adalah model komputasi terdistribusi di mana sebuah program client, berkomunikasi dengan program lain server untuk saling bertukar
informasi. Model clientserver menerapkan protokol yang sama untuk dapat saling berkomunikasi. Contohnya adalah Remote Procedure Call RPC. Model kedua
adalah model sistem terdistribusi berbasis obyek. Dengan model ini, client akan diisolasi dari implementasi layanan dalam bentuk representasi data dan kode yang
dapat dieksekusi. Pada model ini, client akan mengirimkan pesan pada sebuah obyek yang selanjutnya akan menerjemahkan pesan tersebut untuk kemudian
memberikan layanan yang diminta. Pemilihan layanan dilakukan oleh obyek yang disebut broker. Contohnya adalah Remote Method Invocation RMI dan Common
Object Request Broker Architecture CORBA.
Dengan semakin berkembangnya teknologi, dibutuhkan suatu sistem yang mampu secara efektif dan efisien menangani sumber daya yang terdistribusi luas
baik secara geografis, kapasitas, jenis dan sebagainya, untuk memenuhi kebutuhan
sejumlah aplikasi. Menurut Foster et al. 2001 beberapa aplikasi membutuhkan relasi sharing yang sangat fleksibel meliputi clientserver sampai peer-to-peer.
Sementara aplikasi lain membutuhkan tingkat pengendalian sumber daya yang dapat menjelaskan tentang bagaimana sumber daya digunakan. Kemudian
masalah penggunaan bersama sumber daya yang meliputi aplikasi, berkas, data, hingga komputer dan sensor, serta modus penggunaan sumber daya yang meliputi
pengguna tunggal hingga pengguna jamak. Beberapa masalah muncul pada sistem terdistribusi, terutama dalam hal
fleksibilitas, skalabilitas dan interoperabilitas dari entitas yang terlibat dalam sistem Foster et al. 2001. Kemudian berkembanglah pendekatan komputasi yang
dikenal sebagai metacomputing, scalable computing, global computing, internet computing
dan yang terakhir dikenal adalah grid computing Roure et al. 2003.
a. Grid