Studi Kasus RPC
RPC (Remote Procedure Call) pertama kali ditemukan pada
tahun 1976. Perusahaan yang pertama kali menggunakan RPC adalah Xerox
pada tahun 1981. RPC di implementasikan pertama kali di sistem operasi
Unix, Sun's RPC (sekarang disebut ONC RPC). ONC RPC masih banyak
digunakan saat ini pada beberapa platform. Implementasi Unix yang lain
digunakan oleh Apollo Computer Network Computing System (NCS). NCS
kemudian digunakan sebagai dasar fondasi DCE/RPC di OSF Distributed
Computing Environment (DCE). Satu dekade kemudian diadopsi oleh
perusahaan Microsoft DCE/RP, Microsoft RPC (MSRPC) sebagai dasar
mekanisme mereka, dan berjalan pada DCOM (Distributed Object Component
Model). Sekitar waktu yang sama pertengahan tahun 90-an, Xerox PARC's
ILU, dan Object Management Group CORBA, menawarkan paradigma RPC yang
lain berdasarkan objek terdistribusi dengan mekanisme yang menggunakan
metode warisan.
Remote Procedure Call (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. RPC mengasumsikan keberadaan dari low-level protokol transportasi
seperti TCP atau UDP untuk membawa pesan data dalam komunikasi suatu
program. Protokol RPC dibangun diatas protokol eXternal Data
Representation (XDR), yang merupakan standar dari representasi data
dalam komunikasi remote. Protokol XDR mengubah parameter dan hasil dari
tiap servis RPC yang disediakan.
Definisi lain dari
RPC, adalah sebuah metode yang memungkinkan kita untuk mengakses sebuah
procedure yang berada di komputer lain. Nah, untuk melakukan hal ini sebuah
server harus menyediakan layanan remote procedure.
Cara kerja dari RPC ini
adalah server membuka socket, lalu menunggu client yang meminta prosedur yang
disediakan oleh server. Bila client tidak tahu harus menghubungi port yang
mana, client bisa me-request kepada sebuah matchmaker pada sebuah RPC port yang
tetap. Matchmaker akan memberikan port apa yang digunakan oleh prosedur yang
diminta client.
Cara kerja dari RPC ini
adalah server membuka socket, lalu menunggu client yang meminta prosedur yang
disediakan oleh server. Bila client tidak tahu harus menghubungi port yang
mana, client bisa me-request kepada sebuah matchmaker pada sebuah RPC port yang
tetap. Matchmaker akan memberikan port apa yang digunakan oleh prosedur yang
diminta client.
Langkah-Langkah RPC
Tahapan dari gambar diatas:
- Klien memanggil prosedur stub lokal. Prosedur Stub akan memberikan parameter dalam suatu paket yang akan dikirim ke jaringan. Proses ini disebut sebagai marshalling.
- Fungsi Network pada O/S (Operating system – Sistem Operasi) akan dipanggil oleh stub untuk mengirim suatu message.
- Kemudian Kernel ini akan mengirim message ke sistem remote. Kondisi ini dapat berupa connectionless atau connection-oriented.
- Stub pada sisi server akan melakukan proses unmarshals pada paket yang dikirim pada network.
- Stub pada server kemudian mengeksekusi prosedur panggilan lokal.
- Jika eksekusi prosedur ini telah selesai, maka eksekusi diberikan kembali ke stub pada server.
- Stub server akan melakukan proses marshals lagi dan mengirimkan message nilai balikan ( hasilnya ) kembali ke jaringan.
- Message ini akan dikirim kembali ke klien.
- Stub klien akan membaca message ini dengan menggunakan fungsi pada jaringan.
- Proses unmarshalled kemudian dilakukan pada message ini dan nilai balikan aka diambil untuk kemudian diproses pada proses lokal.
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 th
1980-an RPC telah banyak digunakan dlm 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 pemrogram 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 yg terpisah
Studi Kasus RPC
Salah
satu contoh penggunaan RPC yaitu SSH. Secure
Shell atau SSH adalah protokol jaringan yang memungkinkan pertukaran data melalui saluran aman antara dua perangkat jaringan. Terutama banyak digunakan pada sistem berbasis Linux dan Unix untuk mengakses akun shell. Kegunaan
utama SSH adalah untuk memasuki sistem komputer di tempat lain yang terhubung
melalui jaringan dengan cara yang aman.
Contoh aplikasi yang digunakan untuk SSH yaitu
Putty dan Winscp. Cara penggunaannya yaitu dengan memastikan
terlebih dahulu port ssh di komputer tujuan harus aktif dengan cara diaktifkan
servicenya melalui terminal .
A. Putty
Langkah awal menggunakan Putty
Langkah kedua
untuk mengisi login as harus benar passwordnya juga harus tepat sesuai yang terdaftar pada komputer yang di remote.
untuk mengisi login as harus benar passwordnya juga harus tepat sesuai yang terdaftar pada komputer yang di remote.
Langkah ketiga
Anda berhasil masuk hal yang terpenting disini jika kita
ingin akses full administrator komputer linux yang di remote tadi harus masuk
sebagai root.
B.Winscp
Langkah pertama masukan ip tujuan komp linux yang akan di remote lalu klik login:
Langkah pertama masukan ip tujuan komp linux yang akan di remote lalu klik login:
Setelah login isi username dan password user tujuan komp yang
telah terdaftar di sistem linux tersebut:
Tampilan menu pembuka winscp sebelum digunakan.
Dengan winscp anda dapat mendelete rename edit copy file atau
folder semaunya di winscp tanpa harus menggunakan editor vi,perintah - perintah
console yang membingunkan dengan sarat anda remote harus sebagai root di komp
linux yang diremote.
Contoh kasus RCP lainnya yang sering
kita temui yakni terdapat pada jasa pengeprintan 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.
Solusinya adalah :
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 :
http://kweedhbuzz.blogspot.com/2013/03/studi-kasus-rpc.html
http://jevrie-brothers.blogspot.com/2013/03/remote-procedure-call-gagasan-tentang.html
http://hadisaputra3.blogspot.com/2013/03/studi-kasus-rpc.html
Link Kelompok :
1. Aprilina Putri : Protokol ( Sistem Terdistribusi Komunikasi Studi) http://aprilinaputri19.wordpress.com/2014/03/17/protokol-sistem-terdistribusi-komunikasi-studi/
2. Ariens S. Prayoga : RPC ( Remote Procedure Controller)
3. Fadhlanullah Sidiq : Konsep Objek Terdistribusi dan Objek Interface ( http://fadhlansymphony.blogspot.com/2014/03/konsep-objek-terdistribusi-dan-objek.html )
4. Yanizar Dwi : Sistem Terdistribusi : Komunikasi (Studi Kasus) http://teknophobia.blogspot.com/2014/03/sistem-terdistribusi-komunikasi-studi.html
Tidak ada komentar:
Posting Komentar