TUGAS Mata Kuliah : Sistem Terdistribusi

dokumen-dokumen yang mirip
BAB V Remote Procedure Call (RPC)

KOMUNIKASI PENGANTAR DATA TERDISTRIBUSI. Materi: 1. Komunikasi Data 2. Protocol 3. Remote Procedure Call 4. Object Remote

PEMROGRAMAN SISTEM TERSEBAR

TUGAS JARINGAN KOMPUTER

CONTOH PENDSTRIBUSIAN HARDWARE

TUGAS Mata Kuliah : Sistem Terdistribusi

Interprocess communication atau komunikasi antar proses adalah inti dari sistem terdistribusi dan komunikasi antar proses-proses pada system-sistem

KONSEP INTERAKSI. Adrianus W. K X Aziz Yudi Prasetyo Gregorio Cybill

Mengenal Java RMI. Wiranti Sri Utami. Abstrak. Pendahuluan.

SISTEM PEMANTAUAN AKTIVITAS PENGGUNA PADA JARINGAN CLIENT-SERVER

1. Hardware terdistribusi. 2. Program terdistribusi. Nama : Gede Doddi Raditya Diputra NIM : Kelas : 5.C

Cari contoh dari pendistribusian komponen-komponen Hardware, Program, dan Procedure. Jelaskan!

Objek Terdistribusi dan Remote Invocation. I Made Andhika, S.Kom

KOMUNIKASI. Universitas Informatika dan Bisnis Indonesia. 2.1 Komunikasi Data

SISTEM OPERASI (MANAJEMEN PROSES)

Bab 3: Proses-Proses. Konsep Proses

Sistem Terdistribusi TIK-604

SISTEM OPERASI TERDISTRIBUSI

2.1. Sistem Komunikasi

JARINGAN KOMPUTER. Disusun Oleh : Nama : Febrina Setianingsih NIM : Dosen Pembimbing : Dr. Deris Stiawan, M.T., Ph.D.

Pemrograman Jaringan 10. Komunikasi Antar Obyek

Bab 3: Proses-Proses. Konsep Proses

DISTRIBUTED OBJECT CORBA & RMI. Sistem terdistribusi week 13

Pemrograman Jaringan 11 RMI

PEMROGRAMAN JARINGAN

Distributed Object CORBA and RMI

Network Tech Support Inside local address Inside global address Outside local address Outside global address DHCP & NAT

KOMUNIKASI DATA PACKET SWITCHING

I. DEFINISI. Definisi RPC

Komunikasi. Sistem Terdistribusi Reza Aditya Firdaus

Jaringan Komputer - Jilid V

DISTRIBUTED FILE SYSTEM. Sistem terdistribusi week 11

4. SISTEM OPERASI TERDISTRIBUSI

Agenda. Protokol TCP/IP dan OSI Keluarga Protokol TCP/IP

Pemrograman Jaringan 10. Komunikasi Antar Obyek

Interprocess communication atau komunikasi antar proses

APPLICATION LAYER. Oleh : Reza Chandra

SINKRONISASI. Sistem terdistribusi week 5

Pemrograman Jaringan 12 CORBA

Komunikasi Antar Proses

BAB I PENDAHULUAN 1.1 Latar Belakang

Sharing Printer dengan Samba. Oleh. Md. Chrisna donny andrian. V c

Deskripsi Layanan Protokol TCP dan UDP. (Tugas Mata Kuliah Jaringan Komputer) Nama: Azwar Hidayat NIM: Kelas: SK 4 C

Pemrograman Jaringan

Making Provisions for Applications and Services

Teknik Informatika S1

Gambar 2.1 Prinsip RPC pada Client-Server

JURUSAN SISTEM KOMPUTER FAKULTAS ILMU KOMPUTER UNIVERSITAS SRIWIJAYA

Pemrograman Jaringan

BAB II LANDASAN TEORI

BAB 2 TINJAUAN PUSTAKA. bentuk sesuai dengan tipe data dan konteks penggunaan [7]. Tujuannya yaitu

IMPLEMENTASI TCP/IP UNTUK MEMBUAT SERVER DATABASE ACCESS ABSTRAK

