Sistem File Terdistribusi

  • Uploaded by: Dadang Handaru
  • 0
  • 0
  • June 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Sistem File Terdistribusi as PDF for free.

More details

  • Words: 1,468
  • Pages: 33
Sistem File Terdistribusi

Pengertian Sistem Terdistribusi Sistem terdistribusi adalah koleksi prosesor yang terhubung dalam jaringan serta tidak berbagi memori, yaitu memiliki memori masing-masing

Alasan untuk sistem terdistribus  Distribusi fungsi : komputer memiliki kemampuan fungsi yang berbeda-beda – client/server – Host/terminal – Data gathering / data processing  Distribusi beban/keseimbangan : pemberian tugas ke prosesor secukupnya sehingga unjuk kerja seluruh sistem teroptimasi.  Sifat terdistribusi mencegah terjadinya application domain, e.g. – cash register dan sistem persediaan untuk supermarket, – Komputer pendukung collaborative work

Alasan untuk sistem terdistribusi(cont..)  Replikasi kekuatan pemrosesan : independent processors bekerja untuk pekerjaan yang sama – Sistem terdistribusi terdiri dari kumpulan mikrokomputer yang memiliki kekuatan pemrosesan yang tidak dapat dicapai oleh superkomputer  Pemisahan fisik : sistem yang menggantungkan pada fakta bahwa komputer secara fisik terpisah (e.g., untuk mencapai kehandalan).  Ekonomis : kumpulan mikroprosesor menawarkan harga/unjuk kerja yang lebih baik dari pada mainframe

Keuntungan Sistem Terdistribusi

 Resource sharing.  Suatu komputer bisa mengakses sumber daya yang ada di komputer lain. Misalkan, komputer A bisa mengakses database yang ada di komputer B. Sebaliknya, komputer B bisa mencetak dokumen dengan menggunakan printer yang terpasang di komputer A.  Computation speedup.  Jika suatu proses komputasi bisa dipecah-pecah menjadi sejumlah bagian yang berjalan secara konkuren, dalam sistem terdistribusi bagian-bagian komputasi ini bisa terbagi dalam komputerkomputer yang ada. Inilah yang menimbulkan adanya speedup. Lebih jauh lagi, bisa terjadi load sharing, yaitu jika suatu komputer mengerjakan tugas terlalu banyak, sebagian dari tugasnya itu bisa dialihkan ke komputer lain.

Keuntungan Sistem Terdistribusi (cont..)  Reliability.  Jika satu komputer mengalami kegagalan, maka secara keseluruhan sistem masih tetap dapat berjalan. Contoh: jika sistem terdiri atas komputer-komputer yang tersusun secara independen, kegagalan salah satu komputer seharusnya tidak mempengaruhi keseluruhan sistem. Tapi jika sistem terdiri atas komputer-komputer yang mengatur tugas spesifik seperti terminal I/O atau filesystem, maka kerusakan satu komputer saja bisa menyebabkan keseluruhan sistem mati. Tentunya, perlu mekanisme untuk mendeteksi kegagalan seperti ini, sehingga jika ada komputer yang rusak, sumber daya yang ada padanya tidak digunakan dan sebagai gantinya komputer yang lain bisa menangani itu.

Keuntungan Sistem terdistribusi (cont…)  Communication.  Karena satu komputer terhubung dengan komputer-komputer lainya, sangat dimungkinkan terjadi pertukaran informasi. Dengan adanya message passing, fungsi fungsi yang ada di suatu komputer misal file transfer, login, web browsing, bisa diperluas dalam sistem terdistribusi. Ini menyebabkan fungsifungsi ini bisa diakses secara jarak jauh. Misalnya, sejumlah orang yang terlibat dalam satu proyek, walaupun terpisah secara geografis, tetap bisa berkolaborasi dalam proyek itu. Dalam dunia industri, terjadi downsizing. Downsizing adalah mengganti mainframe dengan komputer atau workstation yang terhubung via jaringan. Dengan itu, mereka bisa mendapatkan fungsionalitas yang sesuai dengan biaya, kemudahan mengatur sumber daya, kemudahan maintenance/perawatan, dan lain-lain.

