system model

47
System Model

Upload: yoni-arisandi

Post on 21-Dec-2015

225 views

Category:

Documents


9 download

DESCRIPTION

SD

TRANSCRIPT

Page 1: System Model

System Model

Page 2: System Model

Materi

• Latar Belakang• Model Fisikal• Model Arsitektural• Model Fundamental

Page 3: System Model

Latar Belakang

Page 4: System Model

Latar Belakang

• Sistem terdistribusi yang dibangun bisa jadi sangat kompleks

• Butuh perancangan yang baik agar sistem dapat berjalan dengan baik dalam berbagai kondisi

• Ada 3 model untuk mendeskripsikan rancangan sistem :– Model fisikal– Model arsitektural– Model fundamental

Page 5: System Model

3 System Model

• Fisikal : menjelaskan komposisi perangkat keras dan jenis jaringan yang dipakai pada sistem terdistribusi

• Arsitektural : menjelaskan bagaimana komputasi dan komunikasi antar elemen dilakukan.

• Fundamental : menjelaskan permasalahan pada sistem dan solusinya.

Page 6: System Model

Model Fisikal

Page 7: System Model

Model Fisikal

• Model yang menjelaskan komposisi perangkat keras dan jenis jaringan yang dipakai pada sistem– Contoh :

• Komposisi hardware : desktop computer, server computer, wireless sensor, smartphone

• Jenis jaringan : wired, wireless, LAN, WAN, MAN • Pertanyaan penting :

– Komposisi hardware apa yang dipakai dalam sistem?

– Jenis jaringan apa yang dipakai dalam sistem?

Page 8: System Model

Perkembangan Model Fisikal

• Ditinjau dari model fisikal-nya, sister mengalami 3 fase perkembangan :– Early distributed system– Internet-scale distributed system– Contemporary distributed system

Page 9: System Model

Early Distributed System

• Berkembang tahun 1970-1980an• Sistem terdiri atas 10-100 node• Terhubung lewat jaringan LAN• Koneksi internet terbatas• Jenis layanan terbatas : sharing printer, file

server, email dan file transfer

Page 10: System Model

Internet-scale Distributed System

• Berkembang tahun 1990an• Jaringan merupakan interkoneksi antar-jaringan• Jumlah node meningkat pesat• Node berupa komputer desktop (non-mobile)

Page 11: System Model

Contemporary Distributed System

• Jenis node lebih heterogen– Terdapat mobile node dalam sistem– Ubiqutous : melibatkan node berukuran kecil yang

menempel di setiap benda• Contoh : sensor tubuh, sensor pohon

• Jenis jaringan lebih heterogen– Contoh : LAN, WLAN, WSN

• Cloud computing– Kumpulan dari banyak node (pools of node) untuk

mengerjakan tugas tertentu

Page 12: System Model

Perbandingan Model Fisikal

Page 13: System Model

Model Arsitektural

Page 14: System Model

Tugas di Kelas

• Jawablah pertanyaan berikut dan berikan contoh untuk masing-masing jawaban :– What are the entities that are communicating in the

distributed system?– How do they communicate, or, more specifically, what

communication paradigm is used?– What (potentially changing) roles and responsibilities do

they have in the overall architecture?– How are they mapped on to the physical distributed

infrastructure (what is their placement)?• Referensi : textbook halaman 42-51• Waktu pengerjaan 30 menit

Page 15: System Model

Model Arsitektural

• Model yang menjelaskan bagaimana komputasi dan komunikasi antar elemen dilakukan.

• Pertanyaan penting :– Communicating entitites : Entitas apa saja yang

saling berkomunikasi dalam sistem?– Communication paradigm : Bagaimana cara

mereka berkomunikasi?– Role and responsibility : Apa peran masing-

masing entitas?– Placement : Bagaimana entitas tadi ditempatkan

secara fisik dalam komponen hardware?

Page 16: System Model

Communicating entities

• Process– Pada dasarnya, yang berkomunikasi adalah

process yang berjalan di masing-masing hardware– Pada sensor, hanya ada satu proses tunggal,

sehingga entitas disebut sebagai node– Satu process bisa memiliki beberapa thread

• Objects– Pada program berbasis object, yang

berkomunikasi adalah object• Component• Webservice

Page 17: System Model

Communication Paradigm (CP)

• Ada beberapa metode komunikasi antar entitas– Inter-process Communication (IPC)– Remote Invocation– Indirect Communication

Page 18: System Model

CP : Inter-Process Communication (IPC)

