\s-1XPA\s0 supports both inet and unix (local) socket communication.


\s-1XPA\s0 uses sockets for communication between processes. It supports three methods of socket communication: inet, localhost, and unix. In general, the same method should be employed for all \s-1XPA\s0 processes in a session and the global environment variable \s-1XPA_METHOD\s0 should be used to set up the desired method. By default, the preferred method is \*(L"inet\*(R", which is appropriate for most users. You can set up a different method by typing something like:

  setenv XPA_METHOD local              # unix csh
  XPA_METHOD=local; export XPA_METHOD  # unix sh, bash, windows/cygwin
  set XPA_METHOD=localhost             # dos/windows

The options for \s-1XPA_METHOD\s0 are: inet, unix (or local), and localhost. On Unix machines, this environment setup command can be placed in your shell init file (.cshrc, .profile, .bashrc, etc.) On Windows platforms, it can be placed in your \s-1AUTOEXEC\s0.BAT file (I think!).

By default, inet sockets are used by \s-1XPA\s0. These are the standard Internet sockets that are used by programs such as Netscape, ftp. etc. Inet sockets utilize the \s-1IP\s0 address of the given machine and a (usually random) port number to communicate between processes on the same machine or between different machines on the Internet. (Note that \s-1XPA\s0 has an Access Control mechanism to prevent unauthorized access of \s-1XPA\s0 access points by other computers on the Net). For users connected to the Internet, this usually is the appropriate communication method. For more information about setting up \s-1XPA\s0 communication between machines, see Communication Between Machines.

In you are using \s-1XPA\s0 on a machine without an Internet connection, then inet sockets are not appropriate. In fact, an \s-1XPA\s0 process often will hang for many seconds while waiting for a response from the Domain Name Service (\s-1DNS\s0) when using inet sockets. Instead of inet sockets, users on Unix platforms can also use unix sockets (also known as local sockets). These sockets are based on the local file system and do not make use of the \s-1DNS\s0. They generally are considered to be faster than inet sockets, but they are not implemented under Windows. Use local sockets as a first resort if you are on a Unix machine that is not connected to the Internet.

Users not connected to the Internet also can use localhost sockets. These are also inet-type sockets but the \s-1IP\s0 address used for the local machine is the localhost address, 0x7F000001, instead of the real \s-1IP\s0 of the machine. Depending on how sockets are set up for a given platform, communication with the \s-1DNS\s0 usually is not required in this case (though of course, \s-1XPA\s0 cannot interact with other machines). The localhost method will generally work on both Unix and Windows platforms, but whether the \s-1DNS\s0 is required or not is subject to individual configurations.

A final warning/reminder: if your XPA-enabled server hangs at startup time and your \s-1XPA_METHOD\s0 is inet, the problem probably is related to an incorrect Internet configuration. This can be confirmed by using the unix method or (usually) the localhost method. You can use these alternate methods if other hosts do not need access to the \s-1XPA\s0 server.

RELATED TO xpamethod…

See xpa(7) for a list of \s-1XPA\s0 help pages