42
Interprocess communication atau komunikasi antar proses

Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Embed Size (px)

Citation preview

Page 1: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Interprocess communication ataukomunikasi antar proses

Page 2: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Interprocess communication

• Interprocess communication (IC) ataukomunikasi antar proses merupakan inti darisistem terdistribusi

• IC adalah komunikasi antar proses-prosespada sistem-sistem komputer yang berbeda. dapat terjadi jika sistem-sistem tersebutterhubung dalam suatu jaringan. Komunikasiantar komputer diatur oleh aturan yang disebut protokol komunikasi.

Page 3: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Layered Protocols

Page 4: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Penyerderhanaan layer

1. Low-level Layers 2. Transport Layer 3. Application Layer 4. Middleware Layer

Aplication Layer

Midleware Layer

Transport Layer

Lowlever Layer• physical• Data link• network

Page 5: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Low-level Layers

• Yang termasuk low-level Layer adalah lapisan-lapisan sebagai berikut: – Physical Layer : berisi spesifikasi dan implementasi

dari bit-bit dan proses transmisi dari pengirim kepenerima.

– Data link Layer: bertanggung jawab mengurusipengubahan bit-bit data menjadi frame untukmengatasi error dan mengatur arus pengiriman frame (flow control).

– Network Layer : mengatur bagaimana paket-paketdiarahkan agar mencapai tujuannya berdasarkanalamat lojik.

Page 6: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Transport Layer

• Lapisan ini adalah lapisan sebenarnya yang memberikan fasilitas komunikasi bagikebanyakan sistem tersebar. Pada lapisan iniada dua macam protokol yang seringdigunakan, yaitu: – TCP (Transport Control Protocol) dengan

karakteristik sebagai berikut: • connection-oriented, sistem-sistem yang akan

berkomunikasi harus terlebih dulu saling mengetahuidan sepakat.

Page 7: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

• reliable, tersedia mekanisme yang menjamin paket yang rusakatau hilang dikirim ulang.

• stream-oriented communication. • membutuhkan sumber daya komputasi dan jaringan lebih besar

dari UDP

• UDP (User Datagram Protocol) dengan karakteristiksebagai berikut: – connectionless, tidak memerlukan adanya saling

mengetahui dan kesepakatan. – unreliable (best-effort) datagram communication, tidak

tersedia mekanisme yang menjamin paket yang rusakatau hilang dikirim ulang.

– membutuhkan sumber daya komputasi dan jaringanlebih kecil dari TCP.

Page 8: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Middleware Layer

• adalah lapisan yang dibuat untuk menyediakanlayanan-layanan dan protokol-protokol yang seragam dan dapat digunakan oleh aplikasi-aplikasi yang berbeda-beda.

• Pada lapisan ini terdapat sekumpulan protokolkomunikasi yang beragam yang memungkinkanberbagai macam aplikasi dapat berkomunkasi.

• Middleware juga memberikan fasilitasmarshaling, yaitu proses pengubahan data dalamkomunikasi antar proses menjadi bentuk yang siapdikirimkan melalui jaringan sehingga dapat tetapkonsisten ketika sampai di sisi penerima, danproses kebalikannya, unmarshaling.

Page 9: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Protokol lain Middleware1. Protokol naming yang menangani masalah

pemberian nama dan pencarian lokasi nama. 2. Protokol keamanan yang berfungsi mengamankan

komunikasi yang bersifat penting dan rahasia.

Fungsi utama dari Middleware Layer adalah membuatkerumitan komunikasi antar proses di sistem yang berbeda menjadi transparan seolah-olah komunikasihanya terjadi secara lokal. Layanan penting lainnya adalah mekanismeperluasan/penambahan ukuran sistem atau lebihdikenal sebagai scaling mechanism. Fasilitas inimenyediakan dukungan untuk proses replikasi dancaching (penyimpanan sementara).

Page 10: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Jenis-jenis Komunikasi dalamMiddleware

• Berdasarkan sifat-sifatnya komunikasi dalamsistem tersebar melalui Middleware dapatdigolongkan menjadi:

1. Transient versus persistent, 2. Asynchrounous versus Synchronous

Page 11: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

• persistent communication sebuah pesan yang dikirim akan disimpan dalam tempatpenyimpanan sementara selama pesantersebut belum diterima oleh sistem tujuansedangkan pada transient communication pesan segera dibuang oleh sistem komunikasiperantara ketika tidak dapat dikirimkan ketujuan berikutnya.

Page 12: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

