Computer Science 441

Principles of Distributed Systems

Gregory M. Kapfhammer


flickr photo shared by Patrick Brosset under a Creative Commons ( BY-NC ) license

Color Scheme

Key Concept

Corresponding Diagram

In-Class Discussion

In-Class Activity

Details in the Textbook

Remote Communication

Communication Protocols

Fundamental Models

Application Areas

What is a protocol?

Examples of protocols?

HTTP

FTP

See Figure 4-3 for a great reference model!

What is the level we will consider for this course?

Communication Types

Persistent versus transient

Asynchronous versus synchronous

Discrete versus streaming

Low-level versus high-level

Can you give an example for one of these?


flickr photo shared by International Monetary Fund under a Creative Commons ( BY-NC-ND ) license

Remote procedure call

Remote method invocation

Parameter passing

Handling reference parameters

Return value

Marshall and unmarshall

Stubs and skeletons

Review Figure 4-6 for an RPC diagram

Review the steps on page 129!

Discuss these steps and pick the most challenging

Review Figure 4-7 for parameter passing

Binary versus text for data transfer?

Binary Data

What are the characteristics of binary data?

What are the benefits of using of binary data?

What are the drawbacks of using of binary data?


flickr photo shared by fonitronik under a Creative Commons ( BY-NC-ND ) license

Text-based Data

What are the characteristics of text data?

What are the benefits of using of text data?

What are the drawbacks of using of text data?


flickr photo shared by fonitronik under a Creative Commons ( BY-NC-ND ) license

"At most once" operations

Idempotent operations

Sockets

Differences between sockets and RPCs?

Queues

Benefits and drawbacks of using queues?

Streams

Stream versus discrete?

Quality of Service (QoS)

Why is QoS challenging with streaming?

Unicasting

Multicasting

Benefits and drawbacks of multicasting?

Questions about remote communication?