Saturday 18 April 2015

Share Data & Transaction

Dalam sistem terdistribusi, shared data dapat di artikan sebagai beberapa komputer yang berbeda saling terhubung satu sama lain melalui jaringan sehingga komputer yang satu dapat mengakses dan menggunakan sumber daya yang terdapat dalam situs lain.

Pengaksesan resource pada sistem terdistribusi yang memerlukan:
  1. Nama resource (untuk pemanggilan)
  2. Alamat (lokasi resource tersebut)
  3. Rute (bagaimana mencapai lokasi tersebut)

Keuntungan Shared Data :
  1. Mengurangi biaya duplikasi usaha pengumpulan data
  2. Aman-menjaga data dalam lingkungan yang aman
  3. Back-up data
  4. Transaksi (Transaction)

Tujuan Shared Data
Sharing resources bertujuan agar seluruh program, peralatan atau peripheral lainnya dapat dimanfaatkan oleh setiap orang yang ada pada jaringan komputer tanpa terpengaruh oleh lokasi maupun pengaruh dari pemakai.

Merupakan bagian dari pengeksekusian sebuah program yang melakukan pengaksesan basis data dan bahkan juga melakukan serangkaian perubahan data.

Jenis –Jenis Transaksi :
  • Flat Transaction.
  • Nasted Transaction.


Share data
Merupakan pemakaian file data tunggal oleh ebih dari satu orang atau komputer, atau suatu akses yang diberikan kepada orang lain untuk mengkases data tersebut, mempunyai tujuan untuk berbagi akses kepada user lain pada suatu folder atau drive yang diinginkan, dimana kita bisa memilih kepada user mana saja yang bisa atau boleh mengakses folder kita dan juga bisa memberikan akses kepada semua orang yang ada pada jaringan/network.

Transaksi terdistribusi
merupakan bagian dari pengeksekusian sebuah program yang melakukan pengaksesan basis data dan bahkan juga melakukan serangkaian perubahan data.

Fault Tolerance
Salah satu tujuan dalam membangun sebuah system terdistribusi adalah memungkinkan untuk melakukan improvisasi terhadap kehandalan sistem. Ini dilakukan karena setiap system pasti akan menemukan kesalahan atau gangguan. Sehingga perlu untuk dibuat pencegahan atau solusi untuk mengatasi masalah tersebut. Availability: kalau mesin mati (down), sistem tetap harus berjalan dengan jumlah layananan yang tersisa. Dalam suatu sistem terdistribusi komponen dalam system yang sangat vital terutama pada resources (critical resources) berjumlah seminimal mungkin. Yang dimaksud dengan critical resources adalah komponen dalam system yang harus ada untuk menjalankan sistem terdistribusi. 
Secara umum, ada dua jenis fault tolerant, yaitu fault tolerant secara hardware dan secara software. Untuk itu, masing - masing Software dan Hardware harus di replikasi. Sehingga kalau terjadi kegagalan / error maka yang lain akan menangani. Data dalam sistem terdistribusi tidak boleh hilang, oleh karena itu copy dari data atau resource lainnya tersebut disimpan secara redundan pada server lain, tapi tetap harus dijaga konsistensi datanya. Hal ini memang berkaitan dengan replikasi. Dengan membuat system terdistribusi yang fault tolerance maka Sistem harus bisa mendeteksi kegagalan dan melakukan tindakan dasar sebagai berikut:
1. Mask the fault (menutupi kegagalan): tugas harus dapat dilanjutkan dengan menurunkan kinerja tapi tanpa terjadi kehilangan data atau informasi.
2. 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.



File Service Pada Sistem Terdistribusi

File Sistem Terdistribusi ( Distributed File System , disingkat) adalah file sistem yang mendukung sharing files dan resources dalam bentuk penyimpanan persistent di sebuah network. File server pertama kali didevelop 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).

I. Pengenalan File Service
File service adalah suatu perincian atau pelayanan dari file system yang ditawarkan pada komputer client. Suatu file server adalah implementasi dari file service dan berjalan pada satu atau lebih mesin. File itu sendiri berisi dari nama, data dan atribut file seperti kepemilikan file, ukuran, waktu pembuatan file dan hak akses file.

II. Komponen File service
Komponen-komponen file service adalah terdiri dari :
  • File Service

Pengoperasian dari masing-masing file.
  • Directory Service

Management atau pengaturan direktori
  • Naming Service

– Location Independence :
File dapat dipindahkan tanpa penggantian nama
– Hal yang umum untuk penamaan file dan directori :
Mesin + nama path e.g / machine / path atau machine : path
Mounting File sistem secara remote kedalam hirarki local file.
Single name space yang sama pada semua mesin.
– Dua level penamaan :
Nama simbolik yang dilihat user dan nama binary yang dilihat oleh sistem.

III. Contoh File Service
  • 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.
Tujuan dari NFS adalah untuk memungkinkan terjadinya pertukaran sistem berkas secara transparan antara mesin-mesin bebas tersebut.
  • Protokol NFS
NFS umumnya menggunakan protokol Remote Procedure Call (RPC) yang berjalan di atas 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 sistem 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.

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 dengan NFS.
Perbedaan:
Secara desain dan implementasi, AFS berbeda dengan NFS, perbedaan utama, NFS didesain untuk dapat menangani active users dengan jumlah yang lebih banyak daripada 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 64kbytes ditransfer dalam 64kbyte 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.

Sumber: https://ku2harlis.wordpress.com/file-service/

Sistem Operasi Terdistribusi

Sistem operasi terdistribusi adalah salah satu implementasi dari sistem terdistribusi, di mana sekumpulan komputer dan prosesor yang heterogen terhubung dalam satu jaringan. Koleksi-koleksi dari objek-objek ini secara tertutup bekerja secara bersama-sama untuk melakukan suatu tugas atau pekerjaan tertentu. Tujuan utamanya adalah untuk memberikan hasil secara lebih, terutama dalam:
  • File system
  • Name space
  • Waktu pengolahan
  • Keamanan
  • Akses ke seluruh resources, seperti prosesor, memori, penyimpanan sekunder, dan perangkat keras.
Sistem operasi terdistribusi bertindak sebagai sebuah infrastruktur/rangka dasar untuk network-transparent resource management. Infrastruktur mengatur low-level resources (seperti Processor, memory, network interface dan peripheral device yang lain) untuk menyediakan sebuah platform untuk pembentukan/penyusunan higher-level resources(seperti Spreadsheet, electronic mail messages, windows).

