10/03/10

Komunikasi (TCP/IP, Remote Procedure Call)

hal 5

Berikut artikel terusan dari
3. Otentikasi RPC pada hal 3


4. Implementasi RPC

Sun Microsystems Open Network Computing (ONC) : RPC specification, XDR (eXternal Data
Representation) standard, UDP atau TCP transport protocol. Xerox Courier : RPC model, Data
representation standard, XNS (Xerox Network Systems) SPP (Sequenced Packet Protocol) sbg
transport protocol, Apollo s Network Computing Architecture (NCA), RPC protocol, NDR (NetworkData Representation).

5. 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

6. Kekurangan RPC

Tidak fleksibel terhadap perubahan :
1. Static relationship between client & server at run-time.
2. Berdasarkan prosedural/structured programming yang sudah ketinggalan jaman dibandingkan OOP.

Kurangnya location transparency:
1. Misalnya premrogram hanya boleh melakukan pass by value, bukan pass by reference.
2. Komunikasi hanya antara 1 klien & 1 server (one-to-one at a time).
3. Komunikasi antara 1 klien & beberapa server memerlukan beberapa koneksi yg terpisah.

Prinsip RPC dalam Client – Server


Langkah – langkah dalam RPC



Object Remote Pendekatan kedua yang akan kita bahas adalah Remote Method Invocation (RMI), sebuah teknik pemanggilan method remote yang lebih secara umum lebih baik daripada RPC. RMI menggunakan paradigma pemrograman berorientasi obyek (OOP). Dengan 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.

Untuk membuat remote method dapat diakses RMI mengimplementasikan remote object
menggukan stub dan skleton. Stub bertindak sebagai proxy disisi client, yaitu yang menghubungkan client dengan skleton yang berada disisi server. Stub yang ada disisi client bertanggung-jawab untuk membungkus nama method yang akan diakses, dan parameternya, hal ini biasa dikenal dengan marshalling. Stub mengirim paket yang sudah dibungkus ini ke server dan akan di buka (unmarshalling) oleh skleton. Skleton akan menerima hasil keluaran yang telah diproses oleh method yang dituju, lalu akan kembali dibungkus (marshall) dan dikirim kembali ke client yang akan diterima oleh stub dan kembali dibuka paketnya
(unmarshall). Untuk membuat remote obyek kita harus mendefinisikan semua method yang akan kita sediakan pada jaringan, setelah itu dapat digunakan RMI compiler untuk membuat stub dan skleton. Setelah itu kita harus mem-binding remote obyek yang kita sediakan kedalam sebuah RMI registry. Setelah itu client dapat mengakses semua remote method yang telah kita sediakan menggunkan stub yang telah dicompile menggunakan RMI compiler tersebut.

Akses ke Obyek Remote

Sekali obyek didaftarkan ke server, client dapat mengakses remote object dengan menjalankan
Naming.lookup() method. RMI menyediakan url untuk pengaksesan ke remote obyek yaitu rmi://host/obyek, dimana host adalah nama server tempat kita mendaftarkan remote obyek dan obyek adalah parameter yang kita gunakan ketika kita memanggil method Naming.rebind(). Client juga harus menginstall RMISecurityManager untuk memastikan keamanan client ketika membuka soket ke jaringan.

Java memiliki sistem security yang baik sehingga user dapat lebih nyaman dalam melakukan komunikasi pada jaringan. Selain itu java sudah mendukung pemorograman berorientasi object, sehingga pengembangan software berskala besar sangat dimungkinkan dilakukan oleh java. RMI sendiri merupakan sistem terdistribusi yang dirancang oleh SUN pada platfrom yang spesifik yaitu Java, apabila anda tertarik untuk mengembangkan sistem terdistribusi yang lebih portable dapat digunakan CORBA sebagai solusi alternatifnya.

2 komentar:

Oyah mengatakan...

Makasyih ud follow aq, btw aq jga ud follow balik, + link ud trpsg di Friends' Links aq a/n "Blog Tugas Kuliah" ... tar tukeran jga yaaa... tq

Oyah mengatakan...

Jjm a.k.a. jln2 malam dgn :)... Maaf bru bsa hdr lg... sukses yaa, sob