Selasa, 10 Mei 2016

Parallel Computing



Parallel computing adalah pengunaan lebih dari satu CPU untuk menjalankan sebuah program secara simultan. Idealnya, parallel processing membuat program berjalan lebih cepat karena semakin banyak CPU yang digunakan. Tetapi dalam praktek seringkali sulit membagi program sehingga dapat dieksekusi oleh CP yang berbeda-beda tanpa berkaitan diantaranya. Maksudnya program dijalankan dengan banyak CPU secara bersamaan dengan tujuan untuk membuat program yang lebih baik dan dapat diproses cepat. Dapat diambil kesimpulan bahwa parallel processing berbeda dengan istilah multitasking, yaitu satu CPU menangani atau mengeksekusi beberapa program sekaligus, parallel processing dapat disebut sebagai istilah parallel computing.
            Pada dasarnya, program komputer didesain dengan menggunakan sebuah cara di mana tidak memungkinkan parallel computing, yaitu dengan menyelesaikan setiap langkah dalam satu waktu. Untuk program yang melakukan proses dengan cara ini (parallel computing), maka program tersebut didesain untuk dapat membagi task ke dalam task-task yang lebih kecil yang dapat dikerjakan secara individual.


       Keuntungan utama parallel computing adalah program dapat melakukan eksekusi secara lebih cepat. Jika hardware komputer yang mengeksekusi sebuah program yang menggunakan parallel computing memiliki arsitekturnya, seperti pad processor(CPU/Central Processing Unit), parallel computing dapat menjadi sebuah teknik yang efisien.
        Komputasi paralel membutuhan:
  1. Algoritma
  2. Bahasa pemrograman
  3. Compiler

     Sumber daya komputer(computer resource) dapat terdiri dari sebuah komputer dengan beberapa processor atau bebarapa komputer yang terhubung oleh sebuah jaringan ataupun kombinasi antara keduanya. Processor mengakses data melalui shared memory. Beberapa super computer parallel processing system memiliki ratusan bahkan ribuan microprocessor.

Minggu, 17 April 2016

File service terdistribusi

Selasa, 12 April 2016

Cloud Computing

Cloud Computing


A. Sejarah Cloud Computing


            Cloud computing dalah sejarahnya mungkin bukanlah hal baru. Beberapa contoh dari sejarah membuktikan bahwa telah berkembang konsep pembuatan kerangka kerja komputasi secara online tersebut sebagai berikut:
  • Sebuah portal internet yang memiliki berbagai fasilitas layanan umum (baca: aplikasi) mulai dari surat elektronik(e-mail), forum diskusi (baca: web forum) sampai dengan penyimpanan dokumen dengan media penyimpanan yang sangat luas (bahkan ada beberapa yang menyediakan dalam kapasitas tanpa batas/unlimited storage space) - sampai pada mekanisme berbagi dokumen (baca : file sharing), layanan blog dsb. Kesemuanya disediakan dalam sebuah tempat.
  • Layanan Software as a Service atau SaaS dari berbagai vendor teknologi informasi terkemuka mulai dari layanan pemindaian virus secara online hingga layanan pemindaian spm, dsb.
  • Layanan Speedy Wikki ini secara sederhana dapat dirujuk sebagai dasar-dasar Cloud Computing dalam artian fasilitas Speedy Wikki ini dapat diakses dan dipergunakan secara bersamaan untuk berkolaborasi dalam menyusun dokumentasi yang sangat kompleks.

        Cloud computing dapat berkembang disebabkan oleh segi “kemudahan” penggunaan dimana pengguna akhir dengan “cukup relatif” mudah menggunakan media LAN atau internet melalui browser untuk mengakses dan berkolaborasi secara bersamaan tanpa melalui proses yang “cukup” rumit. Contoh:
  • Virtualization
  • Ubuntu Enterprise Cloud(UEC)
  • Proxmox
  • OpenStack
  • OpenNebula
  • Eucalyptus
  • Eucalyptus: Web Cloud Controller
  • Amazon Web Service
  • Elastic Fox
  • Euca 2ools
  • Cloudmin
  • virtualmin
  • numbusproject.org