JENIS SISTEM OPERASI TERDISTRIBUSI

A. Amoeba (Virlie Universiteit)
Amoeba adalah sistem berbasis mikro-kernel yang tanggug yang menjadikan banyak workstation personal menjadi satu sistem terdistribusi secara transparan. Sistem ini sudah banyak digunakan di kalangan akademik,industri dan pemerintah selama 5 tahun

B. MOSIX
Terdapat sebuah solusi untuk masalah pada multicomputer yang disebut MOSIX . Mosix adalag pengembangan dari UNIX yang mengijinkan user untuk menggunakan resource yang ada tanpa ada perubahan level apliasi. Dengan penggunaan yang transparan ,algoritma proses migrasi dinamis,MOSIX melayani servis jaringan seperti NFS, TCP/IP,dari UNIX. Untuk level proses ,dengan menggunakan penyeimbangan load dan distribusi dinamis pada cluster cluster yang homogen.

C. BEOWULF (Hebrew University, Jerusalem, Israel)
Konsep Beowulf ini mulai dikembangkan dengan menggunakan perangkat komputer yang sangat sederhana untuk ukuran sekarang, 16 motherboard 486 DX 100 MHz, ethernet 10baseT (Sterling et al., 1995). Tetapi telah mampu menghasilkan kinerja yang cukup menjanjikan. Beowulf menggunakan protokol komunikasi standard Unix, sehingga kemampuannya menjadi terbatasi oleh protokol ini, akan tetapi dalam pengembangannya Beowulf telah melakukan modifikasi implementasi TCP/IP yang hasilnya sangat membantu kualitas implementasi dari Linux pada umumnya. Dari sisi pemrograman Beowulf memanfaatkan library Parallel Virtual Machine (PVM) untuk menyusun aplikasinya. Sebagian besar aplikasi yang dijalankan pada model Beowulf ini memang aplikasi jenis komputasi matematis. Beowalf merupakan free-software seperti Linux ataupun FreeBSD yang berjalan pada komputer yang disusun secara pararel yang terhubung dengan jaringan privat berkecepatan tinggi untuk menjalankan tugas perhitungan dengan kemampuan tinggi. Yang dipentingkan dalam Beowulf adalah kecepatan bukan reliabilitas seperti pada komputer cluster Linux. Untuk aplikasi yang berjalan diatasnya dibutuhkan development yang berbeda supaya dapat berjalan. Alasan mengapa orang-orang menggunakan Beowulf karena Beowulf menginginkan super komputer yang murah daripada superkomputer tradisional.

D. Angel (City University of London)
Angel didesain sebagai sistem operasi terdistribusi yang paralel, walaupun sekarang ditargetkan untuk PC dengan jaringan berkecepatan tinggi. Model komputasi ini memiliki manfaal ganda, yaitu memiliki biaya awal yang cukup murah dan juga biaya incremental yang rendah. Dengan memproses titik-titik di jaringan sebagai mesin single yang bersifat shared memory, menggunakan teknik distributed virtual shared memory (DVSM), sistem ini ditujukan baik bagi yang ingin meningkatkan performa dan menyediakan sistem yang portabel dan memiliki kegunaan yang tinggi pada setiap platform aplikasi.

E. CHORUS (Sun Microsystems)
CHORUS merupakan keluarga dari sistem operasi berbasis mikro-kernel untuk mengatasi kebutuhan komputasi terdistribusi tingkat tinggi di dalam bidang telekomunikasi, internetworking, sistem tambahan, realtime, sistem UNIX, supercomputing, dan kegunaan yang tinggi. Multiserver CHORUS/MiX merupakan implementasi dari UNIX yang memberi kebebasan untuk secara dinamis mengintegrasikan bagian-bagian dari fungsi standar di UNIX dan juga service dan aplikasi-aplikasi di dalamnya.

F. GLUnix (University of California, Berkeley)
Sampai saat ini, workstation dengan modem tidak memberikan hasil yang baik untuk membuat eksekusi suatu sistem operasi terdistribusi dalam lingkungan yang shared dengan aplikasi yang berurutan. Hasil dari penelitian ini adalah untuk menempatkan resource untuk performa yang lebih baik baik untuk aplikasi paralel maupun yang seri / berurutan. Untuk merealisasikan hal ini, maka sistem operasi harus menjadwalkan pencabangan dari program pararel, mengidentifikasi idle resource di jaringan, mengijinkan migrasi proses untuk mendukung keseimbangan loading, dan menghasilkan tumpuan untuk antar proses komunikasi.

MANFAAT SISTEM OPERASI TERDISTRIBUSI
Sistem operasi terdistribusi memiliki manfaat dalam banyak sistem dan dunia komputasi yang luas. Manfaat-manfaat ini termasuk dalam sharing resource, waktu komputasi dan komunikasi.

1. Shared Resource
Walaupun perangkat sekarang sudah memiliki kemampuan yang cepat dalam prosesproses komputasi, atau misal dalam mengakses data, tetapi pengguna masih saja menginginkan sistem berjalan dengan lebih cepat. Apabila hardware terbatas, kecepatan yang diinginkan user dapat di atasi dengan menggabung perangkat yang ada dengan sistem DOS.

2. Manfaat Komputasi
Salah satu keunggulan sistem operasi terdistribusi ini adalah bahwa komputasi berjalan dalam keadaan paralel. Proses komputasi ini dipecah dalam banyak titik, yang mungkin berupa komputer pribadi, prosesor tersendiri, dan kemungkinan perangkat prosesor – prosesor yang lain. Sistem operasi terdistribusi ini bekerja baik dalam memecah komputasi ini dan baik pula dalam mengambil kembali hasil komputasi dari titik-titik cluster untuk ditampilkan hasilnya.

3. Reliabilitas
Fitur unik yang dimiliki oleh DOS ini adalah reliabilitas. Berdasarkan design dan implementasi dari design sistem ini, maka hilangnya satu node tidak akan berdampak terhadap integritas sistem. Hal ini berbeda dengan PC, apabila ada salah satu hardware yang mengalami kerusakan, maka sistem akan berjalan tidak seimbang, bahkan sistem bisa tidak dapat berjalan atau mati.

4. Komunikasi
Sistem operasi terdistribusi berjalan dalam jaringan dan biasanya melayani koneksi jaringan. Sistem ini umumnya digunakan user untuk proses networking. User dapat saling bertukar data, atau saling berkomunikasi antar titik baik secara LAN maupun WAN.

