2.1. Sistem Komunikasi

dokumen-dokumen yang mirip
b. Transmisi Paralel Adalah transmisi data dimana dalam satu satuan waktu beberapa bit (umumnya 8 bit) dapat disalurkan secara bersama

DAFTAR ISI 4. 6 Name Service Pengenalan Tujuan Penamaan Contoh Penamaan yang memberikan kemampuan keamanan

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

BAB V Remote Procedure Call (RPC)

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

Pada Java, sebuah objek remote adalah instans dari suatu kelas yang mengimplementasikan antarmuka remote.

TUGAS JARINGAN KOMPUTER

CONTOH PENDSTRIBUSIAN HARDWARE

Pemrograman Jaringan 11 RMI

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

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

MODEL SISTEM TERDISTRIBUSI

Sistem Tersebar 1 PAGE 10

TRANSPORT LAYER. Aplikasi dan Operasi pada TCP dan UDP

PEMROGRAMAN SISTEM TERSEBAR

Pemrograman Socket TCP dan Socket UDP

Pemrograman Jaringan 12 CORBA

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

TRANSPORT LAYER DEFINISI

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

DISTRIBUTED OBJECT CORBA & RMI. Sistem terdistribusi week 13

Pemrograman Jaringan

User Datagram Protocol (UDP)

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

Layer Transport OSI. Network Fundamentals Chapter 4. ITE PC v4.0 Chapter Cisco Systems, Inc. All rights reserved.

SISTEM PEMANTAUAN AKTIVITAS PENGGUNA PADA JARINGAN CLIENT-SERVER

PEMROGRAMAN JARINGAN

Komunikasi Antar Proses

KOMUNIKASI. Universitas Informatika dan Bisnis Indonesia. 2.1 Komunikasi Data

Pemrograman Jaringan

BAB I PENDAHULUAN 1.1 Latar Belakang

Bab 2. Komunikasi. 1. Physical Layer

Fungsi Lapis Transport

TRANSPORT LAYER. Fikri Fadlillah, ST

MODEL REFERENSI OSI & TCP/IP. Budhi Irawan, S.Si, M.T

Transport Layer. Oleh : Akhmad Mukhammad

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

Materi Mata Kuliah Jaringan Komputer Universitas Indo Global Mandiri

PEMROGRAMAN SOCKET LANJUTAN

Komunikasi. Sistem Terdistribusi Reza Aditya Firdaus

TRANSPORT LAYER. Oleh : Reza Chandra

Protokol Jaringan. Oleh : Tengku Mohd Diansyah,ST,M.Kom

Client/Server dengan Java Remote Method Invocation (Java RMI), Sebuah Tutorial

REVIEW MODEL OSI DAN TCP/IP

Pemrograman Berorientasi Obyek Lanjut (IT251) Ramos Somya, S.Kom., M.Cs.

JARINGAN KOMPUTER Layanan Dari TCP dan UDP Protocol

Transport Layer Services Candra Setiawan

Distributed Object CORBA and RMI

Sistem Terdistribusi 2. Model arsitektur Terdistribusi

Komunikasi Antar Proses Interprocess Communication (IPC)

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

Sejarah TCP/IP TCP/IP

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

Sistem Terdistribusi 5. Invocation

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

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

Pemrograman Jaringan

Refrensi OSI

Sistem Terdistribusi TIK-604

Fase pertama: single user, single tasking

BAB II LANDASAN TEORI

Model Protokol dan Referensi Jaringan. Pertemuan 4

MODUL 2 WIRESHARK Protokol TCP

Minggu 6 Transport Layer

TUGAS Mata Kuliah : Sistem Terdistribusi

Gambar 2.1 Prinsip RPC pada Client-Server

Fungsi Lapis Transport

JURUSAN SISTEM KOMPUTER FAKULTAS ILMU KOMPUTER UNIVERSITAS SRIWIJAYA

