Você está na página 1de 3

AACS5164 Distributed Computer Systems

Tutorial 1

Tutorial 1
1. Read through Chapter 1 when you answer these questions. 2. You must try to answer all the questions before or during your tutorial class. 3. If you have any problems, ask the tutor or discuss with your classmates. 4. Attempting these questions yourself will help you learn the material. IF YOU JUST COPY ANSWERS, YOU WILL NOT LEARN ANYTHING.

Q1. The construction of distributed systems produces many challenges; discuss any THREE (3)
challenges. Heterogeneity
o o Heterogeneous components must be able to interoperate Different network, h/w, OS, programming language, dierent implementations

Set up protocol to solve heterogeneity Middleware(e.g.,CORBA)- A best solve protocol mismatches software layer that provides
programming abstractions as well as masking the heterogeneity of the underlying system. Mobile Code(e.g., JAVA)-transparency from h/w, s/w and programming language heterogeneity through virtual machine concept.

Fault tolerance o Failure of a component (partial failure) should not result in failure of the whole system o Detecting Failures: Some failures can be detected. But in a distributed system it becomes hard. o Failure Masking: Retransmission, backups (data and servers). o Tolerating failures: Clients and users tolerate faults. o Recovery: Server crash, data it updates in inconsistent state. o Redundancy: Use redundant component Scalability o System should work efficiently with an increasing number of users,more computers, more data, more ... o Physical resources, Software resources.(Controlling the cost $$ of resource) o Avoid bottlenecks in performance.(Controlling the performance loss) o Design problem o System performance should increase with inclusion of additional resources Concurrency o Shared access to resources must be possible o For an object to be safe in a concurrent environment its operations must be synchronized in such a way that data remains consistent (bank account example). o Avoidance of dead- and livelock problems Security o On its own network trac is not secure. Any message could in principle be seen by anybody. Packet sniers. o Encryption can solve some problems. Privacy Authentication availability Distribution Transparency o The ways to hides the fact from user as much as possible that the processes and resources are physically distributed across multiple computers. Openness o Interfaces should be publicly available to ease adding new components o Ensure extensibility and maintainability of systems Adherence to standard interfaces


Page 1 of 3

AACS5164 Distributed Computer Systems

Tutorial 1

Q2.(a) A distributed operating system looks to it users like an ordinary centralized operating system,
but in fact runs on multiple independent CPUs. In other words, the user views the system as a virtual processor, not as a collection of distinct machines. (i) Identify the key concept the statements above refer to. Level of Transparency (ii) List and illustrate all the types of key concept that you have identified in Q1. (a) (i). Name transparency Location transparency Access transparency
-The name of the resource does not indicate where in the distributed system the file, data or process is physically located. -user will not know the actual the location of the resources -User cannot distinguish a local resource from remote resource -The interface, command and timing are all consistent for a local and remote access to resources.

(1 mark)

Migration transparency Replication transparency

-Implies that user cannot notice if a resource or their job has been migrated to another location within the distributed system. -allow multiple copies of files and servers to exist throughout the system -Furthermore the existence of multiple copies is transparent to the users.

Concurrency and parallelism-Hide the possibility that the resource may be shared concurrently. User are not know there are same user are using same resources. transparency
-Parallelism is meaning user can access multiple at the same time.

Failure transparency

-Hide failure and recovery of the resource. -If a link or system within the distributed system fails, the entire system should not fail.

(b) Briefly explain why a distributed system needs to be transparent. (2 marks) To let users do not worry for the complexities of distributed system. Enable provide global commons view to make the user deal with only single system.

(c) Illustrate FOUR (4) network characteristics on how they may affect distributed real- time applications. (8 marks) delay of information network latency When bandwidth high and the cost will also increase. Most the software bandwidth vs cost requires more bandwidth. routing optimization Micronetwork characteristics The technique use choosing the of the algorithm, choose best path for network. Buffer size of the network switches, if the buffer size of the network bigger sizes it is better. If the packet is bigger it will slow down speed. [Total: 25 marks]


Page 2 of 3

AACS5164 Distributed Computer Systems

Tutorial 1

Q3. Compare and contrast the peer-to-peer distributed computing model over the client/server model. Differentiate and Contrast
Client/Server Model -Request from client and reply from server Peer-to-peer Model - Request and reply perform by both side

(There are two types of computers in the client/server, there (The computer in peer-to-peer model will be only the one are server and client. So the server will handle all the request type of computer, but they might act as server by itself and from the client computer and reply to client computer) communicating between themselves)

- Centralized

- Decentralized

(The ways of communication that held in client/server model (The ways of communication in peer-to-peer model will be will be centralized as all the request concentrate to the server conducted directly between each other in the network and in the middle) they are all communicate without passing through the server)

- Server overloaded, traffic over server side

- All computers workload are balanced, traffic busy

(All the network traffic is concentrated on the server side and over all network the server need to handle all the request from the client (The computers are communicate in direct manner and the computers and this may cause the server overburdened by its workload is being distributed over the network) workload.)

- One-to-many communication

- One-to-one communication

(The server will need to handle the workload from all the (The communication take place only involved two computers client computers and they all depend on the server to process directly.) the request.)

- Star topology might applied

(The example topology that may be shape in the star topology manner.)

- Bus and Ring topology

(The bus and ring topology may apply in this model that the entire computer communicated with link each other together.)

- Risk of system failure is HIGH

(All the communication and processing focus on the server side and if server is down, the communication will wipe out entirely.)

- Risk of system failure is LOW or NONE

(The processing only between two computers and there low risk of system failure as they can recover from other computer as well)

- Upgrade of application software is easy

(When comes into upgrade process of application software, the server will only handle the upgrade process.)

-Upgrade of application software is hard

(As the ways of communication is distributed anyway in the model and the upgrade process will cover the entire network model.)

Q4. Explain and describe an example for each of the following:

1. soft real-time system

-In soft real time systems, missing a deadline does not lead to system failure, but inuences the performance badly. -Must try to meet all deadlines -E.g., ATM system, time adjusting system on computers over the network. 2. firm real-time system -In rm real time systems, a low probability of missing a deadline can be accepted without the consequence of system failure. -Result has no use outside deadline window -Tasks that fail are discarded -E.g., Online video streaming, reservation system, food processing plant control system, multimedia applications across networks. 3. hard real-time system -In hard real time systems, failure to meet a time constraints leads to system failure. -Must always meet all deadlines -E.g., LRT system, Nuclear Power Plant, emergency management system in hospitals. If the system doesnt notice a problem with the nuclear reactor quick enough it will MELTDOWN 4. reactive real-time system -These are systems, which perform highly critical tasks where the response has to be available within the given time (even more than being accurate). - Involves a system that has constant interaction with its environment -E.g., Pilot constantly pressing control functions 5. Embedded real-time system -Is a computing device that is part of a larger system -No direct human intervention, i.e., no modification of the program or parameters of the program - Is used to control specialized hardware that is installed in a larger system. Microprocessor -E.g. a microprocessor that controls the fuel-to-air mixture for automobiles.


Page 3 of 3