Tugas Sistem Terdistribusi Paralel Kelom

Tugas Sistem Terdistribusi Paralel
Summary chapter 1 dan 2
Kelompok 12
Dila Nurlaila 13102009
Almira Faiz 13102035
Roslidia A.
13102026
A. Soal Chapter 1
1. Give five types of hardware resource and five types of data or software resource that
can usefully be shared. Give examples of their sharing as it occurs in practice in
distributed systems.
Jawab :
5 type hardware terdistribusi
- Hardware Resource :
 CPU: menjalankan prosesor, CPU berperan sebagai aplikasi intensif untuk
klien, remote objek server (metode eksekusi didasarkan oleh klien), program
worm (membagi kapasitas CPU pada mesin desktop dengan pengguna lokal).
Dan sebagian besar server seperti file server, yang melakukan beberapa
komputasi untuk klien mereka, maka cpu mereka disebut sebagai sharing
resource atau sumber daya bersama.
 Memori: cache server (menyimpan laman web yang pernah diakses ke dalam

RAM nya, untuk akses cepat oleh komputer lokal lainnya)
 Screen: Network Windows System(X-11), memungkinkan proses di komputer
remote untuk update konten windows.
 Printer: printer jaringan menerima antrian dari banyak komputer. mengelola
mereka dengan sistem antrian.
-

Data / software:
 web page: web server memungkinkan beberapa klien untuk berbagi konten
halaman read only
 File: file server memungkinkan beberapa klien untuk berbagi read-write file.
 Database: Database telah mengusung konsep shared sejak komputer multi
user muncul.
 Video / audio streaming: Server dapat menyimpan keseluruhan video pada
disk dan memberikan mereka dengan kecepatan pemutaran untuk beberapa
klien secara bersamaan.
 Exclusive Lock: memungkinkan beberapa klien untuk mengkoordinasikan
penggunaan sumber daya secara bersamaan (seperti printer yang tidak
termasuk skema antrian).


2. How might the clocks in two computers that are linked by a local network be
synchronized without reference to an external time source? What factors limit the
accuracy of the procedure you have described? How could the clocks in a large
number of computers connected by the Internet be synchronized? Discuss the
accuracy of that procedure.
Jawab :
Beberapa protokol sinkronisasi waktu dijelaskan dalam bab 10. Salah satunya
adalah protokol Kristen. Putaran perjalanan waktu t untuk mengirim pesan dan
balasan antara komputer A dan B diukur dengan tes ulang;maka komputer A
mengirimkan clock membaca T untuk B. B set itu jam untuk T + t / 2. Pengaturan
dapat disempurnakan dengan pengulangan. Prosedur ini tunduk pada ketidaktelitian
karena anggapan untuk penggunaan jaringan lokal dari komputer lain dan
keterlambatan dalam pengolahan pesan dalam sistem operasi dari A dan B. Untuk
sejumlah besar komputer, satu komputer harus dinominasikan untuk bertindak
sebagai waktu server dan harus melaksanakan protokol Kristen dengan mereka
semua. Protokol dapat dimulai oleh masing-masing pada gilirannya. Ketidakakuratan
tambahan muncul di internet karena pesan yang tertunda ketika mereka melalui
switch dalam jaringan area luas
3. Consider the implementation strategies for massively multiplayer online games as
discussed in Section 1.2.2. In particular, what advantages do you see in adopting a

single server approach for representing the state of the multiplayer game? What
problems can you identify and how might they be resolved?
Jawab :
Ada dua jenis MMO game. Ada real-time game yang memiliki interaksi tinggi
antar usernya seperti Ragnarok dan World of Warcraft, dan ada game yang tidak
memerlukan interaksi tinggi antar user dan bersifat turn and wait seperti Farmville,
Mafiawars. Dua genre game ini membutuhkan dua arsitektur yang berbeda.
Untuk permainan seperti Farmville arsitektur standar satu server sudah cukup,
karena gameplay bersifat personal untuk setiap user tidak perlu bersifat real time
dengan interaksi antar user secara langsung yang rendah sehingga bandwidth capacity
tidak terlalu termakan. Permainan yang membutuhkan real-time interaksi antara
ratusan atau ribuan user perlu memiliki beberapa server karena satu gameplay
menuntut banyak user langsung terlibat di dalamnya, sehingga perlu ada beberapa
server untuk menshare bandwidth.
4. A user arrives at a railway station that they has never visited before, carrying a PDA
that is capable of wireless networking. Suggest how the user could be provided with
information about the local services and amenities at that station, without entering the
station’s name or attributes. What technical challenges must be overcome?
Jawab :


