Minggu, 18 Maret 2012

Remote Procedure Call (RPC)


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.Pendekatan yang dilakuan adalah sebuah  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.
RPC masih menggunakan cara primitif dalam pemrograman, yaitu menggunakan paradigma procedural programming. Hal itu membuat kita sulit ketika menyediakan banyak  remote procedure. RPC menggunakan  socket untuk berkomunikasi dengan proses lainnya. Pada sistem seperti SUN, RPC secara default sudah ter-install kedalam sistemnya, biasanya RPC  ini digunakan untuk administrasi sistem. Sehingga seorang administrator jaringan dapat mengakses sistemnya dan mengelola sistemnya dari mana saja, selama sistemnya terhubung ke jaringan.

Kelebihan RPC
  • ƒ Relatif mudah digunakan :
Pemanggilan remote procedure tidak jauh berbeda dibandingkan pemanggilan procedure.  Sehingga pemrogram              dapat berkonsentrasi pada software logic, tidak perlu memikirkan low  level details seperti  socket, 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.

Struktur Protokol Message RPC
  • Call Message
  • Dilakukan oleh klien, dimana meminta server untuk mengeksekusi suatu prosedur.
  • Terdapat nilai-nilai unsigned integer yang digunakan untuk mengidentifikasi prosedurremote yang diminta:
1. Nomor Program
2. Nomor Versi dari Program
3. Nomor Prosedur
  • Reply Message
  • Dikirimkan oleh server jaringan, bervariasi tergantung
apakah call messages yang diminta klien diterima
atau ditolak.
  • Mengandung informasi:
1. RPM mengeksekusi call message dengan sukses
2. Implementasi remote tidak sesuai dengan protokol yang digunakan (versi yang lebih tinggi atau lebih rendah ditolak)
3.Program remote tidak tersedia pada sistem remote
4. Program remote tidak mendukung versi yang diminta klien
5. Nomor prosedur yang diminta tidak ada