• aSynchronous communication pengirim dapatlangsung mengirimkan pesan berikutnya ketikapesan terdahulu belum sampai di sisi penerima.

• Synchronous communication mensyaratkan pesanterdahulu diterima sebelum pesan berikutnya dapatdikirimkan. Pengiriman pesan berikutnya dapatditunda pada tiga titik berikut: 1. sampai Middleware menyatakan akan melayani

permintaan pengiriman pesan ketika diminta olehpengirim,

2. sampai pesan sebelumnya terkirimkan ke penerima, atau

3. sampai penerima pesan memberikan respon terhadappesan yang dikirimkan.

Page 13: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik
Page 14: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Remote Procedure Call (RPC) Banyak sistem terdistribusi dibuat berdasarkan pertukaran pesanantarproses secara eksplisit namun prosedur send dan receive yang biasa digunakan tidak menyediakan fasilitas untukmenyembunyikan kerumitan proses komunikasi antar proses padasistem tersebar. Hal ini berakibat pada kerumitan mengembangkan aplikasi sistemtersebar bagi para pengembang aplikasi. Untuk menyembunyikankerumitan ini dibuatlah konsep Remote Procedure Calling

RPC adalah sebuah proses pada suatu mesin yg dapat memanggilprosedur yang berada di mesin lainnya. Pada saat memanggilprosedur pada mesin lain proses yang memanggil akan ditundaeksekusinya hingga mendapatkan balasan hasil eksekusi darimesin lawannya. Pesan dapat dikirimkan sebagai nama danparameter prosedur kemudian kembali diterima sebagai keluaranprosedur.

Page 15: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Operasi Dasar RPC Pada RPC komputer yang memanggil remote procedure berstatus sebagaiclient sedangkan yang menyediakan prosedur yang dipanggil berstatussebagai server. Berikut ini adalah rangkaian kejadian ketika sebuahremote procedure call terjadi:

1. Aplikasi yang berada di client memanggil prosedur yang disediakan olehserver.

2. Nama prosedur yang dipanggil dan parameter masukannya (jikadiperlukan) sebelum dikirimkan melalui jaringan komputer terlebihdahulu diubah menjadi format yang sesuai untuk pengiriman melaluijaringan atau lebih dikenal sebagai proses marshalling. Prosesmarshalling ini dilakukan oleh suatu perangkat lunak yang dikenalsebagai client stub.

3. Client stub kemudian memanggil prosedur mengirim paket melaluijaringan yang disediakan dan menjadi tanggung jawab sistem operasiclient.

Page 16: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

4) Sistem operasi client mengolah pesan dari client stub dan menjadi paketjaringan dan dikirimkan ke komputer server

5) Di sisi server pesan diterima oleh sistem operasi dan diberikan kepadaserver stub yang melakukan proses kebalikan dari marshalling yaituunmarshalling. Proses unmarshalling mengubah pesan dari client stub menjadi bentuk awal berupa panggilan untuk prosedur tertentudengan parameter masukannya.

6) Server akan memanggil prosedur yang diinginkan dengan parameter masukan yang diterima dari server stub kemudian mengembalikan hasilpemanggilan prosedur kepada server stub.

7) Server stub melakukan marshalling pesan berisi hasil dari prosedur yang dipanggil, kemudian memanggil layanan pengiriman data dari sistemoperasi server.

8) Sistem operasi server mengolah pesan dari server stub menjadi paketjaringan dan dikirimkan ke komputer client.

9) Sistem operasi client menerima paket dari sistem operasi server danmenyampaikannya pada client stub.

10) Client stub melakukan unmarshalling dan memberikan hasil pemanggilanprosedur kepada yang aplikasi yang melakukan RPC

Page 17: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik
Page 18: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

RPC: Parameter PassingPada saat nama prosedur dan parameter masukan diubah menjadi pesan ada beberapa hal yang perlu diperhatikan, yaitu:

1. Client dan server sangat mungkin memiliki carapembacaan data dengan urutan yang berbeda (little endian dan big endian).

2. Jika terjadi proses encoding maka client dan server harussepakat mengenai encoding yang digunakan.

3. Representasi tipe data dasar seperti integer, float, danstring dalam bentuk biner dapat berbeda-beda antarkomputer dan bahasa pemrograman.

4. Representasi tipe data kompleks seperti array, union, objek, dan sebagainya ke dalam bentuk biner juga dapatberbeda-beda.

Page 19: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Untuk menyelesaikan masalah-masalah tersebutclient dan server harus mengubah pesan menjadiformat representasi data yang tidak bergantungmesin maupun bahasa pemrograman

Page 20: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