Sebagai komputer yang terpasang ke Internet, dapat diasumsikan bahwa jaringan
protokol internet berurusan dengan heterogenitas. Sistem komputer memiliki
hardware yang berbeda - karena pengguna harus berurusan dengan heterogenitas
representasi dari item data dalam permintaan dan membalas paket data dari klien ke
objek. Komputer dapat menjalankan sistem operasi yang berbeda, pengguna
dihadapkan dengan heterogenitas sistem untuk mengirim dan menerima data. Dalam
tingkat / C + + operasi Java umumnya akan digunakan yang akan diterjemahkan ke
dalam operasi khusus disesuaikan dengan sistem operasi yang berjalan pada
bahasa. Dalam bahasa C + + dan Java menggunakan representasi yang berbeda dari
struktur data seperti string, array, dan catatan. Sebuah standar umum akan dibentuk
untuk setiap jenis struktur data yang harus ditransmisikan antara objek dan klien dan
bagaimana menerjemahkan antara struktur data dan setiap bahasa
5. Compare and contrast cloud computing with more traditional client-server
computing? What is novel about cloud computing as a concept?
Jawab :
Secara teknis tidak ada perbedaan yang signifikan dalam cara kerja aplikasi di
cloud maupun client server. Client akan mengirim request data atau aplikasi dari
server, dan server akan merespon dengan menjalankan aplikasi maupun mengirim
data ke client. Kebaruannya adalah pada penanganan server. Pada client server
tradisional, server harus disetting dan dikelola sendiri, aplikasi bisa berada di server

atau client, client harus tahu di mana aplikasi data harus disimpan. Sedangkan cloud
mengeliminir kerepotan pengelolaan server, client cukup terhubung ke cloud melalui
internet, cloud akan memanajemen sendiri di mana dia akan menyimpan aplikasi dan
data, membuat backup dan lain lain, client tidak perlu tahu.
6. Use the World Wide Web as an example to illustrate the concept of resource sharing,
client and server. What are the advantages and disadvantages of HTML, URLs and
HTTP as core technologies for information browsing? Are any of these technologies
suitable as a basis for client-server computing in general?
Jawab :
Tiga komponen utama dari perangkat lunak yang mungkin mengalami
kegagalan: proses pada klien - mungkin terjadi kecelakaan proses pada server mungkin terjadi kecelakaan proses komunikasi dalam perangkat lunak - misalnya,
kemungkinan pesan gagal disampaikan kegagalan ini umumnya disebabkan
independen satu sama lain. Contoh:. Jika hilangnya pesan menyebabkan klien atau
server crash . Jika crash pada klien masalah server yang menimulkan . Jika
kecelakaan itu menyebabkan kegagalan dalam perangkat lunak komunikasi untuk
mengirimkan data Kedua proses harus mampu mentolerir pesan yang hilang. Klien
harus mentolerir pesan balasan hilang setelah telah mengirimkan pesan
permintaan. Daripada membuat pengguna menunggu mendapat balasan, klien dapat

menggunakan timeout dan kemudian memberitahu bahwa pengguna belum bisa

menghubungi server. Sebuah server sederhana hanya menunggu permintaan pesan,
melaksanakan dan mengirim balasan. Sistem ini harus benar-benar handal terhadap
packet loss. Software Komunikasi harus dirancang untuk mentolerir kecelakaan
dalam proses berkomunikasi. Misalnya, kegagalan proses tidak harus menyebabkan
masalah dalam komunikasi antara proses lainnya yang sedang berjalan
7. A server program written in one language (for example, C++) provides the
implementation of a BLOB object that is intended to be accessed by clients that may
be written in a different language (for example, Java). The client and server
computers may have different hardware, but all of them are attached to an internet.
Describe the problems due to each of the five aspects of heterogeneity that need to be
solved to make it possible for a client object to invoke a method on the server object.
Jawab :
Sebagai komputer yang terpasang ke internet, bisa diasumsikan bahwa protokol
internet berhadapan dengan heterogenitas jaringan. Sistem komputer memiliki
hardware yang berbeda - karena itu pengguna harus berhadapan dengan heterogenitas
representasi dari item data dalam request dan reply paket data dari klien kepada
object.
Komputer dapat menjalankan sistem operasi yang berbeda, pengguna berhadapan
dengan heterogenitas sistem untuk mengirim dan menerima data. Pada Java / C + +
tingkat operasi yang umum akan digunakan yang akan diterjemahkan ke operasi

