0% found this document useful (0 votes)
7 views47 pages

Chapter 3 PDF

Chapter 3 discusses Interprocess Communication (IPC) with a focus on message passing and its desirable features such as reliability, efficiency, and security. It covers various communication techniques, message buffering strategies, addressing methods, and protocols, including case studies on IPC in MACH and the CBCAST protocol in ISIS. The chapter also explores group communication types and management strategies.

Uploaded by

Maniza Hijab
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views47 pages

Chapter 3 PDF

Chapter 3 discusses Interprocess Communication (IPC) with a focus on message passing and its desirable features such as reliability, efficiency, and security. It covers various communication techniques, message buffering strategies, addressing methods, and protocols, including case studies on IPC in MACH and the CBCAST protocol in ISIS. The chapter also explores group communication types and management strategies.

Uploaded by

Maniza Hijab
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 47

Chapter - 3

Interprocess Communication

© Oxford University Press 2011


Message Passing

© Oxford University Press 2011


Message Passing vs Shared Memory

© Oxford University Press 2011


Desirable Features of Message Passing
Systems
• Hardware approach
• Functionality
• Performance
• Uniform semantics
• Efficiency
• Reliability
• Correctness
• Flexibility
• Portability
• Security

© Oxford University Press 2011


Message passing process

© Oxford University Press 2011


IPC message format

© Oxford University Press 2011


IPC Message

© Oxford University Press 2011


IPC synchronization
 Ensure message is received in the buffer:
 Polling

 Interrupt

 Message communication techniques


 Synchronouscommunication
 Asynchronous communication

© Oxford University Press 2011


IPC: Synchronous communication

© Oxford University Press 2011


IPC: Asynchronous communication

© Oxford University Press 2011


IPC primitives

© Oxford University Press 2011


Message buffering strategies

© Oxford University Press 2011


Null buffering

© Oxford University Press 2011


Null buffering with blocked receiver

© Oxford University Press 2011


Null buffering with non blocked
receiver

© Oxford University Press 2011


Message buffering: single buffer

© Oxford University Press 2011


Message buffering: multiple message
buffer
 Receiver overflow handled using:
 Unsuccessful communication indication
 Flow control mechanism

© Oxford University Press 2011


Multidatagram messaging
 Concept of MTU
 Message sequencing and reassembly
 Message contents
 Message representation: tagged, untagged

© Oxford University Press 2011


Message data transmission

© Oxford University Press 2011


Process addressing techniques
• Explicit addressing :send (process_id, message) and
receive (process_id, message)
• Implicit addressing:send_any (service_id, message)
and receive_any (service_id, message)
– Two level addressing : machine_id@local_id (receiver
machine name)
– Three level addressing:
machine_id@local_id@machine_id. (Node where the
process was created @ generated by the first
machine@ last known location of the machine)

© Oxford University Press 2011


Link-based Process Addressing

© Oxford University Press 2011


Failure handling mechanism
 IPC problems due to system failures

© Oxford University Press 2011


IPC Protocols
 4-message reliable IPC protocol
 3-message reliable IPC protocol
 2-message reliable IPC protocol

© Oxford University Press 2011


IPC 4 message protocol

© Oxford University Press 2011


IPC 3 message protocol

© Oxford University Press 2011


IPC 2 message protocol

© Oxford University Press 2011


IPC Failure

© Oxford University Press 2011


Case Study: IPC in MACH

© Oxford University Press 2011


Case Study: IPC in MACH
 MACH IPC Components
 Ports

 Messages

 Message format
 NetMsgServer

© Oxford University Press 2011


MACH message format

© Oxford University Press 2011


Group communication

© Oxford University Press 2011


Group Communication
 Unicast –one to one communication
 Many-to-one group communication
 One-to-many or multicast group communication

© Oxford University Press 2011


Unicast group communication

© Oxford University Press 2011


Many to one communication

© Oxford University Press 2011


Multi cast communication

Broadcast communication

© Oxford University Press 2011


Types of Groups
 Closed group
 Open group
 Peer group
 Hierarchical group

© Oxford University Press 2011


Group management
 Centralized approach
 Distributed approach

© Oxford University Press 2011


Group addressing Message delivery

 High level naming  Send to all semantics


 For large LANs/  Bulletin board
MANs: send message semantics
to individual group
members

© Oxford University Press 2011


Reliability mechanism
 Classified based on number of receivers from which
sender expects a response

© Oxford University Press 2011


Message ordering

© Oxford University Press 2011


Message ordering: Absolute Ordering

© Oxford University Press 2011


Message ordering: Consistent ordering

© Oxford University Press 2011


Message ordering: Causal ordering

© Oxford University Press 2011


Case Study: CBCAST protocol in ISIS

© Oxford University Press 2011


CBCAST protocol
 S: vector of the sending process attached to the
message
 R : vector of the receiving process
 i: sequence number of the sender process
 Runtime system tests following conditions
 S[i] = R [i] + 1
 S[j] <= R[j] for j <> i

© Oxford University Press 2011


CBCAST protocol in ISIS

© Oxford University Press 2011


Summary
 Message Passing
 Case Study: IPC in MACH
 Group communication
 Case Study: CBCAST protocol in ISIS

© Oxford University Press 2011

You might also like