An application called launcher is provided to start servers and to establish connections as follows.
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