KELEBIHAN SISTEM OPERASI TERDISTRIBUSI
  1. Pembagian sumber daya antar komputer dibuat lebih mudah.
  2. Sistem terdistribusi menyediakan kinerja yang baik dengan mendistribusikan beban kerja ke komputer-komputer dan mengerjakan bagian dari pekerjaan itu secara bersamaan pada beberapa processor.
  3. Menjadikan sistem keseluruhan lebih handal, karena kegagalan yang terjadi pada salah satu komponen dapat ditangani oleh komputer setingkat lainnya.


KEKURANGAN SISTEM OPERASI TERDISTRIBUSI
  1. Dari sisi penggunaan energi yang digunakan untuk ‘menghidupkan’ komputer-komputer yang digunakan sebagai cluster. Dan peralatan pendukung lainnya misal piranti jaringan yang digunakan untuk menghubungkan antar komputer.
  2. Dari sisi teknis yang melibatkan banyak komponen, tentu saja delay komunikasi tidak dapat diprediksikan dan tidak ada referensi clock yang universal yang dapat dijadikan system clock.
  3. Komputer saling terhubung dengan ethernet card. Tentu saja untuk mendukung komputasi yang cepat diperlukan koneksi jaringan yang cepat pula. Kebutuhan ethernet card untuk tiap PC tidak hanya satu tergantung jenis konfigurasi apa yang digunakan.


Sumber :http://www.jejaring.web.id/sistem-operasi-terdistribusi/

Proses Dalam Sistem Terdistribusi

A. Pengertian Sistem Terdistribusi
Sistem terdistribusi merupakan sekumpulan prosesor yang tidak saling berbagi memori atau clock dan terhubung melalui jaringan komunikasi yang bervariasi, yaitu melalui Local Area Network ataupun melalui Wide Area Network dan dilengkapi dengan sistem software tedistribusi untuk membentuk fasilitas komputer terintegrasi.
Proses dalam sistem terdistribusi dijalankan secara bersamaan (execute concurrently) dimana proses berinteraksi untuk bekerjasama dalam mencapai tujuan yang sama dan mengkoordinasikan aktifitas dan pertukaran informasi yaitu pesan yang dikirim melalui jaringan komunikasi.
Struktur sistem terdistribusi dapat dilihat dari gambar dibawah ini :

Dalam sistem terdistribusi prosesor yang dimiliki bervariasi, dapat berupa small microprocessor, workstation, minicomputer, dan lain sebagainya. Sebenarnya ada beberapa hal mendasar yang membedakan antara jaringan komputer yang merupakan dasar dari konsep sistem terdistribusi dengan sistem terdistribusi itu sendiri yaitu komputer otonom yang secara eksplisit terlihat, sedangkan pada sistem terdistribusi komputer otonom transparan dan juga memiliki lebih banyak masalah dibanding dengan jaringan komputer.

B. Karakteristik Sistem Terdistribusi
Ada tiga karakteristik sistem terdistribusi antara lain sebagai berikut:

1. Concurrency of components
Pengaksesan suatu komponen/sumber daya (segala hal yang dapat digunakan bersama dalam jaringan komputer, meliputi H/W dan S/W) secara bersamaan. Contoh: Beberapa pemakai browser mengakses halaman web secara bersamaan

2. No global clock
Hal ini menyebabkan kesulitan dalam mensinkronkan waktu seluruh komputer/perangkat yang terlibat. Dapat berpengaruh pada pengiriman pesan/data, seperti saat beberapa proses berebut ingin masuk ke critical session.

3. Independent failures of components
Setiap komponen/perangkat dapat mengalami kegagalan namun komponen/perangkat lain tetap berjalan dengan baik.

Hal ini menyebabkan kesulitan dalam mensinkronkan waktu seluruh komputer/perangkat yang terlibat. Dapat berpengaruh pada pengiriman pesan/data, seperti saat beberapa proses berebut ingin masuk ke critical session.


C. Tujuam Sistem Terdistribusi
Sistem terdistribusi dibangun untuk mencapai tujuan-tujuan yang ingin dicapai, diantaranya :
  1. Untuk memberikan akses bagi pengguna untuk dapat mengembangkan sumber daya sistem.
  2. Peningkatan kecepatan komputasi.
  3. meningkatkan availibilitas atau ketersediaan dan reliabilitas data.

Dalam penggunaanya sistem terdistribusi sangat diperlukan karena:
1. Performance  : Sekumpulan prosesor dapat menyediakan kinerja yang lebih tinggi daripada komputer yang terpusat

2. Distribution : Banyak aplikasi yang terlibat, sehingga lebih baik jika dipisah dalam mesin yang berbeda (contoh: aplikasi perbankan, komersial)

3. Reliability  : Jika terjadi kerusakan pada salah satu mesin, tidak akan mempengaruhi kinerja system secara keseluruhan

4. Incremental Growth : Mesin baru dapat ditambahkan jika kebutuhan proses meningkat

5. Sharing Data/ResourceSegala hal yang dapat digunakan bersama dalam jaringan komputer.
Meliputi hardware (e.g. disk, printer, scanner), juga software (berkas, basis data, obyek data).

6. Communication  : Menyediakan fasilitas komunikasi antar manusia.

D. Model Sistem Terdistribusi
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, dan seterusnya.

2. Sistem point to point
Merupakan bagian dari model sistem terdistribusi dimana system dapat sekaligus berfungsi sebagai client maupun server.

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.

E. Alasan Membangun Sistem Terdistribusi
Ada empat alasan utama untuk membangun sistem terdistribusi, yaitu:

1. Resource Sharing
Dalam sistem terdistribusi, situs-situs yang berbeda saling terhubung satu sama lain melalui jaringan sehingga situs yang satu dapat mengakses dan menggunakan sumber daya yang terdapat dalam situs lain. Misalnya, user di situs A dapat menggunakan laser printer yang dimiliki situs B dan sebaliknya user di situs B dapat mengakses file yang terdapat di situs A

2. Computation Speedup
Apabila sebuah komputasi dapat dipartisi menjadi beberapa subkomputasi yang berjalan bersamaan, maka sistem terdistribusi akan mendistribusikan subkomputasi tersebut ke situs-situs dalam sistem. Dengan demikian, hal ini meningkatkan kecepatan komputasi (computation speedup)

3. Reliability
Dalam sistem terdistribusi, apabila sebuah situs mengalami kegagalan, maka situs yang tersisa dapat melanjutkan operasi yang sedang berjalan. Hal ini menyebabkan reliabilitas sistem menjadi lebih baik