ASynchronous RPC RPC asinkron (aSynchronous RPC) adalah teknik prosesyang memanggil remote procedure tidak menungguhasil dari sisi server untuk melanjutkan mengeksekusiinstruksi berikutnya. Pada RPC asinkron server langsung memberikan balasan ketika pesan dari client diterima tanpa memproses pesan terlebih dahulu danbegitu balasan dari server diterima client segeramelanjutkan eksekusi instruksi berikutnya

Page 21: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

RPC pada Tataran Praktis: DCE

DCE atau Distributed Computer Environment adalah sebuah Middleware yang berfungsi untukmenjadi sebuah lapisan yang menyembunyikankerumitan lapisan sistem operasi dan lapisankomunikasi jaringan dalam RPC. DCE awalnya dikembangkan untuk sistem operasiUNIX namun saat ini telah dibuat agar dapatdijalankan di berbagai sistem operasi terkenaltermasuk Windows dan VMS

Page 22: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Message-Oriented Communication

Tidak semua komunikasi antar sistem berlangsungdengan sifat sinkron dan persistent seperti pada RPC. Ada kalanya sistem tidak dapat memastikan apakahserver tujuan akan menerima pesan dan hasil akansegera diterima dalam orde milidetik melainkan dapatmenunggu hingga orde menit. Untuk komunikasi dengansifat seperti ini lebih sering digunakan komunikasi yang berorientasi pesan menggunakan message-queueingatau dikenal sebagai System message oriented Middleware.Pada komunikasi jenis ini pesan yang dikirimkan akandimasukkan dalam antrian (queue) tertentu sebelummencapai server tujuan.

Page 23: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

• Sifat : – Put: untuk memasukkan pesan ke antrian

tertentu, – Get: untuk mengambil pesan dari antrian

tertentu dengan memblok proses hingga antriantidak kosong dan mengambil pesan di awalantrian,

– Poll: untuk memeriksa antrian tertentu untukmendapatkan pesan dengan tidak memblokproses dan mengambil pesan di awal antrian

– Notify: untuk memasang sebuah handler dalamantrian yang akan dieksekusi ketika sebuahpesan dimasukkan ke dalam antrian tersebut.

Page 24: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Arsitektur Message Queuing System

Hal yang perlu diperhatikan dalam message queuing System adalah bahwa pesan hanyadapat diletakkan dalam antrian yang bersifatlokal seperti dalam komputer yang sama ataupaling jauh berada pada jaringan LAN yang sama. Antrian tersebut dikenal sebagai source queue. Seperti halnya pesan hanya dapat diletakkanpada antrian lokal pesan juga hanya dapatdiambil melalui antrian lokal yang dikenalsebagai destination queue.

Page 25: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik
Page 26: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

• Antrian-antrian dalam sistem terdistribusi tidak beradapada satu lokasi saja tetapi tersebar di beberapa lokasidalam jaringan. Untuk dapat menyampaikan suatupesan message queuing System haruslah memilikiinformasi berisi pemetaan antrian dengan lokasijaringannya 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 pesandalam jaringan disebut sebagai relay

Page 27: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik
Page 28: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Message Broker • Salah satu masalah dalam pertukaran pesan adalah

perbedaan format pesan yang mungkin di antaraaplikasi-aplikasi yang bergabung dalam sebuahmessage queuing System. Untuk mengatasinya digunakan suatu utilitastambahan yang dikenal sebagai message broker. Message broker bertindak sebagai gateway yang bekerja di lapisan aplikasi untuk menanganiperbedaan format pesan. Pada umumnya message broker adalah sebuah aplikasi tambahan yang bersifat opsional sehingga tidak bisa dianggapsebagai bagian integral dari sebuah queuing System.

Page 29: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik
Page 30: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Stream-Oriented Communication

• Ada komunikasi lain yang pengaturan waktu sangatberpengaruh terhadap kebenaran informasi.

• Contohnya adalah pada pengiriman informasi berupasuara atau audio. Jika sampling dilakukan dengan pulse code modulation dan dilakukan pada frekuensi 44100 Hz maka untuk menghasilkan suara yang serupa di sisipenerima tidak hanya paket-paket berisi data sampling diterima dengan urutan yang benar tetapi dengan jedapenerimaan antar paket yang sama dengan frekuensisampling yaitu 1/44100 detik.

Page 31: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Data stream

• Data stream atau aliran data adalah rangkaianunit-unit data yang dapat disampaikan secaradiskrit (dalam paket-paket) maupun kontinyu(aliran tidak terputus/terbagi-bagi). Pengaturanwaktu sangat penting ketika aliran data dikirimkan secara kontinyu.