tertentu disesuaikan dengan sistem operasi yang berjalan pada bahasa tersebut.
Pada bahasa C + + dan Java menggunakan representasi yang berbeda untuk
struktur data seperti string, array, dan records. Sebuah standar umum akan ditetapkan
untuk setiap jenis struktur data yang harus ditransmisikan antara objek dan klien dan
cara menerjemahkan antar struktur data dan masing-masing bahasa.
8. An open distributed system allows new resource-sharing services such as the BLOB
object in Exercise 1.7 to be added and accessed by a variety of client programs.
Discuss in the context of this example, to what extent the needs of openness differ
from those of heterogeneity.
Jawab :
Sistem terdistribusi menggunakan seperangkat protokol komunikasi (mungkin
protokol Internet).
• menggunakan sebuah standar yang ditetapkan untuk mewakili item data (untuk
menangani heterogenitas hardware).
• Menggunakan standar umum untuk operasi pesan lewat (atau untuk doa).
• Menggunakan standar independen bahasa untuk mewakili struktur data.
Namun untuk sistem terdistribusi terbuka standar harus telah setuju dan
didokumentasikan sebelum blob. . Pelaksana harus sesuai dengan Ulasan standar

tersebut. Selain itu, antarmuka ke objek blob harus dipublikasikan sehingga ketika

ditambahkan ke sistem, baik yang ada dan klien baru akan Dapat mengaksesnya.
Publikasi standar Memungkinkan bagian dari sistem yang akan dilaksanakan oleh
berbagai vendor daapat bekerja bersama-sama.
9. Suppose that the operations of the BLOB object are separated into two categories –
public operations that are available to all users and protected operations that are
available only to certain named users. State all of the problems involved in ensuring
that only the named users can use a protected operation. Supposing that access to a
protected operation provides information that should not be revealed to all users, what
further problems arise?
Jawab :
Setiap permintaan untuk mengakses operasi yang dilindungi harus menyertakan
identitas pengguna yang mengirimkan request. Beberapa permasalahan yang timbul
antara lain adalah:
- mendefinisikan identitas pengguna. Menggunakan identitas dalam daftar
pengguna yang diizinkan untuk mengakses protected operation pada BLOB
object.
- memastikan bahwa identitas yang masuk memang berasal dari pengguna yang
sah, bukan pengguna lain berpura-pura menjadi pengguna tersebut.
- mencegah pengguna lain untuk melakukan replay atau mengganggu pengiriman
pesan dari pengguna yang sah/legal.

Masalah yang timbul lebih lanjut.
- informasi yang dikembalikan sebagai hasil dari "protected operation" harus
disembunyikan dari pengguna yang tidak sah. Ini berarti bahwa pesan yang berisi
informasi harus dienkripsi apabila dicapture oleh pengguna yang tidak sah.
10. The INFO service manages a potentially very large set of resources, each of which
can be accesse by users throughout the Internet by means of a key (a string name).
Discuss an approach to the design of the names of the resources that achieves the
minimum loss of performance as the number of resources in the service increases.
Suggest how the INFO service can be implemented so as to avoid performance
bottlenecks when the number of users becomes very large
Jawab :
Algoritma yang menggunakan struktur hirarkis skala yang lebih baik daripada
mereka yang menggunakan struktur linear. Oleh karena it solusi harus menyarankan
skema penamaan hirarkis. misalnya bahwa setiap sumber daya memiliki nama dari
bentuk 'A.B.C' dll di mana waktu yang dibutuhkan adalah O (log n) di mana ada n
sumber daya dalam sistem. Untuk memungkinkan sejumlah besar pengguna, sumber
daya dipartisi antara beberapa server, misalnya nama dimulai dengan A pada server 1,

dengan B di Server 2 dan sebagainya. Mungkin ada lebih dari satu tingkat dari partisi
seperti di DNS. Untuk menghindari kemacetan kinerja algoritma untuk mencari nama

