REMOTE SERVICE

Download Report

Transcript REMOTE SERVICE

REMOTE SERVICE
TIU & TIK

TIU :


Mahasiswa mengetahui layanan jarak jauh antar site
dalam sister
TIK :
Mengetahui prinsip kerja layanan jarak jauh
 Mengenal procedure RPC

Jumlah
baris,karakter
suatu file
Tahapan :
Inisialisasi
Transfer Data
Finish
Proses request antar client dgn server menggunakan fasilitas
layanan jarak jauh (remote service). Metode “ RPC”
Remote Procedure Call (RPC)

RPC dirancang sbg suatu cara untuk mengabtraksikan mekanisme
procedure-call u/ digunakan antar sistem dgn jaringan terhubung

RPC memp struktur pertukaran message lebih baik dan data tdk
perlu ditahan terlalu lama

Address : RPC daemon dikaitkan ke port pd sistem jarak jauh,
serta berisi identifikasi fungsi u/ eksekusi dan parameter u/
passing ke fungsi tersebut.
Kemudian fungsi di eksekusi sbg yg direquest kan dan hasilnya di
kirimkan kembali ke user dlm bentuk message terpisah.

PORT : sejumlah angka/kode sederhana yg included pada saat
paket message dimulai. Jika suatu proses jarak jauh memerlukan
sebuah service , maka addressnya dikirim ke port tsb.
Middleware Layers
Applications, services
Application Layer
Remote Method Invocation (RMI) e.g. CORBA
&
Remote Procedure Call (RPC)
MIDDLEWARE
LAYERS
Request-reply protocol
&
External Data Representation & Marshalling
UDP & TCP
Transport Layer
Remote Procedure Call (RPC)

Procedure call:
CLIENT
SERVER
Passing of arguments
REQUEST
Return values
RESPONSE


Local procedure call: proses yang memanggil & dipanggil
berada pada 1 host.
RPC: sebuah proses pada local system memanggil prosedur
pada remote system. Namun bagi pemrogram, spt melakukan
local procedure call.
Remote Procedure Call (RPC)

Tujuannya utk memudahkan pengembangan aplikasi
terdistribusi.


Contoh operasi idempotent:


Klien & server tidak perlu memikirkan network details, spt
soket.
Prosedur yg mengembalikan saldo suatu rekening di bank.
Contoh operasi non idempotent:

Prosedur utk kredit atau debit suatu rekening di bank.
RPC vs OSI Models




RPC berada di antara transport & application layers. Ingat
middleware layer.
RPC menggunakan stub procedures untuk
menyembunyikan network details.
RPC umumnya memiliki spesifikasi untuk pertukaran
argumen & results, antara client & server menurut suatu
format standard.
Sering dikategorikan berada pada layer 6 (presentation).
RPC Model
client process
server process
client
routines
local proc call (1)
server
routines
(10)
local proc call (6)
client
stub
system call (2)
(5)
server
stub
(9)
network
routines
local kernel
system call (7)
(8)
(3) network
communication
(4)
network
routines
remote kernel
Langkah-Langkah RPC
1.
2.
3.
Client memanggil local procedure, yang disebut client
stub. Bagi client, client stub seolah-olah server procedure
yang dipanggil. Stub melakukan marshalling: argumen
untuk remote procedure diatur dalam paket dengan
mengikuti suatu format standard, menjadi sebuah
network message.
Melalui pemanggilan system call di local kernel, client
stub mengirim network message ke remote system.
Network message ditransfer ke remote system,
menggunakan connection-oriented maupun connectionless
protocol.
Langkah-Langkah RPC
4.
5.
6.
7.
Server stub menunggu request dari client, melakukan
unmarshalling argumen yang ada di network message, dan
melakukan konversi jika diperlukan.
Server stub menjalankan local procedure call yang memanggil
server procedure yang sebenarnya.
Setelah server procedure selesai, return values dikembalikan
ke server stub.
Server stub melakukan konversi (jika diperlukan),
kemudian melakukan marshalling menjadi network message,
dan mengirimkannya kembali ke client stub.
Langkah-Langkah RPC
8.
9.
10.
Network message ditransfer kembali ke client stub.
Client stub membaca network message dari local kernel.
Client stub mengkonversi return values (jika diperlukan),
kemudian mengembalikannya ke client routine, seperti
return values dari local procedure.
BAGAN EKSEKUSI RPC
Client
Message
Server
User memanggil kernel u/
mengirim pesan RPC
ke processor
Kernel mengirim pesan ke
Match maker u/
mencari nomer port
From : client
To : server
Port : match maker
Re : addres RPC-x
Match maker terima
pesan,
menyiapkan jawaban
Client
Kernel meletakkan Port P
Pada pesan RPC user
Message
Form : server
To : client
Port : kernel
Re : RPC-x, Port :P
Kernel kirim RPC
Form : client
To : server
Kernel terima jawaban
dan meneruskan ke user
Form : RPC
Port : P
To : client
Port : Kernel
Server
Match maker menjawab
Ke client dgn PORT P
Daemon listening ke
Port P, terima pesan
Daemon request dan
proses kirim output