- Komunikasi Data
Komunikasi data adalah
merupakan bagian dari telekomunikasi yang secara khusus berkenaan dengan
transmisi atau pemindahan data dan informasi diantara komputer-komputer
dan piranti-piranti yang lain dalam
bentuk digital yang dikirimkan melalui media komunikasi
data.
- Komponen Komunikasi Data
=>Pengirim, adalah piranti yang mengirimkan data
=>Penerima, adalah piranti yang menerima data
=>Data, adalah informasi yang akan dipindahkan
=>Media pengiriman,adalah media atau saluran yang
digunakanuntuk mengirimkan data
=>Protokol, adalah aturan-aturan yang berfungsi untuk menyelaraskan
hubungan.
- Protokol
Protokol dapat diartikan
sebagai sebuah aturan yang mendefinisikan beberapa fungsi yang ada dalam sebuah
jaringan komputer, misalnya mengirim pesan, data, informasi dan fungsi lain yang harus
dipenuhi oleh sisi pengirim dan sisi penerima agar komunikasi dapat
berlangsung dengan benar, walaupun sistem yang ada dalam jaringan tersebut
berbeda sama sekali.
- Komponen Protokol
1. Aturan atau prosedur,
mengatur pembentukan/pemutusan hubungan
2. Format atau bentuk,
mengatur proses transfer data representasi pesan
3. Kosakata (vocabulary), jenis pesan dan makna
masing-masing pesan
- Fungsi Protokol
Secara umum fungsi dari
protokol adalah untuk menghubungkan sisi pengirim dan sisi penerima dalam
berkomunikasi serta dalam bertukar informasi agar dapat berjalan dengan baik
dan benar. Berikut ini beberapa fungsi protokol.
>>Fragmentasi dan reassembly
>>Encapsulation
>>Connection control
>>Flow control
>>Error control
>>Transmission service
- 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.
RPC masih
menggunakan cara primitif dalam pemrograman,
yaitu menggunakan paradigma procedural programming. Hal itu
membuat kita sulit ketika menyediakan banyak remote procedure.
- Kelebihan RPC
--: Relatif mudah digunakan:
Pemanggilan remote procedure
tidak jauh berbeda
dibandingkan pemanggilan local
procedure
--: 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.
- Prinsip RPC dalam program Client-Server
Skema RPC ini dilakukan juga pada
proses-proses
yang
running
di
komputer berlainan
- 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
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).
Remote Method Invocation (RMI) adalah sebuah teknik pemanggilan
method remote yang lebih secara umum
lebih baik daripada RPC. RMI menggunakan
paradigma pemrograman berorientasi obyek (Object Oriented Programming). RMI memungkinkan kita untuk mengirim
obyek sebagai parameter dari remote method.
RMI menyediakan mekanisme dimana server dan client berkomunikasi dan memberikan informasi secara timbal balik. Aplikasi semacam ini
seringkali disebut
aplikasi objek terdistribusi.
Aplikasi objek terdistribusi seringkali melakukan
hal berikut:
- Melokasikan objek remote: Aplikasi
dapat
menggunakan satu dari
dua
mekanisme untuk mendapatkan referensi ke objek remote.
- Berkomunikasi dengan
objek remote:
Detail dari komunikasi antara
objek remote ditangani
oleh RMI, bagi programmer komunikasi remote tampak seperti invokasi method Java standar.
- Memanggil (load) bytecode untuk objek yang di-pass: Karena RMI mengizinkan pemanggil (caller) untuk mem-pass objek ke objek remote,
RMI menyediakan mekanisme yang diperlukan
objek me-load kode objek,
sebagaimana juga mentransmisikan datanya.
Ilustrasi berikut menggambarkan
aplikasi RMI terdistribusi
yang menggunakan registry untuk mendapatkan referensi ke objek
remote. Server memanggil registry
untuk mengasosiasikan (mengikat) suatu nama dengan objek remote. Client mencari
objek remote dengan namanya pada
registry server dan meng-invoke method dari objek. Ilustrasi ini juga menunjukkan sistem
RMI menggunakan Web server untuk
memanggil class
bytecodes, dari server
ke client dan dari client ke server, untuk objek-objek yang diperlukan.
·
Langkah-Langkah Pembuatan
Program dengan RMI
Dalam RMI, semua informasi tentang
satu pelayanan server disediakan dalam suatu definisi remote interface. Dengan melihat pada definisi interface, seorang pemrogram dapat memberitahukan
method apa yang dapat dikerjakan oleh server, meliputi data apa yang diterima
dan data apa yang akan dikirim sebagai tanggapan.
Membangun suatu aplikasi
terdistribusi
menggunakan RMI meliputi 6 langkah. Keenam langkah tersebut adalah:
1.Mendefinisikan remote interface
2.Implementasi remote interface dan server
3.Pengembangan client (atau applet)
yang menggunakan remote interface
4.Mengkompilasi source files dan mem-buat stub and
skeletons
5.Memulai (start) RMI registry
6.Menjalankan server dan client



