0% found this document useful (0 votes)
15 views1 page

Understanding Multidatagram Messaging

Multidatagram messages are used when a single message is too large to fit in a datagram. They are split into multiple packets that are disassembled and reassembled by the message passing system. Process addressing in message passing can be done explicitly by naming the sender/receiver process ID or implicitly by identifying the service instead of the specific process.

Uploaded by

Dan Ochieng Jr.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views1 page

Understanding Multidatagram Messaging

Multidatagram messages are used when a single message is too large to fit in a datagram. They are split into multiple packets that are disassembled and reassembled by the message passing system. Process addressing in message passing can be done explicitly by naming the sender/receiver process ID or implicitly by identifying the service instead of the specific process.

Uploaded by

Dan Ochieng Jr.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd

Multidatagram in Message Passing

During message passing a single message is referred to a datagram. There are cases
where the intended information to be transferred can not fit in a single message and
thus several packets of message are required thus referred as multidatagram
messages. As there are Maximum-Transfer-Unit (MTU) in network there is a
maximum size a single massage packet. Disassembling and reassembling of
multidatagram messages is usually handled by the message-passing system.
Encoding (into a stream form) and decoding of the message is carried out for easy
transmission

Process Addressing during message passing

A simple way to identify a process is by use of the machine_id and the local_id
(process identifier or port identifier). This does not require global coordination but it
does not allow processes to migrate to other machines. During transaction there are
two ways of identifying a process in a different machine ie the receiver/ sender.

a) Explicit Addressing – the process is explicitly named as a parameter in the


send/ receive instruction eg Send(process_id, message) – send a message
to the process identified by “process_id” or Receive(process_id, message) –
receive a message from the process identified by “process_id”

b) Implicit Addressing( Functional addressing )– the process name is not supplied


when a the instruction used identifies a service rather than a process

Send_any(service_id, message) – send a message to any process that


provides the service of type “service_id”

Receive_any(process_id, message) – receive a message from any process


and return the process identifier of the process from which the message was
received.

You might also like