• Untuk memberi perlakuan yang sesuaiberdasarkan pengaturan waktu transmisi data dapat dibedakan menjadi beberapa jenis, yaitu

Page 32: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

– Transmisi asinkron (aSynchronous transmission) Padatransmisi jenis ini data dalam stream dialirkan secaraberurutan tetapi tidak ada batas waktu kapan transmisi data berlangsung. Transmisi ini biasanya berlaku pada pengirimandata yang bersifat diskrit seperti file atau pesan.

– Transmisi sinkron (Synchronous transmission) Kebalikan daritransmisi asinkron transmisi jenis ini memiliki batas waktumaksimum jeda pengiriman dari ujung ke ujung untuk setiapunit aliran data. Pada transmisi ini tidak penting apakah data dikirimkan lebih cepat dari batas maksimum jeda. Contohaplikasinya adalah pada sensor suhu yang mengirimkansampling suhu kepada suatu pengendali. Data sampling yang tiba lebih cepat dari batas maksimum tidak memberikanpengaruh apapun terhadap pekerjaan pengendali.

– Transmisi isokron (isochronous transmission). Pada transmisijenis ini terdapat batas maksimum dan minimum jedapengiriman dari ujung ke ujung atau yang dikenal sebagaijitter. Transmisi ini berlaku pada pengiriman data audio, video dan multimedia.

Page 33: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Quality of Service Kebutuhan akan pengaturan waktu dan kebutuhannonfungsional lainnya biasanya diterjemahkan menjadikebutuhan Quality of Service atau QoS.kebutuhan ini menjelaskan apa yang dibutuhkan oleh sistemdan jaringan yang menjadi basis dari sebuah sistem tersebaragar aliran pengiriman data dapat berlangsung sesuai dengankebutuhan pengguna. QoS untuk pengiriman data kontinyubiasanya menekankan pada kesesuaian dengan batasan jeda,keterurutan, ukuran/besar, dan kehandalan. Dari sisi aplikasiQoS terdiri dari beberapa property, seperti:– Laju pengiriman bit (bit rate), – Jeda maksimum hingga sebuah sesi bisa terbentuk (aplikasi siap

mengirimkan data), – Jeda maksimum pengiriman dari ujung ke ujung (end-to-end), – Variasi jeda (jitter) maksimum, – Jeda round trip.

Page 34: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

• Agar sistem dan jaringan yang menjadi basis sistemterdistribusi dapat menjaga keterpenuhan QoS adabeberapa teknik yang diterapkan.

Teknik pertama dilakukan di lapisan jaringan di mana data yang dikirimkan dapat diberi label yang menandakantingkat prioritas data tersebut untuk didahulukan atauditunda. Label-label tersebut antara lain: – Expedited forwarding yang menandakan data tersebut

memiliki prioritas paling tinggi untuk diproses dan dikirimkanoleh router.

– Assured forwarding yang lebih rendah dari expedited forwarding namun terbagi menjadi empat kelas tingkatan untukmemberikan keleluasaan lebih dalam menentukan tingkatprioritas data.

Page 35: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Teknik ke-dua adalah dengan membuat tempatpenyimpanan sementara atau buffer untuk paket-paketdata yang diterima sebelum diproses. Teknik ini berguna untuk mengurangi variasi jeda ataujitter. Paket-paket yang diterima disimpan sementaradalam buffer untuk kemudian oleh proses yang membutuhkan diambil ketika dibutuhkan.

Kekurangannya adalah jika ada terdapat paket data yang benar-benar terlambat maka dapat terjadi kasus di manaproses tidak dapat menemukan paket yang terlambatdalam buffer sehingga pemrosesan menjadi terhambat.

Page 36: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

• Teknik ke-tiga adalah untuk menangani paketdata yang tertunda atau hilang maka harus dibuatsebuah forward error correction (FEC) di sisipenerima.

• FEC yang banyak digunakan adalah denganmembuat sebuah teknik untuk memprosesdengan benar sejumlah data yang diterima darikeseluruhan data yang seharusnya diterimasehingga kehilangan sebagian data tidakmempengaruhi kebenaran data-data yang telahditerima.

Page 37: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Multicast Communication • Salah satu isu penting dari komunikasi adalah bagaimana

menyampaikan informasi ke beberapa penerima secarabersamaan atau lebih dikenal sebagai multicasting.