4. Communication
Ketika banyak situs saling terhubung melalui jaringan komunikasi, user dari situs-situs yang berbeda mempunyai kesempatan untuk dapat bertukar informasi.

Selain itu ada beberapa alasan lain membangun sistem terdistribusi, yakni :
  • 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
  • Replika Kekuatan : Kumpulan PC memiliki kekuatan yang lebih besar dari super komputer
  • Pemisahan Fisik : Untuk kehandalan atau redundansi sistem
  • Ekonomis : Kumpulan mikroprosesor memberikan harga/unjuk kerja yang lebih baik dibandingkan dengan mainframe.


F. Permasalahan Sistem Terdistribusi

Masalah dengan sistem terdistribusi yang dapat dimunculkan antara lain berkaitan dengan :
  • Software - bagaimana merancang dan mengatur software dalam Distribusi Sistem
  • Ketergantungan pada infrastruktur jaringan
  • Kemudahan akses ke data yang di share, memunculkan masalah keamanan

Dalam setiap penggunaan suatu sistem, banyak sekali ditemui permasalahan -permasalahan yang muncul, begitu juga dengan sistem terdistribusi. Selain permasalahan-permasalahan yang akan dihadapi terdapat tantangan- tantangan dalam sistem terdistribusi.

G. Contoh dari sistem terdistribusi

1. Internet
Merupakan suatu bentuk jaringan global yang menghubungkan komputer denga satu sama lainnya, yang dapat berkomunikasi dengan media IP sebagai protokol.

2. Intranet
  • Jaringan yang teradministrasi secara lokal
  • Biasanya proprietary
  • Terhubung ke internet (melalui firewall)
  • Menyediakan layanan internal dan eksternal


3. Mobile dan sistem komputasi ubiquitous
  • Sistem telepon Cellular (e.g., GSM) Resources dishare : frekuensi radio, waktu transmisi dalam satu frekuensi, bergerak
  • Komputer laptop, ubiquitous computing
  • Handheld devices, PDA, etc

4. World wide web
  • Arsitektur client/server tebuka yang diterapkan di atas infrastruktur internet
  • Shared resources (melalui URL)

Sumber : http://www.blogsitaufik.web.id/2013/12/mengenal-sistem-terdistribusi.html

Komunikasi Dalam Sistem Terdistribusi

Interproses komunikasi adalah jantung dari semua sistem terdistribusi. Tidak masuk akal untuk mempelajari sistem terdistribusi tanpa hati-hati dengan cara bahwa proses pada mesin yang berbeda dapat saling bertukar informasi. Komunikasi dalam sistem terdistribusi selalu didasarkan pada pesan tingkat rendah yang lewat seperti yang ditawarkan oleh jaringan yang mendasarinya. Sistem terdistribusi modern biasanya terdiri dari ribuan atau bahkan jutaan proses yang tersebar di seluruh jaringan internet.
Dalam pembahasan kali ini, kita mulai dengan membahas aturan bahwa proses berkomunikasi harus ada yang dikenal sebagai protokol, dan cocencrate. Pada penataan tersebut protokol dalam bentuk lapisan. Dari tampilan diempat luas dan model yang digunakan untuk komunikasi terbagi atas: prosedur panggilan jarak jauh (RMC), remote metode doa (RMI), pesan middleware berorientasi (MOM) dan streams.
Model pertama untuk komunikasi dalam sistem terdistribusi adalah panggilan prosedur remote (RPC). Sebuah RPC bertujuan menyembunyikan sebagian besar seluk-beluk pesan lewat, dan sangat ideal untuk aplikasi client-server. perbaikan untuk model RPC datang dalam bentuk doa metode remote (RMIs), yang didasarkan pada gagasan obyek terdistribusi. RPC dan RMIs dibahas dalam bagian terpisah.
Pesan-berorientasi middleware (MOM) adalah disebut juga sebagai suatu message-queuing sistem, suatu kerangka pesan, atau sekedar messaging sistem. MOM dapat membentuk suatu lapisan middleware yang penting untuk aplikasi perusahaan melalui Internet. MOM dapat menerbitkan dan mendaftar model, suatu klien dapat mendaftarkan sebagai penerbit atau seorang langganan dari pesan. Pesan dikirimkan hanya untuk tujuan yang relevan dan hanya sekali, dengan berbagai metoda komunikasi yang mencakup komunikasi one-to-many atau many-to-many. Sumber data dan tujuan dapat decoupled di bawah model tersebut.

1. Protocol Layer
Protokol merupakan sebuah rule, prosedur dan pengaturan sejumlah operasi peralatan komunikasi data, dalam komunikasi data, aturan-aturan meliputi cara membuka hubungan, mengirim paket data, menginformasi jumlah data yang diterima, dan meneruskan pengiriman data. Protokol dapat diterapkan pada perangkat keras, perangkat lunak atau kombinasi dari keduanya. Pada tingkatan yang terendah, protokol mendefinisikan koneksi perangkat keras.
Prinsip dalam membuat protokol ada tiga hal yang harus dipertimbangkan, yaitu efektivitas, kehandalan, dan Kemampuan dalam kondisi gagal di network. Protokol distandarisasi oleh beberapa organisasi yaitu IETF, ETSI, ITU, dan ANSI.
Tugas yang biasanya dilakukan oleh sebuah protokol dalam sebuah jaringan diantaranya adalah :
  1. Melakukan deteksi adanya koneksi fisik atau ada tidaknya komputer / mesin lainnya.
  2. Melakukan metode “jabat-tangan” (handshaking).
  3. Negosiasi berbagai macam karakteristik hubungan.
  4. Bagaimana mengawali dan mengakhiri suatu pesan.
  5. Bagaimana format pesan yang digunakan.
  6. Yang harus dilakukan saat terjadi kerusakan pesan atau pesan yang tidak sempurna.
  7. Mendeteksi rugi-rugi pada hubungan jaringan dan langkah-langkah yang dilakukan selanjutnya.
  8. Mengakhiri suatu koneksi.

Dalam Model OSI terdapat 7 layer dimana masing-masing layer mempunyai jenis protokol sesuai dengan peruntukannya. Sebuah standar protokol yang dikenal sebagai OSI (Open System Interconection) model dengan aisitrktur sebagai berikut.
Arsitektur OSI dibuat berlapis-lapis dengan fungsi yang berbeda pada setiap lapisannya. Lapisan yang lebih tinggi menyembunyikan kerumitan dari operasi di lapisan yang lebih rendah dan suatu lapisan hanya dapat di akses oleh lapisan yang ada di atasnya atau di bawahnya.Hal tersebut di maksudkan untuk memberi kemudahankepada para pembuat perangkat keras dan perangkat lunak komunikasi dalam mengembangkan berbagai protokol yang berbeda sesuai kebutuhan. Namun tetap mereka harus mematuhi standar yang telah di berikan OSI.
Lapisan layer protokol tersebut dapat di golongkan lebih jauh menjadi:
  • Low level Layers
  • Transport Layers
  • Higher Level Layer

  