Kelemahan Sistem Terdistribusi  Jika tidak direncanakan dengan tepat, sistem terdistribusi bisa

menurunkan proses komputasi, misalnya jika kegagalan salah satu komputer mempengaruhi komputer-komputer yang lain.

 Troubleshooting menjadi lebih rumit, karena bisa memerlukan koneksi ke komputer lain yang terhubung secara remote, atau menganalisis komunikasi antar komputer.  Tidak semua proses komputasi cocok untuk dilakukan dalam sistem terdistribusi, karena besarnya keperluan komunikasi dan sinkronisasi antar komputer. Jika bandwith, latency, atau kebutuhan komunikasi terlalu besar, maka performanya bisa menjadi lebih jelek daripada sistem yang tidak terdistribusi sama sekali. Karena itu, lebih baik komputasi dilakukan di sistem yang tidak terdistribusi.

Contoh DS: Internet  Jaringan Internet : Mengimplementasikan Protokol Internet

Contoh DS(cont…):Intranet  Jaringan yang teradministrasi secara lokal, biasanya proprietary  Terhubung ke internet (melalui firewall) dan Menyediakan layanan internal dan eksternal

Contoh DS(cont…):

Mobile dan Sistem

Komputasi Ubiquitous  Sistem telepon Cellular (e.g., GSM)  – Resources dishare : frekuensi radio, waktu transmisi dalam satu frekuensi, bergerak  Komputer laptop, ubiquitous computin,handheld devices, PDA, etc

Contoh DS(cont…) : WWW

Sistem File Terdistribusi Latar Belakang Perlu adanya sharing informasi/resource Informasi/resource mungkin berada pada komputer lain dan dalam format lain (konteks: file system) Pengguna tidak perlu tahu file system yang dipakai pada sistem lain Diperlukan service yang memungkinkan akses file remote seperti pada HD lokal pada jaringan intranet/Internet

Sistem File Terdistribusi Layanan File Terdistribusi 1.Layanan Dasar – tempat penyimpanan tetap untuk data dan program – operasi terhadap file (create, open, read,…) – multiple remote clients (dalam intranet) – file sharing – menggunakan semantic one-copy update umum, melalui RPC 2. Perkembangan baru – persistent object stores (storage of objects) 3. Persistent Java, Corba, … – replikasi, caching keseluruhan file –multimedia terdistribusi (contoh: file server Tiger video)

Karakteristik File Setiap file punya data dan attribute (meta data) – Nama file – Ukuran file – Read/Write/Creation timestamp – Pemilik/ACL.... File diatur dan diorganisasi dalam direktori Direktori adalah sebuah file dengan jenis khusus yang melakukan mapping dari nama teks ke sebuah identifier file internal

Sistem Terdistribusi (cont…)  File attributes

Sistem File Terdistribusi

