2019 Final Exam Flashcards

1
Q

Question 1. Explain what is meant by location transparency. List three other different types of distribution transparency.

A

Question 1.

Location Transparency is hiding the location of the resource.

3 others could be access transparency, failure transparency and concurrency transparency.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Question 2. What does openness mean for Distributed Systems? How do you define a portable distributed systems?

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

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.

A

Question 3.

Types of transparency

  • Location transparency
  • Migration transparency
  • Relocation transparency
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Question 4.

Do messaging systems such as IBM Websphere MQ provide transient synchronous communication?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Question 5. Describe and Indentify the communication below.

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Question 6. What are the main issues to consider when parameter passing in RPC?

A

Pass by reference is an issue. Sender/Receiver can have different architectures, OSs and data representations.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Question 7. Explain how key=17 can be resolved from node 1.

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Give reasons why thread synchronization is important to support a functional multi-thread process.

A

Thread synchronisation is important because threads share the same address space. Thread synchronisation helps avoid resource conflicts such as dead-locks.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Describe how redundancy can be used to mask failures in a distributed system.

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Consider Byzantine Failures. To achieve agreement in a distributed system that tolerates k faulty processes, what is the required replication of the resources? Explain.

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q
A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Question 14. What are the benefits of logical clocks over physical clocks?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is the role of the fusion layer in processing sensed context information?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Describe different types of adaption that can be applied at the application layer.

A
  1. 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.
  2. External adaptation: Adapt when an external resource is unavailable.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q
A
  1. Chuck starts out by sending Alice’s identity, along with a challenge.
  2. Bob returns his challenge and the response in a single message.
  3. Chuck sends Alice’s identity and Bob’s challenge in a single message, in a new session.
  4. Bob responds with the secret key and a new challenge.
  5. At that point, Chuck has the secret key needed for the first session and sends it to Bob.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Provide an example of a security policy. Explain how this security policy can be enforced by an organisation.

A

Security policies detail what the entities of a DS are allowed to do.

For example, as a user I need to have a password that meets certain criteria. Enforce this, by ensuring passwords meet this criteria.

17
Q

Justify why it is wrong to implement a nonce as a timestamp.

A

While timestamps are generally uniqe, they follow a specific format and this predictatibility is not a good for security.

18
Q

A consistency model uses a small number of locks. Each lock protects updates to a different variable.

What kind of consistency model is this?

A

This is an entry consistency model where locks are used to access critical sections. No other process can access the resource until the resource is released from a lock.

19
Q

What kind of consistency model is provided for replicated databases if all operation requests are delivered by a totally ordered multicast?

A

TODO

20
Q
A

Demo on the picture.

Strict Consistency means that every read is what the previous write is.

21
Q
A

The reads are in the same order after the writes for each process.

22
Q

Compare and contrast the iterative and recursive approach to resolving DNS names.

A

Iterative approach:

  1. Client contacts the name resolver
  2. The name resolver contacts the root name server which resolves as much of the name as it can and then goes back to the name resolver referring it to another name server who knows more
  3. This process repeats until the name is fully resolved

Recursive approach:

  1. Client contacts name resolver
  2. Name resolver contacts the root name server which resolves as much as it can and then passes the query on to the next name server who knows more. Intermediate results are not sent to the name server.
  3. The process repeats until the name is fully resolved and the name servers pass the fully resolved name back up the chain of name servers
  4. The root name server passes the fully resolved name to name resolver
23
Q

Assume a DS with 4 machines. Their internal clocks are supposed to tick 1000 times per msec. One machine perfectly performs that while the second one only ticks 995 times per msec, the third one does 1002 ticks per msec and the fourth one does 1004 ticks per msec. If we have UTC updates come every 20 seconds, what is the maximum clock skew that will occur?

A

The maximum clock skew is calculated my taking the biggest difference between the ticks per msec.

In this case, 995 and 1004. This is 9 ticks per msec

Multiple it by 1000 to make it /ticks.

Then multiple it by 20 seconds.

9000 * 20 = 180 000 is the maximum clock skew that will occur.

24
Q

A consistency model uses a small number of locks. Each lock protects updates to a different variable. i. What kind of consistency model is this? Explain.

A

This is an entry consistency model where critical sections are used to acquire locks on resources. No other process can access the resource until the resource is released from a lock.

Pros: Ensures serial access to resources

Cons: Possible failed process, deadlock

25
Q

What is interoperability?

A

Interoperability - the extent to which different implementations of systems can work together

26
Q

What is Heterogeneity?

A

Heterogeneity. - the system contains a variety of components with differing characteristics which can integrate with each other.