harus terdesentralisasi. Bahwa adalah, server yang sama tidak boleh terlibat dalam
mencari setiap nama. (Sebuah solusi terpusat akan menggunakan satu root server
yang memegang database lokasi yang memetakan bagian-bagian dari informasi ke
server tertentu). Beberapa replikasi diperlukan untuk menghindari sentralisasi
tersebut. Sebagai contoh: i) database lokasi mungkin direplikasi
11. List the three main software components that may fail when a client process invokes a
method in a server object, giving an example of a failure in each case. Suggest how
the components can be made to tolerate one another’s failures.
Jawab :
- Tiga komponen utama software yang mungkin mengalami failure :
 proses pada klien - kemungkinannya terjadi crash
 proses pada server - kemungkinannya terjadi crash
 proses komunikasi pada software - misalnya kemungkinan pesan yang gagal
disampaikan
- Failure ini umumnya disebabkan secara independen satu sama lain. Contohnya:
 jika hilangnya pesan menyebabkan proses client atau server crash.
 jika crash pada klien menimulkan masalah pada server.
 jika proses crash menyebabkan kegagalan dalam perangkat lunak komunikasi
untuk mengirimkan data.
Kedua proses harus mampu mentolerir pesan hilang. Klien harus mentolerir pesan

balasan hilang setelah telah mengirimkan pesan request. Daripada membuat user
menunggu mendapat reply, proses klien bisa menggunakan timeout dan kemudian
memberitahu bahwa user belum dapat menghubungi server. Sebuah server sederhana
hanya menunggu pesan request, mengeksekusi dan mengirimkan reply. Sistem ini
harus benar benar reliabel terhadap paket yang hilang.
Perangkat lunak komunikasi harus dirancang untuk mentolerir crash dalam proses
berkomunikasi. Misalnya, kegagalan satu proses seharusnya tidak menimbulkan
masalah dalam komunikasi antara proses lain yang sedang berjalan.
12. A server process maintains a shared information object such as the BLOB object of
Exercise 1.7. Give arguments for and against allowing the client requests to be
executed concurrently by the server. In the case that they are executed concurrently,
give an example of possible ‘interference’ that can occur between the operations of
different clients. Suggest how such interference may be prevented.
Jawab :

Untuk eksekusi konkuren - lebih throughput dalam server ( terutama jika server harus
mengakses disk atau layanan lain ) Terhadap - masalah interferensi antara operasi
konkuren Contoh:
benang klien A membaca nilai variabel X
benang klien B berbunyi nilai variabel X Klien benang A menambahkan 1 untuk nilai
dan menyimpan hasil di X Klien benang B mengurangi 1 dari nilai dan menyimpan
hasil di X Hasil: X : = X - 1 ; membayangkan bahwa X adalah saldo rekening bank ,
dan klien A dan B adalah kredit menerapkan dan transaksi debit , dan Anda dapat
melihat langsung bahwa hasilnya tidak benar . Untuk mengatasi penggunaan
gangguan beberapa bentuk kontrol concurrency . Misalnya , untuk menggunakan
server Java operasi disinkronisasi seperti kredit dan debit .
13. A service is implemented by several servers. Explain why resources might be
transferred between them. Would it be satisfactory for clients to multicast all requests
to the group of servers as a way of achieving mobility transparency for clients?
Jawab :
Migrasi resource dilakukan untuk mengurangi keterlambatan komunikasi, untuk
menyeimbangkan beban pengolahan dan pemanfaatan penyimpanan antara server
yang berbeda. Jika semua server menerima request, beban komunikasi pada jaringan
meningkat jauh dan server harus melakukan pekerjaan yang tidak perlu, seperti
menyaring request untuk object yang tidak ada pada server server tersebut.
14. Resources in the World Wide Web and other services are named by URLs. What do
the initials URL denote? Give examples of three different sorts of web resources that
can be named by URLs.
Jawab :
Halaman web adalah contoh dari sumber daya yang dibagi . sumber daya ini
dikelola oleh server Web . arsitektur client -server . Web browser adalah program
klien ( Sebagai contoh , Microsoft Explorer , Netscape ) yang berjalan pada komputer
pengguna . Web berfungsi mengakses file lokal yang berisi halaman web dan
kemudian memasok mereka ke browser klien . URL - Uniform Resource Locator
Tiga contoh dari berikut ini:
o File - ftp://ftp.cs.okstate.edu/pub/cs2103/syllabus.doc
o gambar , film , suara , atau apapun yang bisa diberikan
rtsp : //202.52.125.12/encoder/live.rm
mms : //media.giga.net.tw/fm1077.asx
o query ke database atau mesin pencari –
http://www.google.com/search?hl=en&q=e-commerce

