Sco 410 Cat 2 LMS

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 5

SCHOOL OF ENGINEERING AND TECHNOLOGY

DEPARTMENT OF COMPUTING AND INFORMATION TECHNOLOGY


SCO 410: DISTRIBURED SYSTEMS
CAT 2

MURONJI BERYL KHAYAKHA


J17-1031-2018
a) An organization you are working for is in the process of implementing secure distributed
system. Armed with the knowledge in distributed security you are required to discuss FOUR
security mechanisms to apply. (8
Marks)

Encryption
It is a key component of computer security. Data is changed via encryption so that an attacker
cannot read it. In other words, data confidentiality can be implemented by the use of encryption.
Encryption also enables us to determine whether data has been altered. It also offers assistance
with integrity checks.
Authentication
Refers to verifying the identities of the parties involved in a communication as well as the
legitimacy of the data's source and integrity. It is crucial for a number of reasons. Electronic mail
systems can have more trust in the authenticity of messages by verifying the identity of the
message's source. It also serves as a foundation for accounting and auditing. It is necessary for
access control systems that depend on the users' identities. The detection of message integrity
issues is made possible by the authentication of message contents. Most commonly used method
used for authentication is the use of passwords.
Authorization
Process by which a client or user is determined if he has permission to use a resource or access a
file. Authentication and authorization are usually combined so that the server can identify the
client making the access request. Different types of authentication may be required for
authorization e.g, passwords in some cases. A typical example is having access to medical
databases' records. Whoever accessing the database may be given permission to read records,
edit certain fields in a record, or add or remove records.
Auditing tools
are used to trace which clients accessed what, and which way. Although auditing does not really
provide any protection against security threats, audit logs can be extremely useful for the
analysis of a security breach, and subsequently taking measures against intruders. Because of
this, attackers are usually careful to leave no evidence that could ultimately lead to revealing
their identify. In this regard, tracking accesses makes attackers occasionally riskier.

b) Explain TWO election algorithms (how they work) as used in coordination in Distributed
systems. (8
Marks)

The Bully Algorithm


Bully Algorithm is one of the most promising election algorithms which were presented by
Gracia Molina in 1982.
This algorithm applies to system where every process can send a message to every other process
in the system.
Algorithm – Suppose process P sends a message to the coordinator.
I. Coordinator is deemed to have failed if no response is received from it within a time
frame of T.
II. Now process P sends election message to every process with high priority number.
III. After waiting for a time interval T in which no one responds, process P elects itself to act
as the coordinator.
IV. After that, it notifies all processes with lower priority numbers that it has been chosen to
serve as their new coordinator.
V. However, if an answer is received within time T from any other process Q,
(I) Process P again waits for time interval T’ to receive another message from Q that it has
been elected as coordinator.
(II) If Q doesn’t responds within time interval T’ then it is assumed to have failed and algorithm
is restarted.
Ring Algorithm
This election algorithm is based on the use of a ring. For each process to be aware of its
successor, we assume that the processes are logically or physically ordered. It applies to ring-
organized systems (logically or physically). In this approach, we assume that all communication
between processes is one-way and that each process can only send messages to those on its right.
This technique uses the active list data structure, which is a list with the priority numbers of all
running processes in the system.
Algorithm-
1. If process P1 detects a coordinator failure, it creates new active list which is empty
initially. It sends election message to its neighbor on right and adds number 1 to its active
list.
2. If process P2 receives message elect from processes on left, it responds in 3 ways:
(I) If message received does not contain 1 in active list then P1 adds 2 to its active
list and forwards the message.
(II) If this is the first election message it has received or sent, P1 creates new active
list with numbers 1 and 2. It then sends election message 1 followed by 2.
(III) If Process P1 receives its own election message 1 then active list for P1 now
contains numbers of all the active processes in the system. Now Process P1 detects highest
priority number from list and elects it as the new coordinator.
c) When searching for files in an unstructured peer-to-peer system, it may help to restrict the
search to nodes that have files similar to yours. Explain how gossiping can help to find those
nodes. (8 Marks)

If, during gossiping, nodes exchange membership information, every node will eventually get to
know about all other nodes in the system. Each time it discovers a new node, it can be evaluated
with respect to its semantic proximity, for example, by counting the number of files in common.
The semantically nearest nodes are then selected for submitting a search query.
The Gossip protocol, which is a sort of communication where a piece of information, or gossip in
this case, is conveyed from one or more nodes to a group of other nodes in a network, is used to
fix the issues produced by multicasting. When several network clients need the same data at the
same time, this is helpful. However, multicasting has a number of drawbacks. For example, if
there are numerous nodes at the recipient end, latency—the average amount of time it takes for a
receiver to receive a multicast—increases.
The gossip protocol periodically broadcasts the gossip to random nodes in the network in order
to reach the desired targets in the group. Once a random node receives the gossip, it is considered
to have become infected as a result of the gossip. Now the random node that receives the rumor
performs the same action as the sender and distributes the rumor to numerous random recipients.
This procedure keeps on till the multicast reaches the target nodes. After spreading the rumors to
random nodes, this mechanism transforms the infected nodes into uninfected nodes.
d) Giving relevant examples explain TWO reasons for replication in distributed system.
(6
Marks)

Data are replicated to increase the reliability of a system.


If a file system has been replicated, it may be able to keep functioning when one replica fails by
simply switching to another. Furthermore, by keeping numerous copies, it is feasible to give
better protection against corrupted data. This minimizes latency because replication helps to
reduce data query latency by keeping data geographically closer to a customer. CDNs (Content
Delivery Networks) such as Netflix, for example, keep a copy of duplicated data closer to the
user.
For performance
Replication for performance is important when the distributed system needs to scale in numbers
and geographical area. Scaling in numbers. occurs, for example, when an increasing number of
processes needs to access data that are managed by a single server. In that case, performance can
be improved by replicating the server and subsequently dividing the work. For example Read
queries can be served from copies of the same data that have been replicated. This increases
the overall throughput of queries
Scaling with respect to the size of a geographical area may also require replication. The basic
idea is that by placing a copy of data in the proximity of the process using them, the time to
access the data decreases. As a consequence, the performance as perceived by that process
increases.

References
Priyanka Gupta, R. G. (2012). Comparison of Various Election Algorithms in Distributed System.
International Journal of Computer Applications , 4.

Runfang Zhou, K. H. (2007). Gossip-Based Reputation Management for Unstructured Peer-to-Peer


Networks. ResearchGate, 52.

https://www.geeksforgeeks.org/the-gossip-protocol-in-cloud-computing/

Class notes

You might also like