RSS

Fault Tolerant Systems: Pendahuluan

21 Feb

Pendahuluan

Sistem yang digunakan untuk aplikasi kritis seperti kesehatan, perdagangan, transportasi, dan keamanan nasional harus sangat handal. Meningkatnya penggunaan sistem komputasi dan sistem elektronik lain pada area kritis ini mensyaratkan sistem komputasi yang sangat handal. Kehandalan yang tinggi ini dapat diwujudkan dengan merancang sistem yang dapat mengantisipasi kesalahan (fault-tolerant).

Semua fault-tolerant dilakukan dengan memanfaatkan dan mengelola redundansi. Redundansi adalah properti memiliki lebih banyak sumber daya dari minimal yang diperlukan untuk melakukan pekerjaan.  Ketika kegagalan terjadi, redundansi dimanfaatkan untuk menutupi atau mengatasi kegagalan tersebut, dengan demikian sistem dapat mempertahankan tingkat fungsional yang diinginkan.

Jenis-jenis Redundansi

Ada 4 jenis redundansi :

  1. Redundansi hardware, dilakukan dengan memasukkan hardware tambahan ke dalam desain untuk mendeteksi atau mengesampingkan efek dari komponen yang gagal. Misalnya, kita dapat menggunakan dua atau tiga prosesor yang melakukan fungsi sama. Dengan memiliki dua prosesor, kita dapat mendeteksi kegagalan prosesor tunggal; dengan memiliki tiga, kita bisa menggunakan output untuk mengganti output yang salah dari prosesor tunggal yang rusak.
  2. Redundansi software, dapat dilakukan dengan membuat dua atau lebih versi perangkat lunak dengan harapan bahwa versi yang berbeda tidak akan gagal pada input yang sama. Versi sekunder  dapat didasarkan pada algoritma sederhana dan tidak lebih akurat dari versi utama, untuk digunakan hanya pada saat perangkat lunak utama mengalami kegagalan. Sama seperti redundansi hardware, beberapa versi dari program ini dapat dijalankan baik secara bersamaan (membutuhkan hardware berlebihan juga) atau berurutan (memerlukan waktu tambahan) saat deteksi kegagalan.
  3. Redundansi informasi, bentuk paling terkenal dari redundansi informasi adalah deteksi kesalahan dan koreksi kode program. Di sini, bit ekstra (yang disebut bit cek) ditambahkan ke bit data asli sehingga kesalahan dalam bit data dapat dideteksi atau bahkan dikoreksi. Mendeteksi kesalahan dan memperbaiki kesalahan-kode banyak digunakan saat ini dalam unit memori dan berbagai perangkat penyimpanan untuk melindunginya dari kegagalan ringan.
  4. Redundansi waktu, dilakukan dengan mengulang pelaksanaan program yang sama pada hardware yang sama. Redundansi waktu ini efektif terutama terhadap kesalahan sementara. Karena sebagian besar kesalahan hardware bersifat sementara, tidak mungkin bahwa eksekusi terpisah akan mengalami kesalahan yang sama. Redundansi waktu dapat digunakan untuk mendeteksi kesalahan sementara dalam situasi di mana kesalahan tersebut dinyatakan mungkin tidak terdeteksi. Redundansi waktu juga dapat digunakan untuk mendeteksi kesalahan pada sistem yang mampu pulih dari efek dari kesalahan dan mengulangi perhitungan. Dibandingkan dengan jenis redundansi lain, redundansi waktu memiliki hardware dan software yang jauh lebih rendah namun menghasilkan kinerja tinggi.

Ukuran Dasar Fault Tolerance

Ukuran yang digunakan untuk mengukur fault-tolerance adalah kehandalan (reliability) dan ketersediaan (availability). Keandalan secara konvensional dinyatakan dengan R(t), adalah probabilitas (sebagai fungsi dari waktu t) bahwa sistem telah aktif terus menerus dalam interval waktu [0, t]. Ukuran ini cocok untuk aplikasi di mana gangguan sesaat dapat berdampak pada biaya yang tinggi. Salah satu contohnya adalah komputer yang mengendalikan proses fisik seperti pesawat, yang jika gagal akan mengakibatkan bencana.

Terkait erat dengan keandalan adalah Mean Time to Failure (MTTF), dan Mean Time Between Faiure (MTBF). MTTF adalah waktu rata-rata sistem beroperasi sampai kegagalan terjadi, sedangkan MTBF adalah waktu rata-rata antara dua kegagalan berturut-turut. Perbedaan antara keduanya adalah jumlah waktu yang dibutuhkan untuk memperbaiki sistem setelah kegagalan pertama. Disebud dengan Mean Time to Repair (MTTR), kita memperoleh

MTBF = MTTF + MTTR

Ketersediaan (availability) dinyatakan dengan A(t), yaitu rata-rata waktu selama interval [0, t] dimana sistem aktif. Ukuran ini cocok untuk aplikasi di mana kinerja yang berkesinambungan tidak kritis tetapi akan berdampak biaya tinggi jika sistem tidak aktif dalam waktu yang signifikan. Sebuah sistem reservasi maskapai penerbangan harus memiliki ketersediaan tinggi, karena kegagalan sistem dapat menunda penerbangan pelanggan dan bisa kehilangan penjualan, namun,  kegagalan d sekali-kali dalam durasi pendek dapat ditoleransi. Ketersediaan jangka panjang, dinotasikan dengan A, didefinisikan sebagai

A dapat direpresentasikan sebagai probabilitas bahwa sistem akan sampai di beberapa titik acak waktu, dan hanya bermakna pada sistem yang memiliki perbaikan terhadap komponen yang salah. Ketersediaan jangka panjang dapat dihitung dari MTTF, MTBF, dan MTTR sebagai berikut:

 
Leave a comment

Posted by on February 21, 2012 in Fault Tolerant

 

Tags: , , , ,

Leave a comment