Communication Chapter 2 Stream Oriented Communication RPCs and

  • Slides: 16
Download presentation
Communication Chapter 2

Communication Chapter 2

Stream –Oriented Communication • RPCs and Messages focus on exchanging independent and complete units

Stream –Oriented Communication • RPCs and Messages focus on exchanging independent and complete units of information • Communication timing does not affect correctness – It may however affect the performance • Timing is crucial for certain applications • Continuous media – Temporal relationships are critical to correctness • Discrete media – Timing is not critical to correctness

Data Streams • • Sequence of data units – E. g. Unix Pipes, TCP/IP

Data Streams • • Sequence of data units – E. g. Unix Pipes, TCP/IP Three transmission modes Asynchronous – Orderly transmission of data units Synchronous – Maximum end-to-end delay is specified • Isynchronous – Data units are transferred on time • Simple and Complex streams

Data Stream Architecture

Data Stream Architecture

Streams and Quality of Service Properties for Quality of Service: • The required bit

Streams and Quality of Service Properties for Quality of Service: • The required bit rate at which data should be transported. • The maximum delay until a session has been set up • The maximum end-to-end delay. • The maximum delay variance (jitter) • The maximum round-trip delay.

Network Level Solutions • Differentiated Services • Expedited forwarding • Assured forwarding

Network Level Solutions • Differentiated Services • Expedited forwarding • Assured forwarding

Buffering to Reduce Jitter

Buffering to Reduce Jitter

Handling Packet Loss • Forward error correction codes • Interleaving

Handling Packet Loss • Forward error correction codes • Interleaving

Interleaving to Handle Packet Loss

Interleaving to Handle Packet Loss

Synchronization Mechanisms (1) Figure 4 -29. The principle of explicit synchronization on the level

Synchronization Mechanisms (1) Figure 4 -29. The principle of explicit synchronization on the level data units.

Synchronization Mechanisms (2) Figure 4 -30. The principle of synchronization as supported by high-level

Synchronization Mechanisms (2) Figure 4 -30. The principle of synchronization as supported by high-level interfaces.

Multicast Communication • Sending data to multiple recipients • Important for several distributed applications

Multicast Communication • Sending data to multiple recipients • Important for several distributed applications • IP-level multicasting • Setting up communication path is complex • Most ISPs do not support multicasting • Next-best alternative – Supporting multicast at the middleware level • Also known as application-level multicasting or overlaybased multicasting

Application-Level Multicasting • Multicast groups • Nodes of a multicast group organize into an

Application-Level Multicasting • Multicast groups • Nodes of a multicast group organize into an overlay • Collaboratively disseminate data • Tree-based overlays • Simple and (relatively) more efficient • Susceptible to node and link failures • Mesh-based overlays • Provides better failure resilience • Scribe system

Performance Issues with Overlay-based Multicast

Performance Issues with Overlay-based Multicast

Metrics for Application-level Multicast • Link stress • Stretch • Tree cost

Metrics for Application-level Multicast • Link stress • Stretch • Tree cost

Epidemic-style Communication • • • Low overhead techniques to achieve multicasting Mimics how diseases

Epidemic-style Communication • • • Low overhead techniques to achieve multicasting Mimics how diseases spread Infected, susceptible and removed Anti-entropy technique Rumor spreading/gossiping