a.      Low level Layers
  • Yang termasuk Low layers adalah lapisan-lapisan sebagi berikut:
  • Physical Layer: Spesifikasi dan implementasi dari bit-bit dan proses transmisi dari pengirim ke penerima. Berfungsi untuk mendefinisikan media transmisi jaringan, metode pensinyalan, sinkronisasi bit, arsitektur jaringan (seperti halnya Ethernet atau Token Ring), topologi jaringan dan pengkabelan. Selain itu, level ini juga mendefinisikan bagaimana Network Interface Card (NIC) dapat berinteraksi dengan media kabel atau radio.
  • Data Link Layer: Bertanggung jawab mengurusi perubahan bit=bit data menjadi frame untuk mengatasi error dan penontrolan pengiriman frame. Befungsi untuk menentukan bagaimana bit-bit data dikelompokkan menjadi format yang disebut sebagai frame. Data link layer melakukan tugasnya dengan meletakkan pola bit khusus pada awal dan akhir dari setiap frame untuk menandai mereka, serta komputasi checksum dengan menjumlahkan semua byte dalam bingkai dengan cara tertentu.

Ketika frame tiba, penerima recomputes checksum dari data dan membandingkan hasilnya dengan checksum mengikuti frame. Jika setuju, frame dianggap benar dan diterima. Jika mereka tidak setuju, penerima meminta pengirim untuk retrasmit itu. Frame ditugaskan nomor urut (di header), sehingga semua orang dapat memberitahukan yang mana.
  • Network Layer: Mengatur bagaimana paket-paket di arahkan berdasarkan alamat logik. lapisan bertanggung jawab untuk menerjemahkan alamat logis jaringan ke alamat fisik jaringan. Berfungsi untuk mendefinisikan alamat-alamat IP, membuat header untuk paket-paket, dan kemudian melakukan routing melalui internetworking dengan menggunakan router dan switch layer. Lapisan ini juga member identitas alamat, jalur perjalanan pengiriman data, dan mengatur masalah jaringan misalnya pengiriman paket-paket data.
  • Saat ini, mungkin protokol jaringan yang paling banyak digunakan adalah IP connectionless (Internet Protocol), yang merupakan bagian dari protokol internet. Sebuah paket IP dapat dikirim tanpa pengaturan apapun. Setiap paket IP diarahkan ke tujuan yang independen dari semua orang lain. Tidak ada jalur internal dipilih dan diingat.

  
b.      Transport Layers
Merupakan lapisan yang memberi fasilitas komunikasi bagi kebanyakan sistem tersebar. Berfungsi untuk memecah data ke dalam paket-paket data serta memberikan nomor urut ke paket-paket tersebut sehingga dapat disusun kembali pada sisi tujuan setelah diterima. Selain itu, pada level ini juga membuat sebuah tanda bahwa paket diterima dengan sukses (acknowledgement), dan mentransmisikan ulang terhadap paket-paket yang hilang di tengah jalan.
Pada lapisan ini terdapat dua macam protokol yang sering digunakan, yaitu:
  1. Transport Control Protocol (TCP) adalah protocol yang connection-oriented, yang berarti komunikasi yang melewatinya membutuhkan handshaking untuk mengatur koneksi end-to-end. Koneksi dapat dibuat dari client ke server, dan kemudian banyak data dapat dikirimkan melalui konesi itu. TCP memiliki karakteristik sebagai berikut:

  • Connection-oriented merupakan sistem yang akan berkomunikasi harus terlebih dulu saling mengetahui dan sepakat
  • Reliable, tersedia mekanisme menjamin paket yang rusak atau hilang dikirim ulang
  • Stream –oriented communication
  • Membutuhkan sumberdaya komputasi dan jaringan lebih dari UDP
  • User Datagram Protocol (UDP) adalah protocol connectionless message-based yang lebih sederhana. Di protocol connectionless, tidak ada usaha yang dibuat untuk koneksi end-to-end. Koumikasi dicapai dengan mengirimkan informasi satu arah, dari source ke destination tanpa mengecek untuk melihat apakah tujuan masih ada, atau apakah koneksi disiapkan untuk menerima informasi. Paket UDP melewati jaringan dalam unit-unit yang berdiri sendiri. UDP memiliki karakteristik sebagai berikut:

Connectionless, tidak memerlukan adanya saling mengetahui dan kesepakatan
Unreliable datagram communication, tidak tersedianya mekanisme yang menjamin paket rusak atau dikirim ulang.

