Distributed Systems Exam 1

0.0(0)
studied byStudied by 0 people
0.0(0)
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/96

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

97 Terms

1
New cards

Distributed System is a

Networked computer system in which processes & resources sufficiently spread across multiple computers to appear as a single coherent system to users.

2
New cards

Centralized Systems

One node controls all resources and processes

3
New cards

Decentralized Systems

Multiple nodes operate inependently OR still operate independently but can request resources from each other

4
New cards

Distributed Systems

Nodes cooperate and share resources with each other

5
New cards

Transitioning from decentralized to a distributed system requires:

increasing node connectivity

6
New cards

Transparency is when

The system hides its distribution nature from users.

7
New cards

Types of transparency

  • Access

  • Location

  • Migration

  • Replication

  • Concurrency

  • Failure

8
New cards

Access Transparency

Hide differences in data representation & how an object is accessed

9
New cards

Location Transparency

Hide where an object is located

10
New cards

Migration Transparency

Hide that an object may be moved to another locationR

11
New cards

Replication Transparency

Hide that an object is duplicated

12
New cards

Concurrency Transparency

Hide that an object night be shared by multiple users

13
New cards

Failure Transparency

Hide the failures from a user

14
New cards

Openess

The idea that systems should support iteroperability, portability, an extensibility.

Also, system must conform to well defined interfaces.

15
New cards

Interoperability

The extent in which two systems/components from different manufacturers can co-exist & work together by merely relying on each other’s services as specified by a common standard.

16
New cards

Portability

The extent an application developed for a distributed system can be executed without modification on a different system that implements the same interfaces

17
New cards

Extensibility

To easily configure the system out of parts or add new components.

18
New cards

3 types of Scalability

  • Size Scalability

  • Geographical Scalability

  • Administrative Scalability

19
New cards

Size Scalability

Easily add users and resources to the system without notably effecting performance

20
New cards

Size Scalability Issues

  • Computational capacity limited by CPUs

  • Storage capacity including transfer rate between CPUs & disks

  • Network between user & the centralized service

21
New cards

Geographical Scalability

Users and resources are far apart, but significant communication delays aren’t noticed

22
New cards

Geographical Scalability Issues

  • Pre-existing systems rely on synchronous communication

  • Communication in wide area networks is less reliable than LAN

  • Wide area systems typically have limited facilities for multi-point communication

23
New cards

Administrative Scalability

An easily manageable system despite spanning multiple organisations.

24
New cards

Administrative Scalability Issues

Conflicting policies of resource usage, management, and security

25
New cards

Dependability

In order for a component to provide services to a client it may require services from other components

26
New cards

The 4 requirements of dependability

  • Availability

  • Reliability

  • Safety

  • Maintainability

27
New cards

Availability

The idea that a system is fully functioning and able to provide all expected services to its users.

28
New cards

Reliability

The idea that a system will run continuously for extended periods of time without failur

29
New cards

Safety

If a system were to temporarily fail no catastrophic event happens as a result.

30
New cards

Maintainability

How easily a failed system can be repaired.

31
New cards

Fault Tolerance has 3 metrics:

  1. Mean Time to Failure

  2. Mean time to Repair

  3. Mean Time Between Failures

32
New cards

Security

Dependable Systems are also required to provide security especially in regards to confidentiality and integrity

33
New cards

5 Points of Security

  • Confidentiality

  • Integrity

  • Authentication

  • Authorization

  • Trust

34
New cards

Confidentiality

Only authorized access to data

35
New cards

How is confidentiality enforced?

Use encryption to protect confidential data & employ secure communication protocols to ensure authorized access.

36
New cards

Integrity

Ensure modifications are done by authorized users

37
New cards

How is integrity enforced?

Use hashes & digital signatures to check for tampering.
Use controlled update mechanisms & logging to verify authorized modifications.

38
New cards

Authentication

Verify Identity

39
New cards

How is authentication enforced?

Use secure credentials such as passwords and public key infrastructures to verify users.

40
New cards

Authorization

Check rights to access/modify an object

41
New cards

How to enforce authorization?

Use access control list, role based access control to restrict access.

42
New cards

Trust

Confidence the other points are accurate

43
New cards

6 Performance Metrics

  • Mean Time to Failure (MTTF)

  • Mean Time to Repair (MTTR)

  • Mean Time Between Failures (MTBF)

  • Utilization (U)

  • Throughput (X)

  • Response Time (R)

44
New cards

Utilization (U)

The fraction of time that a service is busy.
# of Incoming requests/# of processed requests

45
New cards

Throughput (X)

Average number of request processed per unit of time
Number of incoming requests that have been recieved by the server

46
New cards

Response Time (R)

How long a service takes to process a request including time in queue
1/(1-U)

47
New cards

4 Security Mechanisms

  • Symmetric Cryptosystem

  • Asymmetric Cryptosystem

  • Digital Signature

  • Secure Hash Function

48
New cards

Symmetric Cryptosystem

Uses the same key for encryption and decryption making it fast but requires secure key sharing.

49
New cards

Asymmetric Cryptosystem