Secara umum, definisi cloud computing (komputasi awan) merupakan gabungan pemanfaatan teknologi komputer (komputasi) dalam suatu jaringan dengan pengembangan berbasis internet (awan) yang mempunyai fungsi untuk menjalankan program atau aplikasi melalui komputer – komputer yang terkoneksi pada waktu yang sama, tetapi tak semua yang terkonekasi melalui internet menggunakan cloud computing.
Teknologi komputer berbasis sistem Cloud ini merupakan sebuah teknologi yang menjadikan internet sebagai pusat server untuk mengelola data dan juga aplikasi pengguna. Teknologi ini mengizinkan para pengguna untuk menjalankan program tanpa instalasi dan mengizinkan pengguna untuk mengakses data pribadi mereka melalui komputer dengan akses internet.


Manfaat Cloud Computing Serta Penerapan Dalam Kehidupan Sehari – hari
        Setelah penjabaran definisi singkat diatas tentu penggunaan teknologi dengan sistem cloud cukup memudahkan pengguna selain dalam hal efisiensi data, juga penghematan biaya. Berikut manfaat manfaat yang dapat dipetik lewat teknologi berbasis sistem cloud.

1. Semua Data Tersimpan di Server Secara Terpusat
Salah satu keunggulan teknologi cloud adalah memungkinkan pengguna untuk menyimpan data secara terpusat di satu server berdasarkan layanan yang disediakan oleh penyedia layanan Cloud Computing itu sendiri. Selain itu, pengguna juga tak perlu repot repot lagi menyediakan infrastruktur seperti data center, media penyimpanan/storage dll karena semua telah tersedia secara virtual.

2. Keamanan Data
Keamanan data pengguna dapat disimpan dengan aman lewat server yang disediakan oleh penyedia layanan Cloud Computing seperti jaminan platform teknologi, jaminan ISO, data pribadi, dll.
3. Fleksibilitas dan Skalabilitas yang Tinggi
Teknologi Cloud menawarkan fleksibilitas dengan kemudahan data akses, kapan dan dimanapun kita berada dengan catatan bahwa pengguna (user) terkoneksi dengan internet. Selain itu, pengguna dapat dengan mudah meningkatkan atau mengurangi kapasitas penyimpanan data tanpa perlu membeli peralatan tambahan seperti hardisk. Bahkan salah satu praktisi IT kenamaan dunia, mendiang Steve Jobs mengatakan bahwa membeli memori fisik untuk menyimpan data seperti hardisk merupakan hal yang percuma jika kita dapat menyimpan nya secara virtual/melalui internet.
4. Investasi Jangka Panjang
Penghematan biaya akan pembelian inventaris seperti infrastruktur, hardisk, dll akan berkurang dikarenakan pengguna akan dikenakan biaya kompensasi rutin per bulan sesuai dengan paket layanan yang telah disepakati dengan penyedia layanan Cloud Computing. Biaya royalti atas lisensi software juga bisa dikurangi karena semua telah dijalankan lewat komputasi berbasis Cloud.
Penerapan Cloud Computing telah dilakukan oleh beberapa perusahaan IT ternama dunia seperti Google lewat aplikasi Google Drive, IBM lewat Blue Cord Initiative, Microsoft melalui sistem operasi nya yang berbasis Cloud Computing, Windows Azure dsb. Di kancah nasional sendiri penerapan teknologi Cloud juga dapat dilihat melalui penggunaan Point of Sale/program kasir.
Salah satu perusahaan yang mengembangkan produknya berbasis dengan sistem Cloud adalah DealPOS. Metode kerja Point of Sale (POS) ini adalah dengan mendistribusikan data penjualan toko retail yang telah diinput oleh kasir ke pemilik toko retail melalui internet dimanapun pemilik toko berada.  Selain itu, perusahaan telekomunikasi ternama nasional, Telkom juga turut mengembangkan sistem komputasi berbasis Cloud ini melalui Telkom Cloud dengan program Telkom VPS dan Telkom Collaboration yang diarahkan untuk pelanggan UKM (Usaha Kecil-Menengah).


