Rabu, 24 April 2013

File Services


File adalah kumpulan informasi yang berhubungan dan tersimpan dalam secondary storage. File Sistem Terdistribusi ( Distributed File System, disingkat) adalah file sistem yang mendukung sharing files dan resources dalambentukpenyimpanan persistent di sebuah network. File server pertama kali di develop pada tahun 1970 dan Sun NFS (Network File System) menjadi DFS pertama yang banyak digunakan setelah awal pemunculannya di tahun 1985. DFS yang terkenal selain NFS adalah AFS (Andrew File System) dan CIFS (Common Internet File System).
File service adalah suatu perincian atau pelayanan dari file sistem yang ditawarkan pada komputer client. File System merupakan struktur logika yang digunakan untuk mengendalikan akses terhadap data yang ada pada disk. File System menyediakan mekanisme untuk penyimpanan data dan program yang dimiliki oleh sistem operasi serta seluruh pengguna dari sistem computer.



File System terdiri dari dua bagian:
·         Kumpulan file yang masing-masingnya menyimpan data-data yang berhubungan
·         Struktur direktori yang mengorganisasi dan menyediakan informasi mengenai seluruh file dalam system

Masing-masing Sistem Operasi menggunakan cara yang berbeda dalam mengatur dan mengendalikan akses data dalam disk. Cara pengaturan dan pengendalian ini tidak bergantung pada spesifikasi dari perangkat keras. Misalnya suatu hard disk dengan spesifikasi yang sama dapat menggunakan file system yang berbeda. Struktur logika dari suatu hard disk memiliki pengaruh yang besar terhadap kinerja, daya tahan, dan pengembangan dari suatu disk. Penetepan file system dalam suatu disk dilakukan pada saat disk tersebut di format.
File System merupakan interface yang menghubungkan sistem operasi dengan disk. Ketika program aplikasi yang sedang dijalankan memerlukan pembacaan file dari hard disk, sistem operasi meminta file system untuk membuka file yang diinginkan. File system harus mengetahui lokasi penyimpanan file yang dibaca. Setelah menemukan lokasinya, file system membaca data yang ada dan mengirimkan data tersebut pada sistem operasi.

Karakteristik File System
File system bertugas dalam organisasi, storage, retrieval (memperbaiki), penamaan,sharing, dan proteksi terhadap files. File dikirim kedalam disk atau non-volatile storage media lainnya. File meliputi data dan atribut. File system didesain untuk menyimpan dan mengatur banyak dan besar file dengan fasilitas untuk membuat, memberi nama dan menghapus file. File system juga bertanggung jawab untuk pengontrolan dari akses file, akses terbatas ke file oleh user yang berhak dan tipe-tipe dari akses yang diminta.

Struktur File System
§  Modul direktori           : menghubungkan nama file dengan ID file
§  Modul File                  : menghubungkan ID dengan file tertentu
§  Modul Akses Kontrol : memeriksa permission utukoperasi yang diminta
§  Modul Akses File        : read / write data file atau atribut
§  Modul Blok                 : aksesdanalokasiblok disk
§  Modul Perangkat        : disk I/O dan buffering

Kebutuhan File System Terdistribusi
1.      Transparency
Keseimbangan antara flesibilitas dan skala bilitas terhadap kompleksitas dan performansi dalam desainnya. Client tidak menyadari adanya lingkungan terdistribusi. Transparency dalam File System Terdistribusi:
·         Access Transparency
Suatu client tidak mengetahui bahwa file-file di distribusikan dan dapat mengaksesnya dengan cara yang sama seperti file lokal yang diakses.
·         Location Transparency
Suatu nama konsisten mencakup lokal seperti halnya file yang jauh. Nama dari suatu file tidak memberitahu lokasinya.
·         Concurrency Transparency
Semua client mempunyai pandangan yang sama dari suatu status file sistem. Ini berarti bahwa jika satu proses sedang memodifikasi suatu file,proses lain yang berada pada suatu sistem yang sedang mengakses file tersebut akan dapat melihat modifikasi tersebut di dalam suatu cara yang jelas.
·         Failure Transparency
Suatu client dan client program perlu beroperasi dengan tepat setelah adanya suatu kegagalan server.
·         Heterogenity
File service harus dapat menyediakan layanan walaupun berbeda hardware dan operating system platform.
·         Scalability
Suatu file sistem harus dapat bekerja dengan baik di dalam lingkungan yang kecil dan juga dapat bekerja dalam skala yang besar.
·         Replication Transparency
Untuk mendukung skalabilitas, kita mungkin dapat membuat tiruan suatu file menyebrangi beberapa server.
·         Migration Transparency
Suatu file harus dapat berpindah tanpa sepengetahuan clientnya.