Manfaat TCP dibandingkan dengan UDP adalah bahwa ia bekerja andal melalui jaringan apapun. Kelemahan yang jelas adalah bahwa TCP memperkenalkan overhead yang jauh lebih, terutama dibandingkan dengan kasus-kasus di mana jaringan yang mendasarinya sangat handal, seperti dalam sistem area lokal. Ketika kinerja dan kehandalan yang dipertaruhkan, solusi alternatif selalu untuk menggunakan UDP, dan mengkombinasikannya dengan kesalahan tambahan dan kontrol aliran yang dioptimalkan untuk aplikasi tertentu. Kelemahan dari pendekatan ini adalah bahwa pekerjaan pembangunan banyak ekstra perlu dilakukan, tetapi juga bahwa solusi proprietary diperkenalkan, yang mempengaruhi keterbukaan sistem.
Apa yang membuat TCP begitu menarik dalam banyak kasus, adalah bahwa hal itu tidak disesuaikan untuk mendukung jawaban perilaku permintaan sinkron interaksi klien yang paling server. Dalam keadaan normal, ketika pesan tidak tersesat, menggunakan TCP untuk interaksi client server hasil seperti yang ditunjukkan pada gambar 2-4 (a). Pertama, klien memulai setup sambungan, yang dilakukan dengan menggunakan tiga cara protokol jabat tangan, ditampilkan sebagai tiga pesan pertama di gambar 2-4 (a). Protokol ini diperlukan untuk kedua belah pihak untuk mencapai kesepakatan pada urutan penomoran untuk paket yang akan dikirim melalui sambungan. Ketika koneksi telah dibentuk, client mengirimkan permintaannya (pesan 4), langsung diikuti oleh paket memberitahu server untuk menutup koneksi (pesan 5).
Gambar 2-4 (a) Pengoperasian normal TCP. (B) Transaksional TCP
Server merespon dengan segera mengakui bahwa ia menerima permintaan klien, piggybacked dengan pengakuan bahwa koneksi akan clossed bawah (pesan 6). Server kemudian melakukan pekerjaan yang diminta dan mengirimkan jawaban kepada klien (pesan 7), diikuti dengan permintaan untuk melepaskan koneksi juga (pesan 8). Klien hanya perlu merespon dengan pengakuan untuk menyelesaikan komunikasi dengan server (pesan 9).
Jelas, banyak overhead dalam TCP berasal dari benar-benar mengelola koneksi. Ketika TCP digunakan untuk interaksi client server, itu jauh lebih murah untuk menggabungkan pengaturan koneksi dengan segera mengirimkan permintaan, dan seperti bijaksana untuk menggabungkan mengirimkan jawaban dengan menutup koneksi. Protokol yang dihasilkan disebut TCP untuk Transaksi, disingkat T / TCP, dan esensi dari bagaimana ia beroperasi di bawah kondisi normal ditunjukkan pada gambar 2-4 (b).
Apa yang terjadi dalam keadaan normal, adalah bahwa klien mengirimkan pesan tunggal (ditampilkan sebagai pesan 1) yang berisi tiga potongan informasi: permintaan untuk mengatur koneksi, permintaan layanan yang sebenarnya, dan permintaan memberitahu server yang segera bisa merobek turun koneksi sesudahnya.
Server merespon setelah ia dilayani permintaan yang sebenarnya, sehingga dapat mengirim jawaban bersama dengan data yang diperlukan untuk menerima koneksi, dan segera meminta rilis, ditampilkan sebagai pesan pada Gambar 2. 2-4 (b). Sekali lagi, klien hanya perlu mengakui rilis final dari koneksi (pesan 3).

c.         Higher Level Layer
Di atas lapisan transport. OSI membedakan tiga lapisan tambahan. Dalam prakteknya, hanya lapisan aplikasi yang pernah digunakan. Bahkan, di suite internet protocol, segala sesuatu di atas lapisan transport dikelompokkan bersama-sama. Dalam menghadapi sistem middleware, akan kita lihat dalam bagian ini bahwa baik OSI maupun pendekatan internet benar-benar tepat. Dalam Higher Level Layer ini terbagi menjadi tiga lapisan tambahan yaitu:
1. Sesi dan Presentasi Protokol
Lapisan sesi dasarnya merupakan versi yang disempurnakan dari lapisan transport. Menyediakan kontrol dialog, untuk melacak pihak mana saat berbicara, dan menyediakan fasilitas sinkronisasi. Sehingga jika terjadi kecelakaan, yang terakhir ini berguna untuk memungkinkan pengguna memasukkan pos-pos pemeriksaan dalam transfer yang panjang. Hal ini diperlukan untuk kembali hanya untuk pos pemeriksaan terakhir, daripada semua jalan kembali ke awal. Dalam prakteknya, beberapa aplikasi tertarik dalam lapisan sesi dan jarang didukung. Hal ini tidak hadir dalam acara suite protokol Internet.
Berbeda dengan lapisan bawah, yang prihatin dengan mendapatkan bit dari pengirim ke penerima andal dan efisien, lapisan presentasi berkaitan dengan arti dari bit. Pesan yang paling tidak terdiri dari string bit acak, tetapi informasi lebih terstruktur seperti nama orang, alamat, jumlah uang, dan sebagainya. Pada lapisan presentasi adalah mungkin untuk menentukan catatan yang berisi bidang-bidang seperti ini dan kemudian memiliki Sener memberitahukan penerima bahwa pesan berisi catatan tertentu dalam format tertentu. Hal ini memudahkan untuk mesin dengan representasi internal yang berbeda untuk berkomunikasi.

2. Protocol Application
Menyediakan layanan untuk aplikasi misalnya transfer file, email, akses suatu komputer atau layanan. Lapisan aplikasi OSI awalnya dimaksudkan untuk menampung koleksi aplikasi jaringan standar seperti untuk surat elektronik, transfer file, dan emulasi terminal. Sampai saat ini telah menjadi wadah untuk semua aplikasi dan protokol yang dalam satu cara atau yang lain tidak masuk ke dalam salah satu lapisan yang mendasarinya. Dari perspektif model referensi OSI, hampir semua sistem terdistribusi hanya aplikasi.
Ada juga banyak tujuan umum protokol yang berguna untuk banyak aplikasi, tetapi yang tidak dapat dikualifikasikan sebagai protokol transport. Dalam banyak kasus, protokol seperti jatuh ke dalam kategori protokol middleware, yang akan kita bahas selanjutnya.

3. Middleware Protocol
Middleware adalah sebuah aplikasi yang logis tinggal di lapisan aplikasi, tetapi yang mengandung banyak tujuan umum protokol yang menjamin lapisan mereka sendiri, independen lainnya, aplikasi yang lebih spesifik. Perbedaan dapat dibuat antara tingkat tinggi protokol komunikasi dan protokol untuk membangun layanan middleware berbagai.
Dibuat untuk menyediakan layanan layanan protokol yang seragam dan dapat digunakan oleh aplikasi-aplikasi yang berbeda-beda. Pada lapisan ini terdapat sekumpulan protokol komunikasi yang beragam yang memungkinkan berbagai macam aplikasi dapat berkomunikasi. Middleware juga memberi fasilitas marshalling dimana terdapat proses pengubahan data dalam komunikasi antar proses menjadi bentuk yang siap dikirim melalui jaringan sehingga dapat tetap konsisten sampai di si penerima data dan kebalikannya.
Middleware komunikasi protokol mendukung tingkat tinggi layanan komunikasi. Misalnya, di bagian dua berikutnya kita akan membahas protokol yang memungkinkan proses untuk memanggil prosedur atau invok obyek pada mesin remote dengan cara yang sangat transparan. Demikian juga, ada layanan komunikasi tingkat tinggi untuk menetapkan dan sinkronisasi aliran untuk mentransfer data real-time, seperti yang diperlukan untuk aplikasi multimedia. Sebagai contoh terakhir, beberapa sistem middleware menawarkan layanan multicast handal yang skala untuk ribuan penerima tersebar di wide area network.
Beberapa protokol komunikasi middleware yang sama bisa juga termasuk dalam lapisan transport, tapi mungkin ada alasan spesifik untuk menjaga mereka pada tingkat yang lebih tinggi. Misalnya, multicasting layanan yang handal Taht skalabilitas jaminan dapat diimplementasikan hanya jika persyaratan aplikasi diperhitungkan. Akibatnya, sistem middleware mungkin menawarkan yang berbeda (merdu) protokol, masing-masing pada gilirannya diimplementasikan dengan menggunakan protokol transport yang berbeda, tapi mungkin menawarkan antarmuka tunggal.

