Rabu, 10 April 2013

Part II


Karakteristik dari Agen:

  1. Autonomy: Agent dapat melakukan tugas secara mandiri dan tidak dipengaruhi secara langsung oleh user, agent lain ataupun oleh lingkungan (environment). Untuk mencapai tujuan dalam melakukan tugasnya secara mandiri, agent harus memiliki kemampuan kontrol terhadap setiap aksi yang mereka perbuat, baik aksi keluar maupun kedalam [Woolridge et. al., 1995]. Dan satu hal yang penting yaitu mendukung autonomy dan masalah intelegensi (intelligence) dari agent.
  2. Intelligence, Reasoning, dan Learning: Setiap agent harus mempunyai standar minimum untuk bisa disebut agent, yaitu intelegensi (intelligence). Dalam konsep intelligence, ada tiga komponen yang harus dimiliki: internal knowledge base, kemampuan reasoning berdasar pada knowledge base yang dimiliki, dan kemampuan learning untuk beradaptasi dalam perubahan lingkungan.
  3. Mobility dan Stationary: Khusus untuk mobile agent, dia harus memiliki kemampuan yang merupakan karakteristik tertinggi yang dia miliki yaitu mobilitas. Berbeda dengan stationary agent. Tetapi keduanya tetap harus memiliki kemampuan untuk mengirim pesan dan berkomunikasi dengan agent lain.
  4. Delegation: Sesuai dengan namanya dan seperti yang sudah kita bahas pada bagian definisi, agent bergerak dalam kerangka menjalankan tugas yang diperintahkan oleh user. Fenomena pendelegasian (delegation) ini adalah karakteristik utama suatu program disebut agent.
  5. Reactivity: Karakteristik agent yang lain adalah kemampuan untuk bisa cepat beradaptasi dengan adanya perubahan informasi yang ada dalam suatu lingkungan (enviornment). Lingkungan itu bisa mencakup: agent lain, user, informasi dari luar, dsb [Brenner et. al., 1998].
  6. Proactivity dan Goal-Oriented: Sifat proactivity boleh dibilang adalah kelanjutan dari sifat reactivity. Agent tidak hanya dituntut bisa beradaptasi terhadap perubahan lingkungan, tetapi juga harus mengambil inisiatif langkah penyelesaian apa yang harus diambil [Brenner et. al., 1998]. Untuk itu agent harus didesain memiliki tujuan (goal) yang jelas, dan selalu berorientasi kepada tujuan yang diembannya (goal-oriented).


Communication and Coordination Capability: Agent harus memiliki kemampuan berkomunikasi dengan user dan juga agent lain. Masalah komunikasi dengan user adalah masuk ke masalah user interface dan perangkatnya, sedangkan masalah komunikasi, koordinasi, dan kolaborasi dengan agent lain adalah masalah sentral penelitian Multi Agent System (MAS). Bagaimanapun juga, untuk bisa berkoordinasi dengan agent lain dalam menjalankan tugas, perlu bahasa standard untuk berkomunikasi. Tim Finin [Finin et al., 1993] [Finin et al., 1994] [Finin et al., 1995] [Finin et al., 1997] dan Yannis Labrou [Labrou et al., 1994] [Labrou et al., 1997] adalah peneliti software agent yang banyak berkecimpung dalam riset mengenai bahasa dan protokol komunikasi antar agent. Salah satu produk mereka adalah Knowledge Query and Manipulation Language (KQML). Dan masih terkait dengan komunikasi antar agent adalah Knowledge Interchange Format (KIF).


materi selanjutnya dapat dilihat pada :
part 1
part 5
part 6





Referensi:

Tugas Sistem Terdistribusi


TRACE ROUTE

Berikut ini adalah Trace dari Modem SMART dengan tipe CE 782 EVDO Rev. A. Saya mencoba tracing ke situs facebook.com, dan hasilnya adalah sebagai berikut:


Minggu, 07 April 2013

Teknologi Komputer di Kehidupan Moderen



Di kehidupan modern ini, kita tidak dapat terlepas dari yang namanya teknologi, terutama teknologi yang berbasiskan komputer. Teknologi komputer bahkan telah mendarah daging di semua kalangan usia. Dari mulai anak-anak, remaja, orang dewasa, bahkan orang-orang lanjut usia yang masih ingin tetap eksis. Komputer juga diperlukan oleh hampir semua bidang pekerjaan, dari mulai pelajar, karyawan, pengusaha, sampai ibu rumah tangga sekalipun. Betapa besar pentingnya komputer bagi kehidupan masayarakat saat ini. Karna dengan komputer, kita dapat mempermudah pekerjaan kita, dan dapat menemukan hiburan di dunia maya.