2.      Concurrent File Updates
Perbaruan file serentak bersamaan antara file server dan client. Kebanyakan arah sistem mengikuti standar UNIX dalam memberikan pelayanan advisory atau mendatory file atau record file level locking.
3.      File Replication
Replikasi dapat untuk share load, untuk mempertinggi fault tolerance, dan untuk mempertinggi scalability. Kebanyakan sistem yang ada dapat melayani caching dengan replication terbatas.Sebagian dapat melayani full replication.
4.      Hardware dan Operating Systems
Heterogenitas atau kesamaan adalah kebutuhan yang sangat penting dalam melayani keterbukaan.
5.      Fault Tolerance
Service harus terus menerus beroperasi walaupun terjadi kesalahan atau error pada client atau pun server
6.      Security
Semua sistem melayani mekanisme akses kontrol berbasiskan daftar akses control (access control lists).
7.      Efficiency
Sistem harus dapat melayani perbandingan performance apakah lebih baik atau tidak.

Pilihan Desain dalam File Service
1.      Stateful
·         Server menyimpan informasi tentang file yang terbuka, dan posisi file sekarang (current position).
·         Open (dibuka) sebelum access dan kemudian ditutup
·         Menyediakan file locks

2.      Stateless
·      Server tidak  menyimpan state informasi
·      Operasi file harus mengandung semua yang diperlukan (memuat pesan yang lengkap).
·      Dapat dengan mudah di-recovery apabila terjadi client atau pun server crach
·      Membutuhkan extra lock server untuk mempertahankan state
File Service Architecture
Pembagian tanggung jawab antar modul didefinisikan sebagai berikut ini :
·         Layanan file flat
Layanan file flat berkonsentrasi pada pengimplementasian operasi dari konten suatu file.
·         Layanan direktori
Layanan direktori menyediakan pemetaan antara nama teks untuk file dan UFIDnya
·         Modul klien
Modul klien berjalan pada tiap komputer klien, mengintegrasi dan mengextend operasi. Dari layanan file flat dan layanan direktori dibawah antar muka pemrograman aplikasi tunggal yang bisa digunakan oleh program tingkat pengguna di komputer klien.
·         Antar muka layanan file flat
Merupakan antar muka RPC yang digunakan oleh modul klien. Tidak digunakan secara langsung oleh program tingkat pengguna.
Contoh File System
·         NFS (Network File System)
Network File System (NFS) merupakan sebuah protokol yang dikembangkan oleh Sun Microsystem pada tahun 1984 dan NFS didefinisikan dalam RFC 1094,1813 dan 3530 sebagai “DFS” yang mengijikan sebuah komputer untuk mengakses file melalui network serasa akses file di disk local. NFS merupakan protokol yang sangat mendukung dalam pengaplikasian suatu file system yang terdistribusi.



