Concepts Guide

Man Pages for Lbmrd

Unicast UDP-based Topic Resolution services are provided by the Lbm Resolver Daemon (lbmrd).

For more information on UDP-based TR, see UDP-Based Topic Resolution Details. For more information on Topic Resolution general, see Topic Resolution Description.

There are two executables for the lbmrd, each with it's own man page:

- Lbmrd Man Page - Unix and Windows command-line interface.
- Lbmrds Man Page - Windows Service interface.

# Lbmrd Man Page <-

Unix and Windows command-line interface.

    UMResolver daemon
    Usage: lbmrd [options] [config-file]
    Available options:
      -a, --activity=IVL    interval between client activity checks (in milliseconds)(default 60000)
      -d, --dump-dtd        dump the configuration DTD to stdout and exit
      -h, --help            display this help and exit
      -i, --interface=ADDR  listen for unicast topic resolution messages on interface ADDR
                            ADDR accepts CIDR eg:10.0.0.0/8, Quoted device name eg:"eth0", DNS Host name eg:host.mydomain.com/24.
      -L, --logfile=FILE    use FILE as the log file
      -p, --port=PORT       use UDP port PORT for topic resolution messages (default 15380)
      -t, --ttl=TTL         use client time-to-live of TTL seconds (default 60)
      -r, --rcv-buf=SIZE    set the receive buffer to SIZE bytes.
      -s, --snd-buf=SIZE    set the send buffer to SIZE bytes.
      -v, --validate        validate config-file then exit

Description
  The `lbmrd` command runs the Lbm Resolver Daemon. It can be run interactively from a shell or command prompt, or from a script or batch file. (For use as a Windows Service, see Lbmrds Man Page.)

  The "config-file" parameter is optional. If supplied, it specifies the file path for the lbmrd's XML configuration file. If omitted, the lbmrd defaults all configuration details. See lbmrd Configuration File for configuration details.

  The "-i" and "-p" options identify the network interface IP address and port that lbmrd opens to listen for unicast topic resolution traffic. The defaults are 0.0.0.0 and 15380, respectively. Note that 0.0.0.0 is not interpreted as INADDR_ANY, it is a directive for UM to choose the first interface it finds. See Specifying Interfaces for methods of specifying the interface. Alternatively, the LBMRD Element "<interface>" and LBMRD Element "<port>" can be used in the lbmrd Configuration File.

  WARNING: It is strongly recommended to specify an interface when running lbmrd, either via the "-i" command-line option, or the <interface> XML tag. Otherwise, UM will select the first interface it finds, potentially 127.0.0.1 (loopback), which is rarely a good choice. Note that CIDR notation can make it easier. For example, "10.0.0.0/8" will match any interface on the 10 network.

  The "-a" and "-t" options interact to detect and remove "dead" clients, that is client applications that are in the lbmrd active client list, but have stopped sending topic resolution queries, advertisements, or keepalives, usually due to early termination or looping. These are described in detail below.

  The "-t" option describes the length of time (in seconds), during which no messages have been received from a given client, that will cause that client to be marked "dead" and removed from the active client list. Ultra Messaging recommends a value at least 5 seconds longer than the longest network outage you wish to tolerate. Alternatively, the LBMRD Element "<ttl>" can be used in the lbmrd Configuration File.

  Option "-a" describes a repeating time interval (in milliseconds), after which lbmrd checks for these "dead" clients. Ultra Messaging recommends a value not larger than "-t" * 1000. Alternatively, the LBMRD Element "<activity>" can be used in the lbmrd Configuration File.

  Note that even clients that send no topic resolution advertisements or queries will still send keepalive messages to lbmrd every 5 seconds. This value is hard-coded and not configurable.

  The "-s" option sets the send socket buffer size in bytes. Alternatively, the LBMRD Element "<resolver_unicast_send_socket_buffer>" can be used in the lbmrd Configuration File.

  The "-r" option sets the receive socket buffer size in bytes. Alternatively, the LBMRD Element "<resolver_unicast_receiver_socket_buffer>" can be used in the lbmrd Configuration File.

  The "-L" option specifies the file path name for the lbmrd log file. Alternatively, the LBMRD Element "<log>" can be used in the lbmrd Configuration File.

  The "-d" option dumps (prints) the lbmrd's XML DTD to standard output. After dumping the DTD, `lbmrd` exits.

  The "-h" option prints the man page and exits.

Exit Status
  The exit status from lbmrd is 0 for success and some non-zero value for failure.

# Lbmrds Man Page <-

Windows Service interface.

See UM Daemons as Windows Services for general information about UM daemons as Windows Services.

Note that many operating parameters that are available in the `lbmrd` command are not available in the `lbmrds` command. For example, "-p", "-t", "-r", etc. If it is desired to set these parameters, the corresponding XML elements must be used in an lbmrd configuration file.

    UMResolver service
    Usage: lbmrds [options] [config-file]
    Available options:
      -h, --help                display this help and exit
      -E, --env-var-file        update/set environment variable file
      -U, --unset-env-var-file  unset the environment variable file
      -S, --service=install     install the service passing configfile
      -S, --service=remove      delete/remove the service
      -S, --service=config      update configfile info to use configfile passed
      -e, --event-log-level     update/set service logging level.  This is the minimum logging
                                level to send to the Windows event log.  Valid values are:
                                   NONE - Send no events
                                   INFO
                                   WARN - default
                                   ERROR
      configfile                XML config file (if not present, looks in registry)

Description
  The `lbmrds` command has two functions:
  - First, it lets the user supply Windows Service operating parameters, which the command saves into the Windows registry. Those operating parameters are subsequently used by the lbmrd Service. See Configure the Windows Service.
  - Second, it provides Windows with the lbmrd Daemon executable to run as a Service.

  The "config-file" parameter provides the file path for the lbmrd's XML configuration file. It is supplied in conjunction with the "-s config" option (see below). See lbmrd Configuration File for configuration details.

  For "-S install" see Install the Windows Service (note that `lbmrds` uses upper-case "-S").

  For "-S remove" see Remove the Windows Service (note that `lbmrds` uses upper-case "-S").

  For "-S config", "-e", "-E", and "-U", see Configure the Windows Service (note that `lbmrds` uses upper-case "-S").

  The "-h" option prints the man page and exits.

Exit Status
  The exit status from lbmrd is 0 for success and some non-zero value for failure.

Attention
  Do not use the task manager or the "kill" command to stop a UM daemon running as a Windows service. Use the Windows service control panel to stop the service.