15. Give an example of an HTTP URL. List the main components of an HTTP URL,
stating how their boundaries are denoted and illustrating each one from your
example. To what extent is an HTTP URL location-transparent?
Jawab :
 HTTP URL terdiri dari empat komponen
 Scheme, mengidentifikasi protokol yang akan digunakan untuk mengakses
sumber daya di Internet bida berupa HTTP (tanpa SSL) atau HTTPS (dengan
SSL).
 Host, mengidentifikasi nama server yang menyimpan data atau aplikasi
sebagai contoh, www.example.com.
 Path, mengidentifikasi folder dalam server yang hendak diakses, misal hendak
mengakses file contoh.php dengan mengakses folder htp dan subfolder next
(www.example.com/htp/next/contoh.php)
 Query string. menyediakan serangkaian variable yang nantinya bisa diakses
oleh aplikasi atau file dalam server, misal variable x bernilai 100 akan
diproses dalam file contoh.php (www.example.com/htp/next/contoh.php?
x=100)

B. Soal Chapter 2
1. Provide three specific and contrasting examples of the increasing levels of
heterogeneity experienced in contemporary distributed systems as defined in Section
2.2.
Jawab :
 Ada representasi data yang berbeda dari data dalam sistem termasuk representasi
yang berbeda untuk variabel semacam integer, stream byte, float, char. Sebagian
besar data akan berpindah dari sistem ke sistem lainnya dan diharapkan tidak
hilang karena ketidakmampuan sistem untuk saling membaca format variabel
yang berbeda.
 Sebuah aplikasi dikompilasi untuk satu set instruksi tidak dapat dengan mudah
dijalankan antar server yang berbeda platform. Bahasa Java mungkin bisa manjadi
penengah karena mampu berjalan pada beragam server.
 Beberapa komponen dalam sistem terdistribusi mungkin memiliki kemampuan
yang berbeda dari komponen lainnya. Misal perbedaan clock pemrosesan,
memori, dan bit sistem operasi.
2. What problems do you foresee in the direct coupling between communicating entities
that is implicit in remote invocation approaches? Consequently, what advantages do
you anticipate from a level of decoupling as offered by space and time uncoupling?
Jawab : not found

3. Describe and illustrate the client-server architecture of one or more major Internet
applications (for example, the Web, email or netnews).
Jawab :

Browser adalah client dari DNS dan Web Server. Beberapa jaringan intranet telah
di konfigurasi untuk proxy server. Proxy server digunakan untuk berbagai macam
tujuan. Ketika posisinya berada pada posisi seperti client, maka itu akan mengurangi
delay dari traffic jaringan. Ketika mereka berada pada situs yang sama sebagai server,
dari segi cekpoint, hal itu dapat mengurangi load pada server. Server DNS juga
terlibat pada semua arsitektur aplikasi yang di jelaskan sebelumnya.
Email:
Mengirim pesan: User sebagai client dari SMTP server lokal dan melewati setiap
pesan keluar ke SMTP agar terkirim.SMTP lokal sebagai routing table dari Mail,
untuk menentukan rute dari setiap pesan dan di kirim ke server SMTP pada rute yang
sudah di tentukan. Setiap server SMTP yang memiliki proses yang sama dan
memforward setiap pesan yang datang kemudian di cocokan denan domain lokal.
Dalam beberapa kasus, pesan di kirim dan disimpan di mailbox penerima pada local
disk server.
Membaca Pesan: User sebagai client dari file server lokal atau client mail
pengirim seperti POP atau IMAP server. Dalam kasus biasa, User membaca pesan
secara langsung dari mailbox dimana telah disimpan di message delivery. Contoh
seperti suer agent dari UNIX . Dalam case terakhir, user merequest informasi
mengenai content dari mailbox dari POP atau server IMAP dan menerima pesan dari
berbagai server untuk di tampilkan ke user. POP dan IMAP adalah protokol yang si
spesifikasikan dan di design untuk mendukung akses mail melalui area yang luas dan
koneksi yang lambat, jadi user dapat melanjutkan akses mailbox pada saat sedang
melakuan perjalanan.
4. For the applications discussed in Exercise 2.1, what placement strategies are
employed in implementing the associated services?
Jawab

