A message gate is the message endpoint for a client or service in a distributed
computing environment. A message gate may provide a secure message endpoint that
sends and receives type-safe messages. A gate may have a gate name that is a unique
ID that refers only to the gate. A gate may be implemented as a layer above a device's
transport layer (e.g. networking sockets). The gate name for each gate may be bound
to a transport reference. Multiple gates may share the same message transport.
The transport reference may be a transport URI or socket reference and may provide
a mechanism for naming an underlying transport and sharing the transport with other
gates. Multiple local gates may include a reference to the same transport, however,
each local gate may behave independently of the other local gates sending and receiving
messages to and from its paired remote gate.