Dokumen tersebut membahas tentang sistem terdistribusi yang merupakan sistem dimana komponen perangkat lunak atau perangkat kerasnya tersebar di jaringan komputer dan berkomunikasi menggunakan pesan. Dibahas pula karakteristik, model, keuntungan, tantangan dan permasalahan sistem terdistribusi.
Sim, tsania ardhani, hapzi ali, sumber daya komputasi dan komunikasi, univers...
Sistem Terdistribusi
1. MAKALAH
SISTEM TERDISTRIBUSI
Disusun oleh :
→ Muhamad Nur Hidayat (55409360)
→ Muhammad Reza F. (55409679)
→ Sahru Ramadhan (55409179)
→ Surya Prasetya (53409446)
UNIVERSITAS GUNADARMA
2013
2. SISTEM TERDISTRIBUSI
Sistem terdistribusi adalah sebuah sistem dimana komponen software atau hardware-
nya terletak di dalam jaringan komputer dan saling berkomunikasi menggunakan message
passing (Message passing adalah sebuah teknik untuk melakukan sinkronisasi dan
komunikasi antara proses-proses yang saling berinteraksi). Ada juga yang mengatakan Sistem
Terdistribusi adalah sebuah sistem yang terdiri dari beberapa komponen yang terdapat di
dalam sebuah jaringan komputer. Komponen-komponen tersebut saling berinteraksi dan
berkomunikasi hanya dengan melalui pengiriman pesan.
Proses yang terjadi di dalam suatu sistem terdistribusi antara lain dengan dijalankan
secara bersamaan (execute concurrently), interaksi untuk bekerjasama dalam mencapai tujuan
yang sama, serta mengkoordinasikan aktifitas dan pertukaran informasi yaitu pesan yang
dikirim melalui jaringan komunikasi
A. Karakteristik Sistem Terdistribusi
Dalam sistem terdistribusi terdapat beberapa karakteristik, yaitu :
1. No global clock
→ Terdapat batasan pada ketepatan proses sinkronisasi clock pada sistem
terdistribusi, oleh karena asynchonous message passing
→ Pada sistem terdistribusi, tidak ada satu proses tunggal yang mengetahui global
state sistem saat ini (disebabkan oleh concurrency dan message passing)
2. Independent failure
→ Kemungkinan adanya kegagalan proses tunggal yang tidak diketahui
→ Proses tunggal mungkin tidak peduli pada kegagalan sistem keseluruhan
3. Concurrency of components
→ E.g. Beberapa pemakai browser mengakses suatu halaman web secara
bersamaan.
3. B. Model Dalam Sistem Terdistribusi
Resources dalam sistem terdistribusi dipakai secara bersama oleh users. Biasanya
di bungkus (encapsulated) dalam suatu komputer dan dapat diakses oleh komputer lain
dengan komunikasi. Setiap resource diatur oleh program yang disebut dengan resource
manager. Resource manager memberikan kemungkinan komunikasi interface antar
resource. Resource Managers dapat digeneralisasi sebagai proses, kalau sistem di design
dengan sudut pandang object (Object Oriented), resource dibungkus dalam suatu objek.
1. Model Arsitektur (Architectural Models)
Bagaimana cara kerja sistem terdisribusi antara komponen – komponen sistem dan
bagaimana komponen tersebut berada pada sistem terdistribusi :
→ Client – Server Model.
Sistem yang terdiri dari kumpulan – kumpulan proses disebut dengan server,
dan memberikan layanan kepada user yang disebut dengan client. Model client-
server biasanya berbasiskan protokol request/reply. Contoh implementasi nya,
atara lain RPC (Remote Procedure Calling) dan RMI (Remote Method
Invocation) : client mengirimkan request berupa pesan ke server untuk
mengakses suatu service, sedangkan server menerima pesan tersebut dan
mengeksekusi request client dan mereply hasil ke client.
→ Proxy Server
Proxy server menyediakan hasil copy (replikasi) dari resource yang di atur oleh
server lain. Biasa nya proxy server di pakai untuk menyimpan hasil copy web
resources. Ketika client melakukan request ke server, hal yang pertama
dilakukan adalah memeriksa proxy server apakah yang diminta oleh client
terdapat pada proxy server. Proxy server dapat diletakkan pada setiap client atau
dapat di pakai bersama oleh beberapa client. Tujuannya adalah meningkatkan
performance dan availibity dengan mencegah frekuensi akses ke server.
4. → Peer Process
Semua proses (object) mempunyai peran yang sama, seperti : Proses
berinteraksi tanpa ada nya perbedaan antara client dan server, Pola komunikasi
yang digunakan berdasarkan aplikasi yang digunakan, dan merupakan model
yang paling general dan fleksible
2. Model Interaksi (Interaction Models)
Untuk model interaksinya, sistem terdistribusi dibagi menjadi dua bagian, yaitu :
→ Synchrounous distributed system
Pada sistem ini batas atas dan batas bawah waktu pengeksekusian dapat di set,
pesan yang dikirim maupun diterima dalam waktu yang sudah ditentukan, serta
fluktuasi ukuran antara waktu local berada dalam suatu batasan. Beberapa hal
penting yang harus diperhatikan adalah dalam sistem ini terdapat satu waktu
global, hanya sistem ini yang dapat memprediksi perilaku (waktu), serta dalam
sistem ini dimungkinkan dan aman untuk menggunakan mekanisme timeout
dalam mendeteksi error dalam proses / komunikasi.
→ Asynchronous distributed system
Banyak sistem terdistribusi yang menggunakan model interaksi ini (termasuk
Internet). Ciri-ciri yang dimiliki oleh sistem ini adalah Tidak ada batasan dalam
waktu pengeksekusian, Tidak ada batasan dalam delay transmission (penundaan
pengiriman), Tidak ada batasan terhadap fluktuasi waktu local.
5. 3. Model Kegagalan (Failure Models)
Kegagalan dapat terjadi pada proses atau kanal komunikasi. Dan
penyebabnya bisa berasal dari hardware ataupun software. Model Kegagalan
(Failure Models) dibutuhkan dalam membangun suatu sistem dengan prediksi
terhadap kagagalan – kegagalan yang mungkin terjadi.
Omission Faluires
Yang dimaksud dengan Ommision Failures adalah ketika prosesor dan kanal
komunikasi mengalami kegagalan untuk melakukan hal yang seharusnya
dilakukan. Dikatakan tidak mempunyai ommision failures apabila terjadi
keterlambatan (delayed) tetapi akhirnya tetap tereksekusi dan sebuah aksi di
eksekusi walaupun terdapat kesalahan pada hasil.
Dengan synchronous system, ommision failures dapat dideteksi dengan timeouts.
Kalau kita yakin bahwa pesan yang dikirim sampai, timeout akan
mengindikasikan bahwa proses pengiriman rusak, seperti fail-stop behavior pada
sistem.
Arbitary Failures
Ini adalah kegagalan yang paling buruk dalam sistem. Tahapan proses atau
komunikasi diabaikan atau yang tidak diharapkan terjadi dieksekusi. Sehingga
hasil yang diharapkan tidak terjadi ataumegeluarkan hasil yang salah.
Timing Failures
Timing Failures dapat terjadi pada synchronous system, dimana batas waktu
diatur untuk eksekusi proses, komunikasi dan fluktuasi waktu. Timing Failures
terjadi apabila waktu yang telah ditentukan terlampaui.
6. C. Pentingnya Komputasi Terdistribusi
Sistem komputer terdistribusi merupakan hal penting untuk fungsi organisasi. Contoh
umum dari sitem komputer terdistribusi ini adalah :
1. Internet
Internet merupakan suatu bentuk jaringan global yang menghubungkan
komputer satu sama lainnya, yang dapat berkomunikasi dengan media IP sebagai
protokol. Karakteristik dari internet adalah berukuran sangat besar dan beragam
(heterogen); fasilitas yang dimiliki berupa email, transfer file, komunikasi
multimedia, WWW, dll; open-ended; menghubungkan intranet (melalui backbone)
dengan home users (melalui modem, Internet Service Provider).
2. Intranet
Karakteristik dari Intranet yaitu beberapa LAN dihubungkan melalui
backbone, merupakan media transmisi informasi dalam organisasi (data elektronik,
dokumen), menyediakan layanan seperti (email, file), dihubungkan ke internet melalui
router atau gateway, serta melindungi komunikasi keluar / masuk dengan firewall.
7. 3. Peralatan Portable dan Handheld
Mobile and ubiquitous computing
→ Wireless LAN (WLAN)
Merupakan konektifitas untuk peratalan portable (laptop, PDA, mobile phone, video /
digital camera) dan WAP (Wireless Application Protocol).
→ Home Intranet
Merupakan embedded devices untuk peralatan rumah (hi-fi, mesin cuci, lampu), serta
Universal remote control dan peralatan komunikasi.
4. World Wide Web (WWW)
Karakteristik dari WWW (World Wide Web) adalah resource sharing ke
seluruh dunia melalui internet; berbasis pada teknologi, seperti HTML (Hypertext
MarkUp Language), URL (Uniform Resource Locator), arsitektur client-server; serta
open system (open standard, open document, open source) dapat diperluas dan
diimplementasi ulang.
D. Keuntungan dari Sistem Terorganisasi
Keuntungan yang didapatkan dalam menerapkan sistem terdistribusi, antara lain :
Performance : Kumpulan dari beberapa prosesor akan memberikan kinerja yang lebih
baik dari pada komputer yang terpusat. Begitu juga kalau dilihat dari sisi biaya.
Distribution
8. Reliability (Fault tolerance) : apabila salah satu komponen terjadi kerusakan, sistem
tetap dapat berjalan
Incremental Growth : Mudah dalam melakukan penambahan komputer/komponen
Sharing Data / Resources : Berbagi data adalah salah satu hal yang pokok pada
kebanyakan aplikasi.
E. Permasalahan dari Sistem Terdistribusi
Kelemahan pada sistem terdistribusi adalah :
Kesulitan dalam membangun perangkat lunak . Kesulitan yang akan dihadapi antara
lain : bahasa pemrograman yang harus dipakai, sistem operasi, dan lain-lain.
Masalah Jaringan : Karena sistem terdistribusi di implementasikan dalam jaringan
komputer,
maka isu-isu yang berkaitan dengan jaringan komputer akan menjadi pertimbangan
utama dalam merancang dan mengimplementasikan sistem.
Masalah Keamanan : Karena pada sistem terdistribusi berbagi data / sumber daya
merupakan hal yang mutlak, maka muncul masalah-masalah yang berkaitan dengan
keamanan data dan lain-lain.
F. Tantangan Sistem Terdistribusi
Ada beberapa hal yang harus diperhatikan dalam membangun sistem terdistribusi,
yaitu :
1. Transparency (Kejelasan)
→ Access transparency : Sumber daya lokal dan remote di akses dengan
menggunakan operasi yang sama.
→ Location transparency : Pengguna sistem tidak tahu mengetahui keberadaan
hardware dan software (CPU, file dan data).
→ Migration (Mobility) transparency : Sumber daya (baik berupa Hardware
dan/atau software) dapat bebas berpindah tanpa mengubah sistem penamaan.
→ Replication transparency : Sistem bebas untuk menambah …le atau sumber daya
tanpa diketahui oleh user (dalam rangkan meningkatkan kinerja)
→ Concurency transparency : User tidak akan mengetahui keberadaan user lain
dalam sistem, walaupun user tersebut menggunakan sumber daya yang sama.
→ Failure transparency : Aplikasi harus dapat menyelesaikan proses nya walaupun
terdapat kegagalan pada beberapa pada komponen sistem.
→ Performance transparency : Beban kerja yang bervariasi tidak akan menyebabkan
turunnya kinerja sistem, hal ini dapat di capai dengan melakukan automatisasi
konfigurasi terhadap perubahan beban.
9. 2. Communication (Komunikasi)
Komponen-komponen pada sistem terdistribusi harus melakukan komunikasi dalam
suatu urutan, yaitu : Infrastruktur jaringan (interkoneksi dan software jaringan) serta
Metode dan Model komunikasi yang cocok.
Metode Komunikasi :
→ Send
→ Receive
→ Remote Procedure Call
Model Komunikasi :
→ Client – server communication : Pertukaran pesan antara dua proses, dimana satu
proses (client) menggunakan / meminta layanan pada server dan server
menyediakan hasil dari proses tersebut.
→ Groupmulitcast : Target dari pesan yang dikirimkan adalah gabungan dari proses,
yang berasal dari suatu grup.
3. Performance and Scalability (Kinerja dan Ruang Lingkup)
Ada beberapa faktor yang mempengaruhi kinerja (performance) dari pada sistem
terdistribusi, yaitu :
Kinerja dari pada personal workstations
Kecepatan infrastruktur komunikasi
Fleksibilitas dalam membagi beban kerja. Contoh : apabila terdapat prosesor
(workstation) yang idle maka dapat dialokasikan secara otomatis untuk
mengerjakan tugas – tugas user.
Scalability : Sistem tetap harus memperhatikan efesiensi walaupun terdapat
penambahan secara signifikan user atau sumber daya yang terhubung.
Cost (biaya) penambahan sumber daya (resources) harus reasonable.
Penurunan kinerja (performance) diakibatkan oleh penambahan user atau
sumber daya harus terkontrol.
4. Heterogeneity (Keanekaragaman)
Aplikasi yang terdistribusi biasa berjalan dalam keberagaman, yaitu :
Hardware : mainframes, workstations, PC’s, server
Software : UNIX, MS Windows, IMB OS/2, LINUX
Devices : teller machine, robot, sistem manufacturing
Network dan Protocol : Ethernet, FDDI, ATM, TCP/IP
Melihat keanekaragaman di atas maka salah satu solusi yang bisa di terapkan adalah
Middleware : berfungsi sebagai jembatan untuk komunikasi dan proses.
10. 5. Opennes (Keterbukaan)
Salah satu hal terpenting yang harus dimiliki oleh sistem terdistribusi adalah
opennes (keterbukaan) dan flexibility (fleksibilitas), seperti :
→ Setiap layanan (services) harus dapat di akses oleh semua user
→ Mudah dalam implementasi, install dan debug services
→ User dapat membuat dan menginstall service yang telah dibuat oleh si user
tersebut
6. Reliability dan Fault Tolerance (Kehandalan dan Toleransi Kegagalan)
Salah satu tujuan dalam membangun sistem terdistribusi adalah memungkinkan
untuk melakukan improvisasi terhadap kehandalan sistem.
Availability : kalau mesin mati (down), sistem tetap harus berjalan dengan
jumlah layananan yang tersisa.
Dalam sistem terdistribusi componen yang sangat vital (critical resources)
berjumlah se minimal mungkin. Yang dimaksud dengan critical resources
adalah komponen yang harus ada untuk menjalankan sistem terdistribusi.
Masing – masing Software dan Hardware harus di replikasi : kalau terjadi
kegagalan / error maka yang lain akan menangani.
Data dalam sistem tidak boleh hilang, copy dari file tersebut disimpan pada
secara redundan pada server lain, tapi tetap harus dijaga konsistensi datanya.
Fault Tolerance : Sistem harus bisa mendeteksi kegagalan dan melakukan tindakan
dengan dasar sebagai berikut :
Mask the fault (menutupi kegagalan) : tugas harus dapat dilanjutkan dengan
menurunkan kinerja tapi tanpa terjadi kehilangan data atau informasi.
Fail Gracefully : membuat suatu antisipasi terhadap suatu kegagalan ke suatu
prosedur yang telah di rencanakan dan memungkinkan untuk menghentikan
proses dalam waktu yang singkat tanpa menghilangkan informasi atau data.
7. Security (Keamanan)
Confidentiality : keamanan terhadap data yang di akses oleh user yang tidak di
perbolehkan (unauthorizes user).
Integrty : keamanan terhadap kelengkapan dan autentikasi data
Availability : Menjaga agar resource dapat selalu di akses.
Sistem terdistribusi harus memperbolehkan komunikasi antara
program/user/resources pada computer yang berbeda, maka resiko keamanan akan
muncul apabila memberlakukan free access. Dan ada hal lain juga yang harus
dijamin dalam sistem terdistribusi, yaitu : penggunaan rerources yang tepat oleh user
yang berlainan.
11. G. Contoh Sistem Terdistribusi
Contoh Sistem Terdistribusi yang terdapat dalam kehidupan sehari – hari adalah
sistem ATM Bersama yang digunakan oleh beberapa bank nasional di indonesia. ATM
Bersama adalah jaringan ATM pertama yang beroperasi di Indonesia, yang awalnya
menghubungkan duapuluh satu bank di Indonesia. Jaringan ini didirikan oleh PT Artajasa
Pembayaran Elektronis pada tahun 1993 dengan mengadopsi model dari MegaLink, jaringan
ATM di Pilipina. Saat ini jaringan ATM Bersama memiliki 75 anggota.
ATM Bersama menyediakan banyak fasilitas termasuk cek saldo, penarikan tunai dan
pemindahan dana secara online seketika ke rekening lain dari sesama anggota jaringan ATM
Bersama. Pada tahun 2004 Artajasa membuat jaringan ATM Bersama lintas perbatasan
dengan menggandeng rekanan jaringan ATM MEPS di Malaysia untuk melayani pekerja-
pekerja dari Indonesia, pelajar yang tinggal disana juga para wisatawan. Singapura dan
Thailand juga sudah terhubung dengan jaringan ATM bersama melalui NETS dan ITMX.
Sistem ini tergolong sistem terdistribusi karena ketika seorang nasabah sebuah bank
(yang tergabung dalam jaringan ATM bersama) hendak melakukan transaksi pada sebuah
gerai ATM namun gerai ATM bank yang digunakan tidak tersedia di daerah dimana nasabah
itu berada atau tidak dapat digunakan, maka nasabah tersebut dapat menggunakan ATM yang
tergabung dalam jaringan ATM bersama. ATM bersama bisa diidentifikasi dari gerai ATM
yang terdapat logo ATM bersama. Selain pada gerai ATM, logo ATM bersama juga terdapat
pada kartu ATM.