• Metode dasar (low-level) untuk komunikasi antar process

• Berdasarkan jangkauannya, IPC dibagi jadi dua :– IPC untuk process dalam satu host

• e.x. message passing– IPC untuk process lintas host

• e.x. socket

• Detail pembahasan di Chapter 4

Page 19: System Model

CP : Remote Invocation

• Metode komunikasi yang memungkinkan satu entitas mengeksekusi fungsi/method entitas lain.

• Terdapat beberapa teknik remote invocation :– Request-Reply

• Client mengirim pesan Request, Server membalas Response• Contoh : protokol HTTP

– Remote procedure call (RPC)• Menjalakan procedure/fungsi pada entitas lain yang berada pada

komputer berbeda (remote) – Remote method invocation (RMI)

• Mirip RPC, hanya saja yang dijalankan adalah method dari suatu Object

• Detail pembahasan di Chapter 5

Page 20: System Model

CP : Indirect Communication

• Metode IPC dan Remote Invocation merupakan metode komunikasi direct – Pengirim (sender) tahu secara spesifik siapa yang

menerima pesan (receiver)• Pada metode komunikasi indirect :

– Sender tidak perlu tahu siapa receiver-nya– Sender dan receiver tidak perlu ada pada saat

yang bersamaan

Page 21: System Model

CP : Indirect Communication (2)

• Beberapa jenis komunikasi indirect :– Group communication

• Pesan dari sender dikirimkan ke grup• Pesan diterima semua anggota grup tanpa perlu tahu secara

sepsifik siapa saja yang menerima pesan– Publish-subscribe

• Sender berperan sebagai publisher yang menerbitkan sebuah pesan

• Pesan diterima semua subscriber tanpa perlu tahu secara spesifik siapa saja yang menerima pesan

– Message queues• Mirip Pub-Sub hanya saja komunikasi dilakukan point-to-point

antar dua entitas– Tuple space– Distributed shared memory

Page 22: System Model

Ringkasan Communication Paradigm

Page 23: System Model

Role and Responsibility

• Pada sister, tiap entitas punya peran masing-masing

• Terdapat 2 pendekatan peran :– Client-Server– Peer-to-peer

Page 24: System Model

Role : Client-Server

• Berdasarkan perannya, entitas dibagi jadi dua jenis :– Entitas server– Entitas client

• Entitas client mengirimkan request ke server• Entitas server mengolah permintaan client,

kemudian mengembalikan response ke client• Peran tiap entitas bisa dipertukarkan

– Entitas server bisa berperan ganda jadi entitas client server lain

• e.x. Web browser -> Search engine (Web server) -> Web crawler

Page 25: System Model

Role : Client-Server (2)

Page 26: System Model

Role : Peer-to-Peer

• Tidak ada pembagian peran, semua entitas punya peran yang sama– e.x. setiap entitas dapat meminta (request) data

sekaligus berbagi data dengan entitas lain• Punya skalabilitas lebih tinggi dari client-

server– Client-server mengharuskan satu/lebih entitas jadi

server. Bagaimana jika server mati?– Pada peer-to-peer, sistem tidak bergantung pada

satu/beberapa entitas• Contoh : Bit Torrent

Page 27: System Model

Role : Peer-to-Peer (2)

Page 28: System Model

Placement

• Pada sister, setiap entitas (process/service) ditempatkan secara fisik pada masing-masing komponen hardware

• Terdapat beberapa metode penempatan :– Mapping services to multiple servers– Caching– Mobile code– Mobile agents

Page 29: System Model

Placement : Mapping services to multiple servers

• Service ditempatkan pada beberapa komputer yang berbeda namun tetap saling berinteraksi

• Terdapat dua opsi implementasi :– Partisi

• Service dan object yang menyertainya misal data, akan dibagi-bagi lalu ditempatkan pada komputer terpisah

• Contoh : data 1000 mahasiswa dipecah ke 100 komputer

– Replikasi• Service dan object yang menyertainya misal data,

digandakan pada komputer terpisah• Contoh : masing-masing 100 komputer punya data

1000 mahasiswa yang saa

Page 30: System Model

Placement : Cache

• Data yang baru saja diakses akan disimpan sementara sebagai cache

• Jika ada yang mengakses data tersebut, akan diambilkan dari cache, bukan dari sumber data asli

• Contoh : proxy server

Page 31: System Model

Placement : Mobile Code

