2019 Final Exam Flashcards
Question 1. Explain what is meant by location transparency. List three other different types of distribution transparency.
Question 1.
Location Transparency is hiding the location of the resource.
3 others could be access transparency, failure transparency and concurrency transparency.
Question 2. What does openness mean for Distributed Systems? How do you define a portable distributed systems?
Question 2. Openness for a distributed system means that it has:
Portability - the extent to which different systems with the same interface can support the same applications without modification
Question 3.
Suppose a process in a distributed systems runs on one node and accesses data from another node. After some time, for load balancing purposes, this process relocates to a different node. What kind of transparencies should be provided for this process in a distributed system? Explain your answer.
Question 3.
Types of transparency
- Location transparency
- Migration transparency
- Relocation transparency
Question 4.
Do messaging systems such as IBM Websphere MQ provide transient synchronous communication?
IBM Websphere MQ provides persistent communication because consuming applications can use the middleware to temporarily store messages in queues. In addition, the receiver doesn’t have to be alive when the message is sent and the sender doesn’t have to be alive when the message is received.
It can be synchronous/asyncronous according to its documentation.
Question 5. Describe and Indentify the communication below.
Question 4.
a) Persistent Asynchronous Communication
b) Persistent Synchronous
Persistent = Persistence means that the network is capable of storing messages for an arbitrary period of time until the next receiver is ready.
Transient = : Message is stored only so long as the next receiver is ready.
Asynchronous: It continues immediately after submitting the message.
Synchronous: Blocks the process until the message is received or the sender gets a response from the server
Question 6. What are the main issues to consider when parameter passing in RPC?
Pass by reference is an issue. Sender/Receiver can have different architectures, OSs and data representations.
Question 7. Explain how key=17 can be resolved from node 1.
i) Node 1 forwards it on to node 9
ii) Node 9 forwards it on to node 14
iii) Node 14 forwards it on to node 18
v) Node 18 passes its address to node 1
Give reasons why thread synchronization is important to support a functional multi-thread process.
Thread synchronisation is important because threads share the same address space. Thread synchronisation helps avoid resource conflicts such as dead-locks.
Describe how redundancy can be used to mask failures in a distributed system.
Redundancy such as time redundancy, information redundancy and physical redundancy. One case could be to perform an action and if need be, to perform the action again.
Consider Byzantine Failures. To achieve agreement in a distributed system that tolerates k faulty processes, what is the required replication of the resources? Explain.
To achieve agreement the system must achieve a two-thirds majority of correct processes i.e. 2k+1 processes and hence requires a total of 3k+1 processes to achieve agreement.
FIFO multicast. The messages m3 and m4, as well as m1 and m2 are received by P2 and P3 in the same order as they were sent.
Not FIFO atomic because it is not totally-ordered as P2 and P3 receive messages in a different order
Question 14. What are the benefits of logical clocks over physical clocks?
The notion of time is difficult to manage in a DS. Usually time-ordering is less important than operation-ordering, so logical clocks are useful for ensuring the proper sequence. Logical clocks don’t decay and skew over time like physical, crystal clocks.
What is the role of the fusion layer in processing sensed context information?
The Fusion Layer aggregates the location information gathered by the abstraction layer for a particular entity to provide a single, coherent location of the entity. Any location conflicts resolved at this layer.
Describe different types of adaption that can be applied at the application layer.
- Internal adaptation. For example, using a GPS device and a network based location, as they would be members of the same type of context (i.e. location) . Switches to one when it’s better to do so.
- External adaptation: Adapt when an external resource is unavailable.
- Chuck starts out by sending Alice’s identity, along with a challenge.
- Bob returns his challenge and the response in a single message.
- Chuck sends Alice’s identity and Bob’s challenge in a single message, in a new session.
- Bob responds with the secret key and a new challenge.
- At that point, Chuck has the secret key needed for the first session and sends it to Bob.