Sistem Operasi. Proses dan Penjadwalannya. Aditya Wikan Mahastama Antonius Rachmat C

3. 3 Application Layer Protocols and Services Examples

Protokol. Pemrograman Client/Server dengan Java Socket. Protokol TCP/IP. Tipe pemrograman jaringan. Java Socket

MODUL 2 WIRESHARK Protokol TCP

BAB I PERSYARATAN PRODUK

Connection Oriented. Kholid F.

II. TINJAUAN PUSTAKA. dipandang sebelah mata oleh banyak kalangan bisnis. Bahkan, orang yang aktif

BAB I PENDAHULUAN. sehingga internet dapat dijadikan sebagai salah satu sumber belajar.

Firewall & WEB SERVICE

PENJURIAN ONLINE BERBASIS WEB SERVICE

Contoh (3) Solusinya adalah dengan membuat web server menjadi multi-threading. Dengan ini maka sebuah web server akan membuat thread yang akan mendeng

BAB 1 PENDAHULUAN 1.1 Pendahuluan

A I S Y A T U L K A R I M A

Kelompok 1. Anggota : BOBBY KURNIAWAN NIA FITRIANA ARI FEBRYANSYAH DIAN ULUMIA ORIN HARITSA YASSER

TCP DAN UDP. Budhi Irawan, S.Si, M.T

1. Disk Schedulling 2. Buffering

IMPLEMENTASI APLIKASI CHEPPYCHAT UNTUK JARINGAN KOMPUTER PADA LOCAL AREA NETWORK

I. PENDAHULUAN. jaringan dan aplikasi yang dibuat khusus untuk jaringan. Akibatnya, interaksi

1. Address Binding. Sebuah program ditempatkan dalam disk dalam bentuk berkas biner Sebelum dieksekusi, sebuah program harus ditempatkan di memori.

HTTP Protocol Ketika sebuah alamat web (atau URL) yang diketik ke dalam web browser, web browser melakukan koneksi ke web service yang berjalan pada

REVIEW DAN REVISI BUKU

DISTRIBUTED FILE SYSTEMS

SISTEM OPERASI. CSP 2702 Semester/SKS : 4/3 Program Studi : Sistem Komputer Kamis, Ruang : P-22

Lapisan Transport. Menjamin komunikasi yang handal antara dua buah komputer yang terhubung Terdiri atas :

Operating System. I/O System. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si

Sistem Terdistribusi

TASK 5 JARINGAN KOMPUTER

APLIKASI SISTEM PENDIDIKAN JARAK JAUH BERBASIS WEB

Proses Burst Time Prioritas P P1 7 1 P2 9 3 P P4 19 2

Modul 10 TCP/IP Lanjutan

BAB 1 Service Oriented Architecture 1.1 Evolusi SOA

TUGAS ELEARNING PENGEMBANGAN WEB SERVICE

NETWORK PROGRAMMING. Yuliana Setiowati Politeknik Elektronika Negeri Surabaya D4 PENS-ITS

BAB II DASAR TEORI. Teknologi TCP/IP adalah hasil penelitian dan pengembangan protocol

Text Berisi kode programnya

Operating System: An Overview. Ch. 3: Process Management. Ch. 3: Process Management

BAB 4 IMPLEMENTASI DAN EVALUASI. pendukung, seperti perangkat keras dan piranti lunak. Berikut ini akan diuraikan

Nama : I Kt Dedi Kusuma Rena Nim : Kelas : VC Tugas Pemrograman Tersebar

PENDAHULUAN. Bab Latar Belakang

Tugas Jarkom. Layanan dari TCP. Nama : Rizky Soufi Gustiawan NIM : Kelas : SK 5 C

Bab 2. Komunikasi. 1. Physical Layer

Bab 10. Implementasi Sistem File POKOK BAHASAN: TUJUAN BELAJAR: 10.1 STRUKTUR SISTEM FILE

Fase pertama: single user, single tasking

J2ME GUI dan Interkoneksi Client Server

MODUL 2 WIRESHARK Protokol TCP

B A B IV A N A L I S A

Transport Layer. Oleh : Akhmad Mukhammad