Web: server web bekerja sama dengan proxy server untuk meminimalkan lalu
lintas jaringan dan latency . Bertanggung jawab untuk konsistensi diambil oleh proxy
server - mereka memeriksa tanggal modifikasi , halaman yang sering dengan web
server berasal .
Mail: server SMTP tidak selalu memegang surat pengiriman tabel routing ke
semua tujuan . Sebaliknya, mereka hanya pesan rute ditujukan kepada tujuan yang
tidak diketahui ke server lain yang Kemungkinan untuk memiliki relevan tabel .
Netnews : Semua server NNTP bekerja sama dengan cara Dijelaskan di atas
untuk memberikan mekanisme newsfeed .
5. A search engine is a web server that responds to client requests to search in its stored
indexes and (concurrently) runs several web crawler tasks to build and update the
indexes. What are the requirements for synchronization between these concurrent
activities?
Jawab :
Fungsi dari web crawler bisa membangun indeks parsial untuk halaman web baru
secara bertahap, kemudian menggabungkannya dengan indeks aktif (termasuk
menghapus referensi yang tidak valid). Operasi penggabungan ini bisa dilakukan
pada salinan off-line. Pada akhirnya, lingkungan untuk memproses permintaan klien
diubah menjadi pengaksesan untuk index baru. Proses terakhir ini memerlukan
beberapa kontrol concurrency.

6. The host computers used in peer-to-peer systems are often simply desktop computers
in users’ offices or homes. What are the implications of this for the availability and
security of any shared data objects that they hold and to what extent can any
weaknesses be overcome through the use of replication?
Jawab:
Masalah:
- Orang seringkali mematikan komputer desktop mereka saat tidak digunakan.
Bahkan jika pada sebagian besar waktu, mereka akan mematikan ketika pengguna
sedang pergi untuk waktu yang panjang atau komputer sedang dipindahkan.
- Pemilik computer yang berpartisipasi tidak mungkin diketahui peserta lainnya,
sehingga kepercayaan mereka tidak diketahui. Dengan hardware dan sistem
operasi saat ini pemilik komputer memiliki total kontrol atas data di atasnya dan
dapat mengubahnya atau menghapusnya di waktu yang akan datang.
- Koneksi jaringan ke komputer peer yang terkena serangan (termasuk penolakan
layanan).

Pentingnya masalah ini tergantung pada aplikasi. Untuk men-download musik
yang merupakan kekuatan pendorong asli untuk peer-to-peer itu tidak terlalu
penting. Pengguna bisa menunggu sampai host yang relevan berjalan untuk
mengakses bagian tertentu dari musik. Ada sedikit motivasi bagi pengguna untuk
mengutak-atik musik. Tapi untuk aplikasi yang lebih konvensional seperti
ketersediaan penyimpanan file dan integritas adalah yang sangat penting.
Solusi:
replikasi:
- Jika replika data cukup luas dan banyak, probabilitas bahwa semua tidak tersedia
secara bersamaan dapat mengurangi tingkat diabaikan.
- Salah satu metode untuk memastikan integritas objek data yang tersimpan di
beberapa host (terhadap gangguan atau kecelakaan error) adalah untuk melakukan
suatu algoritma untuk membangun konsensus tentang nilai data (misalnya dengan
bertukar hash dari nilai objek dan membandingkan mereka). Tapi ada solusi
sederhana untuk objek yang nilainya tidak berubah (mis file media seperti musik,
foto, siaran radio atau film).

-

Identfikasi Pengamanan Hash :
Pengenal objek berasal dari kode hash-nya. identifier yang digunakan untuk
mengatasi objek. Ketika objek tersebut diterima oleh klien, kode hash dapat
diperiksa untuk korespondensi dengan identifier. algoritma hash yang digunakan
harus mematuhi sifat yang diperlukan dari algoritma hash aman.

7. List the types of local resource that are vulnerable to an attack by an untrusted
program that is downloaded from a remote site and run in a local computer.
Jawab :
Objek dalam sistem file misalnya file, direktori dapat dibaca/ditulis/dicreate/
dihapus menggunakan hak-hak pengguna lokal yang menjalankan program tersebut.
Jaringan komunikasi - program mungkin mencoba untuk membuat soket yang
terhubung ke mereka, mengirim pesan dll. Akses ke printer. Metode penyerangan juga
dapat menyamar sebagai pengguna dengan berbagai cara, misalnya, mengirim /
menerima email.
8. Give examples of applications where the use of mobile code is beneficial
Jawab :
Melakukan perhitungan dekat dengan pengguna, seperti pada Applet contoh
Meningkatkan browser- misalnya untuk memungkinkan komunikasi Server dimulai.
Kasus di mana objek mengirim proses dan kode diperlukan untuk dapat digunakan.

