Sistem terdistribusi adalah sebuah sistem komponen software atau hardware-nya terletak di dalam jaringan komputer dan saling berkomunikasi menggunakan message passing (Message passing adalah sebuah teknik untuk melakukan sinkronisasidan komunikasi anatara proses-proses yang saling berinteraksi). Ada juga yang mengatakan Sistem terdistribusi adalah sebuah sistem yang terdiri dari beberapa komponen yang terdapat didalam 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.
- Karakteristik Sistem Terdistribusi
Dalam sistem
terdistribusi terdapat beberapa karakteristik, yaitu :
- No global clock
- Independent failure
- Concurrency of components
- 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.
→ 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.
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.
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.
Sistem komputer terdistribusi merupakan hal penting untuk fungsi organisasi. Contoh umum dari sitem komputer terdistribusi ini adalah :
- 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.
3. Peralatan
Portable dan Handheld
Mobile
and ubiquitous computing
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.
-
Keuntungan dari Sistem TerorganisasiKeuntungan 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
- 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.
-
Permasalahan dari Sistem TerdistribusiKelemahan 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.
- Tantangan Sistem Terdistribusi
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 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.
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.
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.
- 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.
No comments:
Post a Comment