BAB 15 KEAMANAN JARINGAN DENGAN FIREWALL

Transkripsi:

TUGAS Mata Kuliah : Sistem Terdistribusi OLEH : Nama : TARSO NIM : 090103193 Kelas : C (Week End) Dosen : Ardy Mulya Iswardani, S.Kom Prodgi : S1 Teknik Informatika SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER DUTA BANGSA SURAKARTA 2011

PROSEDUR PANGGILAN REMOTE Salah satu bentuk yang paling biasa dari pelayanan remote adalah paradigma RPC. RPC dirancang sebagai sebuah cara untuk memisahkan mekanisme prosedur panggilan dalam penggunaan antar system koneksi jaringan. Hal ini sama dalam beberapa mekanisme IPC dan ini bisaanya dibangun diatas seperti sebuah system. Disini karena kita berhadapan dengan sebuah lingkungan dimana atau yang mana proses-prosesnya terlaksana dalam system yang terpasang, kita harus menggunakan sebuah skema komunikasi berbasis pesan untuk menyediakan layanan remote. Sebaliknya dengan fasilitas IPC, pesanpesannya dalam komunikasi RPC yang disusun dengan baik dan oleh karena itu tidak lebih dari sebuah paket data. Masing-masing pesan ditujukan dalam sebuah listening Daemon RPC menuju sebuah port dalam system remote, dan masingmasing berisi sebuah petunjuk dari fungsi untuk melaksanakan dan parameter untuk melewati fungsi itu. Fungsi ini kemudian dilaksanakan sebagai permintaan dan output dikirim kembali untuk pengguna dalam sebuah pesan terpisah. Sebuah port secara sederhana adalah sebuah nomer yang termasuk dalam start paket pesan dimana sebuah system secara normal satu alat jaringan, system ini mempunyai banyak port yang dimana alat itu untuk membedakan layananlayanan jaringan yang mendukungnya. Jika sebuah proses remote membutuhkan sebuah layanan ini membawa sebuah pesan menuju port yang tepat. Sebagai contoh jika sebuah system diterapkan untuk membuat system lain mampu untuk mengenali pengguna-pengguna tertentu ini akan membuat sebuah daemn pendukung seperti sebuah RPC yang didekatkan pada sebuah port, seperti port 3027. System remote bisa mematuhi informasi yang dibutuhkan (daftar penggunapengguna tertentu) dengan mengirimkan sebuah pesan RPC kepada port 3027 pada server, datanya akan diterima pada pesan balasan. Semantic-semantic dari RPC mengijinkan seorang client untuk mengikuti procedure dari host remote saat semantic RPC akan menjalankan prosedur secara local. System RPC menyembunyikan secara detail yang mengijinkan komunikasi terjadi dengan memberikan sebuah stub pada client, sebuah stub yang terpisah

hadir untuk sebuah prosedur remote yang terpisah ketika client menjalankan sebuah prosedur system RPC memanggil stub yang tepat melewati parameterparameternya yang disediakan pada prosedur remote. Stub ini meletakkan port pada server dan marshaling parameter melibatkan pengemasan parameter menjadi sebuah bentuk yang bisa di ditransmisikan melalui sebuah jaringan stub ini mengirim sebuah pesan kepada server pasing pengguna pesan. Sebuah stub yang sama pada server menerima pesan ini dan melaksanakan prosedur pada server. Jika perlu mengembalikan nilai-nilai pada client yang menggunakan teknik yang sama. Suatu masalah yang harus dihadapi yang berhubungan dalam perbedaan dalam representasi data pada client dan mesin server mempertimbangkan dari 32 bit integer. Beberapa system yang dikenal dengan endian bit menggunakan memori tinggi untuk menyimpan bit yang paling signifikan, sementara system yang lain dikenal endian little menyimpan bit yang signifikan paling kecil di address memori tinggi. Untuk memecahkan perbedaan seperti ini, banyak system RPC mempersembahkan sebuah data dari sebuah representasi data independent. Representasi seperti ini dikenal dengan representasi data eksternal atau SDR pada client marshal parameter melibatkan perubahan pada data mesin dependent menuju SDR sebelum data dikirim kepada server. Pada server, data SDR tak tersusun dan diubah menuju representasi mesin dependen untuk server. Isu lain yang penting melibatkan semantic dari sebuah prosedur panggilan local gagal hanya karena keadaan ekstrim, RPCS bisa gagal, atau diduplikatkan dan dilaksanakan lebih dari satu kali, sebagai sebuah hasil dari kesalahan jaringan biasa. Satu cara untuk mengatasi masalah ini adalah dengan mengoperasikan system untuk memastikan bahwa pesan dikirimkan pada satu kali. Pertama, pertimbangkan at most once. Semantic ini bisa dijamin dengan menempelkan sebuah perangko waktu untuk masing-masing pesan. Server harus menjaga histori dari semua perangko pesan yang sudah diproses atau histori yang cukup besar untuk menjamin bahwa pesan yang diulang terdeteksi. Pesan yang masuk yang mempunyai history terabaikan. Client kemudian bisa mengirim satu kali atau lebih dan dijamin ini hanya akan terkirim satu kali untuk exactly once,