Cara Kerja Sistem Cloud Computing
Sistem Cloud bekerja menggunakan internet sebagai server dalam mengolah data. Sistem ini memungkinkan pengguna untuk login ke internet yang tersambung ke program untuk menjalankan aplikasi yang dibutuhkan tanpa melakukan instalasi. Infrastruktur seperti media penyimpanan data dan juga instruksi/perintah dari pengguna disimpan secara virtual melalui jaringan internet kemudian perintah – perintah tersebut dilanjutkan ke server aplikasi. Setelah perintah diterima di server aplikasi kemudian data diproses dan pada proses final pengguna akan disajikan dengan halaman yang telah diperbaharui sesuai dengan instruksi yang diterima sebelumnya sehingga konsumen dapat merasakan manfaatnya.
Contohnya lewat penggunaan email seperti Yahoo ataupun Gmail. Data di beberapa server diintegrasikan secara global tanpa harus mendownload software untuk menggunakannya. Pengguna hanya memerlukan koneksi internet dan semua data dikelola langsung oleh Yahoo dan juga Google. Software dan juga memori atas data pengguna tidak berada di komputer tetapi terintegrasi secara langsung melalui sistem Cloud menggunakan komputer yang terhubung ke internet.






Sumber: 
  1. Pengertian, Manfaat, Cara Kerja dan Contoh Cloud Computing 
  2. http://ayu1023088.blogspot.co.id/2011/08/cloud-computing.html




Rabu, 16 Maret 2016

Komputasi Modern


Komputasi merupakan ilmu yang mempelajari tentang cara-cara untuk memecahkan suatu masalah terhadap data input dengan sebuah algoritma, data input disini adalah sebuah masukan yang berasal dari luar lingkungan sistem. Komputasi Modern merupakan sebuah sistem yang akan menyelesaikan masalah matematis menggunakan komputer dengan cara menyusun algoritma yang dapat dimengerti oleh komputer yang berguna untuk menyelesaikan suatu masalah.
Komputasi modern bisa disebut sebuah konsep sistem yang menerima intruksi-intruksi dan menyimpannya dalam sebuah memory, memory disini bisa juga dari memory komputer. Oleh karena pada saat ini kita melakukan komputasi menggunakan komputer maka bisa dibilang komputer merupakan sebuah komputasi modern. Dalam kerjanya komputasi modern menghitung dan mencari solusi dari masalah yang ada, dan perhitungan yang dilakukan itu meliputi:
  • Akurasi (big, Floating point)
  • Kecepatan (dalam satuan Hz)
  • ProblemVolume Besar (Down Sizzing atau pararel)
  • Modelling (NN & GA)
  • Kompleksitas (Menggunakan Teori big O)


A.   Sejarah Komputasi Modern
        Awal mula dari komputasi adalah adanya perhitungan-perhitungan angka yang dilakukan manusia. Manusia telah mengenal angka dan perhitungan sejak berabad-abad yang lalu. Bangsa romawi pun telah dapat menghitung sistem kalender dan rasi bintang. Seiring dengan perkembangan zaman manusia pun melakukan perhitungan-perhitungan yang lebih kompleks. Otak manusia juga mengalami keterbatasan dalam menghitung angka yang jumlahnya bisa berdigit-digit, kemudian diciptakan alat sempoa untuk menghitung, kemudian dikembangkan menjadi kalkulator, Karena semakin berkembangnya alat dan kebutuhan semakin banyak pula data-data yang ingin dihitung, dan mulailah ide pembuatan untuk membuat komputer sebagai alat hitung dengan konsep komputasi modern. Tidak hanya itu, komputer yang diciptakan hingga sekarang ini bukan menjadi sebuah alat yang digunakan untuk menghitung, tapi juga bisa menyimpan, mengedit dan mengolah kata serta masih banyak lagi kegunaan dan kelebihan yang dimiliki oleh komputer.
        Sejarah perkembangan komputasi modern dimulai dari seseorang ilmuan yang ternama dari hungaria bernama John Von Neumann (1903-1957). Von Neumann seorang ilmuan yang belajar dari Berlin dan Zurich dan mendapatkan diploma pada bidang teknik kimia pada tahun 1926. Pada tahun yang sama dia mendapatkan gelar doktor pada bidang matematika dari Universitas Budapest. Berkat keahlian dan kepiawaiannya Von Neumann dalam bidang teori game yang melahirkan konsep seluler automata, teknologi bom atom di Los Alamos pada Perang Dunia II , dan komputasi modern yang kemudian melahirkan komputer. 



        Kegeniusannya dalam matematika telah terlihat semenjak kecil dengan mampu melakukan pembagian bilangan delapan digit (angka) di dalam kepalanya. Setelah mengajar di Berlin dan Hamburg, Von Neumann pindah ke Amerika pada tahun 1930 dan bekerja di Universitas Princeton serta menjadi salah satu pendiri Institute for Advanced Studies. Dipicu ketertarikannya pada hidrodinamika dan kesulitan penyelesaian persamaan diferensial parsial nonlinier yang digunakan, Von Neumann kemudian beralih dalam bidang komputasi. Sebagai konsultan pada pengembangan ENIAC, dia merancang konsep arsitektur komputer yang masih dipakai sampai sekarang. Arsitektur Von Nuemann adalah komputer dengan program yang tersimpan (program dan data disimpan pada memori) dengan pengendali pusat, I/O, dan memori. berdasarkan beberapa definisi di atas, maka komputasi modern dapat diartikan sebagai suatu pemecahan masalah berdasarkan suatu inputan dengan menggunakan algoritma dimana penerapannya menggunakan berbagai teknologi yang telah berkembang seperti komputer.