Fitur dalam RPC
1. Batching Calls
Mengijinkan klien untuk mengirim message calls ke server dalam jumlah besar secara berurutan.
2. Broadcasting Calls
Menijinkan klien untuk mengirimkan paket data ke jaringan dan menunggu balasan dari network.
3. Callback Procedures
Mengijinkan server untuk bertindak sebagai klien dan melakukan PRC callback ke proses yang dijalankan klien.
4. Select Subrutin
Memeriksa deskripsi suatu file dan messages dalamantrian untuk melihat apakah siap dibaca atau ditulis,atau ditahan. (mengijinkan server untuk menginterupsi suatu aktivitas.

Prinsip RPC dalam program Client-Server

Skema RPC ini dilakukan juga pada proses-proses yang running di komputer  berlainan

  • ƒ Sebelum mekanisme RPC digunakan, data  harus di-packaging ke dalam formattransimisi. Langkah ini dinamakan marshalling

  • ƒProxy bertanggung jawab untuk marshalling data, kemudian mengirimkan data
dan meminta instans dari komponen (remote)
  • ƒStub menerima request, unmarshall data, dan memanggil method yang diminta. Kemudian proses mengembalikan nilai yang diinginkan .

Langkah-langkah dalam RPC

1.  Prosedur client memanggil client stub
2.  Client stub membuat pesan dan memanggil OS client
3.  OS client mengirim pesan ke OS server
4.  OS server memberikan pesan ke server stub
5.  Server stub meng-unpack parameter-parameter untuk memanggil server
6.  Server mengerjakan operasi, dan mengembalikan hasilnya ke server stub
7.  Server stub mem-pack hasil tsb dan memanggil OS server
8.  OS server mengirim pesan (hasil) ke OS client
9.  OS client memberikan pesan tersebut ke client stub
10.  Client stub meng-unpack hasil dan mengembalikan hasil tersebut ke
client
Fitur dalam RPC
  • Batching Calls:Fitur Batching calls mengijinkan klien untuk mengirim message calls ke server dalam jumlah besar secara sequence ( berurutan )
  • Broadcasting Call:Fitur Broadcasting mengijinkan klien untuk mengirimkan paket data kejaringan dan menunggu balasan dari network. FItur ini menggunakanprotokol yang berbasiskan paket data seperti UDP/IP sebagai mediumnya.Broadcast RPC membutuhkan layanan port mapper RPC untukmengimplementasikanfung sinyA
  • Callback ProcedureS:Fitur Callback Procedures mengijinkan server untuk bertindak sebagai
  • Menggunakan select SubrutiN:Fitur ini akan memeriksa deskripsi dari suatu file dan messages dalamantrian untuk melihat apakah mereka siap untuk dibaca (diterima) atauditulis (dikirim), atau mereka dalam kondisi ditahan sementara. Prosedurini mengijinkan server untuk menginterupsi suatu aktivitas, memeriksadatanya, dan kemudian melanjutkan proses aktivitas tersebut.

Object Remote
Meskipun teknologi RPC ini relatif sudah memberikan kenyamanan bagi developer, tapi perkembangan yang terjadi di bidang pemrograman berorientasi objek akhirnya menuntut kehadiran teknologi baru. Sederet teknologi akhirnya benar-benar muncul, antara lain;RMI (Remote Method Invocation),CORBA(Common Object Request Broker Architecture), dan SOAP (Simple Object Access Protocol).

SUMBER:





























Minggu, 11 Maret 2012

Definisi dan Contoh Sistem Distribusi


1. Pengertian Distribusi
Anda pasti pernah melihat seseorang yang memikul barang tertentu untuk ditawarkan kepada pembeli, contoh seperti tukang sayur, tukang bakso. Kegiatan yang dilakukan oleh orang-orang tersebut merupakan kegiatan distribusi.
Distribusi artinya proses yang menunjukkan penyaluran barang dari produsen sampai ke tangan masyarakat konsumen. Produsen artinya orang yang melakukan kegiatan produksi. Konsumen artinya orang yang menggunakan atau memakai barang/jasa dan orang yang melakukan kegiatan distribusi disebut distributor.
Distribusi merupakan kegiatan ekonomi yang menjembatani kegiatan produksi dan konsumsi. Berkat distribusi barang dan jasa dapat sampai ke tangan konsumen. Dengan demikian kegunaan dari barang dan jasa akan lebih meningkat setelah dapat dikonsumsi.
Dari apa yang baru saja diuraikan, tampaklah bahwa distribusi turut serta meningkatkan kegunaan menurut tempatnya (place utility) dan menurut waktunya (time utility).
a. Sistem distribusi jalan pendek atau langsung
Adalah sistem distribusi yang tidak menggunakan saluran distribusi. Contoh distribusi sistem ini adalah penyaluran hasil pertanian oleh petani ke pasar langsung.
Bagan sistem distribusi ini sebagai berikut.

b. Sistem distribusi jalan panjang atau tidak langsung
Adalah sistem distribusi yang menggunakan saluran distribusi dalam kegiatan distribusinya biasanya melalui agen. Contoh: motor, mobil, TV.
Bagan sistem distribusi tidak langsung.

 

Sumber: www.dikmenum.go.id




Definsi sistem terdistribusi adalah :
  • sebuah sistem dimana komponen hardware atau software-nya terletak dalam suatu jaringan komputer dan saling berkomunikasi dan berkoordinasi mengunakan message pasing.
  • sebuah sistem yang terdiri dari kumpulan dua atau lebih komputer dan memiliki koordinasi proses melalui pertukaran pesan synchronous atau asynchronous.
  • kumpulan komputer independent yang tampak oleh user sebagai satu sistem komputer
  • kumpulan komputer autonom yang dihubungkan oleh jaringan dengan software yang dirancang untuk menghasilkan fasilitas komputasi terintegrasi

dapat terlihat dari bebarapa pengertian diatas dapat di tarik kesimpulan bahwa sistem terdistribusi adalah sebuah sistem yang terdiri dari beberapa komponen software atau hardware yang independent yang berkomunikasi dan berkoordinasi melalui message parsing baek sinkron maupun asinkron yang telihat satu kesatuan dan dirancang untuk menghasilkan fasilitas komputasi terintegrasi.

contoh dari sistem terdistribusi adalah
  • Internet, global jaringan interkoneksi computer yang berkomunikasi melalui IP (Internet Protocol) Protocol.
  • Intranet, jaringan teradministrasi terpisah dengan batasan pada kebijakan keamanan local.
  • Mobile dan komputasi diberbagai tempat, laptops, PDA, mobile phone,printers, peraltan rumah, dll.
  • World Wide Web (www), sistem untuk publikasi dan akses sumber daya dan layanan melalui Internet.
  • workstation network.
  • automatic banking (mesin teler) system.
  • automotive system(sistem distribusi real-time).
Sumber : http://ahmadqusyairi.blogspot.com/2010/02/defini-dan-contoh-sistem-terdistribusi.html


Definisi Sitem Terdistribusi Sistem distribusi adalah sebuah sistem yang komponennya berada pada jaringan komputer. Komponen tersebut saling berkomunikasi dan melakukan koordinasi hanya dengan pengiriman pesan (message passing).
Sistem terdistribusi merupakan kebalikan dari Sistem Operasi Prosesor Jamak. Pada sistem tersebut, setiap prosesor memiliki memori lokal tersendiri. Kumpulan prosesornya saling berinteraksi melalui saluran komunikasi seperti LAN dan WAN menggunakan protokol standar seperti TCP/IP. Karena saling berkomunikasi, kumpulan prosesor tersebut mampu saling berbagi beban kerja, data, serta sumber daya lainnya.
Sistem terdistribusi dapat dikatakan sebagai suatu keberadaan beberapa komputer yang bersifat transparan dan secara normal, setiap sistem terdistribusi mengandalkan layanan yang disediakan oleh jaringan komputer.


Beberapa contoh dari sistem terdistribusi yaitu :
1. Internet, merupakan suatu bentuk jaringan global yang menghubungkan komputer dengan 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. Sistem terdistribusi multimedia Biasanya digunakan pada infrastruktur internet
- Karakteristik
Sumber data yang heterogen dan memerlukan sinkronisasi secara real time
- Video, audio, text Multicast
Contoh:
- Teleteaching tools (mbone-based, etc.)
- Video-conferencing
- Video and audio on demand
4. 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

5. World wide web
-  Arsitektur client/server tebuka yang diterapkan di atas infrastruktur internet
-  Shared resources (melalui URL)
6. Contoh distribusi yang lainnya seperti
 - Sistem telepon seperti ISDN, PSTN
 - Manajemen jaringan seperti Administrasi sesumber jaringan
 - Network File System (NFS) seperti Arsitektur untuk mengakses sistem file melalui jaringan.

Sumber : http://contohskripsiku.com/pdf/pengertian+sistem+distribusi