kita perlu menghilangkan resiko bahwa server tidak pernah menerima balasan. Untuk mengatasinya, server harus mengimplementasikan at most once Protocol digambarkan diatas tapi harus diakui client bahwa panggilan RPC diterima dan dilaksanakan. Pesan ACK ini biasanya melalui jaringan. Client harus mengirim kembali masing-masing panggilan RPC secara periodik sampai client menerima ACK untuk panggilan itu. Isu penting lain berhubungan dengan komunikasi antara seorang server dan seorang client. Dengan prosedur panggilan standard, beberapa bentuk binding ditempatkan selama link, proses, atau waktu pelaksanaan sehingga sebuah nama panggilan prosedur ditempatkan oleh alamat memori dari panggilan prosedur. Skema RPC memerlukan sebuah binding yang sama dengan client dan port server, tapi bagaimana seorang client tahu jumlah port pada server? bukan sistem yang mempunyai informasi penuh tentang yang lain karena sistem tidak membagi memori. Dua pendekatan. Pertama, informasi terikat mungkin ditentukan di awal, dalam bentuk alamat port tetap. Dalam waktu yang tersusun, sebuah port tetap yang diasosiasikan dengan panggilan RPC. Satu kali program tersusun, server tidak bisa mengubah nomor port dari servis yang diminta. Kedua, ikatan bisa dilakukan secara dinamis dengan rendevu. Secara tipikal, sebuah sistem operasi menyediakan rendevu daemon pada port RPC yang tetap. Seorang client kemudian mengirimkan sebuah pesan yang berisi nama RPC pada Daemon rendevu yang meminta alamat port dari RPC, ini perlu untuk dilaksanakan. Nomor port kembali, dan panggilan RPC bisa dikirim ke port sampai proses berakhir. Metode ini membutuhkan ongkos extra pada permintaan paraf tapi ini lebih flexible daripada pendekatan pertama.

Gambar 1. Execution of a remote procedure call (RPC) Skema RPC berguna dalam pengimplementasian sebuah sistem data distribusi. Seperti sistem yang bisa diimplementasikan sebagai sebuah set dari daemon RPC dan client. Pesan dialamatkan/ditujukan pada port sistem data distribusi pada sebuah server pengoperasian data. Pesan berisi operasi disk yang dipertunjukkan. Pengoperasian disk bisa menulis, membaca, mengubah nama, menghapus atau status terhubung dengan data biasanya yang terhubung dengan panggilan sistem. Pesan yang kembali berisi suatu data yang dihasilkan dari panggilan itu, yang yang dilaksanakan oleh Daemon DFS atas nama client. Sebagai contoh, sebuah pesan mungkin berisi sebuah permintaan untuk mengirim semua data kepada client atau dibatasi pada sebuah permintaan yang sederhana. Masalahnya, beberapa permintaan mungkin dibutuhkan jika semua data dikirim.

