How to set up NoTA (Wiki)

Content: 

Setting up the environment

Single subsystem: local loopback on a PC

This is the simplest form of NoTA network. All nodes exist within the same subsystem - in this case, a Linux PC.

Here's how you can set up an environment like this:

1. Download the latest version of all the core technology packages at http://notaworld.org/downloads/nota_core

2. For each package, follow these steps:

tar xvfz <package>.tar.gz

cd <package>

./autogen.sh

./configure && make && make install

For more detailed information on compiling the packages, refer to http://notaworld.org/documentation/tutorials

You need to install the packages in a bottom-up order, namely:

1.libnota-l-in

2.libnota-h-in

3.libnota-stubadapter (optional)

4.nota-resource-manager (optional)

Then, install whatever programs you wish to try:

tar xvfz <package>.tar.gz

cd <package>

./autogen.sh

make

make install

Now, start up the NoTA daemon - be sure to have it act as Hmanager by passing NOTA_LMANAGER=1!

NOTA_LMANAGER=1 nota-ind

With the daemon running, launch the service(s) you want to use. With the service(s) registered on the network, see if application nodes can find them.

Inter-device communication: Ld_TCP

The TCP L_down implementation provides a way to build NoTA networks over common TCP.

To set up the network, download and install the NoTA Core Technology package - it uses the TCP L_down by default.

Daemon Mode

First, you should verify that connections between the devices work correctly. Then, start the Interconnect Daemon. Remember to pass RM=1 to the HManager:

NOTA_LMANAGER=1 nota-ind (HManager)

or

nota-ind

The HManager should be started first.

Single-process mode

In single process mode, the Interconnect stack is run as part of the program, rather than as a daemon. So, in single-process mode, one node needs to be assigned the role of HManager:

NOTA_LMANAGER=1 service_sp

This node should be launched first. After that, other services/applications may be launched normally:

application_sp,

service_sp

Running the NoTA DIP stack within one device

Few examples how to run NoTA on a single PC

#1: One daemon

term1: nota-ind -m

term2: dump_datacheck_sn

term3: dump_datacheck_an

All communication goes withing one nota-ind. DIP L_IN is used only to define IA (Interconnect Address).

#2: One daemon + single-process

term1: nota-ind -m

term2: dump_datacheck_sn

term3: dump_datacheck_an_sp # note: single-process

SN connects to nota-ind, AN process includes both the H_IN/L_IN and the application (single process). Now the data goes through L_IN and L_INdown (e.g. TCP L_INdown)

#3: Two daemons

term1: NOTA_IN_DAEMON=/tmp/nota-test-d0 nota-ind -m

term2: NOTA_IN_DAEMON=/tmp/nota-test-d0 dump_datacheck_sn

term3: NOTA_IN_DAEMON=/tmp/nota-test-d1 nota-ind

term4: NOTA_IN_DAEMON=/tmp/nota-test-d1 dump_datacheck_sn

SN connects to first nota-ind and AN connects to second nota-ind. NOTA_IN_DAEMON-variable is necessary because there are multiple nota_ind's in the device. Data goes through L_IN and L_INdown.

#4: Two single-processes

term1: NOTA_LMANAGER=1 dump_datacheck_sn_sp

term2: dump_datacheck_an_sp

SN becomes the manager. Data goes through L_IN and L_INdown.

Bookmark and Share