Reliable Message Delivery
Rendezvous programs send and receive messages. The Rendezvous daemon at the sending computer divides messages into a stream of packets and sends them across the network. The Rendezvous daemon on each receiving computer reassembles the packets into messages and presents them to the listening program.
Standard multicast and broadcast protocols are not reliable and are unable to detect lost messages. Under normal conditions, Rendezvous reliable multicast protocols ensure that all operational hosts either receive each multicast message or detect the loss of a message. (For details and limitations, see DATALOSS.)
Overview
Reliable delivery compensates for brief network failures. The receiving Rendezvous daemon detects missing packets and requests that the sending daemon retransmit them. The sending daemon stores outbound messages for a limited period of time—called the reliability interval—so it can retransmit the information upon request. It discards old messages after the time period elapses, and cannot retransmit after that time.
The Rendezvous daemon requires that the physical network and packet recipients are working. The Rendezvous daemon does not guarantee delivery to components that fail and do not recover for periods exceeding the reliability interval. (For stronger assurances of delivery, see Certified Message Delivery.)
When a sending daemon receives a retransmission request for data it has already discarded, it notifies the requesting daemon that it cannot retransmit it. One or both daemons present error advisories to indicate that this situation has occurred (see DATALOSS).
You can specify the reliability interval in several ways:
• | For all services of a daemon, using a factory default (60 seconds) |
• | For all services of a daemon, using a daemon command-line argument |
• | For a specific service, using a client API call |
For a complete discussion the various ways to control reliability, the interaction among those ways, and reasonable values, see Reliability and Message Retention Time on page 29 in .
Other Features of Reliable Message Delivery
The reliable multicast protocol delivers messages once and only once to each subscription, despite multiple transient network failures.
It delivers all point‑to‑point messages from each sending transport in the order they are sent. It also delivers all multicast messages from each sending transport in the order they are sent. However, if a sending program interleaves multicast and point‑to‑point messages, Rendezvous software does not necessarily preserve the sending order between the two types of messages.
Rendezvous software does not preserve the absolute chronological order of messages sent by two or more different transports.