9. Consider a hypothetical car hire company and sketch out a three-tier solution to the
provision of their underlying distributed car hire service. Use this to illustrate the
benefits and drawbacks of a three-tier solution considering issues such as
performance, scalability, dealing with failure and also maintaining the software over
time.
Jawab :
 Presentation tier. Ini adalah tingkat paling atas dari aplikasi. Tier ini menampilkan
informasi yang berhubungan dengan layanan persewaan mobil, seperti browsing
jenis mobil dan harga. Tier ini diakses oleh konsumen.
 Application tier (logika bisnis, logika tier, akses data tier, atau tingkat menengah).
Tier ini mengendalikan fungsi aplikasi ini dengan melakukan proses rinci. Seperti
mencarikan ketersediaan mobil sewaan, proses pembayaran, dan pencacatan data
konsumen)
 Data tier terdiri dari server database. Informasi konsumen, barang sewaan, dan
keuangan disimpan dan diambil di sini.
10. Provide a concrete example of the dilemma offered by Saltzer’s end-to-end argument
in the context of the provision of middleware support for distributed applications (you
may want to focus on one aspect of providing dependable distributed systems, for
example related to fault tolerance or security).
Jawab: not found
11. Consider a simple server that carries out client requests without accessing other
servers. Explain why it is generally not possible to set a limit on the time taken by
such a server to respond to a client request. What would need to be done to make the
server able to execute requests within a bounded time? Is this a practical option?
Jawab :
Kedatangan klien request tidak dapat diprediksi. Jika server menggunakan threads
untuk mengeksekusi permintaan bersamaan, tidak mungkin dapat mengalokasikan
waktu yang cukup untuk permintaan tertentu dalam batas waktu tertentu. Jika server
mengantrikan permintaan dan membawa mereka keluar satu per satu pada satu waktu,
mereka mungkin menunggu dalam antrian untuk waktu yang tak terbatas.
Untuk mengeksekusi request dalam waktu yang dibatasi, dibatasilah jumlah klien
yang sesuai dengan kapasitasnya. Untuk menampung lebih banyak klien,
menggunakan server dengan menggunakan prosesor lebih banyak.
Solusinya mungkin mahal dan dalam beberapa kasus menjaga replika yang
konsisten bisa memakan waktu hingga siklus pengolahan yang berguna, mengurangi
yang tersedia untuk melaksanakan permintaan.

12. For each of the factors that contribute to the time taken to transmit a message between
two processes over a communication channel, state what measures would be needed
to set a bound on its contribution to the total time. Why are these measures not
provided in current general-purpose distributed systems?
Jawab
:
Waktu yang dibutuhkan oleh layanan komunikasi OS dalam proses pengiriman dan
penerimaan tugas-tugas ini perlu jaminan siklus prosesor yang cukup.
Waktu yang dibutuhkan untuk mengakses jaringan. Sepasang dari suatu proses
komunikasi perlu mengingat jaminan kapasitas jaringan.
Waktu untuk mengirimkan data adalah konstan setelah jaringan telah diakses.
Untuk memberikan jaminan kita akan membutuhkan lebih banyak sumber daya dan
biaya. Adapun jaminan terkait dengan dapat mengakses jaringan misalnya diberikan
dengan jaringan ATM, tetapi mereka mahal jika digunakan sebagai LAN.
Untuk memberikan jaminan untuk proses yang lebih kompleks. Misalnya, server
untuk menjamin dapat menerima dan mengirim pesan dalam batas waktu yang akan
berarti membatasi jumlah klien.
13. The Network Time Protocol service can be used to synchronize computer clocks.
Explain why, even with this service, no guaranteed bound is given for the difference
between two clocks.
Jawab :
Setiap klien yang menggunakan layanan NTP harus berkomunikasi dengannya
melalui pesan melewati saluran komunikasi. Jika terbatas dapat diatur pada waktu
untuk mengirimkan pesan melalui saluran komunikasi, maka perbedaan antara jam
klien dan nilai yang disediakan oleh layanan NTP juga akan dibatasi. Dengan waktu
transmisi pesan tak terbatas, perbedaan jam tentu tak terbatas pula.
14. Consider two communication services for use in asynchronous distributed systems. In
service A, messages may be lost, duplicated or delayed and checksums apply only to
headers. In service B, messages may be lost, delayed or delivered too fast for the
recipient to handle them, but those that are delivered arrive with the correct contents.
Describe the classes of failure exhibited by each service. Classify their failures
according to their effects on the properties of validity and integrity. Can service B be
described as a reliable communication service?
Jawab :
Layanan A dapat memiliki :
Kegagalan yang sewenang-wenang :
- Sebagai checksum tidak berlaku untuk bagian badan pesan, bagian badan pesan
dapat rusak .
- Digandakan pesan,
kegagalan kelalaian ( pesan hilang ).

