28
Pertemuan 4

Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

Embed Size (px)

Citation preview

Page 1: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

Pertemuan 4

Page 2: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

Interprocess communication atau komunikasiantar proses adalah inti dari sistem terdistribusidan komunikasi antar proses-proses padasystem-sistem komputer yang berbeda dapatterjadi jika sistem-sistem tersebut terhubungdalam suatu jaringan.

Komunikasi antar komputer diatur oleh aturanyang disebut protokol komunikasi.

Beragamnya pembuat perangkat keras danaplikasi komunikasi menghasilkan produk-produk yang tidak saling kompatibel sehinggamempersulit upaya komunikasi.

Page 3: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

1.1Layered Protocols◦ Interprocess communication atau komunikasi

antar proses adalah inti dari sistem terdistribusidan komunikasi antar proses-proses padasystem-sistem komputer yang berbeda dapatterjadi jika sistem-sistem tersebut terhubungdalam suatu jaringan. Komunikasi antarkomputer diatur oleh aturan yang disebutprotocol komunikasi.

◦ Beragamnya pembuat perangkat keras danaplikasi komunikasi menghasilkan produk-produk yang tidak saling kompatibel sehinggamempersulit upaya komunikasi.

◦ Sebuah standar protokol kemudian dibuat olehISO (International Standard Organization) untukmengatasi hal tersebut. Standar tersebut dikenalsebagai OSI (Open System Interconnection) modeldengan aristektur sebagai berikut.

Page 4: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

Arsitektur OSI dibuat berlapis-lapis dengan fungsi yang berbeda pada setiaplapisannya. Lapisan yang lebih tinggi menyembunyikan kerumitan darioperasi di lapisan yang lebih rendah dan suatu lapisan hanya dapat diaksesoleh lapisan yang ada di atas atau di bawahnya.

Hal tersebut dimaksudkan untuk memberi kemudahan kepada para pembuatperangkat keras dan perangkat lunak komunikasi dalam mengembangkanberbagai protokol yang berbeda sesuai kebutuhan namun dapat salingkompatibel dengan syarat produk mereka mengikuti standar yang telahditentukan dalam OSI.

Lapisan-lapisan (Layer) protokol tersebut dapat digolongkan lebih jauhmenjadi :

1. Low –level Layers

2. Transport Layer

3. Application Layer

4. Middleware Layer

Page 5: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

1.2Low-level LayersYang termasuk low-level Layer adalah lapisan-lapisansebagai berikut:

1.Physical Layer : berisi spesifikasi dan implementasi dari bit-bitdan proses transmisi dari pengirim ke penerima.

2.Data link Layer : bertanggung jawab mengurusi pengubahanbit-bit data menjadi frame untuk mengatasi error dan mengaturarus pengiriman frame (flow control).

3.Network Layer : mengatur bagaimana paket-paket diarahkan

agar mencapai tujuannya berdasarkan alamat lojik.

Page 6: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

1.3 Transport LayerLapisan ini adalah lapisan sebenarnya yang memberikan fasilitaskomunikasi bagi kebanyakan sistem tersebar. Pada lapisan ini ada duamacam protokol yang serimg digunakan, yaitu:1. TCP (Transport Control Protocol) dengan karakteristik sebagai berikut:

a.Connection-oriented, sistem-sistem yang akan berkomunikasi harusterlebih dulu saling mengetahui dan sepakat.

b.Reliable, tersedia mekanisme yang menjamin paket yang rusak atauhilang dikirim ulang.

c. Stream-oriented communication.d.Membutuhkan sumber daya komputasi dan jaringan lebih besar dari

UDP.2. UDP (User Datagram Protocol) dengan karakteristik sebagai berikut:

a.Connectionless, tidak memerlukan adanya saling mengetahui dankesepakatan.

b.unreliable (best-effort) datagram communication, tidak tersediamekanisme yang menjamin paket yang rusak atau hilang dikirimulang.

c.Membutuhkan sumber daya komputasi dan jaringan lebih kecil dariTCP

Page 7: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

1.4 Middleware Layer Lapisan adalah lapisan yang dibuat untuk menyediakan

layanan-layanan dan protokol-protokol yang seragamdan dapat digunakan oleh aplikasi-aplikasi yangberbeda-beda.

Pada lapisan ini terdapat sekumpulan protokolkomunikasi yang beragam yang memungkinkan berbagaimacam aplikasi dapat berkomunkasi.

