KATA KATA PENGANTAR PENGA NTAR Puji syukur kami panjatkan kehadirat Allah karena dengan rahmat, karunia, serta tauf taufk k dan dan hida hidaya yahh-Ny Nya a kami kami dapa dapatt meny menyel eles esai aika kan n maka makala lah h tent tentan ang g Sist Sistem em Terdistrib Terdistribusi usi mengenai remote procedure procedure sistem ini dengan baik meskipun banyak kekur ekuran anga gan n dida didala lamn mnya ya.. Dan Dan juga juga kami kami bert berter erim ima a kasi kasih h pada pada apa apak k Ag Agun ung g !icaksono S.kom selaku Dosen mata kuliah Sistem Terdistribusi "#P yang telah member memberik ikan an tugas tugas ini kepada epada kami. kami. $ami $ami sangat sangat berhar berharap ap makala makalah h ini ini dapat dapat berguna berguna dalam rangka rangka menambah menambah %a%asan %a%asan serta serta pengetahu pengetahuan an kita mengenai mengenai remot remote e proce procedur dure e sis sistem tem.. $ami $ami juga juga menyad menyadar arii sepenu sepenuhny hnya a bah%a bah%a di dalam dalam makalah ini terdapat kekurangan dan jauh dari kata sempurna. &leh sebab itu, kami berharap adanya kritik, saran dan usulan demi perbaikan makalah yang telah kami buat di masa yang akan datang, mengingat tidak ada sesuatu yang sempurna tanpa saran
yang
membangun.
'
DAFTAR ISI $ATA P(N)ANTA*........................................................................................... ' DA+TA* S...................................................................................................... A P(NDA"/"AN...................................................................................... 0 '. /atar elakang..................................................................................... 0 . Tujuan.................................................................................................. 0 A P(#AASAN....................................................................................... 1 '. . 0. 1.
*P2......................................................................................................1 *#....................................................................................................... 3 2&*A.................................................................................................. 4 S&AP.................................................................................................... 4
A P(N"T"P.......................................................................................... '' '. $(S#P"/AN...........................................................................'' DA+TA* P"STA$A..........................................................................................'
BAB I PENDAHULUAN 1. Latar Belakang Perkembangan
pesat
teknologi
in5ormasi
menyebabkan
bertambahnya
permintaan suatu sistem, baik berupa perangkat keras maupun perangkat lunak yang
dapat
digunakan
dengan
baik
dan
cepat.
Permintaan yang terus bertambah ini tidak sebanding dengan kemampuan perangkat keras yang ada. Salah satu cara untuk mengatasi hal itu dibuat pengembangan di sisi perangkat lunak dengan membuat suatu sistem 6irtual di mana beberapa perangkat keras atau komputer dihubungkan dalam jaringan dan diatur oleh sebuah sistem operasi yang mengatur seluruh proses yang ada pada setiap komputer tersebut sehingga memungkinkan proses berjalan dengan cepat. Sistem operasi yang mengatur proses ini sering disebut sebagai sistem operasi terdistribusi. Sistem operasi terdistribusi ini sekarang menjadi trend, terutama untuk research yang kadang membutuhkan cpu yang sangat cepat untuk melakukan perhitungan yang sangat kompleks. Dalam makalah ini akan dibahas mengenai sistem operasi terdistribusi, terutama untuk mengetahui apa dan bagaimana cara sistem ini bekerja. 2. Tujuan Untuk mengetau! !n"#rma$! mengena!% '. penjelasan tentang *P2 . penjelasan tentang *# 0. penjelasan tentang 2&*A 1. penjelasan tentang S&AP
0
BAB II PE&BAHASAN 1. RP' (Rem#te Pr#)e*ure 'all+ A. De,n!$! RP' Remote
Procedure
Call 7*P28
adalah
sebuah
metode
yang
memungkinkan kita untuk mengakses sebuah prosedur yang berada di komputer lain. "ntuk dapat melakukan ini sebuah server harus menyediakan layanan remote
procedure.
Pendekatan
sebuah server membuka socket , prosedur
yang
disediakan
menghubungi port yang
lalu
oleh
yang
dilakuan
menunggu client
ser6er.
yang
ila client tidak
mana, client bisa
adalah meminta
tahu
harus
me- request kepada
sebuah matchmaker pada sebuah *P2 port yang tetap. Matchmaker akan memberikan port apa yang digunakan oleh prosedur yang diminta client . *P2 adalah suatu protokol yang menyediakan suatu mekanisme komunikasi antar proses yang mengijinkan suatu program untuk berjalan pada suatu komputer tanpa terasa adanya eksekusi kode pada sistem yang jauh 7 remote system 8.Protokol *P2 digunakan untuk membangun aplikasi klien-ser6er yang terdistribusi. B. 'ara Kerja RP' Tiap prosedur yang dipanggil dalam *P2, maka proses ini harus berkoneksi dengan ser6er remote dengan mengirimkan semua parameter yang dibutuhkan, menunggu balasan dari ser6er dan melakukan proses kemudian selesai. Proses di atas disebut juga dengan stub pada sisi klien. Sedangkan Stub pada sisi ser6er adalah proses menunggu tiap message yang berisi permintaan mengenai prosedur tertentu.
1
Diagram diatas memberikan gambaran mengenai 9o% dari eksekusi dalam proses *P2. erikut ini adalah diagram yang akan menjelaskan secara rinci mengenai proses yang terjadipada klien dan ser6er dalam eksekusi suatu prosedur *P2 : '. $lien memanggil prosedur stub lokal. Prosedur Stub akan memberikan parameter dalam suatu paket yang akan dikirim ke jaringan. Proses ini disebut sebagai marshalling. . +ungsi Net%ork pada &;S 7&perating system < Sistem &perasi8 akan dipanggil oleh stub untuk mengirim suatu me ssage. 0. $emudian $ernel ini akan mengirim message ke sistem remote. $ondisi ini dapat berupa connectionless atau connection-oriented. 1. Stub pada sisi ser6er akan melakukan proses unmarshals pada paket yang dikirim pada net%ork. =. Stub pada ser6er kemudian mengeksekusi prosedur panggilan lokal. 3. >ika eksekusi prosedur ini telah selesai, maka eksekusi diberikan kembali ke stub pada ser6er. ?. Stub ser6er akan melakukan proses marshals lagi dan mengirimkan message nilai balikan 7 hasilnya 8 kembali ke jaringan. 4. #essage ini akan dikirim kembali ke klien. @. Stub klien akan membaca message ini dengan menggunakan 5ungsi pada jaringan. '. Proses unmarshalled kemudian dilakukan pada message ini dan nilai balikan akan diambil untuk kemudian diproses pada proses lokal. Proses diatas akan dilakukan berulang-ulang 7
rekursi5
8
dalam
pengeksekusian *P2 dalam suatu remote sistem. 2ontoh aplikasi untuk meremote pada teknik *P2 7*emote Procedure 2all8 adalah menggunakan putty untuk melakukan SS.
'. Kele-!an *an Kekurangan a*a RP' a. Kele-!an *elati5 mudah digunakan •
•
Pemanggilan remote procedure tidak jauh berbeda dibandingkan pemanggilan local procedure. Sehingga pemrogram dapat berkonsentrasi pada so5t%are logic, tidak perlu memikirkan lo% le6el details seperti soket, marshalling dan unmarshalling.
•
*obust 7Sempurna8
=
•
Sejak th '@4-an *P2 telah banyak digunakan dalam pengembangan mission-critical application yang memerlukan scalability, 5ault tolerance, dan reliability.
-. Kekurangan •
•
Tidak 9eksibel terhadap perubahan Static relationship bet%een client B ser6er at run-time. •
erdasarkan prosedural;structured programming yang sudah ketinggalan jaman dibandingkan &bject &riented Proggraming
•
$urangnya location transparency •
#isalnya premrogram hanya boleh melakukan pass by 6alue, bukan pass by re5erence.
•
$omunikasi hanya antara ' klien B ' ser6er 7one-to-one at a time8. •
$omunikasi antara ' klien B beberapa ser6er memerlukan beberapa koneksi yang terpisah.
2. R&I (Rem#te &et#* In/#)at!#n+ A. De,n!$! R&I *# adalah sebuah teknik pemanggilan method remote yang lebih secara umum lebih baik daripada *P2. *# menggunakan paradigma pemrograman berorientasi
obyek 7&bject &riented Programming8. *#
memungkinkan kita untuk mengirim obyek sebagai parameter dari remote method. Dengan dibolehkannya program >a6a memanggil method pada remote obyek, *# membuat pengguna dapat mengembangkan aplikasi >a6a yang
terdistribusi
pada
jaringan.
Aplikasi *# sering kali terdiri dari dua program terpisah yaitu ser6er dan client. Aplikasi ser6er semacam ini biasanya membuat beberapa objek remote, menyediakan re5erensi terhadap objek-objek tersebut sehingga dapat diakses, serta menunggu client mengin6oke;memanggil method dari objek-objek remote tersebut. Aplikasi client mendapatkan re5erensi remote ke satu atau lebih objek remote di ser6er dan menjalankan method dari objek tersebut.
*# menyediakan mekanisme dimana ser6er dan client berkomunikasi 3
danmemberikan in5ormasi secara timbal balik. Aplikasi semacam ini seringkali disebut aplikasi objek terdistribusi.
B. 'ara Kerja R&I Dalam model ini, sebuah proses memanggil method dari objek yang terletak pada suatu host;computer remote. Dalam paradigma ini, penyedia layanan menda5tarkan dirinya dengan ser6er direktori pada jaringan. Proses yang menginginkan suatu layanan mengontak ser6er direktori saat runtime, jika layanan tersedia, maka re5erensi ke layanan akan diberikan. Dengan menggunakan re5erensi ini, proses dapat berinteraksi dengan layanan
tsb.
Perbedaannya
Paradigma adalah
ini
objek
ekstensi yang
penting
memberikan
dari
paradigma
layanan
*P2.
dida5tarkan
7diregister8 ke suatu layanan direktori global, sehingga memungkinkan untuk ditemukan dan diakses oleh aplikasi yang meminta layanan tersebut. 2ontoh aplikasi untuk meremote pada teknik *# 7*emote #ethod n6ocation8 menggunakan team6ie%er untuk meremote computer lain. Team6ie%er adalah suatu program yang cukup sederhana dan sangat mudah digunakan untuk beberapa keperluan terutama melakukan akses P2 secara remote melalui internet.
'. Keuntungan *an Kekurangan R&I •
a. Keuntungan% Salahsatu keuntungan *# adalah kemampuan untuk do%nload
Cytecodes
7code8
dari
suatu
objects
class,
jika
class
tsb
tidak
terdefnisikan di E#-nya penerima. Type-type dan metode-metode object 7class8, yang terletak dalam
•
satu E#, dapat dikirim ke E# y ang lain, yang mungkin saja remote. Si5at-si5at object yang terkirim ini tidak berubah sama sekali -. Kerug!an proses pembukaan socket yang kadang-kadang tidak
•
•
dapat
diimplementasikan le%at jaringan internet, tapi hal ini bisa diatasi dengan menggunakan Spring ttpn6oker, sama persis dengan *# tapi le%at protokol TTP.
?
0. 'RBA ('#mm#n -je)t Reue$t Br#ker Ar)!te)ture+ A. De,n!$! 'RBA '#mm#n
-je)t
Reue$t
Ar)!te)ture 7'RBA8 a*ala teknologi heterogeneous computing
yang
dipergunakan
Br#ker untuk
7sistem komputer dengan berbagai macam
lingkungan8. 2&*A pada dasarnya menggunakan arsitektur client-ser6er dimana klien dan ser6er berupa objek. 2&*A
mendukung
apa
yang
disebut
interoperabilitas,
yaitu
kemampuan saling bekerjasama antar sistem computer. Selain itu 2&*A juga dikatakan sebagai suatu sistem yang terbuka, artinya bah%a teknologi 2&*A merupakan sebuah standarisasi yang terbuka bagi siapasaja yang ingin menerapkan. Dengan adanya dua hal tersebut, pengembang dapat membangun sebuah aplikasi yang dapat berkomunikasi %alaupun satu dengan yang lainnya menggunakan bahasa pemrograman yang berbeda.
B. Kele-!an 'RBA •
Programer dapat dengan mudah menulis aplikasi yang mampu
•
bekerja secara independent antar plat5orm dan jaringan #emberikan kemampuan untuk mengintegrasi so5t%are aplikasi yang berbeda,tanpa harus tergantung pada 5asilitas komunikasi
•
tingkat ba%ah ekerja secara baik dengan beberapa midle%are-midle%are yang ada,termasuk
•
microso5t
distributor
sistem7D2
.suport
penggunaan secara statis maupun dinamis #emberikan ekstensi optional untuk area yang tidak bisa dijamah oleh core aplikasi.
3. SAP (S!mle -je)t A))e$$ Pr#t#)#l+ A. De,n!$! SAP S&AP atau sngkatan dari Simple &bject Access Protocol adalah sebuah standarisasi dasar dari protokol komunikasi untuk saling bertukar in5ormasi terstruktur di antara aplikasi-aplikasi yang berjalan. S&AP bisa di sebut juga sebagai aplikasi pesan dari sebuah F#/ yang
4
sangat bergantung pada skema F#/ dan F#/ namespaces untuk mendefnisikannya. S&AP dalam hal ini sangat bergantung pada protokol layer lainnya, seperti pada >#S, TTP, dan *P2 untuk transmisi pesan. S&AP hampir sama dengan dengan protokol F#/*P hanya saja pada S&AP lebih cocok digunakan untuk data kompleks yang dikirim antar client ser6er. Secara konseptual S&AP dapat dianggap sebagai D2
6ersi
F#/.
S&AP
merupakan
mekanisme
lain
yang
memungkinkan penggunaan remote procedure call. S&AP bersi5at netral plat5orm, netral bahasa dan tidak bergantung pada suatu objek model.
Sehingga
S&AP-enabled
distributed
application
dapat
menjangkau beragam operating sistem, dimana terdiri dari objek yang berasal dari 6endor yang berbeda, ditulis pada bahasa yang berbeda, dan didasarkan pada objek model yang be rbeda.
B.
Ar$!tektur SAP Pesan S&AP berbentuk seperti sebuah en6elope yang berisi header 7optional8 dan body 7reGuired8. eader berisi blok in5ormasi yang berhubungan dengan bagaimana pesan tersebut diproses. al ini meliputi
pe-routingan
dan
deli6ery
setting,
authentication
atau
authoriCation assertions, and transaction conteHts. ody berisi pesan sebenarnya yang dikirim dan diproses. Semua yang dapat ditampilkan dengan sintaks F#/ dapat dimasukkan dalam pesan body.
>ika sebuah (n6elope berisi elemen eader, harus berisi tidak lebih dari satu, dan harus tampak pada frst child dari (n6elope, sebelum elemen ody. eader dapat berisi 6alid, %ell-5ormed, dan dibatasi dengan namespace F#/ dimana hendak dimasukkan oleh pencipta pesan S&AP. Setiap elemen yang berada dalam eader disebut blok header. Tujuan dari
blok
header
adalah
untuk
memberitahukan
berhubungan dengan pemrosesan pesan S&AP.
'. Kele-!an *an Kekurangan SAP a. Keuntungan *ar! SAP
@
in5omasi
yang
• •
• • •
+ormat yang sederhana dan dapat dikembangkan isa dijalankan dimana saja tidak terbatas
pada
plat5orm tertentu isa menggunakan bahasa pemrograman apa saja #ulti-protocol seperti TTP, >#S, *P2, S#TP, dll. Dapat mele%ati fre%alls sehingga mendukung model
TTP get ; reponse Tipe yang kuat dan melekat pada sebuah kontrak -. Kekurangan *ar! SAP •
•
!alaupun sederhana, pesannya dapat panjang karena kebutuhannya untuk mengemasnya dalam bentuk S&AP
•
en6elope $arena S&AP berbasis F#/, dibutuhkan %aktu untuk parsing F#/ tersebut karena harus di kedua pihak
•
melakukannya 7pengirim dan penerima pesan8 !alaupun S&AP standart yang terbuka, tidak semua bahasa mendukung dengan baik. Iang terbaik untuk mendukung S&AP adalah >AEA, .Net, dan +leH.
BAB III PENUTUP 1. KESI&PULAN Dari pembahasan di atas dapat di simpulkan bah%a
*emote
Procedure 2all 7*P28 adalah sebuah metode yang memungkinkan kita untuk mengakses sebuah prosedur yang berada di komputer lain. "ntuk dapat melakukan ini sebuah ser6er harus menyediakan layanan remote procedure. Pendekatan yang dilakuan adalah sebuah ser6er membuka '
socket, lalu menunggu client yang meminta prosedur yang disediakan oleh ser6er. ila client tidak tahu harus menghubungi port yang mana, client bisa me- reGuest kepada sebuah matchmaker pada sebuah *P2 port yang tetap. #atchmaker akan memberikan port apa yang digunakan oleh prosedur yang diminta client. J *emote #odul *e5erence *emot re5erensi modul bertanggung ja%ab untuk menerjemahkan
antara local
dan
re5erensi remote
objek
dan
untuk
menciptakan re5erensi remot objek. "ntuk mendukung tugasnya ini, re5erensi modul remote dalam setiap proses memiliki tabel remote objek yang mencatat korespondensi antara objek lokal re5erensi dalam proses dan re5erensi remote objek.
DAFTAR PUSTAKA http:;;
[email protected];'=;'';makalah-rpcremote-procedure-call.html
tt%44m-a$e)#n*.-l#g$#t.)#.!*425104114enert!an6*an6)ara6kerja6r)6 rm!6*an.tml tt%44$!270.!learn!ng.me425184114294engert!an6*an6)ara6kerja6r)6rm!6 *an6:e-$er/!)e4
''
http:;;dini4.%eblog.esaunggul.ac.id;'0;';1;pengertian-dan-deskripsi-detaildari-soap; https:;;%andagustianingsih.%ordpress.com;'0;4;3;defnisi-soap; http:;;%%%.komputasi.lipi.go.id;utama.cgiKcetakartikelB'43=
'