Dahulu, jika ingin berkomunikasi dengan orang-orang yang lokasinya jauh dari kita, maka kita harus menggunakan telpon rumah, yang ukurannya cukup besar dengan kabel yang membuatnya sulit untuk dibawa kemana-mana. Atau bagi yang tidak memasang jaringan telepon di rumah, mungkin akan pergi ke wartel dan tentunya dengan antrian yang cukup panjang hanya untuk masuk ke dalam suatu ruangan pengap berukurang 1x1 meter dengan kipas angin kecil menggatung di dinding dan meja kecil untuk menaruh telepon sewaan tersebut, dan karena harganya yang cukup mahal, maka sebagian besar orang tidak akan berlama-lama berada di dalam kotak sumpek tersebut.

Tapi sekarang, wartel-wartel yang dulunya bertebaran di mana-mana hanya tinggal kenangan, khususnya di kota-kota besar. Kini yang ada adalah wargame, warnet dan kios pulsa. Biasanya wargame dipenuhi oleh anak-anak yang hobi bermain game online. Warnet yang mayoritas isinya remaja yang sedang membuka situs jejaring sosial. Dan kios pulsa yang menjual pulsa untuk smartphone atau modem prabayar.

Sayangnya, bukan hanya manfaat saja yang dapat kita temukan dengan kemajuan teknologi komputer saat ini, tetapi kita juga dapat menemukan banyak dampak negatifnya. Seperti halnya anak-anak yang kecanduan game online, remaja yang tak dapat meninggalkan aktifitasnya di jejaring sosial, dan bahkan banyak orang dewasa yang rusak rumah tangganya karena dunia maya.

Kecanduan teknologi adalah sesuatu yang banyak dialami di kehidupan sekarang ini, dan menurut saya itu adalah suatu bahaya besar. Orang-orang yang telah kecanduan teknologi tidak dapat menjalani hidupya seperti dulu lagi. Dari mulai tidak fokus pada apa yang sedang dikerjakan, mengulur-ngulur waktu, sampai tidak ingat makan dan tidur. Jadi yang tadinya komputer diciptakan untuk mempermudah dan mempercepat pekerjaan, sekarang malah mengganggu kehidupan dan memperlambat pekerjaan kita.

Pada umumnya anak-anak yang kecanduan game online, mula-mula akan malas untuk belajar di rumah dan mengerjakan pekerjaan rumah mereka. Lalu selanjutnya akan malas untuk berangkat sekolah dan memilih bolos untuk pergi ke wargame. Setelah itu, mereka akan lebih sulit untuk berkomunikasi dan menjalin hubungan pertemanan dengan teman-teman sebaya mereka di dunia nyata. Cara bicara pun akan berubah, kata-kata kasar yang tidak seharusnya diucapkan, akan menjadi akrab dengan mereka. Tidak menutup kemungkinan juga game yang mereka mainkan mengubah pola pikir mereka, misalnya game yang dimankan adalah perang-perangan, maka mereka akan lebih suka berkelahi ketika bertemu dengan teman-teman mereka.

Jejaring sosial yang diciptakan dengan tujuan untuk menambah pertemanan kita dan mengakrabkan orang-orang yang berjauhan letaknya, atau berkomunikasi dengan teman-teman yang sudah lama tidak bertemu. Tapi kini kecanduan jejaring sosial juga telah membawa dampak negatif. Kebanyakan orang-orang yang kencanduan jejaring sosial adalah kalangan remaja, di mana remaja itu masih sangat labil. Dan contoh nyata dari dampak negatif yang dapat kita temukan adalah banyak kasus di berita-berita di televisi tentang remaja yang diculik dan dibawa lari oleh kekasih dunia maya mereka.

Begitu banyak kelebihan dan manfaat yang kita rasakan dari kemajuan teknologi di masa kini, namun juga tidak sedikit dampak buruknya. Ada sisi positif dan negatif, begitulah hidup. Kita harus bisa memilih mana yang kita suka, dan harus bertanggung jawab dengan apa yang kita lakukan. Kita harus memilah mana yang baik dan yang buruk bagi kita dan orang-orang di sekitar kita, tentunya dengan pikiran yang logis dan bijak.

Jumat, 15 Maret 2013

Remote Procedure Call (RPC)

