Penggunaan sistem selalu mengacu pada fungsi yang dibutuhkan, sehingga dalam penggunannya diharapkan dapat sesuai dengan kebutuhan sistem yang akan dibangun. Tentunya terdapat berbagai macam sistem untuk menyelesaikan berbagai masalah yang timbul untuk diselesaikan oleh suatu sistem. Sistem yang populer dan banyak digunakan adalah sistem terdistribusi. Implementasi dari sistem distribusi yang paling jelas dihadapan kita adalah internet. Dengan internet kita dihadapkan pada sistem terbuka yang dapat menavigasikan usernya keberbagai tujuan dan kebutuhan user.
Tentunnya setiap sistem memiliki karakteristik, hal ini untuk mengkategorikan dan mengelompokkan serta memudahkan pengembang dalam mengembangkan sistem, hal ini juga dapat memeudahkan dalam pengerjaan sistem secara berkelompok karena memiliki parameter yang sama dalam mengembangkan sistem.
Adapun beberapa karakteristik yang perlu diperhatikan dalam pengembangan sistem terdistibusi adalah sebagai berikut :
- Transparency (Kejelasan)
- Communication (Komunikasi)
- Performance & Scalability (Kinerja dan Ruang Lingkup)
- Heterogeneity (Keanekaragaman)
- Opennes (Keterbukaan)
- Reliability & Fault Tolerancy (Kehandalan dan Toleransi Kegagalan)
- Security (Kemanan)
Dari tujuh karakteristik di atas, selanjutnya setiap karakter akan dijelaskan lebih jelas sebagai berikut :
- Transparency (Kejelasan)
- Infrastruktur jaringan (interkoneksi dan software jaringan)
- Metode dan Model komunikasi yang cocok Metode komunikasi :
- Send
- Receive
- Remote Procedure Call
- 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.
- Kinerja dari pada personal workstations
- Kecepatan infrastruktur komunikasi
- Fleksibilitas dalam membagi beban kerja : contoh, apabila terdapatprosesor (workstation) yang idle maka dapat di alokasikan secara otoma-tis untuk mengerjakan tugas2 user.
- Cost (biaya) penambahan sumber daya (resources) harus reasonable.
- Penurunan kinerja (performance) diakibatkan oleh penambahan user atau sumber daya harus terkontrol.
- 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
- 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.
- Interface dan Protocol yang standard (seperti protokol komunikasi di internet)
- Support terhadap keanekaragaman. ( dengan membuat midleware seperti CORBA)
- 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.
- 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. - ondentiality : 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.
Dari satu karakter mengenai kejelasan, hal ini dipisahkan lagi menjadi 7 fungsi yang berbeda adapun fungsi tersebut adalah sebagai berikut :
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 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 prosesnya 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
Komponen-komponen pada sistem terdistribusi harus melakukan komunikasi dalam suatu urutan. Sebagai berikut :
3. Performance and Scalability
Ada beberapa faktor yang mempengaruhi kinerja (performance) dari pada
sistem terdistribusi :
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.
2.Communication
Komponen-komponen pada sistem terdistribusi harus melakukan komunikasi dalam suatu urutan. Sebagai berikut :
Model Komunikasi
3. Performance and Scalability
Ada beberapa faktor yang mempengaruhi kinerja (performance) dari pada
sistem terdistribusi :
Scalability
Sistem tetap harus memperhatikan efesiensi walaupun terdapat penambahan
secara signfikan user atau sumber daya yang terhubung :
- 4. Heterogeneity
-
Aplikasi yang terdistribusi biasa berjalan dalam keberagaman :
Melihat keaneka ragaman di atas maka salah satu solusi yang bisa diterapkan adalah Middleware : berfungsi sebagai jembatan untuk komunikasi dan proses.
5. Opennes
Salah satu hal terpenting yang harus dimiliki oleh sistem terdistribusi adalah opennes (keterbukaan) dan ‡exibility (‡eksibilitas) :
Aspek kunci pada opennes :
-
6. 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.
Fault Tolerance : Sistem harus bisa mendeteksi kegagalan dan melakukan tindakan dengan dasar sebagai berikut :
7. Security
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.
sumber :
Suhatril SKom., Ruddy J. Catatan Kuliah Sistem Terdistribusi. 2004.
Suhatril SKom., Ruddy J. Catatan Kuliah Sistem Terdistribusi. 2004.
Tidak ada komentar:
Posting Komentar