Session 1
Session 2
Session 3
Session 4
Session 5
100

what is a distributed system

•A distributed system is a computing environment in which various components are spread across multiple computers (or other computing devices) on a network.

100

mention two characteristic of distributed systems

•It consists of several independent computers connected  through communication network,

•The computers communicate with each other by exchanging message over a communication network.

•Each computer has its own memory, clock and runs its own  operating system.

•Each computer has its own resources, called local resources

•Remote resources are accessed through the network

100

What is a process

•A process is often defined as a program in execution, that is, a program that is currently being executed on one of the operating system’s virtual processors.

100

Name the 7 layers of the OSI model

Application Layer, Presentation Layer, Session Layer, Transport Layer, Network Layer, Data Link Layer, Physical Layer

100

In active replication each ___ request is processed by all the ____

client, server
200

Explain one ways why we need distributed systems

scalability

reliability

Performance

200

Explain the two client server models

•Thin-client model:

•In this model, the load of data processing and transformation is put on the server side, and the client has a light implementation that is mostly concerned with retrieving and returning the data it is being asked for, with no considerable further processing.

•Fat-client model:

•In this model, the client component is also responsible for processing and transforming the data before returning it to the user, whereas the server features a relatively light implementation that is mostly concerned with the management of access to the data.

200

Explain the two types of threads

•User Level Threads − User managed threads. Supported above the kernel and managed without kernel support

•Kernel Level Threads − Operating System managed threads acting on kernel. Supported and managed directly by the operating system.

200

Explain the function of the Data Link Layer

•The data link layer establishes and terminates a connection between two physically-connected nodes on a network. It breaks up packets into frames and sends them from source to destination.

200

Mention and explain any 2 reasons for replication

High Availability, Fault Tolerance, Read Scalability, Reduced Redundancy

300

Explain 3 fails assumptions that everyone makes when developing distributed systems

•1. The network is reliable.

•2. The network is secure.

•3. The network is homogeneous.

•4. The topology does not change

•5. Latency is zero.

•6. Bandwidth is infinite.

•7. Transport cost is zero.

•8. There is one administrator.

300

Explain how the data-centered architecture works

•Data-centered architectures evolve around the idea that processes communicate through a common (passive or active) repository.

•Data Centered Architecture is a type of architecture in which a common data space is present at the centered.

•It contains all the required data in one place a shared data space.

•All the components are connected to this data space and they follow publish/subscribe type of communication.

300

Explain the difference between connection-oriented or connectionless network services

Reliable transport connections

300

What is ATM?

•Asynchronous transfer mode (ATM) is a switching technique used by telecommunication networks that uses asynchronous time-division multiplexing to encode data into small, fixed-sized cells.

•ATM is the core protocol used over the synchronous optical network (SONET) backbone of the integrated digital services network (ISDN).

300

Explain the difference between active vs passive replication

•Client requests can be broadcast to servers via an Atomic Broadcast for them to get the same input in the same sequence.

•Client requests are processed by just one server (named primary) in Passive Replication.

400

Explain the difference between interoperability and portability

•Interoperability characterizes the extent by which two implementations of systems or components from different manufacturers can co-exist and work together by merely
relying on each other’s services as specified by a common standard.

•Portability characterizes to what extent an application developed for a distributed system A can be executed, without modification, on a different distributed system B that implements the same interfaces as A.

400

Explain how the event based architecture works?

•In event-based architectures, processes essentially communicate through the propagation of events, which optionally also carry data

•For distributed systems, event propagation has generally been associated with what are known as publish/subscribe systems (Eugster et al., 2003).

•The main advantage of event-based systems is that processes are loosely coupled. In principle, they need not explicitly refer to each other.

•This is also referred to as being decoupled in space, or referentially decoupled

400

What is the function of the transport layer

•The transport layer turns the underlying network into something that an application developer can use.

400

Explain the functions of the 4 layer of the OSI model?

•The transport layer takes data transferred in the session layer and breaks it into “segments” on the transmitting end.

•It is responsible for reassembling the segments on the receiving end, turning it back into data that can be used by the session layer.

•The transport layer carries out flow control, sending data at a rate that matches the connection speed of the receiving device, and error control, checking if data was received incorrectly and if not, requesting it again.

400

explain two problems faced with scalability

•A centralized system is going to be limited by whatever the main source of control is capable of handling (Computational limitations, storage limitations and network limitations)

•If our system uses synchronous communication, then it’s likely that, at some point, the network itself could fail while one resource is blocking and awaiting a response from another.


500

Distributed systems generally fall into one of _____ different basic architecture models

Explain any 2

•Client-server - Clients contact the server for data, then format it and display it to the end-user. The end-  user can also make a change from the client-side and commit it back to the server to  make it permanent.

•Three-tier - Information about the client is stored in a middle tier rather than on the client to simplify  application deployment. This architecture model is most common for web applications.

•N-tier - Generally used when an application or server needs to forward requests to additional  enterprise services on the network.

•Peer-to-peer - There are no additional machines used to provide services or manage resources.  Responsibilities are uniformly distributed among machines in the system, known as  peers, which can serve as either client or server.

500

Explain the various cloud computing models

•Software as a service (SaaS):

•The customer uses the cloud provider’s applications and  associated infrastructure.

•The applications can be accessed with a variety of devices via a thin client  interface, Maintenance and administration of the  outsourced infrastructure is handled by the cloud provider.

•Platform as a service(PaaS)

•A cloud-based environment is provided, the customer retains  control over the applications provided and can configure  customized user settings while the technical infrastructure  for distributed computing is handled by the cloud provider.

•Infrastructure as a service (IaaS)

•The cloud provider supplies a technical infrastructure which  users can access via public or private networks.

•The  provided infrastructure may include the following  components: servers, computing and networking resources,  communication devices storage space, and systems for  archiving and securing data.

500

Explain two benefits of using threads

•Responsiveness: Multithreading an interactive application may allow program to continue running even if part of it is blocked or is performing a lengthy operation, thereby increasing responsiveness to the user.

•Resource sharing: By default threads share the memory and the resources of the process to which they belong. This allows an application to have several different threads of activity within the same address space.

•Economy: Allocating memory and resources for process creation is costly. Because threads share resources of the process to which they belong, it is more economical to create and context switch

•Scalability:  The benefits of multithreading can be greatly increased in a multiprocessor architecture, where threads may be running in parallel on different processors.A single-threaded process can only run on one CPU, no m atter how many are available. Multithreading on a multi-CPU machine increases concurrency.

500

Explain how multicast communication works?

•Multicast communication can be achieved using a broadcast mechanism.

•UDP is an example of a protocol that supports broadcast directly, but not multicast.

• In this case, transport layer ports can be used as a means of group message filtering by arranging that only the subset of processes that are members of the group listen on the particular port.

•The group membership action join group can be implemented locally by the process binding to the appropriate port and issuing a receive-from call.

500

1) A distributed system is broadly divided into two essential concepts, explain any two architectures from any category 



software architecture (further divided into layered architecture, object-based architecture, data-centered architecture, and event-based architecture) and system architecture (further divided into client-server architecture and peer-to-peer architecture).

M
e
n
u