• Mutlicasting dapat dilakukan di lapisan network denganmembentuk jalur-jalur khusus tetapi akan membutuhkansumber daya yang besar dan terkadang membutuhkanpenanganan dari manusia.

• Dengan berkembangnya teknologi peer-to-peer danmanajemen lapisan pengganti terstruktur penentuan jalurpenyebaran data dapat menjadi lebih mudah dengandilakukan di lapisan aplikasi.

• Cara lainnya adalah dengan meniadakan kebutuhan jalurkhusus dengan teknik penyebaran gosip (gossiping).

Page 38: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Application Level Multicasting

• Ide dasarnya adalah dengan membentuksebuah lapisan baru di tingkat aplikasi yang mengorganisasi simpul-simpul penerimainformasi menjadi suatu jaringan maya. Sebagai catatan router tidak akan diikutkan(transparan) dalam jaringan baru ini.

Page 39: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

Gossiping • Gossiping dikembangkan berdasarkan pengamatan pada penyebaran

penyakit atau dikenal dengan epidemic behavior. Idenya adalahbagaimana menyebarkan informasi pada sejumlah besar simpulmenggunakan hanya informasi lokal tanpa mengetahui banyak mengenaikondisi jaringan sehingga tidak terdapat pusat pengendalian penyebaraninformasi.

• Pada teknik ini simpul yang menjadi bagian dari sistem tersebar dikatakanterinfeksi jika memiliki informasi dan berkenan menyebarkannya padasimpul lain. Simpul yang belum mendapatkan informasi disebut sebagaisusceptible atau berpotensi. Simpul yang tidak berkenan menerimainformasi disebut sebagai simpul yang dihilangkan (removed). Perludicatat bahwa simpul-simpul diasumsikan dapat membedakaninformasi baru dengan informasi lama. Hal ini dapat dicapai denganmemberikan keterangan waktu dan versi kepada informasi yang disebarkan.

Page 40: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

• Model penyebaran yang terkenal adalah model anti-entropy. Pada model ini sebuah simpul P memilih simpul Q secara acak dan kemudianbertukar informasi dengan simpul Q. Ada tiga pendekatan dalambertukar informasi antara P dan Q, yaitu: – P hanya memberikan informasi baru secara sepihak kepada Q, – P hanya mengambil informasi baru dari Q, – P dan Q saling mengirimkan informasi baru.

• Cara pertama diketahui merupakan pilihan yang buruk apabila yang terjadiadalah penyebaran informasi pembaruan (update) secara cepat. Hal initerjadi karena pada sistem tersebar yang murni hanya menggunakan carapertama hanya simpul yang terinfeksi yang boleh menyebarkan update dan simpul terinfeksi tersebut belum tentu memilih simpul berpotensi. Akibatnya dapat terjadi kasus di mana simpul berpotensi tidak akanmendapatkan update dalam jangka waktu yang cukup lama.

Page 41: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

• Salah satu varian dari teknik penyebaran ini disebut rumor spReadingatau gossiping.

• Jika simpul P baru saja diperbarui untuk informasi tertentu i makasimpul P akan menghubungi simpul Q untuk mencoba memberikanupdate secara sepihak kepada Q. Jika simpul Q sudah diperbarui olehsimpul lain maka P tidak akan menyebarkannya pada simpul lain.

• Gossiping terbukti sebagai teknik yang paling efisien dalam menyebarkaninformasi dengan penerima skala besar secara cepat namun teknik inimemiliki masalah dalam menyebarkan penghapusan informasi tertentu. Hal ini dikarenakan jika informasi dihapus maka ketika simpul menerimainformasi yang lebih tua versi atau usianya maka informasi tersebut tidakdianggap kadaluwarsa dan dianggap sebagai informasi yang belumdimiliki. Untuk mengatasi hal ini maka digunakanlah trik denganmenganggap penghapusan sebagai update biasa sehingga informasi lama tetap dianggap kadaluwarsa. Informasi update untuk penghapusandikenal sebagai death certificate.

Page 42: Interprocess communication atau komunikasi antar prosesdinus.ac.id/repository/docs/ajar/pertemuan4_Interprocess... · ada dua macam protokol yang sering ... ditunda pada tiga titik

• Masalahnya adalah bagaimana menghilangkandeath certificate. Untuk mengatasinya makasetiap informasi harus memiliki batas waktuhidup tertentu dalam jaringan. Ketika masa hidupinformasi telah habis maka informasi tersebutakan dihapus. Death certificate akan diberi usiapaling lama sehingga tidak ada informasikadaluwarsa yang datang pada suatu simpulketika death certificate sudah tidak dihapus darijaringan