LU2 Communication in DS Flashcards

1
Q

What is the primary goal when designing the architecture of a distributed system?

A

To create a structure that meets current and future demands while remaining reliable

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

Briefly explain the concept of architectural styles in distributed systems.

A

Ways to organize a distributed system into logically different components and then distributing those components over machines.

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

Name two general topics discussed in a distributed systems class.

A

Architectural Styles and Communication Paradigms

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

Describe the key difference between early and Internet-scale distributed systems in terms of heterogeneity.

A

Early systems had limited homogeneity; Internet-scale systems feature significant diversity in platforms

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

What is a major research challenge for complex systems with existing standards

A

as described by the Ultra-large Scale entry?

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

How does internet architecture differ from early architectures?

A

Internet scaled has Large scale systems

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

How does contemporary architecture differ from early architectures?

A

Contemporary has ultra-large architecture with added dimensions

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

What is a key aspect of Resource-based Architectures?

A

Resources are individually managed by components.

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

What does the Openness table mean on page 4?

A

Significant priority with range of standards introduced

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

What are three types of System Architectures?

A

Centralized

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

In a centralized architecture

A

what role does the server play?

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

Explain the request-reply model in a client-server architecture.

A

Clients send requests to servers

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

What is a key advantage of multi-tiered architectures over single-tiered?

A

Increased scalability and modularity.

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

What does the acronym SOA stand for?

A

Service-oriented Architecture

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

Explain vertical distribution architecture.

A

Placing logically different components on different machines

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

What is ‘Fat client’ and ‘Fat Server’ on page 16?

A

Fat Client = Code resides on the client-side; Fat Server = Code resides on the server-side

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

What are the trade-offs of having an application reside mostly on a client?

A

More Code needs to be running on client

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

What is a key disadvantage of a two-tiered architecture?

A

Limited scalability.

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

In a three-tiered architecture

A

where is the business logic typically located?

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

What are the 3 layers in a three-tiered architecture?

A

1) User Interface

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

What is the main difference between 2 tier and 3 tier according to the table?

A

3 tiers are less complex

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

How does 3 tier architecture improve with its 2 tier counterpart according to table?

A

3 tier is High with security than Low

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

What does a lower Encapsulation of data mean according to the table on page 19?

A

System doesn’t have a good way to keep secure sensitive information

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

What are key characteristics of peer-to-peer systems?

A