Arsitektur didefinisikan sebagai suatu rancangan untuk penyusunan komponen-komponen suatu sistem, dimana rancangan tersebut mengidentifikasi komponen serta fungsi masing-masing komponen, konektifitas antar komponen serta pemetaan fungsionalitas komponen.

Sistem terdistribusi merupakan bagian dari sistem yang komplek yang menghubungkan beberapa mesin. Untuk hal ini dibutuhkan pengorganisasian sistem yang baik. Ada dua hal dalam melihat pengorganisasian sistem terdistribusi, organisasi secara logis sebagai kumpulan perangkat lunak dan secara fisik.

Hampir semua pengorganisasian sistem terdistribusi terkait dengan komponen perangkat lunak. Arsitektur software ini menggambarkan bagaimana antar komponen perangkat lunak saling berinteraksi satu sama lain. Sedangkan untuk penerapan secara fisik yaitu bagaimana kita menempatkan komponen perangkat lunak pada mesin sesungguhnya. Inti dari arsitektur perangkat lunak adalah arsitektur sistemnya.

Salah satu dari sudut pandang Arsitektur Sistem Terdistribusi adalah melihat sistem terdistribusi dari sudut pandang secara logis. Komponen pada sistem terdistribusi merupakan alat penghubung yang dapat diganti mengikuti lingkungan sistemnya itu sendiri. Kesulitannya adalah bagaimana membuat interface agar hal tersebut bisa di lakukan di sistem yang berbeda.

Interface ini kita sebut sebagai connector, yaitu sebuah mekanisme yang menjembatani komunikasi, koordinasi dan kerjasama antar komponen. Salah satu contohnya adalah RPC atau Remote Procedure Call.

RPC adalah suatu protokol yang menyediakan suatu mekanisme komunikasi antar proses
yang mengijinkan suatu program untuk berjalan pada suatu komputer tanpa terasa adanya
eksekusi kode pada sistem yang jauh ( remote system ).

Protokol RPC digunakan untuk membangun aplikasi klien-server yang terdistribusi. Protokol ini didasarkan pada memperluas konsep konvensional dari suatu prosedur dimana nantinya prosedur ini dapat dipanggil dimana pemanggil tidak harus mempunyai alamat yang sama dengan yang lokasi dimana prosedur ini dipanggil. Dimana proses ini dapat dilakukan pada sistem yang sama atau sistem yang berbeda namun terhubung pada jaringan. Namun terdapat kelemahan didalam bagian dari RPC yang berhubungan dengan pertukaran message melalui TCP/IP. Kegagalan terjadi dikarenakan karena penanganan kesalahan pada message yang berisi informasi yang salah. Hasil dari kelemahan ini berakibat pada bagian antar-muka RPC, yaitu bagian yang mendengarkan port RPC yang di-enable. Bagian antar-muka ini menangani objek aktivasi dari DCOM ( Distributed Component Object Model ) yang dikirimkan oleh mesin klien ke server. Kelemahan ini umumnya dimanfaatkan oleh seorang penyerang untuk dapat menjalankan suatu kode dengan kewenangan Administrator sistem lokal pada sistem yang terinfeksi. Dengan demikian, maka sistem yang diserang ini dapat diubah-ubah termasuk pengkopian dan penghilangan data sampai pembuatan user baru dengan hak tidak terbatas.

  •   Operasi Dasar RPC

Pada RPC komputer yang memanggil remote procedure berstatus sebagai client sedangkan yang menyediakan prosedur yang dipanggil berstatus sebagai server. Berikut ini adalah rangkaian kejadian ketika sebuah remote procedure call terjadi:

1. Aplikasi yang berada di client memanggil prosedur yang disediakan oleh server.

2. Nama prosedur yang dipanggil dan parameter masukannya (jika diperlukan) sebelum dikirimkan melalui jaringan komputer terlebih dahulu diubah menjadi format yang sesuai untuk pengiriman melalui jaringan atau lebih dikenal sebagai proses marshalling. Proses marshalling ini dilakukan oleh suatu perangkat lunak yang dikenal sebagai client stub.

3. Client stub kemudian memanggil prosedur mengirim paket melalui jaringan yang disediakan dan menjadi tanggung jawab sistem operasi client.

4. Sistem operasi client mengolah pesan dari client stub dan menjadi paket jaringan dan dikirimkan ke komputer server.

5. Di sisi server pesan diterima oleh sistem operasi dan diberikan kepada server stub yang melakukan proses kebalikan dari marshalling yaitu unmarshalling. Proses unmarshalling mengubah pesan dari client stub menjadi bentuk awal berupa panggilan untuk prosedur tertentu dengan parameter masukannya.

