Posts Subscribe comment Comments

Pendahuluan Sistem Terdistribusi a.k.a Sistem Tersebar

Definisi Sistem Terdistribusi/Sistem Tersebar:

Sebuah sistem yg komponennya berada pd jaringan komputer. Komponen tsb saling berkomunikasi & melakukan koordinasi hanya dgn pengiriman pesan (message passing).

Contoh: Internet, intranet, mobile computing

Mengapa diperlukan Sistem Terdistribusi?

Performance: sekumpulan prosesor dapat menyediakan kinerja yang

lebih tinggi daripada komputer yang terpusat

Distribution: banyak aplikasi yang terlibat, sehingga lebih baik jika

Dipisah dalam mesin yang berbeda (contoh: aplikasi perbankan, komersial)

Reliability: jika terjadi kerusakan pada salah satu mesin, tidak akan

mempengaruhi kinerja system secara keseluruhan

Incremental Growth: mesin baru dapat ditambahkan jika kebutuhan proses meningkat

Sharing Data/Resource

Resource adalah segala hal yang dapat digunakan bersama dalam jaringan komputer, meliputi hardware (e.g. disk, printer, scanner), juga software (berkas, basis data, obyek data).

Communication: menyediakan fasilitas komunikasi antar manusia

Karakteristik Sistem Terdistribusi :

1. No global clock

Terdapat batasan pada ketepatan proses sinkronisasi clock pada sistem terdistribusi, oleh karena asynchronous 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.

Setiap komponen/perangkat dapat mengalami kegagalan namun komponen/perangkat lain tetap berjalan dengan baik.

3. Concurrency of components

Pengaksesan suatu komponen/sumber daya (segala hal yang dapat digunakan bersama dalam jaringan komputer, meliputi H/W dan S/W) secara bersamaan. Contoh: Beberapa pemakai browser mengakses halaman web secara bersamaan.

Model Sistem Terdistribusi:

1. Sistem client – server

Merupakan bagian dari model sistem terdistribusi yang membagi jaringan berdasarkan pemberi dan penerima jasa layanan.

2. Sistem point to point

Merupakan bagian dari model sistem terdistribusi dimana sistem dapat sekaligus berfungsi sebagai client maupun server.

3. Sistem terkluster

Adalah gabungan dari beberapa sistem individual (komputer) yang dikumpulkan pada suatu lokasi, saling berbagi tempat penyimpanan data (storage), dan saling terhubung dalam jaringan lokal (Local Area Network).

Permasalahan Sistem Terdistribusi:

Masalah dengan sistem terdistribusi yang dapat dimunculkan antara lain berkaitan dengan :

Software - bagaimana merancang dan mengatur software dalam Distribusi Sistem

Network – ketergantungan pada infrastruktur jaringan

Security – kemudahan akses ke data yang di share, memunculkan masalah keamanan

Tantangan Sistem Terdistribusi:

Heterogen terhadap:

- Infrastruktur jaringan

- Hardware dan software (sistem operasi, perbedaan UNIX socket dan Winsock)

- Bahasa pemrograman

Beberapa pendekatan :

Middleware (contoh : CORBA, JINI, DCOM, JavaRMI)

Mobile Program (contoh : JAVA)

Openness

Memastikan sistem dapat diperluas dan mudah dalam pemeliharaan, mengikuti standard antarmuka

Security

Privacy, Authentication, Availability

Scalability

Apakah sistem masih efektif dan handal dalam perkiraan pertumbuhannya?

Penanganan Kegagalan

-Pendeteksian

-Masking: transmisi ulang, redudansi penyimpanan data

-Toleransi: exception handling

-Redudancy: redudan rute jaringan, replikasi data pada beberapa mesin

Concurrency: penjadwalan yg konsisten terhadap concurrent thread, menghindari masaah deadlock dan lifelock

Transparency

Menyembunyikan keanekaragaman dan tersebarnya sistem sehingga tampak sebagai satu sistem bagi user.

Kategori transparency:

-Access: menyembunyikan penggunaan komunikasi untuk mengakses remote resource sehingga user beranggapan bahwa semua resource adalah lokal.

contoh: pemetaan drive menggnakan Samba Server, NFS

-Location: user tidak perlu mengetahui lokasi dari remote resource

-Concurrency: user tidak peduli paralel akses ke remote resource dan inkonsistensi dihindari dengan menggunakan mekanisme concurrency control.

-Replication: menyembunyikan perbedaan-perbedaan antara layanan replicated dan non-replicated.

-Failure: menyembunyikan pengaruh partial fail. Dapat diterapkan mekanisme recovery.

-Migration/Mobility: kemampuan untuk melakukan relocate resource secara dinamik tanpa kekhawatiran rekonfigurasi ulang dari user.

-Performance: meminimalkan tambahan performance menggunakan remote resource, sehingga response time dan throughput sebanding dengan ketika mengakses resource secara lokal.

-Scaling: menyembunyikan variasi dalam kelakuan sistem ketika dilakukan perubahan scope atau skala sistem. Skala biasanya diukur dalam hal kecepatan, size dan geographical scope.