Symmetric interaction

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Explain the concept of superpeers in a P2P network.
Nodes selected to perform specific tasks like indexing or monitoring.
26
What does the Network in the 3 tier diagram represent?
The network represents communication of data from client to database
27
How do hybrid architectures combine client-server and P2P models?
Client-server architecture is used with peer-to-peer solutions
28
What is Edge architecture and what does it have to do with Client-server architectures combined with decentralized architecture?
It serves the content closer to the user
29
What is the purpose of a horizontal distribution?
To balance the load
30
Explain the basic idea behind BitTorrent
as an example of a hybrid architecture.
31
What four questions are important to consider the fundamentals of the overall architecture?
1)What are the entities of the system? 2)How do they communicate? 3) What roles/responsibilities do they have? 4) How are they mapped in the overall infrastructure?
32
Why is "what is communicating" and "how" considered absolutely central to understanding?
Defines a rich design space for distributed system
33
What are the 3 key communication paradigms we can consider for distributed systems?
1) Inter-process communication
34
What is interprocess communication (IPC) in the context of distributed systems?
Low-level support for communication between processes
35
What is inter-process communication responsible for?
It is responsible for sending messages that make up the architecture in its entirety
36
What is a key disadvantage of socket-based programming for distributed systems?
It Forces the read/write mechanism
37
What is the general purpose of the java code on page 33?
The code is used to send data between computers on a network
38
What does RPC stand for?
Remote Procedure Call
39
What does RMI stand for?
Remote Method Invocation
40
In the context of remote invocation
what are request-reply protocols?
41
What is the function of a stub function?
To make it appear to the user that the function call is local.
42
Describe the role of marshalling in RPC.
Taking a data form suitable for a message
43
What are three main task that an interface processing has to do with?
44
What does marshalling do?
1) Interface processing
45
How does RPC communicate between systems?
RPC stub is generated and attached for remote procedure call
46
What does RPC enable you to perform?
It enables you to perform remote procedure call as if they are procedure in the local address space
47
What are 3 major aspects in Remote invocation architecture?
1) Transparency
48
What is the benefit of all services offering the same interface
for example?
49
What is the benefit of stateless execution?
Services can be stateless
50
Why is HTTP not enough for some applications?
It cannot be real time for some operations
51
What does an interface compiler do?
It generates codes for each procedure
52
What does it mean to bind an interface to a location
and why is it necessary?
53
What is a limitation of RPC?
Parameters passed by value cannot be accessed
54
What are the tradeoffs for speed and error regarding local procedure calls?
Local Procedure calls are generally not as fast
55
What are delivery guarantees?
It ensures the service is delivered properly
56
Describe the implementation of synchronous communication.
Send data to a specified queue
57
Explain the concept of multicast communication.
Data is sent to multiple users with a single transfer
58
How does indirect communication differ from remote invocation?
Communication between the client and server is done independently
59
Name 3 key techniques for indirect communication.
Group communication
60
Explain message queues in a asynchronous communication context
Message queues send messages in a specified queue with producer/consumer processes
61
Why is asynchronous considered less restrictive?
Sender needs not wait to get a reply to start another request
62
What is a central component of an RPC architecture?
63
What is a problem with a separate service that maintains mappings?
64
A message broker
65
It requires the program to have port binding
66
What are some approaches for exchanging updates?
Push
67
Why is it important to maintain persistence with message queues?
To resend messages that are missing or incorrect
68
What happens if there is no anti-entropy?
69
Information will be incorrect
70
How does anti-entropy help?
Each replica chooses another replica
71
What is the role of a Message Broker in a message-queue system?
To transform incoming messages to the target format.
72
What type of communication does asynchronous have?
To submit its message and transfer the messafe
73
What is an example of RPC failing if the programmer isn't careful?
The server would crash
74
How does a transport protocol work?
It is a way to transport messages
75
Why should a program be concerned with performance and security?
It is to prevent issues with the reliability of the protocol
76
What does is mean to unmarshal a call?
After a message has been encoded
77
What does tuple spaces achieve?
A further indirect communication service
78
What is an example of synchronous communication
and what does it mean?
79
How does RPC work?
A client stub sends data to server stub
80
What does an IDL do?
Interface Definition Language which are language independent
81
Why should an application be able to handle errors?
So the application continues to run
82
What does TCP do?
It provides a connection
83
If there is an unsupervised lab do i need to do it?
Yes!
84
What does gossip based information dissemination mean?
Goal: to rapidly propagate information
85
What is Anti-entropy good for?
Each replica will choose another replica at random
86
What is the push method from Anti-Entropy?
P only sends its updates to Q
87
What are update models?
Used to tell about the details
88
What are the different states in Epidemic / Gossiping?
Infected
89
What are the 3 ways to exchange updates?
Push
90
What is the point of communication handling?
To deal with the way both applications communicate
91
In Remote Invocations
is it always appropriate to treat failures the same with local operations?
92
What are two main types of transfer for messages?
Transient and Persistent transfer
93
What is transient communication?
the server drops any packets that the client doesnt receive to get new packets
94
What is persistent communication?
The server keeps the data for the client until it receives it
95
Why does the client block in synchronous communication?
Client issues requests and waits until it receives reply
96
Why doesn't a client block in asynchronous communication?
Clients are not needed to wait to receive a reply for communication
97
What are two reasons multicast communication is beneficial?
Sending data to multiple receivers
98
What does reliability rely on in deferred synchronous RPC
and what does it do?
99
Explain some challenges regarding reliability and security.
Reliability is not guaranteed
100
What does socket programming use?
Berkeley socket interface
101
Explain message broker
and what the applications do.
102
What is the main point about anti-entropy?
Each replica is chosen to exchange states
103
What does binding refer to?
Binding specifies the object to connect to
104
What is the most common form of procedure call?
Implemented using JSON data
105
What does RMI and RPC do?
It strongly resembles procedure calls
106
What is the overall goal of a distributed system?"
To achieve cooperation and coordination among processes in a network to accomplish a common task.