A Ultra Messaging® software evaluation kit consists of the documentation package (which includes this document) and one or more binary packages. These instructions will help get you started evaluating Ultra Messaging quickly. You can run pre-compiled commands from a Ultra Messaging binary distribution to get some quick performance numbers in your environment. (A subsequent section guides you through creation of simple programs for local compilation.)
Important: If you plan to test multiple machines communicating with each other, the machines will need multicast connectivity between them. Contact your network administrator for information on multicast connectivity. If multicast connectivity is not possible, the test applications can all be run on the same machine. Alternatively, it is possible to configure Ultra Messaging to avoid multicast, see Unicast-Only Operation.
A binary package consists of:
Binary versions of source code examples (see the bin directory)
Header files (see the include directory)
Link libraries (see the lib directory)
Shared libraries (see the lib directory on Unix for .so files or the bin directory on Windows for .dll files)
The Ultra Messaging code and documentation are copyrighted and confidential information owned by Informatica and are covered under the terms of our Software License Agreement or Non-Disclosure Agreement as appropriate. Use of this code and documentation without a valid Non-Disclosure Agreement or Software License Agreement with Informatica Corporation is strictly prohibited. If this code and documentation is being supplied under the terms of a Non Disclosure Agreement, all copies, in any form, must be returned or destroyed at the end of the evaluation period or as requested by Informatica.
The following steps assume that the windows package is installed on all test machines in the standard place:
C:\Program Files\29West\rel-id\Win2k-i386
where rel-id is the release identifier. It is also assumed that the \bin directory is included in the windows PATH environment variable. This is needed so that the .EXE and .DLL files can be found.
Open a command prompt window on the machine you want to use for receiving messages and enter the command lbmrcv topic to start a receiver. Note that topic can be any string. You should see output that looks something like this:
1.006 secs. 0.0 Kmsgs/sec. 0.0 Kbps 1.019 secs. 0.0 Kmsgs/sec. 0.0 Kbps 1.010 secs. 0.0 Kmsgs/sec. 0.0 Kbps
A new line will be printed about once per second showing the elapsed time, messages received, and data received. As long as there are no sources yet running on topic, the number of messages received will continue to be zero.
Open a command prompt window on the machine you want to use for sending messages and enter the command lbmsrc topic to start sending messages. The receiver will automatically discover the source, at which time its output will change to something like this:
1.010 secs. 451.9 Kmsgs/sec. 90.4 Mbps 1.010 secs. 451.4 Kmsgs/sec. 90.3 Mbps 1.010 secs. 445.1 Kmsgs/sec. 89.0 Mbps
With no options given, the source will send 10,000,000 small (25 byte) messages. If you would like to test different size packets or number of packets sent, you can set options. Enter lbmsrc -h at the command line, you will get a list of options you can control.
Press Ctrl-C to kill the source or receiver.
The following steps assume that the Unix package is installed on all test machines under a normal user account:
/home/user-id/lbmeval/rel-id/platform-id
where rel-id is the release identifier and platform-id describes the ABI (Application Binary Interface - e.g. Linux-2.4-glibc-2.2-i686). It is also assumed that the /bin directory is included in the PATH environment variable and the /lib directory is in the appropriate loader library search path environment variable (e.g. LD_LIBRARY_PATH for Linux; see http://bhami.com/rosetta.html for equivalences in other flavors of Unix).
Open a command prompt window on the machine you want to use for receiving messages and enter the command lbmrcv topic to start a receiver. Note that topic can be any string. You should see output that looks something like this:
1.006 secs. 0.0 Kmsgs/sec. 0.0 Kbps 1.019 secs. 0.0 Kmsgs/sec. 0.0 Kbps 1.010 secs. 0.0 Kmsgs/sec. 0.0 Kbps
A new line will be printed about once per second showing the elapsed time, messages received, and data received. As long as there are no sources yet running on topic, the number of messages received will continue to be zero.
Open a command prompt window on the machine you want to use for sending messages and enter the command lbmsrc topic to start sending messages. The receiver will automatically discover the source, at which time its output will change to something like this:
1.010 secs. 451.9 Kmsgs/sec. 90.4 Mbps 1.010 secs. 451.4 Kmsgs/sec. 90.3 Mbps 1.010 secs. 445.1 Kmsgs/sec. 89.0 Mbps
With no options given, the source will send 10,000,000 small (25 byte) messages. If you would like to test different size packets or number of packets sent, you can set options. Enter lbmsrc -h at the command line, you will get a list of options you can control.
Press Ctrl-C to kill the source or receiver.
There are many other example programs available. See doc/example/index.html for documentation on all of them.
For general information on measuring performance, see the UM Knowledgebase article Performance Testing.
For information on testing the LBT-RM (multicast) transport, see the following UM Knowledgebase articles:
Microsoft has batching issues in its networking stack, so the performance results can vary. We have a work around if this is an issue for you.
The Linux version was compiled on Fedora Core 1.
The Windows version was compiled on Windows XP with Microsoft Visual C++ version 7.
Copyright 2005 - 2014 Informatica Corporation.