Contoh Komputasi Modern sampai dengan lahirnya ENIAC :
·         Konrad Zuse’s electromechanical “Z mesin”.Z3 (1941) sebuah mesin pertama menampilkan biner aritmatika, termasuk aritmatika floating point dan ukuran programmability. Pada tahun 1998, Z3 operasional pertama di dunia komputer itu di anggap sebagai Turing lengkap.
·         Berikutnya Non-programmable Atanasoff-Berry Computer yang di temukan pada tahun 1941 alat ini menggunakan tabung hampa berdasarkan perhitungan, angka biner, dan regeneratif memori kapasitor.Penggunaan memori regeneratif diperbolehkan untuk menjadi jauh lebih seragam (berukuran meja besar atau meja kerja).
·         Selanjutnya komputer Colossus ditemukan pada tahun 1943, berkemampuan untuk membatasi kemampuan program pada alat ini menunjukkan bahwa perangkat menggunakan ribuan tabung dapat digunakan lebih baik dan elektronik reprogrammable.Komputer ini digunakan untuk memecahkan kode perang Jerman.
·         The Harvard Mark I ditemukan pada 1944, mempunyai skala besar, merupakan komputer elektromekanis dengan programmability terbatas.
·         Lalu lahirlah US Army’s Ballistic Research Laboratory ENIAC ditemukan pada tahun 1946, komputer ini digunakan unutk menghitung desimal aritmatika dan biasanya disebut sebagai tujuan umum pertama komputer elektronik (ENIAC merupaka generasi yang sudah sangat berkembang di zamannya sejak komputer pertama Konrad Zuse ’s Z3 yang ditemukan padatahun 1941).

B.   Karakteristik Komputasi Modern
Komputer-komputer penyedia sumber daya bersifat heterogenous karena terdiri dari berbagai jenis perangkat keras, sistem operasi, serta aplikasi yang terpasang.
Komputer-komputer terhubung ke jaringan yang luas dengan kapasitas bandwidth yang beragam.
Komputer maupun jaringan tidak terdedikasi, bisa hidup atau mati sewaktu-waktu tanpa jadwal yang jelas.

C.   Jenis-jenis komputasi modern
 1.   Mobile computing
Mobile computing atau komputasi bergerak merupakan kemajuan teknologi komputer sehingga dapat berkomunikasi menggunakan jaringan tanpa menggunakan kabel dan mudah dibawa atau berpindah tempat, tetapi berbeda dengan komputasi nirkabel. Contoh dari perangkat komputasi bergerak seperti GPS.
Beberapa keterbatasan dan resiko dari mobile computing:
·         Kurangnya Bandwith Akses internet pada peralatan ini umumnya lebih lambat dibandingkan dengan koneksi kabel.
·         Gangguan Transmisi Banyak faktor yang bisa menyebabkan gangguan sinyal pada mobile computing seperti cuaca, medan dan jarak alat mobile computing dengan titik pemancar sinyal terdekat.

 2.   Grid computing