6. Server akan memanggil prosedur yang diinginkan dengan parameter masukan yang diterima dari server stub kemudian mengembalikan hasil pemanggilan prosedur kepada server stub.

7. Server stub melakukan marshalling pesan berisi hasil dari prosedur yang dipanggil, kemudian memanggil layanan pengiriman data dari sistem operasi server.

8. Sistem operasi server mengolah pesan dari server stub menjadi paket jaringan dan dikirimkan ke komputer client.

9. Sistem operasi client menerima paket dari sistem operasi server dan menyampaikannya pada client stub.

10. Client stub melakukan unmarshalling dan memberikan hasil pemanggilan prosedur kepada yang aplikasi yang melakukan RPC.

Gambar 1.1 Basic RPC operation


  • RPC: Parameter Passing


Pada saat nama prosedur dan parameter masukan diubah menjadi pesan ada beberapa hal yang perlu diperhatikan, yaitu:
1. Client dan server sangat mungkin memiliki cara pembacaan data dengan urutan yang berbeda (little endian dan big endian).
2. Jika terjadi proses encoding maka client dan server harus sepakat mengenai encoding yang digunakan.
3. Representasi tipe data dasar seperti integer, float, dan string dalam bentuk biner dapat berbeda-beda antar komputer dan bahasa pemrograman.
4. Representasi tipe data kompleks seperti array, union, objek, dan sebagainya ke dalam bentuk biner juga dapat berbeda-beda.
Untuk menyelesaikan masalah-masalah tersebut client dan server harus mengubah pesan menjadi format representasi data yang tidak bergantung mesin maupun bahasa pemrograman.



Gambar 1.2 Remote computation through RPC


  • ASynchronous RPC


Pada umumnya proses yang melakukan remote procedure call akan berhenti sementara hingga mendapat hasil dari sisi server. Proses-proses tertentu seperti: memulai layanan di komputer lain, menransfer uang ke rekening lain, melakukan entri data pada basis data tidak perlu menunggu hasil tertentu dan dapat melanjutkan eksekusi intruksi berikutnya.
RPC asinkron (aSynchronous RPC) adalah teknik sedemikian sehingga proses yang memanggil remote procedure tidak menunggu hasil dari sisi server untuk melanjutkan mengeksekusi instruksi berikutnya. Pada RPC asinkron server langsung memberikan balasan ketika pesan dari client diterima tanpa memproses pesan terlebih dahulu dan begitu balasan dari server diterima client segera melanjutkan eksekusi instruksi berikutnya.


Gambar 1.3 Asynchronuos RPC. Bandingkan dengan operasi dasar RPC pada gambar 1.1

Pada kasus lain sebuah server dapat saja membutuhkan waktu untuk menjalankan prosedur yang dipanggil oleh client. Contohnya adalah permintaan melakukan pencarian data tertentu pada server yang dapat membutuhkan waktu cukup lama. Client tidak perlu menghabiskan waktu dengan menunggu jawaban hasil pencarian melainkan dapat langsung melanjutkan eksekusi instruksi selanjutnya. Pada saat jawaban sudah selesai disusun oleh server dan dikirimkan ke client proses yang memanggil prosedur pencarian akan diinterupsi agar mengetahui bahwa jawaban dari server telah datang dan dapat mengolah jawaban tersebut sesuai kebutuhannya. Teknik ini dikenal sebagai deferred Synchronous RPC.


Gambar 1.4 client dan server berinteraksi dengan 2 aSynchronous RPC

·       
  •   RPC pada Tataran Praktis: DCE