Kebutuhan Sistem File Terdistribusi  Transparency (clients tidak perlu tahu terhadap bentuk/mekanisme distribusi) – access transparency (client tidak perlu tahu bahwa file adalah terdistribusi, karena memiliki interface yang sama untuk file local/remote) – location transparency (name space file yang uniform terhadap client workstation) – mobility transparency (files dapat dipindahkan dari satu server ke lainnya tanpa berdampak pada client) – performance transparency (client performance tidak berdampak pada load (layanan) – scaling transparency (kemungkinan perluasan apabila jumlah client bertambah)

Kebutuhan Sistem File Terdistribusi(cont…)  Concurrent file updates (perubahan yang dilakukan oleh satu client tidak berdampak pada yang lainnya)  File replication (untuk load sharing, fault-tolerance)  Heterogeneity (interface platform-independent)  Fault-tolerance (tetap beroperasi secara kontinu meskipun terjadi kesalahan pada client ataupun server)  Consistency (one-copy-update semantics atau slight variations)  Security (access control)  Efficiency (unjuk kerja yang comparable terhadap sistem file conventional)

Opsi Perancangan Layanan File  Stateful – server menyimpan informasi tentang file yang open, posisi sekarang (current position) dan file locks – open (dibuka) sebelum access dan kemudian ditutup – performa yang lebih baik – pesan yang lebih pendek, dimungkinkan untuk read-ahead – server failure - kehilangan state – client failure - tables fill up – menyediakan file locks  Stateless – server tidak menyimpan state informasi – file operations idempotent, harus mengandung semua yang diperlukan (longer message) – perancangan file server yang lebih simpel – dapat dengan mudah di-recovery apabila client ataupun server crash – locking membutuhkan extra lock server untuk mempertahankan

RPC (Remote Procedure Call) Prinsip RPC antara Client dan Server

Steps of RPC 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.

Client procedure calls client stub in normal way Client stub builds message, calls local OS Client's OS sends message to remote OS Remote OS gives message to server stub Server stub unpacks parameters, calls server Server does work, returns result to the stub Server stub packs it in message, calls local OS Server's OS sends message to client's OS Client's OS gives message to client stub Stub unpacks result, returns to client

Arsitektur File Server  Components (untuk openness): • Layanan Flat file – operations pada file contents – unique file identifiers (UFIDs) – penterjemahan dari UFIDs ke lokasi file • Layanan Directory – pemetaan antara nama sbg text ke UFIDs • Modul Client – API untuk file access, satu untuk setiap computer client – menyimpan status (state): open files, positions – mengetahui lokasi jaringan dari flat file dan directory server

Layanan Flat file melalui RPC interface • Digunakan oleh modul client, bukan user programs – FileId (UFID) mendefinisikan file secara tunggal – mengirim pesan invalid jika file tidak ada atau akses yang tidak wajar. – Read/Write; Create/Delete; Get/SetAttributes • No open/close! (unlike UNIX) – akses secara langsung dan segera dengan FileId – Read/Write mengidentifikasi saat dimulai • Meningkatkan fault-tolerance – operations idempotent kecuali Create, dapat diulang (semantic atleast-once RPC) – stateless service

Access control • Dalam sistem file UNIX – hak akses diperiksa berdasarkan mode akses (read,write, execute) ketika open – identitas user diperikasi ketika login, • Dalam sistem terdistribusi – hak akses harus diperiksa pada server • RPC unprotected • dimungkinkan melakukan forging identity, tetapi merupakan risiko keamanan – user id biasanya dikirim bersamaan dengan setiap request (e.g. Sun NFS) – stateless

Struktur Directory • Hierarchical – tree-like, pathnames dari root – (di UNIX) dapat digunakan beberapa nama untuk setiap file (link operation) • Sistem penamaan (Naming system) – diimplementasi oleh modul client, menggunakan directory service – root memiliki well-known UFID – melokasikan file mengikuti path dari root

File Names Text name (=directory pathname+file name) • hostname: local name – not mobility transparent • struktur nama uniform (name space yang sama untuk semua clients) • remote mount (e.g. Sun NFS) – remote directory dimasukkan ke dalam local directory – relies on clients maintaining consistent naming conventions across all clients • all clients harus implement local tree yang sama • harus melakukan mount remote directory ke local directory yang sama

Implementasi DFS

Implementasi NFS dengan menggunakan Sun RPC (Sun Remote Procedure Call) NFS Client 'call' fungsi pada NFS Server Spesifikasi NFS mendefinisikan remoteinterface yang bisa dipakai oleh client Pengiriman data bisa menggunakan TCP/UDP

Related Documents


More Documents from "Gilang Kurniaji"