Grid computing komputasi grid menggunakan komputer yang terpisah oleh geografis, didistibusikan dan terhubung oleh jaringan untuk menyelasaikan masalah komputasi skala besar.
Beberapa daftar yang dapat digunakan untuk mengenali sistem komputasi grid, adalah :
·         Sistem untuk koordinat sumber daya komputasi tidak dibawah kendali pusat.
·         Sistem menggunakan standard dan protocol yang terbuka.
·         Sistem mencoba mencapai kualitas pelayanan yang canggih, yang lebih baik diatas kualitas komponen individu pelayanan komputasi grid.

 3.    Cloud computing
Cloud computing Komputasi cloud merupakan gaya komputasi yang terukur dinamis dan sumber daya virtual yang sering menyediakan layanan melalui internet. Komputasi cloud menggambarkan pelengkap baru, konsumsi dan layanan IT berbasis model dalam internet, dan biasanya melibatkan ketentuan dari keterukuran dinamis dan sumber daya virtual yang sering menyediakan layanan melalui internet.
Adapun perbedaan antara komputasi mobile, komputasi grid dan komputasi cloud, dapat dilihat penjelasannya dibawah ini :
·         Komputasi mobile menggunakan teknologi komputer yang bekerja seperti handphone, sedangkan komputasi grid dan cloud menggunakan komputer.
·         Biaya untuk tenaga komputasi mobile lebih mahal dibandingkan dengan komputasi grid dan cloud.
·         Komputasi mobile tidak membutuhkan tempat dan mudah dibawa kemana-mana, sedangkan grid dan cloud membutuhkan tempat yang khusus.
·         Untuk komputasi mobile proses tergantung si pengguna, komputasi grid proses tergantung pengguna mendapatkan server atau tidak, dan komputasi cloud prosesnya membutuhkan jaringan internet sebagai penghubungnya.

 D.   Dampak adanya komputasi modern
Salah satu dampak dari adanya komputasi modern adalah dapat membantu manusia untuk menyelesaikan masalah-masalah yang kompleks dengan menggunakan computer. Salah satu contohnya adalah biometric. Biometric berasal dari kata Bio dan Metric. Kata bio diambil dari bahasa yunani kuno yang berarti Hidup sedangkan Metric juga berasal dari bahasa yunani kuno yang berarti ukuran, jadi jika disimpulkan biometric berarti pengukuran hidup. Tapi secara garis besar biometric merupakan pengukuran dari statistic analisa data biologi yang mengacu pada teknologi untuk menganalisa karakteristik suatu tubuh(individu). Dari penjelasan tersebut sudah jelas bahwa Biometric menggambarkan pendeteksian dan pengklasifikasian dari atribut fisik. Terdapat banyak teknik biometric yang berbeda, diantaranya:
  • Pembacaan sidik jari / telapak tangan
  • Geometri tangan
  • Pembacaan retina / iris
  • Pengenalan suara
  • Dinamika tanda tangan.


Kesimpulan
Komputasi modern sangat membantu manusia untuk menyelesaikan masalah-masalah yang kompleks dengan menggunakan komputer untuk memenuhi kebutuhan, tidak hanya menghitung tapi dalam hal program dan jaringan yang dapat diselesaikan dengan cepat dan komputasi modern juga memudahkan perkembangan teknologi modern dengan pesat.


Referensi :
http://id.wikipedia.org/wiki/Komputasi
http://belajar-pemrograman2.blogspot.com/2013/03/komputasi-modern.html
http://cichaputri.blogspot.co.id/2015/03/komputasi-modern.html
http://khresnapurnama.blogspot.com/2013/03/pengertian-jenis-dan-contoh-komputasi.html
http://upload.wikimedia.org/wikipedia/commons/5/5e/JohnvonNeumann-LosAlamos.gif
http://cakrawalamaya.blogspot.com/2013/03/komputasi-modern.html


Senin, 14 Maret 2016

Mekanisme RPC

Mekanisme Remote Procedure Call(RPC)

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.