Uses public/private key pairs where the public key encrypts and the private key decrypts. Enables secure communication without key sharing

50
New cards

Secure Hash Function

Maps input data to fixed length output making it sensitive to input changes, useful for integrity checks.

51
New cards

3 Key Terms in Fault Handling

  • Failure

  • Error

  • Fault

52
New cards

Failure

When a system cannot complete a promised service
Ex: Crashed Program

53
New cards

Error

Part of system state that can lead to failure

Ex: Messed up syntax

54
New cards

Fault

The cause of an error

Ex: Sloppy Coding

55
New cards

4 Fault Handling Techniques

  • Fault Prevention

  • Fault Tolerance

  • Fault Removal

  • Fault Forecasting

56
New cards

Fault Prevention

Prevent the occurence of a fault

57
New cards

Fault Tolerance

Build a component to hide the occurrence of a fault from users.

58
New cards

Fault Removal

Reduce the presence, number, or security of a fault

59
New cards

Fault Forecasting

Estimate current presence, future incidents, and consequences of faults

60
New cards

6 Types of System Classifications

  • Cluster Computing

  • Grid Computing

  • Pervasive System

  • Mobile Computing

  • Sensor Networks

  • Edge Computing

61
New cards

Cluster Computing

Homogenous systems on LAN

  • Same OS & near identical hardware

  • Single or tightly couple managing nodes

62
New cards

Grid Computing

Heterogenous systems across WANs

  • Can have different OS & Hardware

  • Dispersed across multiple organizations

  • Can easily span a WAN

63
New cards

Pervasive System

Embedded mobile computing, context aware

  • Nodes are small and mobile

  • Often nodes are embedded in a larger system

  • System naturally blents into the user’s environment

64
New cards

Three subtypes of pervasive systems

  • Ubiquitous

  • Mobile

  • Sensor

65
New cards

Mobile Computing

Devices as clients of cloud services

  • Device location is expected to change

  • Maintaining continuous communication can lead to problems

66
New cards

Sensor Networks 

Many small low power nodes

  • Many nodes (10s-1000s)

  • Simple nodes (small memory/compute/communication capabilities)

  • Often battery powered or powerless

67
New cards

Edge Computing

Processing new data sources

  • Uses mobile computing as a base but instead of directly connecting ot the cloud it connects to a mor elocal data center.

68
New cards

False Assumptions

  • The network is reliable

  • There is one adminstrator

  • Transport cost is zero

  • Topology does not change

  • Latency is zero

  • Bandwidth is infinite

69
New cards

Architectural Styles

Define how components interact via connectors and data exchange

70
New cards

Connector 

Mediates communication, coordination, and cooperation between components

71
New cards

Layered Architectures

Organize systems into layers with distinct responsibilities

72
New cards

OIS Model

The first layered model that used layers, but some aspects were vague

73
New cards

Database Architectuers

Use 3 layers:

  • Interface Layer

  • Processing Layer

  • Data Layer

74
New cards

Interface Layer

User/external application interactions

75
New cards

Processing Layer

Functions of an applicationDa

76
New cards

Data Layer

Persistent Storage of data

77
New cards

Object Based Style

  • Components = Objects

  • Communication via method calls

  • Encapsulation of Data and behavior

    • Data can be modified without revealing internal workings

78
New cards

RESTful Architecture is optipized around

Resources

79
New cards

RESTful Architecture

  1. Resources are identified through a single naming scheme

  2. All services offer the same interface

  3. Messages sent to or from are fully self-described

  4. After execution the component used forgets everything about the caller

80
New cards

Coupling Dimensions

  • Referentially Coupled

  • Temporally Coupled

81
New cards

Referentially Coupled

Explicit referencing in communication.
Example: Email address

82
New cards

Temporally Coupled

Whether or not systems are insync

Example: Instant messaging back and forth

83
New cards

Linda Tuple Space

A shared data space that is temporally and referentially decoupledT

84
New cards

Middleware

Holds commonly used components and function that don’t need to be implemented separately.
The “OS” of distributed systems.

85
New cards

Middleware Functions

Communication, Naming, Security, Persistance

86
New cards

Legacy Integration

In short use wrappers/adapters 

87
New cards

1 on 1 wrapper time complexity

O(N)²

88
New cards

Broker wrapper time complexity

O(N)

89
New cards

Client Server Model:

Servers offer services

Clients use services

Clients and servers can be on different machines

Clients follow requeest reply model regarding using services

90
New cards

Symmetric Architectures

  • Peer 2 Peer

  • Structures P2P

  • Unstructured P2P

  • Super Peer Networks

  • BitTorrent

91
New cards

Peer 2 Peer

All nodes are equal

92
New cards

Structured P2P

Use hash based indexing

93
New cards

Unstructured P2P

Random graphs, flooding, random walksSu

94
New cards

Super peer networks 

Introduce hierarchy for efficiency

95
New cards

BitTorrent

Tracker Based swarm coordination chunk trading among peers

96
New cards

Hybrid Architectures

  • Cloud computing layers

  • Edge Computing

  • Blockchain

97
New cards

Cloud Computing layers

Hardware → Infrastructure → Platform → Application