Tindakan apa bagi sistem terdistribusi dalam mendeteksi kegagalan dalam melakukan komunikasi data.

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.

 

Tindakan apa bagi sistem terdistribusi dalam mendeteksi kegagalan dalam melakukan komunikasi data.

   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.

 

Tindakan apa bagi sistem terdistribusi dalam mendeteksi kegagalan dalam melakukan komunikasi data.

   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

Tindakan apa bagi sistem terdistribusi dalam mendeteksi kegagalan dalam melakukan komunikasi data.
 

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.

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

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

Tindakan apa bagi sistem terdistribusi dalam mendeteksi kegagalan dalam melakukan komunikasi data.

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.

Tindakan apa bagi sistem terdistribusi dalam mendeteksi kegagalan dalam melakukan komunikasi data.

3.      Peralatan Portable dan Handheld

Tindakan apa bagi sistem terdistribusi dalam mendeteksi kegagalan dalam melakukan komunikasi data.

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)

Tindakan apa bagi sistem terdistribusi dalam mendeteksi kegagalan dalam melakukan komunikasi data.

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 Terorganisasi

    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, 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 Terdistribusi

    Kelemahan 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 
Ada beberapa hal yang harus diperhatikan dalam membangun sistem terdistribusi, yaitu :

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.


Page 2