Konsep objek terdistribusi dan object interface
Meskipun teknologi RPC ini relatif sudah memberikan kenyamanan bagi developer namun seiring dengan perkembangannya, sistem ini dinilai tidak efisien lagi.  Dalam membuat aplikasi client server, programmer masih harus membuat fungsi-fungsi yang sama untuk aplikasi yang berbeda. Kadang kala kode program yang sama digunakan dengan melakukan copy paste dan melakukan sedikit perubahan untuk menyesuaikan dengan aplikasi yang baru dibuat. Jika ada perubahan, fungsi tersebut dalam masing-masing aplikasi harus di update satu persatu lagi. Hal ini mengakibatkan perawatan program menjadi susah dan fungsi-fungsi tersebut dapat menjadi tidak konsisten satu sama lain.
CORBA
Common Object Request Broker Architecture (CORBA) merupakan standar yang dikeluarkan oleh Object Management Group (OMG). Spesifikasi CORBA ini berisi sebuah spesifikasi  infrastruktur yang disebut Object Request Broker (ORB) yang memungkinkan aplikasi klien untuk dapat berkomunikasi dengan obyek secara remote. Spesifikasi ini meliputi antarmuka program, protokol komunikasi dan model obyek atau layanan yang memungkinkan aplikasi yang ditulis dengan berbagai macam bahasa pemrograman.
CORBA membungkus kode program yang dibuat dengan bahasa pemrograman tertentu menjadi sebuah obyek yang ditambah dengan informasi mengenai kemampuan kode program dan cara mengaksesnya. Obyek tersebut dapat dipanggil oleh program lain melalui jaringan. CORBA menggunakan interface definition languange (IDL) untuk menunjukkan interface atau antarmuka yang dapat digunakan oleh program atau obyek lain. Dari IDL tersebut CORBA akan memetakannya ke implementasi yang lebih spesifik dari masing-masing bahasa pemrograman.
COM
Component Object Model (COM) adalah teknologi yang diciptakan oleh Microsoft untuk memungkinkan komunikasi antaraplikasi. Teknologi ini sudah  disediakan untuk beberapa platform tetapi kebanyakan digunakan untuk platform Windows. Teknologi ini sudah diperkenalkan oleh microsoft pada tahun 1993 tetapi baru populer pada tahun 1997. Perkembangan teknologi COM ini bermula dari teknologi OLE (Object Linking and Embedding) yang dibuat untuk memungkinkan aplikasi dapat saling bertukar data.
DCOM
Pada tahun 1996 diperkenalkan Distributed Component Object Model (DCOM) sebagai jawaban Microsoft atas CORBA. DCOM dibandingkan dengan COM memiliki  kelebihan mampu untuk terdistribusi dan berkomunikasi antarkomponen melalui jaringan. DCOM dan CORBA saling berkompetisi untuk menjadi standar dalam distribusi komponen melalui internet. Namun dibalik kesulitan dalam hal keamanan, sebuah browser yang berjalan menggunakan teknologi http sudah dapat menggantikan teknologi tsb.
RMI
Remote Method Invocation (RMI) adalah sebuah teknik pemanggilan method remote yang lebih secara umum lebih baik daripada RPC. RMI menggunakan paradigma pemrograman berorientasi obyek (Object Oriented Programming). RMI memungkinkan kita untuk mengirim obyek sebagai parameter dari remote method. Dengan dibolehkannya program Java memanggil method pada remote obyek, RMI membuat pengguna dapat mengembangkan aplikasi Java yang terdistribusi pada jaringan.
RMI menyediakan mekanisme dimana server dan client berkomunikasi dan memberikan informasi secara timbal balik. Aplikasi semacam ini seringkali disebut aplikasi objek terdistribusi

Langkah-Langkah Pembuatan Program dengan RMI
Dalam RMI, semua informasi tentang satu pelayanan server disediakan dalam suatu definisi remote interface. Dengan melihat pada definisi interface, seorang pemrogram dapat memberitahukan method apa yang dapat dikerjakan oleh server, meliputi data apa yang diterima dan data apa yang akan dikirim sebagai tanggapan.
Definisi yang ada pada remote interface menentukan karakteristik methods yang disediakan server yang dapat dilihat oleh client. Client programmer harus dapat mengetahui methods apa yang disediakan server dan bagaimana memanggilnya langsung dengan melihat ke remote interface. Client mendapatkan referensi ke remote object melalui RMI registry.

Membangun suatu aplikasi terdistribusi menggunakan RMI meliputi 6 langkah. Keenam langkah tersebut adalah:
1. Mendefinisikan remote interface
2. Implementasi remote interface dan server
3. Pengembangan client (atau applet) yang menggunakan remote interface
4. Mengkompilasi source files dan mem-buat stub and skeletons
5. Memulai (start) RMI registry
6. Menjalankan server dan client


Sumber: 
http://penuhrahmatt.mdl2.com/mod/book/view.php?id=4&chapterid=2 
http://damaraaaa.wordpress.com/2013/03/19/konsep-objek-terdistribusi-dan-object-interface/

Pengenalan Sistem Terdistribusi

Definisi Sitem Terdistribusi
Sistem Terdistribusi adalah Sekumpulan komputer otonom yang terhubung kesuatu jaringan, dimana bagi pengguna sistem terlihat sebagai satu komputer.
Dengan menjalankan sistem terdistribusi, komputer dapat melakukan : Koordinasi Aktifitas dan berbagi sumber daya: hardware, software dan data.

Contoh Sistem Terdistribusi
  1. Sistem Telepon : ISDN, PSTN
  2. Manajemen Jaringan: Adminstrasi sesumber jaringan
  3. Network File System (NFS) : Arsitektur untuk mengakses
  4. sistemfile melalui jaringan
  5. WWW : Arsitektur client/server yang diterapkan diatas Infrastruktur internet, Shared Resource (melaluiURL)
  6. dll


KeuntunganSistemTerdistribusi
  • Performance
  • Distribution
  • Reliability (Fault tolerance)
  • Incremental Growth
  • Sharing Data/Resources


