Pages

Selasa, 19 Maret 2013

Studi Kasus RPC



RPC ( Remote Procedure Call )



1. Definisi
RPC adalah sebuah metode yang memungkinkan kita untuk mengakses sebuah prosedur yang berada di komputer lain. Untuk dapat melakukan ini sebuah server harus menyediakan layanan remote procedure. Pendekatan yang dilakukan adalah sebuah servermembuka socket, lalu menunggu client yang meminta prosedur yang disediakan server. RPC masih menggunakan cara primtif dalam pemrograman yaitu menggunakan paradigma procedural programming.
2. Tujuan
RPC digunakan untuk administrasi sistem sehingga seorang administrator jaringan dapat mengakses sistemnya dan mengelola sistemnya darimana saja, selama sistemnya terhubung ke jaringan.
3. Socket
RPC menggunakan socket untuk berkomunikasi dengan proses lainnya.
4. Cara Kerja RPC
Tiap prosedur yang dipanggil dalam RPC, maka proses ini harus berkoneksi dengan server remote dengan mengirimkan semua parameter yang dibutuhkan, menunggu balasan dari server dan melakukan proses kemudian selesai. Proses di atas disebut juga dengan stub pada sisi klien. Sedangkan Stub pada sisi server adalah proses menunggu tiap message yang berisi permintaan mengenai prosedur tertentu.
Contoh aplikasi untuk meremote pada teknik RPC (Remote Procedure Call) adalah menggunakan putty untuk melakukan SSH.

Kegunaan utama SSH adalah untuk memasuki sistem komputer di tempat lain yang terhubung melalui jaringan dengan cara yang aman. Tapi saat ini SSH dapat diturunkan untuk berbagai hal yang amat dibutuhkan dalam komputasi jaringan atau lebih besar lagi: internet.

Sedangkan putty adalah software remote console/ terminal yang digunakan untuk meremote komp dengan terhubungnya menggunakan port ssh atau sebagainya, Pada bahasan disini diterang cara unutk meremote komp sistem operasi linux dengan menggunakan komp sisem operasi windows tentunya putty disini diinstall diwindows jadi digunakan putty versi windows.



5.  Langkah-langkah dalam RPC



1. Client procedure calls client stub in normal way.
2. Client stub builds message, calls local OS.
3. Client's OS sends message to remote OS.
4. Remote OS gives message to server stub.
5. Server stub unpacks parameters, calls server.
6. Server does work, returns result to the stub.
7. Server stub packs it in message, calls local OS.
8. Server's OS sends message to client's OS.
9. Client's OS gives message to client stub.
10. Stub unpacks result, returns to client.




6. Contoh Studi Kasus RPC
Contoh studi kasus RPC yaitu pada jasa penge-print-an di rental pengetikan yang di dalamnya terdapat 1 komputer server, beberapa komputer client dan sebuah printer yang hanya terhubung dengan server. User dari computer client ingin mencetak data dari komputernya. Biasanya user memindah data dengan bantuan device external seperti disket, flash disk, hard disk, atau cd-rw. Namun dengan RPC hal tersebut akan menjadi lebih efisien.
Solusi : Dengan RPC, untuk mencetak data dari computer client, computer client mengirim pesan “cetak” kepada computer server. Kemudian computer server menerima perintah tersebut dan kemudian menjalankan perintah mencetak data. Setelah itu server mengirimkan pesan pada client berupa informasi “file telah dicetak”.




Referensi :
Pyia, Perbedaan RMI dan RPC 
http://pyia.wordpress.com/2012/01/08/rmi-remote-method-invocation-dan-rpc-remote-procedure-call/(tanggal akses 19-03-2013)

http://xceaster.files.wordpress.com/2009/07/remote-procedure-call.pdf(tanggal akses 19-03-2013)

shintaambarwaty, Perbedaan RPC dan RMI
http://shintaambarwaty.blogspot.com/2012_01_01_archive.html(tanggal akses 19-03-2013)









Selasa, 12 Maret 2013

karakteristik sistem distribusi

1. No global clock
Hal ini menyebabkan kesulitan dalam mensinkronkan waktu seluruh komputer atau perangkat yang terlibat. Hal tersebut berpengaruh pada pengiriman pesan, seperti saat beberapa proses berebut ingin masuk critical section.
• Dalam pemakaian bersama atas sumber daya diperlukan beberapa hal yaitu :
a. Dibutuhkan hardware dan software yang mendukung.
b. Memerlukan resource manager (RM).
c. Perlunya suatu hubungan antara resource dengan pihak yang menggunakannya.
d. Terdapat Client-server, remote evaluation, code on demand, dan mobile agent.
• Terdapat batasan pada ketepatan proses sinkronisasi clock pada sistem terdistribusi, oleh karena asynchronous message passing.
• Pada sistem terdistribusi, tidak ada satu proses tunggal yang mengetahui global state sistem saat ini (disebabkan oleh concurrency dan message passing ).
2. Independent failure
Setiap komponen atau perangkat dapat mengalami kegagalan namun komponen/perangkat lain tetap berjalan dengan baik.
• Keterbukaan merupakan salah satu karakteristik yang dimiliki oleh sistem distribusi antara lain :
a. Syarat logis bagi sistem yang tumbuh dari komponen-komponen yang heterogen.
b. Keterbukaan mensyaratkan interoperabilitas membangun jembatan pengatur.
c. Kemungkinan adanya kegagalan proses tunggal yang tidak diketahui.
d. Proses tunggal mungkin tidak peduli pada kegagalan sistem keseluruhan.
3. Concurrency of components.
Pengaksesan suatu komponen atau sumber daya (segala hal yang dapat digunakan bersama dalam jaringan komputer) secara bersamaan.
• Setiap komponen hardware atau software bersifat otonom.
• Sinkronisasi dan koordinasi dengan message passing.
• Sharing resources.
Masalah umum dalam sistem concurrent:
- Deadlock.
- Lifeclock.
- Komunikasi yang tidak handal.
Contoh : Beberapa pemakai browser mengakses halaman web secara bersamaan.

Referensi
http://www.scribd.com/doc/76639805/Karakteristik-Sistem-Data-Terdistribusi (Tanggal akses 13-3-2013)
http://fandystress.blogspot.com/2012/03/karakteristik-sistem-terdistribusi.html (Tanggal akses 13-3-2013)