• Program yang diunduh dari server, lalu dijalankan di sisi client– Contoh : Java applet, animasi Flash– Web browser mengakses halaman ber-applet– Web browser mengunduh kode applet dari server

lalu menjalankannya di sisi client– Beberapa data mungkin masih diakses dari server

• Keuntungan : cepat, karena applet berjalan di sisi client sehingga tidak ada delay

• Kelemahan : tidak aman

Page 32: System Model

Placement : Mobile Agent

• Program berjalan yang bergerak dan dieksekusi pada beberapa komputer

• Contoh :– Program untuk install otomatis program di

beberapa komputer dalam satu jaringan– Virus, worm

Page 33: System Model

Architectural Pattern

• Baca section 2.3.2 halaman 51-58

Page 34: System Model

Associated middleware solution

• Baca section 2.3.3 halaman 58-61

Page 35: System Model

Model Fundamental

Page 36: System Model

Model Fundamental

• Model yang menjelaskan permasalahan pada sistem dan solusinya.

• Terdapat tiga model fundamental :– Model interaksi– Model failure (kegagalan)– Model security (keamanan)

Page 37: System Model

Model Interaksi

• Model yang menjelaskan bagaimana interaksi antar entitas

• Entitas dalam sister berkomunikasi dan berinteraksi untuk mencapai tujuan tertentu– Contoh : entitas pada DNS server

• Karena antar entitas dihubungkan oleh jaringan, maka ada dua faktor yang mempengaruhi interaksi :– Kualitas jaringan (QoS)– Timing pada masing-masing komputer

Page 38: System Model

Model Interaksi : Kualitas Jaringan

• Kriteria kualitas jaringan :– Delay

• Jeda waktu antara waktu pengiriman pesan dan waktu penerimaan pesan

• Total delay = waktu transmisi data + delay karena traffic jaringan + waktu OS akses pesan

– Bandwidth• Jumlah total data yang bisa dikirimkan dalam periode waktu

tertentu. • Satuan : bps (bit per second)

– Jitter• Variasi waktu yang dibutuhkan untuk mengirim data berurutan• Contoh : video streaming

Page 39: System Model

Model Interaksi : Timing pada tiap komputer

• Setiap komputer pada sistem bisa jadi punya perbedaan waktu

• Perbedaan disebabkan clock drift rate yang berbeda antar komputer– Rentang penyimpangan tiap komputer berbeda

• Isu sensitif pada sistem yang butuh tingkat presisi waktu tinggi e.x. Air Traffic Control (ATC)

• Solusi :– Menggunakan timing GPS– Menggunakan NTP (Network Time Protocol)

Page 40: System Model

Variasi Model Interaksi

• Terdapat dua variasi model interaksi :– Synchronous distributed system

• Waktu eksekusi setiap process diketahui• Waktu transmisi data diketahui• Drift time diketahui

– Asynchronous distributed system• Waktu eksekusi bisa jadi berbeda• Waktu transmisi tidak diketahui pasti

Page 41: System Model

Failure Model

• Model yang menjelaskan beberapa kemungkinan kegagalan sistem

• Kegagalan bisa terjadi pada dua tempat : entitas (process) dan jaringan

• Penyebab kegagalan :– Kesalahan pemrograman : exception, divide by

zero– Link fisik jaringan terputus– Data yang diproses melebihi kapasitas sistem

Page 42: System Model

Jenis Failure

Page 43: System Model

Model Security

• Model yang menjelaskan kemungkinan serangan ke sistem dan cara pencegahannya

• Kemungkinan serangan :– Denial of Service

• Serangan untuk mematikan layanan– Access violation

• Akses layanan oleh user yang tidak berhak– Sniffing

• Pencurian/penyadapan data

Page 44: System Model

Pencegahan Serangan

• Enkripsi data• Authentikasi dan Authorisasi• Secure channel e.x. https

Page 45: System Model

Kesimpulan

• Model Fisikal– Early distributed system– Internet-scale distributed system– Contemporary distributed system

• Model Arsitektural– Communicating entitites

• Process, object, component– Communication paradigm

• Inter-process Communication (IPC)• Remote Invocation• Indirect Communication

– Role and responsibility• Peer to Peer• Client-Server

– Placement• Mapping services to multiple servers• Caching• Mobile code• Mobile agents

• Model Fundamental– Interaksi– Failure– Security

Page 46: System Model

Tugas

• Kerjakan exercise nomor 2.3, 2.8, dan 2.13• Jawaban diupload via Online Course dalam

format PDF

Page 47: System Model

Terima Kasih