Jumat, 09 Maret 2012

Karakteristik Sistem Terdistribusi

     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 :
  1. Transparency (Kejelasan)
  2. Communication (Komunikasi)
  3. Performance & Scalability (Kinerja dan Ruang Lingkup)
  4. Heterogeneity (Keanekaragaman)
  5. Opennes (Keterbukaan)
  6. Reliability & Fault Tolerancy (Kehandalan dan Toleransi Kegagalan)
  7. Security (Kemanan)
     Dari tujuh karakteristik di atas, selanjutnya setiap karakter akan dijelaskan lebih jelas sebagai berikut :

  1. Transparency (Kejelasan)
  2.      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 :

    • 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.

               3. 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 terdapatprosesor (workstation) yang idle maka dapat di alokasikan secara otoma-tis untuk mengerjakan tugas2 user.

    • Scalability
      Sistem tetap harus memperhatikan efesiensi walaupun terdapat penambahan
      secara signfikan 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
      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 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) :

    • 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)

      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.

    • 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.


    • 7. Security

    • 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.


    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.

Tidak ada komentar:

Posting Komentar