Karena sistem terdistribusi yang digunakan adalah asynchronous, itu tidak dapat
mengalami kegagalan waktu .
Validitas - ditolak oleh pesan yang hilang
Integritas - ditolak oleh pesan rusak dan pesan digandakan .
Layanan B dapat memiliki :
kegagalan kelalaian ( pesan hilang , menjatuhkan pesan ) .
Karena sistem terdistribusi di mana ia digunakan adalah asynchronous , tidak dapat
menderita kegagalan waktu .
Melewati tes integritas, tetapi tidak uji validitas, oleh karena itu tidak bisa disebut
tahan uji.

15. Consider a pair of processes X and Y that use the communication service B from
Exercise 2.14 to communicate with one another. Suppose that X is a client and Y a
server and that an invocation consists of a request message from X to Y, followed by
Y carrying out the request, followed by a reply message from Y to X. Describe the
classes of failure that may be exhibited by an invocation.
Jawab :
Sebuah permintaan paket mungkin mengalami beberapa failure sebagai berikut:
- crash failure : X atau Y mungkin crash. Oleh karena itu sebuah request mungkin
mendapatkan failure dari crash.
- omission failure : SB mengalami failure dalam request dan reply pesan.
16. Suppose that a basic disk read can sometimes read values that are different from those
written. State the type of failure exhibited by a basic disk read. Suggest how this
failure may be masked in order to produce a different benign form of failure. Now
suggest how to mask the benign failure.
Jawab :
Dasar disk membaca bahwa menunjukkan kegagalan yang berubah-ubah.
Ini bisa ditutupi dengan menggunakan checksum pada setiap blok disk ( sehingga
tidak mungkin bahwa nilai-nilai yang salah tidak akan terdeteksi ) - ketika nilai yang
tidak benar terdeteksi, maka akan terbaca tidak mengembalikan nilai bukan nilai
yang salah – sebuah kegagalan kelalaian .
Kegagalan kelalaian bisa ditutupi dengan mereplikasi setiap blok disk pada dua disk
independen . ( Membuat kegagalan kelalaian tidak mungkin ) .
17. Define the integrity property of reliable communication and list all the possible
threats to integrity from users and from system components. What measures can be
taken to ensure the integrity property in the face of each of these sources of threats.
Jawab :

Integritas - pesan yang diterima identik dengan pesan yang dikirim dan tidak ada
pesan yang disampaikan dua kali.
- ancaman dari pengguna:
 menyuntikkan pesan palsu, mengulang pesan lama, mengubah pesan selama
transmisi.
- ancaman dari komponen sistem:
 pesan mungkin rusak dalam perjalanan
 Pesan dapat diduplikasi oleh protokol komunikasi yang mentransmisikan
kembali data pesan.
18. Describe possible occurrences of each of the main types of security threat (threats to
processes, threats to communication channels, denial of service) that might occur in
the Internet.
Jawab :
Ancaman terhadap proses : tanpa otentikasi dari yang utama dan server, banyak
ancaman yang ada . Musuh bisa file akses pengguna lain atau kotak surat, atau
menyiapkan server 'spoof ' . Misalnya. server dapat dibentuk untuk ' spoof ' bank
pelayanan dan menerima rincian transaksi keuangan pengguna.
Ancaman terhadap saluran komunikasi : IP spoofing - mengirim permintaan ke server
dengan alamat sumber palsu, serangan - tengah .
Penolakan layanan(DoS) : banjir layanan publik yang tersedia dengan pesan yang
tidak relevan .
Referensi :
Distributed Systems : Concepts and Design 5th Edition