DCE atau Distributed Computer Environment adalah sebuah Middleware yang berfungsi untuk menjadi sebuah lapisan yang menyembunyikan kerumitan lapisan sistem operasi dan lapisan komunikasi jaringan dalam RPC. DCE awalnya dikembangkan untuk sistem operasi UNIX namun saat ini telah dibuat agar dapat dijalankan di berbagai sistem operasi terkenal termasuk Windows dan VMS.
Model pemrograman dalam lingkungan DCE adalah client-server. Proses milik pengguna bertindak sebagai client yang mengakses layanan jarak jauh yang disediakan oleh server. Beberapa layanan berasal dari sistem DCE itu sendiri tetapi lainnya adalah milik aplikasi-aplikasi di server yang dibuat oleh pemrogram aplikasi-aplikasi tersebut menggunakan fasilitas DCE. Semua komunikasi antara client dan server dilakukan melalui remote procedure call.
Sebuah sistem DCE terdiri dari beberapa komponen termasuk bahasa-bahasa pemrograman, pustaka-pustaka, daemon-daemon, program-program utilitas, dan lain-lain. Untuk memungkinkan client dan server mengerti satu sama lain digunakan sebuah definisi interface (antarmuka) yang disebut IDL atau Interface Definition Language. File IDL digunakan untuk menempatkan deklarasi prosedur dalam format yang mirip dengan ANSI C termasuk definisi tipe-tipe data, deklarasi konstanta, dan informasi lainnya yang dibutuhkan untuk melakukan marshalling pada parameter dan unmarshalling untuk hasil prosedur, Pembuat aplikasi juga dapat menuliskan komentar mengenai prosedur yang dideklarasikan dalam IDL.
Sebuah aplikasi client server dalam sistem DCE dibuat dengan urutan sebagai berikut:
1. Memanggil sebuah aplikasi bernama uuidgen yang akan membuat sebuah purwarupa (prototype) dari sebuah file IDL berisi sebuah identitas untuk interface prosedur yang dijamin tidak akan sama dengan interface lain yang dibuat dengan uuidgen yang sama. Identitas tersebut terjamin dikarenakan dalam pembuatannya waktu dan lokasi menjadi parameter yang diperhitungkan. Identitas tersebut terdiri dari sebuah bilangan biner 128 bit tertulis sebagai rentetan karakter ASCII atau dalam bentuk heksadesimal.
2. Mengisi nama prosedur dan parameter-parameternya dalam file IDL yang telah dibuat.
3. Mengkompilasi file IDL dengan IDL compiler yang menghasilkan:
a. Sebuah file header (contoh: interface.h dalam bahasa C),
b. Stub untuk client,
c. Stub untuk server.
4. Menulis kode sumber aplikasi di client dan server dan mengkompilasi keduanya. Hasil kompilasi ditautkan (linked) dengan stub dan menghasilkan binary executeable.


Gambar 1.5 langkah-langkah penulisan client dan server di DCE RPC

Setelah pembuatan aplikasi selesai client dapat mengakses layanan dari server dengan ketentuan dan urutan sebagai berikut:
1. Layanan di server tersebut harus mendapatkan nomor port tertentu agar dapat sistem operasi pada server dapat membedakannya dari proses-proses lain yang menjadi tujuan pesan-pesan yang datang. Pasangan layanan dan nomor portnya disimpan dalam sebuah tabel oleh DCE daemon.
2. Layanan didaftarkan pada sebuah layanan pencarian seperti directory service yang dapat dijangkau client.
3. Client yang akan melakukan RPC terlebih dahulu mencari alamat dari server yang memiliki nama prosedur yang dipanggil melalui directory service di mana server mendaftarkan layanannya.
4. Client yang menghubungi server yang telah diketahui alamatnya dan menanyakan kepada DCE daemon port yang sesuai dengan layanan yang diminta.
5. Setelah nomor port diketahui barulah client melakukan RPC.



Gambar 1.6 client-to-server binding in DCE


  • Kelebihan RPC
· Relatif mudah digunakan
Pemanggilan remote procedure tidak jauh berbeda dibandingkan pemanggilan local procedure. Sehingga pemrogram dapat berkonsentrasi pada software logic, tidak perlu memikirkan low level details seperti soket, marshalling & unmarshalling.
· Robust (Sempurna)
Sejak tahun 1980-an RPC telah banyak digunakan dalam pengembangan mission-critical application yg memerlukan scalability, fault tolerance & reliability.

  • Kekurangan RPC
- Tidak fleksibel terhadap perubahan.
- Static relationship between client & server at run-time.
- Berdasarkan prosedural/structured programming yang sudah ketinggalan jaman dibandingkan OOP.
· Kurangnya location transparency.
- Misalnya premrogram hanya boleh melakukan pass by value, bukan pass by reference.
- Komunikasi hanya antara 1 klien & 1 server (one-to-one at a time).
- Komunikasi antara 1 klien & beberapa server memerlukan beberapa koneksi yang terpisah.


Referensi:

  • Remote Procedure Call RPC, 2010
[tanggal akses 14 Maret 2013]

  • Periyadi, Zani Tafta, dkk. 2009. Sistem Tersebar. Bandung: Politeknik Telkom
Link:
[tanggal akses 14 Maret 2013]

  • Marki Tommy. 2006. Tugas Akhir EC5010 Keamanan Sistem Informasi Eksploitasi RPC pada Sistem Operasi Windows. Bandung: Sekolah Tinggi Elektro dan Informatika Institut Teknologi Bandung