Middleware juga memberikan fasilitas marshaling, yaituproses pengubahan data dalam komunikasi antar prosesmenjadi bentuk yang siap dikirimkan melalui jaringansehingga dapat tetap konsisten ketika sampai di sisipenerima, dan proses kebalikannya, unmarshaling.

Page 8: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis
Page 9: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

Protokol-protokol lain yang tersedia dalam sebuahMiddleware biasanya meliputi:1. Protokol naming yang menangani masalah pemberian nama

dan pencarian lokasi nama.

2. Protokol keamanan yang berfungsi mengamankankomunikasi yang bersifat penting dan rahasia.

Fungsi utama dari Middleware Layer adalah membuatkerumitan komunikasi antar proses di sistem yangberbeda menjadi transparan seolah-olah komunikasihanya terjadi secara lokal. Layanan penting lainnyaadalah mekanisme perluasan/penambahan ukuransistem atau lebih dikenal sebagai scaling mechanism.

Fasilitas ini menyediakan dukungan untuk prosesreplikasi dan Caching (penyimpanan sementara).

Page 10: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

Berdasarkan sifat-sifatnya komunikasi dalam

sistem tersebar melalui Middleware dapat

digolongkan menjadi:

1. Transient versus persistent,

2. Asynchrounous versus Synchronous

Pada persistent communication sebuah pesan yang

dikirim akan disimpan dalam tempat penyimpanan

sementara selama pesan tersebut belum diterima oleh

sistem tujuan sedangkan pada transient communication

pesan segera dibuang oleh sistem komunikasi perantara

ketika tidak dapat dikirimkan ke tujuan berikutnya.

Page 11: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

Pada aSynchronous communication pengirim dapat langsungmengirimkan pesan berikutnya ketika pesan terdahulu belumsampai di sisi penerima sedangkan Synchronous communicationmensyaratkan pesan terdahulu diterima sebelum pesanberikutnya dapat dikirimkan.

Pengiriman pesan berikutnya dapat ditunda pada tiga titikberikut:

1. Sampai Middleware menyatakan akan melayani permintaanpengiriman pesan ketika diminta oleh pengirim,

2. Sampai pesan sebelumnya terkirimkan ke penerima, atau

3. sampai penerima pesan memberikan respon terhadap pesanyang dikirimkan.

Page 12: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis
Page 13: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

Banyak sistem tersebar dibuat berdasarkan pertukaran pesanantarproses secara eksplisit namun prosedur send dan receive yangbiasa digunakan tidak menyediakan fasilitas untuk menyembunyikankerumitan proses komunikasi antar proses pada sistem tersebar.

Hal ini berakibat pada kerumitan mengembangkan aplikasi sistemtersebar bagi para pengembang aplikasi.

Untuk menyembunyikan kerumitan ini dibuatlah konsep Remote

Procedure Calling atau RPC sedemikian sehingga sebuah prosespada suatu mesin dapat memanggil prosedur yang berada di mesinlainnya. Pada saat memanggil prosedur pada mesin lain proses yangmemanggil akan ditunda eksekusinya hingga mendapatkan balasanhasil eksekusi dari mesin lawannya.

Pesan dapat dikirimkan sebagai nama dan parameter prosedurkemudian kembali diterima sebagai keluaran prosedur.

Page 14: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

1.Operasi Dasar RPCPada RPC komputer yang memanggil remote procedure berstatussebagai client sedangkan yang menyediakan prosedur yangdipanggil berstatus sebagai server. Berikut ini adalah rangkaiankejadian ketika sebuah remote procedure call terjadi:

1.Aplikasi yang berada di client memanggil prosedur yangdisediakan oleh server.

2.Nama prosedur yang dipanggil dan parameter masukannya (jikadiperlukan) sebelum dikirimkan melalui jaringan komputerterlebih dahulu diubah menjadi format yang sesuai untukpengiriman melalui jaringan atau lebih dikenal sebagai prosesmarshalling. Proses marshalling ini dilakukan oleh suatuperangkat lunak yang dikenal sebagai client stub.

3.Client stub kemudian memanggil prosedur mengirim paketmelalui jaringan yang disediakan dan menjadi tanggung jawabsistem operasi client.

Page 15: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

4. Sistem operasi client mengolah pesan dari client stub danmenjadi paket jaringan dan dikirimkan ke komputer server.

5. Di sisi server pesan diterima oleh sistem operasi dan diberikankepada server stub yang melakukan proses kebalikan darimarshalling yaitu unmarshalling. Proses unmarshallingmengubah pesan dari client stub menjadi bentuk awal berupapanggilan untuk prosedur tertentu dengan parametermasukannya.