Model arsitektur Terdistribusi

Lapisan ini merupakan lapisan yang akan melakukan transmisi data antara perangkat-perangkat jaringan yang saling berdekatan di dalam sebuah wide area

Komunikasi Data STMIK AMIKOM Yogyakarta Khusnawi, S.Kom, M.Eng. TCP/IP Architecture

Sistem Terdistribusi

: M Rasyid Darmawan NIM : TCP. Pengertian TCP. Karakteristik TCP

Soal terdiri dari 50 Pilihan Ganda Setiap soal pilihan ganda hanya satu jawaban yang benar

Interprocess communication atau komunikasi antar proses

Pemrograman Remote Method Invocation. Husni

Pemrograman Socket menggunakan TCP

Transport Layer El E ectro ect n ro ic En E gineerin ri g Pol o ytech tec nic In I stitu sti t of o Surabaya ITS Kampus ITS Sukolilo Surabaya 60111

BAB II LANDASAN TEORI

Firewall & WEB SERVICE

BAB 2 DASAR TEORI. Iklan berasal dari sebuah kata dalam bahasa melayu, yaitu i lan atau i lanun

Teknologi Streaming Streaming

Bab 3: Proses-Proses. Konsep Proses

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

PEMROGRAMAN SISTEM TERSEBAR

26/09/2013. Pertemuan III. Elisabeth, S.Kom - FTI UAJM. Referensi Model TCP/IP

Network Programming 2010 Jaringan & Aplikasinya. Husni Husni.trunojoyo.ac.id

Memahami cara kerja TCP dan UDP pada layer transport

LAPISAN JARINGAN (NETWORK LAYER) Budhi Irawan, S.Si, M.T

Komunikasi end-to-end logik Segmenting enkapsulasi port address Reassembling data Identifikasi aplikasi (port-addressing)

adalah sebuah aturan atau standar yang mengatur hubungan, komunikasi, dan perpindahan data antara dua atau lebih titik komputer dalam Komunikasi Data

Rahmady Liyantanto liyantanto.wordpress.com

Materi 7 Layer 4 Transport

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

IMPLEMENTASI APLIKASI CHEPPYCHAT UNTUK JARINGAN KOMPUTER PADA LOCAL AREA NETWORK

Bab 2. Komunikasi Protokol

BAB 2: INTRODUCTION TCP/IP

Making Provisions for Applications and Services

A. TUJUAN : Dapat mengimplementasi-kan kelas-kelas Java yang digunakan dalam pemrogaman jaringan.

I. DEFINISI. Definisi RPC

Transkripsi:

2. KOMUNIKASI

2.1. Sistem Komunikasi Pembahasan : bagaimana komunikasi antar object dalam sistem terdistribusi, khususnya dengan menggunakan RMI (Remote Method Invocation) dan RPC (Remote Procedure Call). RMI dan RPC berbasiskan metode request dan reply.

Gambar 2.1: Model komunikasi dan implementasi layer pada sistem terdistribusi Request dan reply diimplementasikan pada protokol jaringan.

2.2. Network Protocol Middleware dan aplikasi terdistribusi diimplementasikan di atas protokol network. Protocol diimplementasikan dalam beberapa lapisan (layer). Gambar 2.2 : Layer protocol pada Internet

2.2.1 TCP dan UDP protokol transport yang berada di atas lapisan IP TCP (Transport Control Protocol) TCP dapat memastikan data yang dikirimkan sampai ke tujuan begitu juga sebaliknya. TCP menambahkan beberapa prosedur di atas layer IP untuk memastikan reliabilitas transport data : a. Sequencing Pada setiap transmisi data (paket) diberi nomor urut. Sehingga pada titik tujuan tidak ada segmen yang diterima sampai semua segmen pada urutan bawah belum diterima.