Link:
[tanggal akses 14 Maret 2013]

Jumat, 08 Maret 2013

MODEL SISTEM TERDISTRIBUSI

Sebelum membahas mengenai Model Sistem Terdistribusi, saya akan terlebih dahulu menjabarkan sedikit tentang apa itu sistem terdistribusi. Sistem terdistibusi merupakan sebuah sistem yang komponennya berada pada jaringan komputer. Komponen tersebut saling berkomunikasi dan melakukan koordinasi hanya dengan pengiriman pesan (message passing). 

Dengan kata lain sistem ini melibatkan lebih dari satu komputer dalam suatu infrastruktur jaringan baik local,internet bahkan wireless. Sebuah sistem terdistribusi, tidak hanya melakukan komunikasi antara satu proses pada satu komputer dengan proses pada komputer yang lain, namun juga perlu mempertimbangkan ketersediaan infrastruktur jaringan yang memadai dan juga dukungan standarisasi sistem yang terbuka.

Contoh penerapan Distributed System: Small Area Network (SAN). Local Area Network (LAN), Metropolitan Area Network (MAN), Online Service (OL) / Outernet, Wide Area Network (WAN) / International Network (Internet).

Dalam pelaksanaannya sistem terdistribusi memiliki berbagai bentuk (model), yaitu : 

 1. Sistem client - server
Merupakan bagian dari model sistem terdistribusi yang membagi jaringan berdasarkan pemberi dan penerima jasa layanan. Pada sebuah jaringan akan didapatkan: file server, time server, directory server, printer server, server, dan seterusnya. 
  • Kelebihan jaringan client server
  • Mendukung keamanan jaringan yang lebih baik
  • Kemudahan administrasi ketika jaringan bertambah besar
  • Manajemen jaringan terpusat
  • Semua data bisa disimpan dan di backup terpusat di satu lokasi

  • Kekurangan jaringan client server
  • Butuh administrator jaringan yang profesional
  • Butuh perangkat bagus untuk digunakan sebagai komputer server
  • Butuh software tool operasional untuk mempermudah manajemen jaringan
  • Anggaran untuk manajemen jaringan menjadi besar
  • Bila server down, semua data dan resource diserver tidak bisa diakses.

2. Sistem point to point
Merupakan bagian dari model sistem terdistribusi dimana sistem dapat sekaligus berfungsi sebagai client maupun server
  • Kelebihan jaringan point to point
  • Implementasinya murah dan mudah
  • Tidak memerlukan software administrasi jaringan yang khusus
  • Tidak memerlukan administrator jaringan

  • Kekurangan jaringan point to point
  • Jaringan tidak bisa terlalu besar (tidak bisa memperbesar jaringan)
  • Tingkat keamanan rendah
  • Tidak ada yang memanajemen jaringan
  • Pengguna komputer jaringan harus terlatih mengamankan komputer masing-masing
  • Semakin banyak mesin yang disharing, akan mempengaruhi kinerja komputer.

3. Sistem terkluster 
Adalah gabungan dari beberapa sistem individual (komputer) yang dikumpulkan pada suatu lokasi, saling berbagi tempat penyimpanan data (storage), dan saling terhubung dalam jaringan lokal (Local Area Network). Sistem kluster memiliki persamaan dengan sistem paralel dalam hal menggabungkan beberapa CPU untuk meningkatkan kinerja komputasi. Jika salah satu mesin mengalami masalah dalam menjalankan tugas maka mesin lain dapat mengambil alih pelaksanaan tugas itu. Dengan demikian, sistem akan lebih handal dan fault tolerant dalam melakukan komputasi. 
Dalam hal jaringan, sistem kluster mirip dengan sistem terdistribusi (distributed system). Bedanya, jika jaringan pada sistem terdistribusi melingkupi komputer-komputer yang lokasinya tersebar maka jaringan pada sistem kluster menghubungkan banyak komputer yang dikumpulkan dalam satu tempat.
  • Keuntungan:
a. Absolute scalability   
Adalah mungkin untuk menciptakan sistem terkluster yang jauh lebih powerful daripada satu komputer standalone yang terbesar sekalipun. Satu kluster bisa terdiri atas puluhan, bahkan ratusan komputer, dan masing-masing adalah multiprosesor.
b. Incremental scalability   
Kluster diatur sedemikian rupa sehingga bisa dupgrade sedikit demi sedikit sesuai dengan kebutuhan, tanpa harus mengupgrade keseluruhan sistem sekaligus secara besar-besaran. 
c. High availability   
Karena setiap komputer yang tergabung adalah standalone (mandiri), maka kegagalan salah satu komputer tidak menyebabkan kegagalan sistem. 
d. Superior price/performance  
Dengan konfigurasi yang tepat, dimungkinkan untuk membangun sistem yang jauh lebih powerful atau sama dengan komputer standalone, dengan biaya yang lebih rendah. 
Isu yang menarik tentang sistem kluster adalah bagaimana mengatur mesin-mesin penyusun sistem dalam berbagi tempat penyimpanan data ( storage ). Untuk saat ini, biasanya sistem kluster hanya terdiri dari 2 hingga 4 mesin berhubung kerumitan dalam mengatur akses mesin-mesin ini ke tempat penyimpanan data. 
Isu di atas juga berkembang menjadi bagaimana menerapkan sistem kluster secara paralel atau dalam jaringan yang lebih luas (Wide Area Network ). Hal penting yang berkaitan dengan penerapan sistem kluster secara paralel adalah kemampuan mesin-mesin penyusun sistem untuk mengakses data di storagesecara serentak. Berbagai software khusus dikembangkan untuk mendukung kemampuan itu karena kebanyakan sistem operasi tidak menyediakan fasilitas yang memadai. Salah satu contohsoftware -nya adalah Oracle Parallel Server yang khusus didesain untuk sistem kluster paralel. 
Seiring dengan perkembangan pesat teknologi kluster, sistim kluster diharapkan tidak lagi terbatas pada sekumpulan mesin pada satu lokasi yang terhubung dalam jaringan lokal. Riset dan penelitian sedang dilakukan agar pada suatu saat sistem kluster dapat melingkupi berbagai mesin yang tersebar di seluruh belahan dunia.


Referensi:


Rabu, 31 Oktober 2012

Disk Forensik Part 2


Data Digital

File
File adalah kumpulan informasi yang secara logika dikelompokkan ke dalam kesatuan tunggal dan diacu dengan menggunakan suatu nama unik. Suatu file dapat berupa banyak tipe data, termasuk dokumen, gambar, video atau aplikasi. Pengujian media komputer yang sukses bergantung pada kemampuan mengumpulkan, memeriksa, dan meneliti file yang berada pada media itu.
Media Penyimpanan File
Penggunaan komputer yang tersebar luas dan alat digital lain telah mengakibatkan peningkatan banyaknya jenis media berbeda yang digunakan untuk menyimpan file. Sebagai tambahan terhadap jenis media yang biasa digunakan seperti disket dan hard drives, file juga disimpan pada alat seperti PDA dan telepon selular, serta jenis media yang lebih baru, seperti flash card yang dipopulerkan dengan adanya kamera digital label berikut mendaftarkan jenis media yang digunakan pada komputer dan alat digital.
Daftar ini tidak meliputi setiap jenis media yang tersedia; melainkan untuk menunjukkan variasi jenis media yang perlu diketahui seorang analis.


Jenis-jenis file

FAT
FAT merupakan File System yang digunakan dalam Sistem Operasi Windows. Nama FAT berasal dari penggunaan tabel yang memusatkan informasi tentang area mana milik file yang kosong atau mungkin tidak dipakai, dan di mana setiap file yang disimpan dalam disk. Untuk membatasi ukuran tabel, space disk dialokasikan ke file dalam grup-grup sektor hardware yang bersebelahan, disebut cluster. Ketika disk drive berkembang, jumlah maksimum cluster pun meningkat dan begitu juga jumlah bit yang mengidentifikasikan bahwa cluster telah berkembang. Versi pengembangan dari format file system FAT dinamai sesuai dengan jumlah bit tabel elemennya, yaitu: FAT12, FAT16 dan FAT32.
·         FAT12 digunakan hanya pada disket dan volume FAT yang lebih kecil daripada 16 MB. FAT12 menggunakan sebuah entri FAT 12-bit untuk menunjuk entri dalam filesistem.
·         FAT16. MS-DOS, Windows 95/98/Nt/2000/Xp, Server Windows 2003, dan beberapa sistem operasi UNIX mendukung FAT16 secara asli. FAT16 biasanya juga digunakan untuk alat multimedia seperti audio player dan kamera digital. FAT16 menggunakan sebuah entri FAT 16-bit untuk menunjuk entri dalam filesistem. Volume FAT16 terbatas hingga maksimum 2 GB di dalam MS-DOS dan Windows 95/98. Windows NT dan sistem operasi yang lebih baru meningkatkan ukuran volumemaksimum FAT16 menjadi 4 GB.
·         FAT32. Windows 95 OEM Service Release 2 (OSR2), Windows 98/2000/XP, dan Windows Server 2003 mendukung FAT32 secara asli, seperti halnya beberapa alat multimedia. FAT32 menggunakan sebuah entri FAT 32-bit untuk menunjuk entri dalam filesistem. Ukuran maksimum volume FAT32 adalah 2 terabytes (TB).

