sistem terdistribusi (communication)

Download Sistem Terdistribusi (Communication)

Post on 11-Aug-2015

164 views

Category:

Documents

36 download

Embed Size (px)

DESCRIPTION

CHAPTER 2 (COMMUNICATION)

TRANSCRIPT

DEFINISI COMMUNICATION

Komunikasi merupakan kebutuhanmanusia yang sangat penting. Komunikasi dibutuhkan untuk memperoleh atau memberi informasi dari atau kepada orang lain. Kebutuhan untuk mendapatkan informasi semakin meningkat,sehingga manusia membutuhkan alat komunikasi yang dapat digunakan kapanpun dan dimanapun mereka berada.

KOMUNIKASI

DEFINISI COMMUNICATION DALAM SISTER Communication (komunikasi) dalam sistem terdistribusi adalah selalu berdasarkan tingkat rendah message passing seperti yang ditawarkan oleh jaringan bawahan.

2.1 LAYERED 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. Protokol mengurusi perbedaan format data pada kedua sistem hingga pada masalah koneksi listrik.

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.

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

Low-level protocols Transport protocols High Level protocols

Physical layer: berisi spesifikasi dan implementasi dari bit-bit dan proses transmisi dari pengirim ke penerima. Data link layer: bertanggung jawab mengurusi pengubahan bit-bit data menjadi frame untuk mengatasi error dan mengatur arus pengiriman frame (flow control). Network layer: mengatur bagaimana paket-paket diarahkan agar mencapai tujuannya berdasarkan alamat lojik.

Pada lapisan ini ada dua macam protokol yang serimg digunakan, yaitu: 1. TCP (Transport Control Protocol) 2. UDP (User Datagram Protocol)

karakteristik TCP (Transport Control Protocol) : connection-oriented, sistem-sistem yang akan berkomunikasi harus terlebih dulu saling mengetahui dan sepakat. reliable, tersedia mekanisme yang menjamin paket yang rusak atau hilang dikirim ulang. stream-oriented communication. membutuhkan sumber daya komputasi dan jaringan lebih besar dari UDP.

karakteristik UDP (User Datagram Protocol) : connectionless, tidak memerlukan adanya saling mengetahui dan kesepakatan. unreliable (best-effort) datagram communication, tidak tersedia mekanisme yang menjamin paket yang rusak atau hilang dikirim ulang. membutuhkan sumber daya komputasi dan jaringan lebih kecil dari TCP.

Presentation Layer: Bertanggung jawab bagaimana data dikonversi dan diformat untuk transfer data. Contoh konversi format text ASCII untuk dokumen, .gif dan JPG untuk gambar. Layer ini membentuk kode konversi, translasi data, enkripsi dan konversi. Session Layer: Menentukan bagaimana dua terminal menjaga, memelihara dan mengatur koneksi,- bagaimana mereka salingberhubungan satu sama lain. Koneksi di layer ini disebut session.

Application Layer:Menyediakan jasa untuk aplikasi pengguna yang bertanggungjawab atas pertukaran informasi antara program komputer, seperti program e-mail, dan service lain yang jalan di jaringan, seperti server printer atau aplikasi komputer lainnya. Middleware : memberikan fasilitas marshaling, yaitu proses pengubahan data dalam komunikasi antar proses menjadi bentuk yang siap dikirimkan melalui jaringan sehingga dapat tetap konsisten ketika sampai di sisi penerima, dan proses kebalikannya, unmarshaling.

Susunan Protokol

Protokol jaringan disusun oleh dalam bentuk lapisan-lapisan (layer). Susunan berfungsi agar jaringan yang dibuat nantinya tidak menjadi rumit. Di dalam layer : jumlah, nama, isi dan fungsi setiap layer berbeda-beda. Akan tetapi tujuan dari setiap layer ini adalah memberi layanan ke layer yang ada di atasnya.

2.2 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. Pendekatan yang dilakuan adalah sebuah server membuka socket, lalu menunggu client yang meminta prosedur yang disediakan oleh server. Bila client tidak tahu harus menghubungi port yang mana, client bisa me-request kepada sebuah matchmaker pada sebuah RPC port yang tetap. Matchmaker akan memberikan port apa yang digunakan oleh prosedur yang diminta client.

RPC masih menggunakan cara primitif dalam pemrograman, yaitu menggunakan paradigma procedural programming. Hal itu membuat kita sulit ketika menyediakan banyak remote procedure. RPC menggunakan socket untuk berkomunikasi dengan proses lainnya. Pada sistem seperti SUN, RPC secara default sudah ter-install kedalam sistemnya, biasanya RPC ini digunakan untuk administrasi sistem. Sehingga seorang administrator jaringan dapat mengakses sistemnya dan mengelola sistemnya dari mana saja, selama sistemnya terhubung ke jaringan.

Kelebihan RPC

Relatif mudah digunakan :Pemanggilan remote procedure tidak jauh berbeda dibandingkan pemanggilan local procedure. Sehingga pemrogram dapat berkonsentrasi pada software logic, tidak perlu memikirkan low level details seperti socket, marshalling & unmarshalling.

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.

Langkah-langkah dalam RPC

1.2. 3. 4. 5.

Prosedur client memanggil client stub Client stub membuat pesan dan memanggil OS client OS client mengirim pesan ke OS server OS server memberikan pesan ke server stub Server stub meng-unpack parameter-parameter untuk memanggil server

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

2.4 Message-Oriented CommunicationPada komunikasi jenis ini pesan yang dikirimkan akan dimasukkan dalam antrian (queue) tertentu sebelum mencapai server tujuan. Aspek yang harus diperhatikan adalah pada umumnya pengirim pesan hanya diberikan jaminan pesan yang dikirimkan akan disimpan dalam antiran penerima. Tidak ada jaminan bahwa pesan akan dibaca.

Sifat seperti ini menjadikan prosedur primitif yang harus disediakan menjadi sederhana meliputi: Put: untuk memasukkan pesan ke antrian tertentu, Get: untuk mengambil pesan dari antrian tertentu dengan memblok proses hingga antrian tidak kosong dan mengambil pesan di awal antrian, Poll: untuk memeriksa antrian tertentu untuk mendapatkan pesan dengan tidak memblok proses dan mengambil pesan di awal antrian, Notify: untuk memasang sebuah handler dalam antrian yang akan dieksekusi ketika sebuah pesan dimasukkan ke dalam antrian

Arsitektur Message Queuing System

Pesan hanya dapat diletakkan dalam antrian yang bersifat lokal seperti dalam komputer yang sama atau paling jauh berada pada jaringan LAN yang sama. Antrian tersebut dikenal sebagai source queue. Seperti halnya pesan hanya dapat diletakkan pada antrian lokal pesan juga hanya dapat diambil melalui antrian lokal yang dikenal sebagai destination queue.

Untuk dapat menyampaikan suatu pesan message queuing system haruslah memiliki informasi berisi pemetaan antrian dengan lokasi jaringannya atau dikenal sebagai queue names. Antrian-antrian yang ada diatur oleh queue manager yang berinteraksi langsung dengan aplikasi yang mengirimkan atau menerima pesan. Queue manager yang bertugas melakukan routing terhadap pesan dalam jaringan disebut sebagai relay.

Message BrokerMessage broker bertindak sebagai gateway yang bekerja di lapisan aplikasi untuk menangani perbedaan format pesan. Umumnya message broker adalah sebuah aplikasi tambahan yang bersifat opsional sehingga tidak bisa dianggap sebagai bagian integral dari sebuah queuing system.