Invocation of servers by OpenXM-RFC 100

An application called launcher is provided to start servers and to establish connections as follows.

  1. A launcher is invoked from a client. When the launcher is invoked, the client informs the launcher of a port number for TCP/IP connection and the name of a server.
  2. The launcher and the client establish a connection with the specified port number. One time password may be used to prevent launcher spoofing.
  3. The launcher creates a process and executes the server after setting the data channel appropriately.

After finishing the above task as a launcher, the launcher process acts as a control server and controls the server process created by itself. As to the details of the control server see Section 5.3.

As the data channel is used to exchange binary data, the byte order conversion is necessary when a client and a server have different byte orders. It is determined by exchanging the preferable byte order of each peer. If the preference does not coincide with each other, then the network byte order is used. This implies that all servers and clients should be able to handle the network byte order. Nevertheless it is necessary to negotiate the byte order to skip the byte order conversion because its cost is often dominant over fast networks.

Nobuki Takayama 2017-03-30