Otentifikasi RPC
·         Otentifikasi adalah proses yang digunakan untuk mengidentifikasi server dan klien pada RPC.
·         Bagian-bagian otentifikasi RPC, yaitu :
1.      Protokol Otentifikasi RPC
2.      Otentifikasi NULL
Digunakan pada sistem dimana pemanggil RPC tidak mengetahui identitasnya sendiri dan server tidak membutuhkan identitas pemanggil
3.      Otentifikasi UNI
Digunakan pada prosedur remote dalam sistem UNIX
4.      Otentifikasi Data Encryption Standard
Membutuhkan keyserv daemon yang harus berjalan baik di sisi server maupun klien.
5.      Protokol Otentifikasi DES
Meliputi protokol penanganan DES pada proses otentifikasi RPC.
6.      Enkripsi Diffie-Hellman
Digunakan pada pembuatan kunci publik pada otentifikasi DES dengan 192-bit kunci.
·         RPC tidak berhubungan dengan kontrol akses terhadap layanan individual yang diberikan.
·         Subsistem otentifikasi pada paket RPC bersifat open-ended, yaitu beberapa otentifikasi dapatdiasosiasikan pada RPC klien

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.

Bahasa RPC
·         Merupakan bahasa yang dikembangkan dari bahasa XDR dengan penambahan program definisi.
·         Implementasi layanan protokol dan rutin menggunakan command rpcgen, yang bekorespondensi denga bahasa C. 
Definisi dari bahasa RPC, yaitu :
1.      Definition
File dengan bahasa RPC memiliki beberapa definisi, diantaranya adalah : enum, struct, union, typedef, const, dan program.
2.      Structure
Struktur pada bahasa RPC dideklarasikan seperti pada pendeklarasian struktur dalam bahasa C.
3.      Union
Union pada bahasa RPC berbeda dengan bahasa C. Kemiripan lebih ditunjukkan dengan variasi pada bahasa Pascal
4.      Enumeration
Enumerasi pada bahasa ini memiliki syntax yang sama dengan bahasa C. 
5.      TypeDef
Tipe Definisi ( Typedef ) pada bahasa ini memiliki syntax yang sama dengan typedef pada bahasa C.
6.      Constant
Constant pada bahasa ini dapat digunakan jika variabel integer konstant dibutuhkan.
7.      Programs
Program RPC dideklarasikan dengan syntax berikut secara berurutan : programdefiniton, version-list, version, procedure-list, procedure.
8.      Declarations
Dalam bahasa  ini, terdapat  empat  jenis  tipe deklarasi  yaitu  :  simple declarations,  fixed length array declarations,  variable- length declaration, dan pointer declaration.


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

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.


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

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:
http://www.scribd.com/doc/21262194/Remote-Procedure-Call
http://www.scribd.com/doc/3389539/Tugas-Mk-Istem-Terdistribusi-Makalah-RPC
http://tyassyiin.blogspot.co.id/p/remote-procedure-call-rpc.html
http://alandalhaq.blogspot.co.id/2012/03/remote-procedure-call-rpc.html


Model OSI

MODEL JARINGAN 7 OSI LAYER

Model Open Systems Interconnection (OSI) diciptakan oleh International Organization for Standardization (ISO) yang menyediakan kerangka logika terstruktur bagaimana proses komunikasi data berinteraksi melalui jaringan. Standard ini dikembangkan untuk industri komputer agar komputer dapat berkomunikasi pada jaringan yang berbeda secara efisien.
Model OSI terbagi atas 7 layer, dan layer kedua juga memiliki sejumlah sub-layer(dibagi oleh Institute of Electrical and Electronic Engineers(IEEE)). Perhatikan tabel berikut:


Terdapat 7 layer pada model OSI. Setiap layer bertanggungjawwab secara khusus pada proses komunikasi data. Misal, satu layer bertanggungjawab untuk membentuk koneksi antar perangkat, sementara layer lainnya bertanggungjawab untuk mengoreksi terjadinya “error” selama proses transfer data berlangsung.
Model Layer OSI dibagi dalam dua group: “upper layer” dan “lower layer”. “Upper layer” fokus pada applikasi pengguna dan bagaimana file direpresentasikan di komputer. Untuk Network Engineer, bagian utama yang menjadi perhatiannya adalah pada “lower layer”. Lower layer adalah intisari komunikasi data melalui jaringan aktual.