b. Flow Control Pengirim tidak akan membanjiri penerima, karena pengiriman didasarkan pada periode acknowledgment yang diterima oleh pengirim yang berasal dari penerima. c. Retransmission dan duplicate handling Apabila segmen tidak mendapatkan acknowledge dari penerima sampai waktu timeout yang ditentukan terlampaui maka pengirim akan mengirim ulang. Berdasarkan nomor urut penerima data dapat mendeteksi dan menolak kalau terjadi duplikasi.

d. Buffering Buffering digunakan untuk menyeimbangkan antara pengirim dan penerima. Kalau buffer pada penerima penuh, maka segmen yang datang akan putus, sehingga menyebabkan tidak ada acknowledge ke pengirim dan pengirim akan melakukan transmit ulang. e. Checksum Setiap segment membawa checksum. Apabila checksum segmen yang diterima tidak sesuai maka paket data tersebut akan di-drop (dan kemudian akan di transmit ulang)

UDP (User Datagram Protocol) UDP tidak memberikan garansi seperti halnya yang diberikan oleh TCP. UDP tidak memberikan garansi terhadap pengiriman data. Pada Internet Protocol paket data dapat drop karena suatu hal. contoh : jaringan yang rusak, UDP tidak mempunyai mekanisme untuk menanggulangi hal tersebut. Kalau ingin menggunakan UDP sebagai protocol pengiriman yang handal, maka mekanisme kehandalan yang diinginkan dilakukan pada layer aplikasi.

2.2.2 Komunikasi Request Reply Komunikasi antara proses dan objek dilakukan melalui message passing. Client melakukan : 1. Mengirim (request) pesan ke server 2. Menerima hasil (reply dari server) Server melakukan : 1. Penerimaan pesan (request) dari client 2. Mengeksekusi permintaan dari client 3. Mengirim hasil (reply) ke client.

2.3 RPC dan RMI Tujuan dari RPC dan RMI dibuat bagi programmer : agar komputer yang terdistribusi terlihat seperti komputer yang terpusat. untuk melihat sistem terdistribusi dari sisi pemrogramman. RPC dan RMI berada pada Middleware

2.3.1 RMI (Remote Method Invocation) Berikut ilustrasi yang terjadi pada metode RMI : Programmer pada client menulis : server_id.service(values_to_server,result_arguments); Pada sisi server mempunyai fungsi sebagai berikut : public service(in type1 arg from client; out type2 arg to_client) { }; Programmer pada client tidak mengetahui bahwa reply message yang didapatkan berasal dari server yang dikirim melalui jaringan.

Gambar 2.2 : Ilustrasi implementasi RMI Komponen-komponen dalam RMI (gambar 2.2): Object A (client) meminta layanan Object B (server) : menghantarkan layanan Proxy for B

- Ketika object A mempunyai remote reference ke object B, maka akan timbul objek Proxy B pada host object A. Proxy terbuat ketika remote object reference digunakan pertama kali - Proxy adalah perwakilan objek yang berada pada remote, dengan kata lain ketika terjadi invokasi dari A ke B ditangani seolah-olah hanya mengakses Proxy B. - Ketika invokasi terjadi proxy menggunakan metode marshals untuk membungkus pesan yang akan dikirim ke server. Setelah menerima hasil dari server proxy menggunakan metode unmarshal (membuka bungkus) untuk kemudian diteruskan ke client (Object A)

Skeleton for object B - Pada sisi server, terdapat object kerangka (skeleton) yang berhubungan ke class, kalau objek pada class tersebut dapat diakses oleh RMI. - Skeleton menerima pesan kemudian melakukan unmarshal dan meneruskan ke method objek yang dituju. Kemudian menunggu hasil dari objek B dan kemudian membungkus hasil (unmarshal) dan kemudian dikirimkan ke client (Objek A). - Ada bagian dari skeleton B yang disebut dengan dispatcher. dispatcher menerima request dari communication module, dan kemudian mengidentifikasi invokasi dan mengarahkan permintaan ke corresponding method (method pada skeleton yang berfungsi untuk berkomunikasi dengan objek).

