Sistem Terdistribusi 2
Model arsitektur Terdistribusi
Model arsitektur Terdistribusi
Masalah Membangun SisTer
Masalah Membangun SisTer
B h b d l t k k
• Berhubungan dengan peletakan komponen-komponen dan juga relasi antar komponen
M tik t kt it kt bi hi • Memastikan struktur arsitektur bisa memenuhi
kebutuhan dan membuat sistem reliable, manageable adaptable dan cost-effective manageable, adaptable, dan cost-effective
• Sistem hrs melakukan klasifikasi terhadap proses yang terjadi pada server client maupun peer
yang terjadi pada server, client, maupun peer
• Sister memiliki banyak sekali variasi, tergantung dari jaringan komputer performa reliabilitas
dari jaringan komputer, performa, reliabilitas, keamanan, dan biaya
Kesulitan kesulitan peletakan
Kesulitan-kesulitan peletakan
D i i i d k i
• Dari sisi mode pemakaian
– Variasi yang beragam terhadap karakteristik pemakaian sistem
pemakaian sistem
• Berapa kali suatu halaman dikunjungi? • Seberapa sibuk suatu server?
Dari sisi masalah Internal • Dari sisi masalah Internal
– Masalah konkurensi akses
• Dari sisi masalah lingkungan sistem • Dari sisi masalah lingkungan sistem
– Masalah heterogenitas: hardware, sistem operasi dan jaringan
j g
• Dari sisi masalah ancaman eksternal
Model Arsitektur SisTer
Model Arsitektur SisTer
•
Software architecture
•
Software architecture
– Organisasi logika dari komponen-komponen software software – Ada 4 jenis: • Layered architectures • Layered architectures • Object-based architectures • Data-centered architectures • Data-centered architectures • Event-based architectures
•
System Architecture
•
System Architecture
– Placement of machines f fSoftware architecture
Layered system
- Breaking up the complexity of systems by designing them through layers and services
- layer: group of closely related and highly coherent functionalities
- service: functionality provided to a superior layer
- Examples of layered architectures
p
y
- operating systems (kernel, other services), computer network protocol architectures
Layered Architecture
Layered Architecture
Contoh OS: – Windows – Linux – MacintoshContoh lain: OSI dan TCP/IP
Typical layering in Distributed
Systems
Pl tf
H d
d
ti
t
-
Platform
: Hardware and operating system
- Windows NT / Pentium processor - Solaris / SPARC processor
-
Middleware
: achieve transparency of
p
y
heterogeneity at platform level
- Achieve communication and resource sharing g ie.g., remote method invocation
- Examples
- CORBA (OMG), DCOM (Microsoft), Java Remote Method Invocation (Sun)
Object based Architecture
Object based Architecture
Bagus dapat menggunakan mekanisme Remote Procedure Call antar obyek Bagus, dapat menggunakan mekanisme Remote Procedure Call antar obyek
Event based Architecture
Event-based Architecture
Dikenal sbg: Publish/Subscribe System
Data Centered Architecture
Data Centered Architecture
Klasifikasi Proses
Klasifikasi Proses
P S
• Proses Server
– Menyediakan layanan dan menangani request
• Proses Client • Proses Client
– Proses membuat melakukan request
• Proses PeerProses Peer
– Proses yang saling bekerja sama dan berkomunikasi
• MiddlewareMiddleware
– Menyediakan transparansi terhadap
keanekaragaman platform proses dan objek pada sekumpulan mesin yang menerapkan protokol untuk sekumpulan mesin yang menerapkan protokol untuk aplikasi terdistribusi
Clients Servers
Clients - Servers
Client invocation Server
invocation Server result result Client Process: Key: Computer: Process: Computer:
• Bersifat: centralized architecture
• Terjadi invocation dari client ke server
Interaksi client server
Interaksi client-server
Karakteristik CS
Karakteristik CS
S i M di k l t i h
• Service : Menyediakan layanan terpisah yang berbeda
Sh d S d t l i
• Shared resource : Server dapat melayani beberapa client pada saat yang sama dan mengatur pengaksesan Resource
mengatur pengaksesan Resource
• Asymmetrical Protocol : antara client dan server merupakan hubungan one to many
merupakan hubungan one-to-many.
• Mix-and-match : tidak tergantung pada platform
• Encapsulation of service : message
Karakteristik CS
Karakteristik CS
T L ti d t
• Transparency Location : proses server dapat ditempatkan pada mesin yang sama atau
terpisah dengan proses client. Client/server terpisah dengan proses client. Client/server
akan menyembunyikan lokasi server dari client.
• Message-based-exchange : antara client dan g g server berkomunikasi dengan mekanisme
pertukaran message.
S l bilit i t C/S d t di k k b ik
• Scalability : sistem C/S dapat dimekarkan baik vertikal maupun horisontal
• Integrity : kode dan data server diatur secara
• Integrity : kode dan data server diatur secara terpusat, sedangkan pada client tetap pada komputer tersendirip
Multiple
server
• Service disediakan oleh beberapa server
• Contoh: sebagian besar layanan web komersial diterapkan melalui server fisik yang berbeda
• Untuk: kehandalan unjuk gigi • Untuk: kehandalan, unjuk gigi
• Server menggunakan replikasi atau database terdistribusi
Web proxy server
Web proxy server
Client Proxy Web server y server Web C Web server Client
• Server menduplikasi informasi (cache) untuk bertindakServer menduplikasi informasi (cache) untuk bertindak sebagai proxy
• Cache:
f
• menyimpan informasi lokal yg sering digunakan • Mengurangi beban kerja server
• Meningkatkan kinerja
Cache
Cache
Web applets / Mobile Agent
Web applets / Mobile Agent
) li t t lt i th d l di f l t d a) client request results in the downloading of applet code
Web server Applet code
Client
b) client interacts with the applet
Client Applet Web
Mobile agents
Mobile agents
• Executing program (code + data) in client side, carrying out of an autonomous task & interactive • Advantages: flexibility and savings in
communications cost
• Disadvantages: worm programs and cannot access to client resources (ie: JAVA applet) access to client resources (ie: JAVA applet)
Apllication Layering
Apllication Layering
Application Layering example
Application Layering example
• The simplified organization of an Internet search engine into three different layers.
Multitiered Architectures
Multitiered Architectures
• Disebut sebagai:
Decentralized
• Disebut sebagai:
Decentralized
architecture
The simplest organi ation is to ha e onl
• The simplest organization is to have only
two types
of machines:
– A client machine containing only the
programs implementing (part of) the user-interface level
– A server machine containing the rest, g ,
• the programs implementing the processing and data level
Multitiered Architectures (2)
Multitiered Architectures (2)
Thin Client Thick Client
C t h Thi Cli t Contoh Thin Client:
• VNC client (Virtual Network Controller)
• VNC is remote control software which allows you to view and fullyVNC is remote control software which allows you to view and fully interact with one computer desktop
Multitiered Architectures Interaction
Multitiered Architectures Interaction
Middleware
Middleware
• Sebuah komponen untuk
– Menyamarkan heterogeneity e ya a a e e oge e y – Melakukan message passing
Di
t
ik
d l
b
t k bj
t
• Direpresentasikan dalam bentuk object
• Contoh: Sun RPC, CORBA, RMI, DCOM
,
,
,
• Keuntungan: OS + Hardware independen
Peer to Peer
Peer-to-Peer
Peer to peer
Peer-to-peer
• Static structure – LAN – Example: Borgchat • Dynamic structurey – Structured• Distributed hash table – Unstructured
DHT on Peer to Peer
DHT on Peer-to-Peer
Superpeers
Superpeers
Collaborative Distributed Systems
-bitTorrent
• Download file .torrent dari website, yang berisi informasi file yg akan didwnload (seed)
informasi file yg akan didwnload (seed)
• Sisterm akan mencari penyedia file (seeder)
• Dicatat oleh Tracker user (leecher) akan bergabungDicatat oleh Tracker, user (leecher) akan bergabung dalam node seed dan peer
Model Sister
Model Sister
•
Interaction model
: sistem dipandang
terdiri dari banyak proses yang saling
y
p
y
g
g
berinteraksi
•
Failure model
: sistem bisa gagal
•
Failure model
: sistem bisa gagal
Fundamental Model SisTer
Fundamental Model SisTer
it is impossible for any process to have a view on the current global state of the system
Faktor faktor Interaction Model
Faktor-faktor Interaction Model
L t d l t i i d i
• Latency, delay antara pengirim dan penerima message
– Network access time (cth: ethernet delay)
– Waktu untuk pengiriman bit pertama dari Network InterfaceWaktu untuk pengiriman bit pertama dari Network Interface pengirim ke Network Interface Penerima
– Waktu pemrosesan pada proses pengiriman dan penerimaan
Th h t j l h k t t t t
• Throughput, jumlah paket yang terantar per satuan waktu
• BandwidthBandwidth, jumlah informasi (bit) yang terkirim per jumlah informasi (bit) yang terkirim per satuan waktu
• Delay jitter, variasi delay antar pesan bertipe sama yang berbeda (cth: video frame delay)
Macam macam failure model
Macam-macam failure model
•
Process failure
: crash
• Deteksi dgn timeoute e s dg eou
•
Communication failure
: message drop
K t i i b ff fl
• Karena: transmission error, buffer overflow