FUNGSI 7 OSI LAYER
1. Layer Physical
Ini adalah layer yang paling sederhana; berkaitan dengan electrical (dan optical) koneksi antar peralatan. Data biner dikodekan dalam bentuk yang dapat ditransmisi melalui media jaringan, sebagai contoh kabel, transceiver dan konektor yang berkaitan dengan layer Physical. Peralatan seperti repeater, hub dan network card adalah berada pada layer ini.

2. Layer Data-link
Layer ini sedikit lebih “cerdas” dibandingkan dengan layer physical, karena menyediakan transfer data yang lebih nyata. Sebagai penghubung antara media network dan layer protocol yang lebih high-level, layer data link bertanggung-jawab pada paket akhir dari data binari yang berasal dari level yang lebih tinggi ke paket diskrit sebelum ke layer physical. Akan mengirimkan frame (blok dari data) melalui suatu network. Ethernet (802.2 & 802.3), Tokenbus (802.4) dan Tokenring (802.5) adalah protocol pada layer Data-link.

3. Layer Network
Tugas utama dari layer network adalah menyediakan fungsi routing sehingga paket dapat dikirim keluar dari segment network lokal ke suatu tujuan yang berada pada suatu network lain. IP, Internet Protocol, umumnya digunakan untuk tugas ini. Protocol lainnya seperti IPX, Internet Packet eXchange. Perusahaan Novell telah memprogram protokol menjadi beberapa, seperti SPX (Sequence Packet Exchange) & NCP (Netware Core Protocol). Protokol ini telah dimasukkan ke sistem operasi Netware. Beberapa fungsi yang mungkin dilakukan oleh Layer Network:
·         Membagi aliran data biner ke paket diskrit dengan panjang tertentu
·         Mendeteksi Error
·         Memperbaiki error dengan mengirim ulang paket yang rusak
·         Mengendalikan aliran

4. Layer Transport
Layer transport data, menggunakan protocol seperti UDP, TCP dan/atau SPX (Sequence Packet eXchange, yang satu ini digunakan oleh NetWare, tetapi khusus untuk koneksi berorientasi IPX). Layer transport adalah pusat dari mode-OSI. Layer ini menyediakan transfer yang reliable dan transparan antara kedua titik akhir, layer ini juga menyediakan multiplexing, kendali aliran dan pemeriksaan error serta memperbaikinya.

5. Layer Session
Layer Session, sesuai dengan namanya, sering disalah artikan sebagai prosedur logon pada network dan berkaitan dengan keamanan. Layer ini menyediakan layanan ke dua layer diatasnya, Melakukan koordinasi komunikasi antara entiti layer yang diwakilinya. Beberapa protocol pada layer ini: NETBIOS: suatu session interface dan protocol, dikembangkan oleh IBM, yang menyediakan layanan ke layer presentation dan layer application. NETBEUI, (NETBIOS Extended User Interface), suatu pengembangan dari NETBIOS yang digunakan pada produk Microsoft networking, seperti Windows NT dan LAN Manager. ADSP (AppleTalk Data Stream Protocol). PAP (Printer Access Protocol), yang terdapat pada printer Postscript untuk akses pada jaringan AppleTalk.

6. Layer Presentation
Layer presentation dari model OSI melakukan hanya suatu fungsi tunggal: translasi dari berbagai tipe pada syntax sistem. Sebagai contoh, suatu koneksi antara PC dan mainframe membutuhkan konversi dari EBCDIC character-encoding format ke ASCII dan banyak faktor yang perlu dipertimbangkan. Kompresi data (dan enkripsi yang mungkin) ditangani oleh layer ini.

7. Layer Application

Layer ini adalah yang paling “cerdas”, gateway berada pada layer ini. Gateway melakukan pekerjaan yang sama seperti sebuah router, tetapi ada perbedaan diantara mereka. Layer Application adalah penghubung utama antara aplikasi yang berjalan pada satu komputer dan resources network yang membutuhkan akses padanya. Layer Application adalah layer dimana user akan beroperasi padanya, protocol seperti FTP, telnet, SMTP, HTTP, POP3 berada pada layer Application.