INVOCATION METODE REMOTE Invocation metode remote adalah sebuah fitur java yang sama dengan RPCS. RMI melakukan sebuah urutan untuk melaksanakan sebuah metode pada objek remote. Objek adalah remote jika mereka berada di mesin virtual java yang berbeda (JVM). Oleh karena itu, objek remote mungkin dalam sebuah JVM yang berbeda pada komputer yang sama atau pada host remote yang dihubungkan dengan sebuah jaringan. RMI dan RPCS dibedakan dalam 2 cara fundamental. Pertama RPCS mendukung program prosedur dimana hanya prosedur atau fungsi remote yang bisa dipanggil. Contrastnya, RMI berdasarkan obyek. RMI mendukung pelaksanaan metode pada objek remote. Kedua, parameter untuk prosedur remote adalah susunan data biasa dalam RPC, dengan RMI, ini mungkin untuk melewati objek sebagai parameter untuk metode remote. Dengan mengijinkan sebuah program java untuk melaksanakan metode pada objek remote, RMI membuat hal ini mungkin kepada pengguna untuk mengembangkan aplikasi java yang didistribusikan melalui sebuah jaringan. Untuk membuat metode remote transparan untuk client maupun server, RMI mengimplementasikan objek remote menggunakan (stub) dan (skeleton). Sebuah stub adalah sebuah perwakilan dari objek remote, ini berada dengan client. Ketika seorang client menggunakan melaksanakan metode remote, stub untuk objek remote dipanggil. Stub yang berada di client bertanggung jawab untuk menciptakan parcel yang berisi nama dari metode untuk dilaksanakan pada server dan parameter marshal untuk metode. Stub kemudian mengirimkan parcel ini kepada server dimana skeleton pada objeck remote menerimanya. Skeleton bertanggung jawab untuk parameter yang tak tersusun dan melaksanakan metode yang diinginkan pada server. Skeleton kemudian menyusun nilai kembali atau pengecualian dalam sebuah parcel dan mengembalikan parcel kepada client. Stub tak menyusun nilai yang kembali dan melewatinya menuju ke client.

Mari lihat lebih dekat bagaimana proses ini bekerja. Anggaplah seorang klien berharap untuk melaksanakan sebuah metode pada server objek remote dengan sebuah tanda yang mengembalikan nilai boolean. Clien melaksanakan pernyataan boolean val = server, somemetho (A,B) Panggilan untuk beberapa metoda dengan parameter A dan B melaksanakan stub untuk objek remote. Stub menyusun kedalam sebuah parcel parameter A dan B dan nama dari metode yang dilaksanakan pada server, kemudian mengirimkan parcel ini kepada server. Skeleton pada server tak menyusun parameter dan meliatan metode some method. Implementasi aktual dari some method ada pada server. Satu kali metode dilengkapi, skeleton menyusun nilai boolean dikembalikan dari some method dan mengirimkan nilai ini kembali pada klien. Stub tak menyusun nilai kembali ini dan melewatinya pada clien. Gambar 2. Remote Method Invocation Gambar 3. Marshalling parameters

Untungnya, level abstraksi di RMI membuat stub dan skeleton transparan, mengizinkan pengembang java menulis program yang melibatkan metode distribusi hanya saat mereka melibatkan metode lokal. Ini penting, bagaimanapun untuk memahami sedikit aturan tentang melewati parameter. Jika parameter yang tersusun adalah objek lokal (non remote), mereka dilewati oleh copi yang menggunakan tenknik yang dikenal dengan serialisasi objek. Bagaimanapun jika parameter adalah objek remote, mereka dilewati oleh referensi. Contohnya, jika A adalah objek lokal dan B adalah objek remote, A diserialkan and dilewati oleh copy, dan B dilewati oleh referensi. Ini membuat server melibatkan metode B secara remote. Jika objek lokal dilewati sebagai parameter untuk objek remote, mereka harus mengimplementasikan java i.o interface, yang diserialkan. Banyak objek dalam API Java Core mengimplementasikan seri, membuatnya bisa digunakan dengan RMI. Serialisasi objek membuat keadaan sebuah objek ditulis dalam sebuah Stream byte.

Diambil dari Buku Operating System Concepts sevent edition? Abraham Silberschatz? Greg Gagne? Peter Boer Galvin Halaman 111-115