Kelemahan pada sistem terdistribusi adalah
  1. Kesulitandalammembangunperangkatlunak
  2. Bahasa pemrogramman, sistem operasi dll.
  3. MasalahJaringan: merancang& mengimplementasikan sistem.
  4. Masalah Keamanan: berbagidata/sumberdaya
  5. Berkaitan dengan keamanan data dll.


KarakteristikSistemTerdistribusi
Hal yang diperhatikan dalam membangun sistem terdistribusi:
a. Transparency (Kejelasan)
b. Communication (Komunikasi)
c. Performance & Scalability (KinerjadanRuangLingkup)
d. Heterogenity(Keanekaragaman)
e. Opennes(Keterbukaan)
f. Reliability dan Fault Tolerancy(Kehandalan danToleransi Kegagalan)
g. Security (Kemanan)

Model dalamSistemTerdistribusi
a. Model Arsitektur(Architectural Models)
b. Model Interaksi(Interaction Models)
c. Model Kegagalan(Failure Models)

a. Architectural Models
Cara kerja antar komponen sistem dan bagaimana komponen tsb berada pada sistem terdistribusi:
- Client -Server Model
- Proxy Server
- Peer processes ( peer to peer )

Client-Server Model
Model client-server biasanya berbasiskan protokol request/reply.
Contoh: Implementasi RPC (Remote Procedure Calling) danRMI (Remote Method Invocation) :
  • client mengirimkan request berupa pesan ke server untuk mengakses suatu service.
  • server menerima pesan tersebut dan mengeksekusi request client dan mereply hasil ke client


Proxy Server
  • menyediakan hasil copy (replikasi) dari resource yang diatur oleh server lain
  • dipakai untuk menyimpan hasil copy web resources.
  • Ketika client melakukan request kes erver, proxy server diperiksa apakah yang diminta oleh client terdapat pada proxy server.
  • Diletakkan pada setiap client atau dapat dipakai bersama oleh beberapa client. Tujuannya adalah meningkatkan performance dan availibity dengan mencegah frekwensi akses ke server.


Peer Process
  • Semua proses(object) mempunyai peranyang sama.
  • Proses berinteraksi tanpa adanya perbedaan antara client dan server.
  • Polakomunikasi yang digunakan berdasarkan aplikasi yang digunakan.
  • •Merupakan model yang paling general dan fleksible.


b. Interaction  Models 
dibagi menjadi dua bagian:
  • Synchronous distributed system
  • Asynchronous distributed system Synchronous Distributed System
  • Batas atas dan batas bawah waktu pengeksekusian dapat diset.
  • Pesan yang dikirim, diterima dalam waktu yang sudah ditentukan
  • Fluktuasi ukuran antara waktu lokal berada dalam suatu batasan.


Beberapa hal yang penting untuk diperhatikan synchronous distributed sistem:
  • terdapat satu waktu global
  • dapat memprediksi perilaku(waktu)
  • dimungkinkan dan aman untuk menggunakan mekanisme timeout dalam mendekteksi error atau kegagalan dalam proses atau komunikasi


Asynchronous Distributed System
Banyak sistem terdistribusi yang  menggunakan model interaksi ini(termasuk Internet)
  • Tidak ada batasan dalam waktu pengkeksekusian.
  • Tidak ada batasan dalam delay transmission (penundaan pengiriman)
  • Tidak ada batasan terhadap fluktuasi waktu local. Asynchronous system secara parktek lebih banyak digunakan.


c. Failure Models
Kegagalan apa saja yang dapat terjadi dan bagaimana efek yang ditimbulkan?
  • Omission Faluires
  • Arbitary Failures
  • Timing Failures


Model Kegagalan (Failure Models) dibutuhkandalam membangun suatu sistem dengan prediksi terhadap kagagalan yang mungkin terjadi.

OmmisionFailures :
Ketika prosesor dan kanal komunikasi mengalami kegagalan untuk melakukan halyang seharusnya dilakukan.

Dikatakan tidak mempunyai ommision failures apabila:
•Terjadi keterlambatan (delayed) tetapi akhirnya tetap tereksekusi.
•Sebuah aksi dieksekusi walaupun terdapat kesalahan pada hasil.

Dengan synchronous system, ommision failures dapatdideteksi dengan timeouts.

ArbitaryFailures
  • kegagalan yang paling buruk dalam sistem.
  • Tahapan proses atau komunikasi diabaikan atau yang tidak diharapkan terjadi dieksekusi -> hasil yang diharapkan tidak terjadi atau megeluarkan hasil yang salah.


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.

Sumber : http://loveensimple.blogspot.com/2014/01/catatan-pengenalan-sistem-terdistribusi.html

Tuesday 14 April 2015

To be and Tenses

TO BE
To be adalah komponen penting dalam kalimat bahasa Inggris karena to be adalah kata kerja  yang harus ada pada setiap kalimat. Fungsi Kata Kerja To be adalah menghubungkan Subyek kalimat dengan predikat atau obyek kalimat yang terdiri dari kata sifat (adjective), noun (kata benda), keterangan waktu dan keterangan tempat.



Present Perfect Tense
Present perfect tense adalah suatu bentuk kata kerja yang digunakan untuk menyatakan suatu aksi atau situasi yang telah dimulai di masa lalu dan masih berlanjut sampai sekarang atau telah selesai pada suatu titik waktu tertentu di masa lalu namun efeknya masih berlanjut.


Present Continuous Tense
Present continuous tense atau present progressive tense adalah bentuk kata kerja yang digunakan untuk menyatakan aksi yang sedang berlangsung sekarang (present) atau rencana di masa depan (future). Karena dapat digunakan pada present atau future, tense ini sering diiringi adverb of time untuk memperjelasnya.


Past Tense
Simple past tense adalah suatu bentuk kata kerja sederhana untuk menunjukkan bahwa suatu kejadian terjadi di masa lampau. Pada simple past tense, waktu kejadian (yesterday, last two days, last year) atau periode waktunya (for two months, for a day, for an hour) dapat disebutkan secara spesifik.


Sumber: http://afyahrachmadianty.blogspot.com/

Wednesday 7 January 2015

Contoh Memo

MEMO


To: All Employees
From: Sonny Sumarna
Date: December 21st, 2014
Subject: Farewell Ceremony

It is used to tell you all that the farewell ceremony in honor of Nisaa Aqmarina, Assistant Manager, will be held at 07:00 PM on December 25, 2014. All people in this company are required to attend the ceremony.