Each interface on a Universal Messaging Realm has a number of configurable attributes that determine the interface behaviour. Some of these attributes are standard across all types of interface protocols, and some are specific to the actual protocol.
This section will describe those attributes that are common for interfaces of all types.
For additional information on specific interfaces types, see TCP Interfaces, IP Multicast and Shared Memory
Basic Interface Attributes
When an interface is selected from the table of interfaces on the interfaces tab, there are a number of attributes that are configurable for the interface. Below the interfaces table, there are a set of 2 or more tabs, one of which is labelled 'Basic', as shown in the image below.
The basic interface configuration panel shows 6 configurable attributes. These are each explaned in the following section:
The autostart attribute specifies whether the interface is started automatically when the Universal Messaging Realm Server is started. When this option is not selected, the interface must be started manually in order for it to be used by connecting clients. Please note that if autostart is not set it must be started either manually or using the Universal Messaging Administration API whenever after the Realm is started.
If Autostart is selected then the interface will be started once the Apply button is pressed.
The auth time attribute corresponds to the amount of time a client connection using this interface can take to perform the correct handshake with the Realm Server. For example, the default is 10000 milliseconds, but for some clients connecting on slow modems, and who are using the nhps (https) protocol, this default auth time may need to be increased. If any client connection fails to perform the handshake in the correct timeframe, the connection is closed by the Realm Server.
Each Universal Messaging realm interface contains a server socket. The accept threads attribute corresponds to the number of threads that are able to perform the accept() for a client connection. The accept() operation on a Universal Messaging interface performs the handshake and authentication for the client connection. For more heavily utilised interfaces, the accept threads will need to be increased. For example, on an nhp (http) or nhps (https) interface, each client request corresponds to a socket accept() on the interface, and so the more requests being made, the busier the interface will be, so the accept threads needs to be much higher than that of say an nsp (socket) interface. Socket interfaces maintain a permanent socket connection, and so the accept() is only performed once when the connection is first authenticated.
This specifies the size of the send buffer on the socket.
This specifies the size of the receive buffer on the socket
The select thread option specifies the number of threads allocated to monitor socket reads/writes on the interface if NIO is enabled. When a socket needs to be read, these threads will fire and pass on the request to the read thread pool. While if the socket is blocked during a write, then when the socket is available to be written to, these threads will fire and the request passed on to the write thread pool. The number of select threads should not typically exceed the number of cores available.
Specify whether NIO should be used for this interface.
All interfaces that are advertised by a realm server are available to users (with the correct permissions) of the Universal Messaging Admin API. This property specifies whether the interface is indeed advertised to such users.
The backlog attribute specifies the size of the IP socket queue. This value specifies the maximum size of the incoming socket request queue. The operating system the Realm Server is running on may specify a maximum value for this property. When the maximum queue size is reached the operating system will refuse incoming connections until the request queue reduces in size and more requests can be serviced. For more information on this value, please see the System administration documentation for your Operating System.
Each interface on a Universal Messaging Realm Server can have an associated alias in the form of host:port. This alias can be specified here.
For information on interface plugins please see Interface plugins
For information on adding VIA rules for an interface please see Interface VIA Rules
When you change any of these attributes, the changes need to be applied by clicking the 'Apply' button. For more information, refer to the modifying interfaces documentation (see Modifying Interfaces