Pages

Selasa, 03 Januari 2012

Sistem terdistribusi secara keseluruhan

kali ini saya akan membahas tentang sistem terdistribusi

apa itu sistem terdistribusi ???
Sistem Terdistribusi adalah Sekumpulan komputer otonom yang terhubung
ke suatu jaringan, dimana bagi pengguna sistem terlihat sebagai satu kom-puter.
Maksud komputer otonomi adalah walaupun komputer tidak terhubung
ke jaringan, komputer tersebut tetap data berjalan.
Dengan menjalankan sistem terdistribusi, komputer dapat melakukan :

- Koordinasi Aktifitas
- Berbagi sumber daya : hardware, software dan data
Dengan definisi tersebut diatas maka internet sesungguhnya bukanlah suatu sistem terdistribusi, melainkan infrastruktur dimana sistem terdistribusi
dapat di aplikasikan pada jaringan tersebut

Contoh Sistem Terdistribusi
² Sistem Telepon
- ISDN, PSTN
² Manajemen Jaringan
- Adminstrasi sesumber jaringan

gambar di atas adalah contoh sistem terdistribusi Automatic Banking (teller machine)
System

² Network File System (NFS)
- Arsitektur untuk mengakses sistem …le melalui jaringan
² WWW
- Arsitektur client/server yang diterapkan di atas infrastruktur internet
- Shared Resource (melalui URL)
² dll..

Keuntungan dan Permasalahan Sistem Ter-ditribusi :
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
² Reliability (Fault tolerance)
apabila salah satu komponen terjadi kerusakan, system tetap dapat
berjalan
² Incremental Growth
Mudah dalam melakukan penambahan komputer/komponen
² Sharing Data/Resources
Berbagi data adalah salah satu hal yang pokok pada kebanyakan ap-likasi.


Permasalahan dalam Sistem Terdistribusi
Kelemahan pada sistem terdistribusi adalah :
- Kesulitan dalam membangun perangkat lunak .
Kesulitan yang akan dihadapi antara lain : bahasa pemrogramman yang
harus dipakai, sistem operasi dll.
- Masalah Jaringan
Karena sistem terdistribusi di implementasikan dalam jaringan kom-puter, maka isu2 yang berkaitan dengan jaringan komputer akan men-jadi pertimbangan utama dalam merancang dan mengimplementasikan
sistem.
- Masalah Keamanan
Karena pada sistem terdistribusi berbagi data/sumber daya merupakan
hal yang mutlak maka muncul masalah2 yang berkaitan dengan kea-
manan data dll.

Karakteristik Sistem Terdistribusi
Ada beberapa hal yang harus diperhatikan dalam membangun sistem terdis-tribusi, yaitu :
a Transparency (Kejelasan)
b Communication (Komunikasi)
c Performance & Scalability (Kinerja dan Ruang Lingkup)
d Heterogeneity (Keanekaragaman)
e Opennes (Keterbukaan)
f Reliability & Fault Tolerancy (Kehandalan dan Toleransi Kegagalan)
g Security (Kemanan)

a. Transparency

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,…le dan data).

Migration (Mobility) transparency
Sumber daya (baik berupa Hardware dan/atau software) dapat bebas berpin-dah 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 sis-tem, hal ini dapat di capai dengan melakukan automatisasi kon…gurasi ter-hadap perubahan beban.

b. Communication
Komponen2 pada sistem terdistribusi harus melakukan komunikasi dalam
suatu urutan. Sebagai berikut :
² Infrastruktur jaringan (interkoneksi dan software jaringan)
² 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.
- group mulitcast : target dari pesan yang dikirimkan adalah gabungan
dari proses, yang berasal dari suatu grup.

c. Performance and Scalability
Ada beberapa faktor yang mempengaruhi kinerja (performance) dari pada
sistem terdistribusi :
² Kinerja dari pada personal workstations
² Kecepatan infrastruktur komunikasi
² Fleksibilitas dalam membagi beban kerja : contoh, apabila terdapat
prosesor (workstation) yang idle maka dapat di alokasikan secara otoma-tis untuk mengerjakan tugas2 user.

Scalability
Sistem tetap harus memperhatikan efesiensi walaupun terdapat penambahan
secara signi…kan 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.

d. Heterogeneity
Aplikasi yang terdistribusi biasa berjalan dalam keberagaman :
² Hardware : mainframes, workstations, PC’s, server dll.
² Software : UNIX, MS Windows, IMB OS/2, LINUX dll.
² Devices : teller machine, robot, sistem manufacturing dll.
² Network dan Protocol : Ethernet, FDDI, ATM, TCP/IP dll
Melihat keaneka ragaman di atas maka salah satu solusi yang bisa di
terapkan adalah Middleware : berfungsi sebagai jembatan untuk komunikasi
dan proses.


e. Opennes
Salah satu hal terpenting yang harus dimiliki oleh sistem terdistribusi adalah
opennes (keterbukaan) dan ‡exibility (‡eksibilitas) :
² 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.
Aspek kunci pada opennes :
² Interface dan Protocol yang standard (seperti protokol komunikasi di
internet)
² Support terhadap keanekaragaman. ( dengan membuat midleware seperti
CORBA)


