A method, apparatus, and computer program product includes serially
receiving, from a source, a plurality of forward messages each addressed
to one of a plurality of destinations; receiving a plurality of
availability signals, each availability signal indicating that one of the
destinations is available to accept a forward message; simultaneously
sending a forward message to each available destination; simultaneously
receiving, after a predetermined period of time, a plurality of reverse
messages from the destinations, each reverse message corresponding to one
of the forward messages simultaneously sent to an available destination;
and serially sending the reverse messages to the source.