6. Server akan memanggil prosedur yang diinginkan denganparameter masukan yang diterima dari server stub kemudianmengembalikan hasil pemanggilan prosedur kepada server stub.

7. Server stub melakukan marshalling pesan berisi hasil dariprosedur yang dipanggil, kemudian memanggil layananpengiriman data dari sistem operasi server.

Page 16: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

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: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

2. RPC: Parameter PassingPada saat nama prosedur dan parameter masukan diubahmenjadi pesan ada beberapa hal yang perlu diperhatikan,yaitu:1. Client dan server sangat mungkin memiliki cara pembacaan data

dengan urutan yang berbeda (little endian dan bigendian).2. Jika terjadi proses encoding maka client dan server harus sepakat

mengenai encoding yang digunakan.3. Representasi tipe data dasar seperti integer, float, dan string

dalam bentuk biner dapat berbeda-beda antar komputer danbahasa pemrograman.

4. Representasi tipe data kompleks seperti array, union, objek, dansebagainya ke dalam bentuk biner juga dapat berbeda-beda.

Untuk menyelesaikan masalah-masalah tersebut client danserver harus mengubah pesan menjadi format representasidata yang tidak bergantung mesin maupun bahasapemrograman.

Page 18: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis
Page 19: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

3. A Synchronous RPC

Pada umumnya proses yang melakukan remote procedure callakan berhenti sementara hingga mendapat hasil dari sisiserver. Proses-proses tertentu seperti: memulai layanan dikomputer lain, menransfer uang ke rekening lain, melakukanentri data pada basis data tidak perlu menunggu hasiltertentu dan dapat melanjutkan eksekusi intruksi berikutnya.

RPC asinkron (a Synchronous RPC) adalah teknik sedemikiansehingga proses yang memanggil remote procedure tidakmenunggu hasil dari sisi server untuk melanjutkanmengeksekusi instruksi berikutnya.

Pada RPC asinkron server langsung memberikan balasanketika pesan dari client diterima tanpa memproses pesanterlebih dahulu dan begitu balasan dari server diterima clientsegera melanjutkan eksekusi instruksi berikutnya.

Page 20: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis
Page 21: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

Pada kasus lain sebuah server dapat saja membutuhkanwaktu untuk menjalankan prosedur yang dipanggil olehClient. Contohnya adalah permintaan melakukan pencariandata tertentu pada server yang dapat membutuhkan waktucukup lama.

Client tidak perlu menghabiskan waktu dengan menunggujawaban hasil pencarian melainkan dapat langsungmelanjutkan eksekusi instruksi selanjutnya. Pada saatjawaban sudah selesai disusun oleh server dan dikirimkan keclient proses yang memanggil prosedur pencarian akandiinterupsi agar mengetahui bahwa jawaban dari server telahdatang dan dapat mengolah jawaban tersebut sesuaikebutuhannya.

Teknik ini dikenal sebagai deferred Synchronous RPC.

Page 22: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis
Page 23: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

4. 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 terkenal

termasuk Windows dan VMS.

Page 24: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

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 dikirimkansecara kontinyu. Untuk memberi perlakuan yangsesuai berdasarkan pengaturan waktu transmisidata dapat dibedakan menjadi beberapa jenis,yaitu:1. Transmisi asinkron (aSynchronous transmission

2. Transmisi sinkron (Synchronous transmission)

3. Transmisi isokron (isochronous transmission).

Page 25: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

Transmisi asinkron (aSynchronous transmission) Pada transmisijenis ini data dalam stream dialirkan secara berurutan tetapitidak ada batas waktu kapan transmisi data berlangsung.Transmisi ini biasanya berlaku pada pengiriman data yangbersifat diskrit seperti file atau pesan.

Page 26: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

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 datadikirimkan lebih cepat dari batas maksimum jeda. Contohaplikasinya adalah pada sensor suhu yang mengirimkansampling suhu kepada suatu pengendali. Data sampling yangtiba lebih cepat dari batas maksimum tidak memberikanpengaruh apapun terhadap pekerjaan pengendali.

Page 27: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis

Transmisi isokron (isochronous transmission). Padatransmisi jenis ini terdapat batas maksimum danminimum jeda pengiriman dari ujung ke ujung atauyang dikenal sebagai filter. Transmisi ini berlakupada pengiriman data audio, video dan multimedia.

Page 28: Pertemuan 4dinus.ac.id/repository/docs/ajar/Sister_4_Communication.pdf · Pertemuan 4 Interprocess ... Komunikasi antar komputer diatur oleh aturan ... Arsitektur OSI dibuat berlapis-lapis