f. Reliability dan Fault Tolerance
Salah satu tujuan dalam membangun sistem terdistribusi adalah memunkinkan
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 re-sources) berjumlah se minimal mungkin. Yang dimaksud dengan crit-ical resources adalah komponen yang harus ada untuk menjalankan
sistem terdistribusi.
² Masing - masing Software dan Hardware harus di replikasi : kalau ter-jadi kegagalan / error maka yang lain akan menangani.
Data dalam sistem tidak boleh hilang, copy dari …le 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.

g. Security
² Con…dentiality :
keamanan terhadap data yang di akses oleh user yang tidak di per-bolehkan (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.

Model dalam Sistem Terdistribusi
Model dalam sistem terdistribusi :
² Model Arsitektur (Architectural Models)
² Model Interaksi (Interaction Models)
² Model Kegagalan (Failure Models)
Resources dalam sistem terdistribusi dipakai secara bersama oleh users.
Biasa nya di bungkus (encapsulated) dalam suatu komputer dan dapat di
akses oleh komputer lain dengan komunikasi.
Setiap resource di atur oleh program yang disebut dengan resource man-ager. Resource manager memberikan kemungkinan komunikasi interface an-tar resource.
Resource Managers dapat digeneralisasi sebagai proses, kalau sistem di
design dengan sudut pandang object (Object Oriented), resource dibungkus
dalam suatu objek.

Architectural Models
Bagaimana cara kerja sistem terdisribusi antara komponen - komponen sis-tem dan bagaimana komponen tersebu berada pada sistem terdistribusi :
² Client - Server Model
² Proxy Server
² Peer processes ( peer to peer )
Client - Server Model
Sistem yang terdiri dari kumpulan2 proses disebut dengan server, dan mem-berikan 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.
² 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 re-sources. Ketika client melakukan request ke server, hal yang pertama di-lakukan adalah memeriksa proxy server apakah yang dimita oleh client ter-dapat 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 mence-gah frekwensi akses ke server.
Peer Process
Semua proses (object) mempunyai peran yang sama.
² Proses berinteraksi tanpa ada nya perbedaan antara client dan server.
² Pola komunikasi yang digunakan berdasarkan aplikasi yang digunakan.
² Merupakan model yang paling general dan ‡eksible.

Interaction Models
Untuk interaksi nya sistem terdistribusi dibagi menjadi dua bagian :
² Synchrounous distributed system
² Asynchronous distributed system
Synchronous Distributed System
Batas atas dan batas bawah waktu pengeksekusian dapat di set.
² Pesan yang dikirim di terima dalam waktu yang sudah di tentukan
² Fluktuasi ukuran antara waktu local berada dalam suatu batasan.
Beberapa hal yang penting untuk di perhatikan :

² Dalam synchronous distributed system terdapat satu waktu global.
² Hanya synchronous distributed system dapat memprediksi perilaku
(waktu).
² Dalam synchornous distributed system dimungkinkan dan aman un-
tuk menggunakan mekanisme timeout dalam mendekteksi error atau
kegagalan dalam proses atau komunikasi.
 Asynchronous Distributed System
Banyak sistem terdistribusi yang menggunakan model interaksi ini (termasuk
Internet)
² Tidak ada batasan dalam waktu pengkeksekusian.
² Tidak ada batasan dalam delay transmission (penundaan pengiriman)
² Tidak ada batasan terhadap ‡uktuasi waktu local.
Asynchronous system secara parktek lebih banyak digunakan.

Failure Models
Kegagalan apa saja yang dapat terjadi dan bagaimana efek yang ditimbulkan ?
² Omission Faluires
² Arbitary Failures
² Timing Failures
Kegagalan dapat terjadi pada proses atau kanal komunikasi. Dan penye-babnya bisa berasal dari hardware ataupun software.
Model Kegagalan (Failure Models) dibutuhkan dalam membangun suatu
sistem dengan prediksi terhadap kagagalan2 yang mungkin terjadi.

Ommision Failures
Yang dimaksud dengan Ommision Failures adalah ketika prosesor dan kanal
komunikasi mengalami kegagalan untuk melakukan hal yang seharusnya di-lakukan. Dikatakan tidak mempunyai ommision failures apabila :
² Terjadi keterlambatan (delayed) tetapi akhirnya tetap tereksekusi.
² 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. Se-hingga hasil yang diharapkan tidak terjadi atau megeluarkan hasil yang salah.

Timing Failures
Timing Failures dapat terjadi pada synchronous system, dimana batas waktu
di atur untuk eksekusi proses, komunikasi dan ‡uktuasi waktu. Timing Fail-ures terjadi apabila waktu yang telah ditentukan terlampaui.


kalau mau mendownload modulnya klik disini

1 komentar:

Unknown mengatakan...

Apa nama mudul ini

Posting Komentar