Tujuan dari NFS adalah untuk memungkinkan terjadinya pertukaran sistem berkas secara transparan antara mesin-mesin bebas tersebut. Hubungan yang terjadi di sini didasarkan pada hubungan client-server yang menggunakan perangkat lunak NFS server dan NFS client yang berjalan diatas workstation.
NFS didesain agar dapat beroperasi di lingkungan ataupun jaringan yang heterogen yang meliputi mesin, platform, sistem operasi, dan arsitektur jaringan. Ketidak tergantungan ini didapat dari penggunaan RPC primitif yang dibangun diatas protokol External Data Representation (XDR).
Jika misalnya terjadi sebuah pertukaran sistem berkas antara server dan client, maka pertukaran sistem berkas yang terjadi disini harus dipastikan hanya berpengaruh pada tingkat client dan tidak mempengaruhi sisi server, karena server dan client adalah mesin yang berbeda dan sama-sama bebas. Untuk itu, mesin client harus melakukan operasi mount terlebih dahulu agar remote directory dapat diakses secara transparan.
Protokol NFS
NFS umumnya menggunakan protokol Remote Procedure Call (RPC) yang berjalan diatas UDP dan membuka port UDP dengan port number 2049 untuk komunikasi antara client dan server di dalam jaringan. Client NFS selanjutnya akan mengimpor sistem berkas remote dari server NFS, sementara server NFS mengekspor system berkas lokal kepada client.
Mesin-mesin yang menjalankan perangkat lunak NFS client dapat saling berhubungan dengan perangkat lunak NFS server untuk melakukan perintah operasi tertentu dengan menggunakan request RPC. Adapun operasi-operasi yang didukung oleh NFS adalah sebagai berikut:
a)      Mencari berkas di dalam direktori.
b)      Membaca kumpulan direktori.
c)      Memanipulasi link dan direktori.
d)     Mengakses atribut berkas.
e)      Membaca dan menulis berkas.

Perlu diketahui bahwa server NFS bersifat stateless, yang artinya setiap request harus mengandung argumen yang penuh dan jelas sebab server NFS tidak menyimpan sejarah informasi request. Data yang dimodifikasi harus di commit ke server sebelum hasilnya di kembalikan ke client .NFS protokol tidak menyediakan mekanisme concurrency-control.
Beberapa manfaat NFS diantaranya ialah
§  Lokal workstations menggunakan ruang disk lebih kecil
§  Pemakai tidak harus membagi direktori home pada setiap mesin di jaringan
§  Direktori home dapat di set up pada NFS server dan tersedia melalui jaringan
§  Device penyimpanan seperti floppy disk, CDROM drives, dll dapat digunakan oleh mesin lainnya.
Kerugian /Kelemahan NFS
§  Desain awal hanya untuk jaringan yang lokal dan tertutup
§  Security
§  Congestion (Traffic yang tinggi bisa menyebabkan akses lambat)
AFS (Andrew File System)
Ada persamaan dan perbedaan antara AFS dan NFS.
Persamaan :  AFS sama seperti NFS menyediakan akses menuju shared files secara transaparant. Akses menuju ke file AFS adalah melalui normal unix file primitives (tanpa modifikasi atau rekompilasi). AFS kompatibel denganNFS.
Perbedaan :  Secara desain dan implementasi, AFS berbeda dengan NFS, perbedaan utama, NFS didesain untuk dapat menangani active users dengan jumlah yang lebih banyak dari pada distributed file systems yang lain. Kunci AFS untuk menangani jumlah active users yang besar terletak pada kemampuan caching seluruh files pada client node.
Karakter AFS
AFS mempunyai dua karakter desain yang unik :
·         Whole file serving
Seluruh konten dari direktori dan file dikirim kepada komputer client oleh AFS servers (di AFS3, file yang ukurannya lebih dari 64 kbytes ditransfer dalam 64 kbyte chunks).
·         Whole file caching
Copy dari sebuah file chunk yang telah ditransfer di komputer client disimpan dalam cache pada local disk. Cache disini mengandung ratusan file yang sering dipakai di dalam sebuah komputer.
 Access Control
Dalam sistem file UNIX
·         hak akses diperiksa berdasarkan mode akses (read, write, execute) ketika membuka file
·         identitas user diperiksa ketika login
Dalam sistem file terdistribusi
·         hak akses harus diperiksa pada server
·         RPC unprotected
·         Dimungkinkan melakukan pemalsuan identitas, tapi ini merupakan resiko keamanan
·         user ID biasanya dikirim dengan setiap request
·         stateless

Referensi :
·         http://erwin-sunarya.blogspot.com/2012/04/file-service-terdistribusi.html
·         http://cutegalzjelek.blogspot.com/2012/04/komponen-komponen-file-service.html
·         http://naeli.staff.gunadarma.ac.id/Downloads/files/8590/File+Service.pdf

Tidak ada komentar:

Posting Komentar