NTFS
NTFS merupakan file system standar untuk Windows NT termasuk windows 200, XP, Server 2003, Windows Server 2008 dan Wondows Vista. NTFS menggantikan file system FAT sebagai file system yang dipakai untuk Sistem Operasi Windows. Versi rilis NTFS ada beberapa, sebagai berikut:
. v1.0 with NT 3.1, dirilis pertengahan-1993
. v1.1 with NT 3.5 dirilis 1994
. v1.2 (pertengahan -1995) and NT 4 (pertengahan -1996)
. v3.0 dari Windows 2000
. v3.1 dari Windows XP (2001), Windows Server 2003 (2003), Windows Vista
(pertengahan -2005) dan Windows Server 2008
Dalam NTFS, semua file data – nama file, tangal pembuatan, ijin akses dan isi – disimpan dalam metadata dalam Master File Table (MFT). NTFS mengijinkan setiap urutan 16-bit nilai utuk encoding nama (nama file, nama stream, nama index, dll) Master File table mengandung metadata tentang setiap file, direktori dan metafile dalam suatu volume dengan partisi NTFS. Metadata itu termasuk nama filem lokasim ukuran dan ijinnya. Strukturnya mendukung algoritma yang memperkecil disk fragmentation.

Beberapa tujuan spesifik dari NTFS adalah:
v   Reliability
            satu hal yang penting dari sebuah file system yang serius adalah bahwa file system tersebut harus dapat pulih kembali dari masalah tanpa kehilangan data hasil. Disini NTFS mencegah hilangnya data dan memperkecil toleransi dari kesalahan dalam processing.

v   Security dan Access Control:
                        Kelemahan dari FAT adalah ketidakmampuan mengontrol   akses file atau folder dari        hard disk, sehingga memungkinkan         pihak luar untuk          mengubah data pada suatu sistem jaringan.

v  Breaking Size Barriers:
            karena pada sistem FAT dalam hal ini FAT16 tidak dapat mempartisi lebih dari 4GB, sedang NTFS didesain untuk partisi yang jauh lebih besar.

v   Storage Efficiency:
            NTFS lagi-lagi memperbaiki kelemahan pada FAT16            karena pada sistem ini memungkinkan terjadinya ketidak efisienan pada penyimpanan pada kapasitas hard     disk. Untuk itu NTFS menggunakan metode lain dalam alokasi kapasitas hard disk tersebut.

v   Long File Names:
            NTFS memungkinkan nama sebuah file hingga 255 karakter, dibandingkan dengan pada FAT adalah 8+3 karakter.

v  Networking:
Saat ini networking berkembang pesat dengan NTFS            memungkinkan networking dalam skala besar.

v  Storage Fault Tolerance:
            Data-redundant storage methods dapat diterapkan pada NTFS. Hal ini berguna dalam menjamin dan melindungi jika suatu data/berkas mengalami kerusakan dengan mengkopi ulang data yang sama dari disk mirror.

v  Multiple Data Stream:
                        NTFS dapat terdiri dari lebih 1 stream. Stream tambahan ini dapat berisi berbagai jenis data, walau data itu hanya mendeskripsikan          berkas atau metadata.

v  Unicode Names:
            Unicode merupakan paket karakter standar yang digunakan pada NTFS dan menggantikan karakter older-single byte ASCII. Setiap karakter pada kebanyakan bahasa yang natural adalah direpresentasikan dengan double-byte number dalam paket karakter Unicode.

v  Improved File Attribute Indexing:
                        Dalam NTFS juga terdapat kemampuan untuk memberi indeks        pada atribut berkas, fungsinya ialah sebagai penglokasian dan           sorting.

v  Data Compression:
Dalam kompresi data metode yang digunakan adalah Lempel-         Ziv Compression. Dengan algoritma ini dipastikan tidak ada data yang hilang pada proses kompresi.

Untuk materi selanjutnya, ada pada link di bawah ini:
Part 1