Communication Modul (Modul Komunikasi) - Communication modul pada client atau server bertanggung jawab dalam pertukaran pesan yang dilakukan melalui metode request dan reply. Remote Reference Module - Bagian ini bertugas untuk menterjemahkan antara referensi objek lokal dan remote. - Proses berkomunikasi antara mereka disimpan dalam remote object table. Class untuk proxy dan skeleton di-generate oleh middleware. contoh : CORBA, Java RMI

Object A dan object B dipunyai oleh aplikasi (berada pada Application Layer) Remote Reference Modul dan Communication modul dimiliki oleh middleware. Proxy B dan Sekeleton B berada antara middleware dan aplikasi yang di generate oleh middleware.

Langkah-langkah proses dengan RMI : - Urutan pemanggilan pada object client mengaktifkan method pada proxy yang akan berhubungan dengan invoked method (method yang terinvokasi) pada object B - Kemudian method yang ada pada proxy melakukan pembungkusan argumen menjadi suatu pesan (marshalling) dan meneruskan ke modul komunikasi. - Berdasarkan pada remote reference yang didapat dari remote reference modul,modul komunikasi memulai request dan reply protocol melalui network.

- Modul komunikasi pada server menerima request dari client. Kemudian berdasarkan referensi lokal yang diterima dari remote reference modul maka akan mengaktifkan method untuk berkomunikasi dengan object pada skeleton B (corresponding method). - Method pada skeleton mengekstrak (unmarshalling) argumen pada pesan yang di terima dan mengaktifkan corresponding method (method yang berfungsi untuk melakukan komunikasi) pada object B (server). - Setelah menerima hasil dari object B, method dari skeleton akan membungkus hasil tersebut dalam sebuah pesan (marshalling) dan meneruskan pesan yang sudah dibungkus ke modul komunikasi.

- Modul komunikasi mengrimkan pesan tersebut ke client melalui jaringan. - Modul komunikasi pada client menerima hasil (reply) dari server dan meneruskan ke corresponding method pada proxy. - Kemudian proxy meng-ektrak hasil (unmarshalling) dan meneruskan ke object A (client). Contoh RMI dengan menggunakan Java RMI : Server object akan mencetak Hello World ke layar dan mengembalikan pesan ke klien

Pada sisi server : Server Method import java.rmi.*; public interface SimpleInterface extends Remote { String printmessage(string name) throws RemoteException; } Server Object import java.rmi.*; import java.rmi.server.*; public class SimpleServer extends UnicastRemoteObject implements SimpleInterfac public SimpleServer() throws RemoteException { super(); } public String printmessage(string name)throws RemoteException { System.out.println(name); return(hello + name); }

public static void main(string args[]) { System.setSecurityManager(new RMISecurityManager()); try { SimpleServer newserver = new SimpleServer(); System.out.println(SimpleServer attempting to bind to the registry); Naming.rebind(//mark.info:30010/SimpleServer, newserver); System.out.println(SimpleServer bound in the registry); } catch(exception e) { System.out.println(SimpleServer error: + e.getmessage()); e.printstacktrace(); } } }

Pada sisi client : import java.rmi.*; public class SimpleClient { private static SImpleInterface server = null; public static void main(string args[]) { try { server = (SimpleInterface) Naming.lookup(//mark.info:30010/SimpleServer); System.out.println(server.printMessage(World)); } catch(exception e) { System.out.println(SimpleClient error: + e.getmessage()); e.printstacktrace(); } } }

2.3.2 RPC (Remote Procedure Call) Proses kurang lebih sama dengan RMI. Pada RMI dikenal Proxy dan Skeleton, pada RPC dikenal dengan Stub (Client Stub dan Server Stub). Gambar2.3: Ilustrasi implementasi RPC Remote Reference Modul dan Communication Modul berada pada tatanan sistem operasi